‫Więc pojedziemy szybko.
‫W porządku.
‫Potem zakończymy przedstawienie, bo minęła już godzina.
‫Chcę, żebyście otrzymali informację zwrotną.
‫W porządku.
‫Pierwszy z nich to Jacob.
‫Jest tu cała masa dokumentacji. Nawiasem mówiąc, uwielbiam dokumentację Dockerfiles.
‫Całkowicie w porządku jest umieścić tyle, ile chcesz.
‫W rzeczywistości jest to plik YAML, więc teraz mówimy o komponowaniu. Dokumentacja w plikach Dockerfile lub
‫Compose. Tak czy inaczej.
‫Zawsze dobra rzecz.
‫W porządku.
‫Więc używa wersji 3. 0 7, co oznacza, że prawdopodobnie jest przeznaczony
‫dla Swarm lub czegoś w produkcji, takiego jak Kubernetes przy użyciu zestawu funkcji Compose on Kubernetes.
‫Używa tam oficjalnych zdjęć Elastica z Elastica.
‫Zobaczmy, że masz kontrolę zdrowia.
‫Fantastyczny.
‫Masz badania zdrowotne. To wspaniale. Masz konfiguracje.
‫To wspaniale.
‫Ustawiasz go w określonej sieci i robisz tryb hosta
‫na porcie, więc dajesz ten bezpośredni dostęp do karty sieciowej, zamiast przechodzić przez sieci nakładkowe i siatkę
‫routingu.
‫Dobre.
‫Zobaczmy.
‫Musimy się tutaj rozmieścić.
‫Aha, i robisz okrężną procedurę DNS w trybie punktu końcowego.
‫Uznanie dla ciebie.
‫To jest coś, z czego wiele osób nie zdaje sobie sprawy.
‫Za każdym razem, gdy uruchamiasz coś w Swarm i chcesz wyłączyć wirtualny adres IP, który znajduje się przed każdą usługą nakładki,
‫chcesz to zrobić dla baz danych, w których masz tylko jeden węzeł, prawda, co jest częstokroć, nawet jeśli robisz
‫kopię lustrzaną bazy danych, którą zwykle uruchamiasz, każdą z nich w swojej
‫własnej usłudze.
‫Więc jest jedna instancja w usłudze i to zadanie tej instancji kontenera, zwykle nie chcesz tego wirtualnego adresu IP przed nim,
‫ponieważ jest to teraz dodatkowy przeskok. To kolejne tłumaczenie NAT.
‫To więcej potencjalnych problemów.
‫Jeśli w tym miejscu ustawisz tryb punktu końcowego na działanie okrężne DNS, spowoduje to wyłączenie adresu VIP i bezpośredni dostęp
‫do tego kontenera.
‫Uznanie dla ciebie.
‫Nie widuję tego zbyt często, ponieważ ludzie tego nie łapią. Ty też używasz replik.
‫Ograniczenia zasobów 4G dla świetnego koncertu.
‫Zawsze zalecam ustawianie limitów zasobów i rezerwacji, jeśli możesz, ponieważ pomoże
‫to wszystkim w twoim klastrze.
‫Tak.
‫Wygląda na to, że działa na Docker Swarm. Słodki.
‫Mistrz Koordynacji.
‫W porządku.
‫Więcej tego samego.
‫Dobry towar. Dobry towar.
‫Montujesz wolumin. Nie kręcisz montażu. Używasz nazwanego woluminu.
‫Masz tutaj ograniczenia dotyczące umieszczania, więc umieszczasz to na węźle, który jest na stałe
‫zakodowany pod określoną nazwą. Wiesz, że chcesz, aby ten działał tylko na tym węźle.
‫Oczywiście słabość polega na tym, że jeśli ten węzeł ulegnie awarii, nie będzie mógł go umieścić nigdzie indziej.
‫Mam nadzieję, że wziąłeś to pod uwagę.
‫W porządku.
‫Master2, więc tak to robisz.
‫Wygląda na to, że masz zakodowane na stałe master1, master2 jako oddzielne usługi i master3. Wiele osób musi to robić w ten
‫sposób, że w przypadku wielowęzłowego klastra bazy danych zwykle łatwiej jest umieścić każdy
‫z nich jako własną usługę.
‫Więc to zrobiłeś. Byłoby fajnie, gdybyśmy mogli wykonać jeden serwis z trzema replikami.
‫Możesz to znaleźć na kilku przykładach za pomocą wzorca autopilota. Jeśli wyszukasz IO wzorców autopilota lub po prostu wygooglujesz swoją
‫technologię bazy danych za pomocą słowa autopilot, czasami możesz znaleźć konfiguracje i skrypty automatyzacji, które
‫pomogą Ci zrobić to wszystko w jednej usłudze.
‫Każdy ma swoje plusy i minusy.
‫Osobiście mam tendencję do robienia tego tak, jak ty to robisz.
‫Czuję, że jest prostszy, chociaż jest bardziej YAML i jest trochę bardziej gadatliwy.
‫Jedna rzecz, którą możesz tutaj zrobić.
‫Ogromnym ulepszeniem jest to, że wszystkie są tutaj te same części.
‫Dobrze.
‫Wszystkie te same rzeczy, możesz utworzyć szablon, który znacznie skróci ten plik, umieszczając go tylko w bloku
‫szablonu.
‫Więcej o tym mówię w tym...
‫To tutaj, Jacob. Umieszczę to na czacie.
‫Są to trzy różne zaawansowane funkcje Docker Compose, z których wiele osób nie korzysta.
‫Jeden z nich dotyczy szablonów.
‫Więc jeśli widzisz przykład tutaj, możesz wrzucić szablon właśnie tam.
‫Zasadniczo mówisz, że to jest to, czego chcę w
‫szablonie i to jest miejsce, w którym chcesz to umieścić w kółko w każdym obrazie, a raczej w każdej usłudze.
‫Tak więc, wiele z tych standardowych rzeczy, na przykład możesz szablonować całość lub po prostu
‫szablonować ich części i mieć wiele szablonów, a Docker ma na ten temat dokumentację.
‫To pomogłoby zmniejszyć rozmiar pliku i nazywamy go suchym.
‫Dobrze.
‫Robienie rzeczy raz. Nie powtarzaj się.
‫D R
‫Y Możesz to zrobić.
‫Pomogłoby to złagodzić wiele z tych powtarzających się rzeczy, szczególnie
‫w przypadku kontroli stanu i wdrażania.
‫Następnie masz węzły danych. Wszystko tam dobrze wygląda. Korzystasz z kontroli zdrowia.
‫Masz ustawioną sieć. Twoje tomy. Pozwól mi przejść przez to trochę. Twardo kodujesz rzeczy do każdego
‫węzła. Naprawdę żałuję, że nie
‫mamy sposobu, aby powiedzieć, że to nie działa... jak tutaj jest ograniczenie miejsca.
‫Nie uruchamiaj go na
‫jednym, który jest tam, gdzie biegną inne.
‫Jest dla ciebie nadzieja. Możesz tutaj zrobić dwie rzeczy. Możesz spojrzeć na preferencje rozmieszczenia.
‫Jeśli masz różne węzły w strefach dostępności i po prostu chcesz, aby
‫baza danych upewniła się, że ma jedną kopię w każdej strefie dostępności, na przykład AWS lub coś
‫w tym rodzaju, możesz dodać etykiety do każdego węzła. Potem po prostu wchodzisz tutaj i mówisz, że wolałbym, żebyś rozłożył to na mojej wytwórni.
‫Po prostu nadajesz mu etykietę i preferencję rozmieszczenia zamiast ograniczenia, co
‫pozwoli umieścić je na różnych serwerach w różnych strefach.
‫Ale fajną rzeczą jest to, że jeśli jedna strefa lub jeden serwer ulegnie awarii, nadal będzie mógł przenieść to
‫w inne miejsce.
‫Najgorszym przypadkiem jest to, że dwa z nich działają na tym samym serwerze, ale prawdopodobnie nie jest
‫tak źle, jeśli jesteś w stanie ... Chodzi mi o to, że jedną rzeczą mogą być dane pobierające dane
‫z jednej strefy nad drugą. Po rozwiązaniu niektórych z tych problemów.
‫Tak.
‫Tak. Mówisz, że mogę użyć ograniczenia i pozwolić stracić jeden z fizycznych węzłów.
‫Tak.
‫Chodzi o to, że robisz to trochę bardziej kruche, przypisując go do
‫nazw hostów węzła. Musisz do tych konkretnych hostów. Najlepiej, jeśli jesteś w
‫AWS lub czymś, w którym możesz automatycznie tworzyć serwery.
‫Tak więc, jeśli serwer umrze, wszystko tworzy nowy.
‫Tak.
‫Jeśli to wszystko wyjaśniłeś, świetnie. W ten sposób nie ma nic złego w ograniczeniach położenia.
‫Oznacza to po prostu, że te węzły muszą tam być, w przeciwnym razie te pojemniki umrą.
‫Inną rzeczą jest to, że w 19 pojawi się nowa funkcja. 03, a sposób, w jaki dowiadujesz się o
‫tych nowych funkcjach, to przejście do Docker na github i przejście do wydań Docker-ce. Opublikuję to na czacie i możesz sprawdzić
‫nowe funkcje Swarm. Dostępna jest nowa wersja funkcji Swarm, która pozwoli Ci
‫uruchamiać repliki, ale powiedz, że nigdy nie uruchamiaj więcej niż X tych replik w tym samym węźle. Super fajna funkcja i pomaga ludziom zapewnić, że ich bazy danych
‫nie zostaną przypisane do tego samego węzła. Możesz to sprawdzić jako bardziej
‫elastyczny sposób, aby upewnić się, że nie są w tej samej notatce.
‫Myślę, że jeśli przewinę w dół do Swarm.
‫Tak. Dodano obsługę maksymalnej liczby replik na węzeł. To nowa funkcja w nadchodzących 19. Wersja 03, która jest
‫już w wersji wstępnej, więc powinniśmy ją zobaczyć w ciągu najbliższych kilku tygodni lub miesięcy.
‫Możesz to sprawdzić.
‫To może ci pomóc z ograniczeniami.
‫W porządku.
‫Chcę trochę posunąć się do przodu.
‫Przepraszam, nie mogę tego wszystkiego przejrzeć. Przesuwam go na dole.
‫Masz swoje sieci, dołączalne true i proxy.
‫Wszystko tam wygląda dobrze.
‫Masz wolumin, więc używasz domyślnego sterownika woluminu, więc w ten sposób oznacza to, że wszystkie te dane utknęły
‫w węźle, w którym jest włączony.
‫Jeśli masz udostępnioną pamięć masową, możesz rozważyć REX-Ray lub inny sterownik woluminu, aby można było usunąć
‫tę pamięć z tego dysku. W ten sposób, gdy jeden z węzłów ulegnie awarii
‫i chce go utworzyć w innym miejscu, ponownie dołączy ten wolumin bazy danych
‫do drugiego węzła.
‫W porządku.
‫Być może już na to patrzyłeś. Masz certyfikaty Traefik. Mógłbym o tym chwilę porozmawiać, ale
‫czas nam się skończy. Zostawię te certyfikaty ruchu
‫na inny dzień. Następnie masz konfiguracje i inne pliki.
‫To jest świetne. Używam wszystkich konfiguracji.
‫Tak jak powinieneś.
‫Nie widzę tu Sekretów. Zakładam, że w pewnym momencie potrzebujesz Sekretów
‫i być może będziesz musiał przechowywać je gdzieś w Ukryciu. Poza tym wspaniałym YAML. Zdecydowanie jeden z lepszych, jakie widziałem.
‫Myślę, że jest tu bardzo mało do zrobienia.
‫Myślę, że zrobienie tego z wykorzystaniem wszystkich doskonałych funkcji. Szablonowanie jest rzeczą. Biorąc pod uwagę różne
‫sterowniki głośności i biorąc pod uwagę nową funkcję. Jeśli
‫nie preferencje umieszczania, nowa funkcja dla maksymalnej liczby replik na węzeł.
‫Dzięki za oglądanie.
‫Możesz kliknąć SUBSKRYBUJ ORAZ dzwonek powiadomienia, aby otrzymać alert, gdy rozpocznę transmisję na żywo, dzięki czemu będziesz mógł dołączyć
‫i zadawać pytania Devops i Docker.
‫Możesz tam obejrzeć kilka moich innych filmów i zrobić to, co ja mam zamiar zrobić, i po prostu się
‫zdrzemnąć.