Въведение в Докер рояк / Определение

Докер рояк е един от инструментите, налични в Docker контейнерите, които са платформа / инструмент за оркестрация с отворен код. Нарича се още нативен инструмент за клъстериране и планиране на Docker. Когато размерът на контейнерите нараства, става много трудно да се управлява всичко там, там е ролята на Swarm. Той помага на разработчиците и администраторите да управляват и установят клъстер от Docker възли под формата на един-единствен виртуален машина.

Концепциите / ключовите термини, използвани за Docker Swarm

  • Рояк - Роякът е съставен от много докерски системи / хостове, които работят в режим на роя.
  • Swarmkit - Swarmkit се използва за изпълнение на слоя от оркестрацията на Докер.
  • Задача - Задача се състои от команди и контейнера, който трябва да се изпълнява вътре в контейнера. Задачите се разпределят от ръководителя на роя до възлите.
  • Възли - възелът може да бъде определен като единствен Докер двигател и които участват в рояка. Доброто разгръщане на производствения рой е това, което разпределени докерни възли се разпространява в много машини.
  • Услуга - Всеки път, когато се създаде услуга, тя посочва контейнера, който трябва да се използва, и командите, които трябва да се изпълняват вътре в контейнера. Така че услугата е списък със задачи, които трябва да се изпълняват на работника или на мениджърските възли.
  • Мениджър възли - задачата на мениджърските възли е да изпраща задачите към работните възли. Мениджърските възли са отговорни и за изпълнение на други функции като управление на клъстера и оркестрацията.
  • Работни възли - Работата на работния възел е да въвежда задачите, идващи от възела на мениджъра и да ги изпълнява. Работен възел е инсталиран с агенти, които докладват на възлите на мениджъра единиците от работата, възложени му.
  • Лидерни възли - служи като лидер за изпълнение на задачи, свързани с оркестрацията.

Какво може да се направи, като се използва Docker Swarm

Swarm е много полезен за администраторите и разработчиците в екосистема на Docker. Следват някои от задачите, които докерът може да изпълни:

  • Може да се използва за мащабиране на броя на контейнерите.
  • За установяване на координация между контейнерите.
  • За разпределяне на задачи към групата контейнери.
  • За управление на жизнения цикъл на контейнерите, както и за извършване на редовни здравни проверки.
  • За обслужване на целите на разгръщане на актуализациите на софтуера сред контейнерите.

Разбиране на Докер рояк / Работа

По-долу е работата на докер роя, които са както следва:

Работа с възли

Както видяхме, има два вида възли, т.е. мениджърът и работникът. Нека да разгледаме работата на двете.

Задачите, които се обработват от мениджърските възли са - Планиране на услугите, поддържане на състоянието на клъстера, както и изпълнение на крайните точки на HTTP API. Препоръчително е да стартирате множество възли на мениджър, защото това ще ви помогне да се възползвате от функциите за устойчивост на грешки на рояка.

Работните възли изпълняват контейнерите и е необходим минимум 1 мениджър възел, за да функционира.

Работа на услуги

Единствената цел на услугите е да разположат изображение на приложението към роя Докер. Например, DB сървър, уеб сървър, HTTP сървъри са примери за услуги.

Процеси и условия в услугата:

  • Задача неуспех - Всеки път, когато задача не успее в докер рояк, обикновено тя не се рестартира. Така че задачата на оркестъра е да премахне тази неуспешна задача и да я замени с новата, която е в съответствие със състоянието на услугата.
  • Вариант на услугата - Всеки път, когато се създаде услуга, винаги можем да определим порт, на който услугата може да бъде използвана (за външни потребители), могат да се прилагат ограничения на паметта и процесора, могат да се определят политики за актуализиране и т.н.
  • Чакаща услуга - Услугата преминава в състояние на изчакване, когато понастоящем няма достъп до възли в роя на докера, който да изпълни задачата.

Докер роя филтри

Докер роякът има 5 филтъра:

  • Affinity - Целта на филтъра за афинитет е да гарантира, че контейнерите работят в същия мрежов възел и той също така определя последователността, в която контейнерите трябва да се изпълняват.
  • Пристанище - Портът определя специален ресурс. Когато контейнер работи на порта, който не е свободен, той ще се прехвърли към другите налични възли.
  • Ограничение - Когато се създаде възел, можем да назначим двойки ключ-стойност с помощта на ограничителен филтър.
  • Зависимост - Всеки път, когато има зависимост между контейнерите, филтрите за зависимост планират тези на същия възел.
  • Здраве - Ако някой от възлите е спрян и не работи, този филтър няма да назначи контейнери върху него.

Някои Докер ройни команди:

Предназначениекоманда
Създаване на роякДокер рояк инит
Присъединяване към роякдокер рояк се присъедини \

–Избран Token_number \

IP: Порт

Създаване на услуга и именуване на неяdocker service create - име Edu
Премахване на услугадокер услуга премахнете Edu
Услуга за актуализиранеактуализация на услугата за докер
Мониторинг на здравето на възлитедокер възел ls

Предимства и недостатъци

Нека сега видим предимствата и недостатъците на докерския рой

Предимства:

  • Разгръщането е лесно и режимът на роя по подразбиране се предлага с Docker Engine.
  • Инсталирането е лесно и бързо.
  • Интеграцията на рояка може лесно да се постигне с Docker CLI и Docker compose
  • Не се изисква много опит и ученето е лесно.

Недостатъци:

  • За да се мащабират услугите, е необходима ръчна намеса.
  • Има ограничена поносимост на грешките.
  • Не са налични по-широки функции от сега.
  • Той има по-малка общност в сравнение с други инструменти за оркестрация, налични като Kubernetes.

заключение

В тази статия започнахме с основен преглед и дефиниция на роя Докер и също видяхме важните термини, използвани в технологията за роя, която е част от екосистемата. Тогава ние се опитахме да разберем как работи зад Docker рояк и също научихме няколко Docker команди, които се използват в режим на роя.

Препоръчителни статии

Това е ръководство за това какво е Докер рояк ?. Тук обсъдихме концепцията, командването, филтрите, използването и разбирането на Docker Swarm. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Въпроси за интервю с Докер
  2. Какво е Касандра?
  3. Въпроси за интервю за микросервизи
  4. Какво е Дженкинс?