De nos jours, il est courant et speartement Рекомендовать de mettre en place de la «Contenurisation», сувент Au Travers de la Technologie Docker Qui Accéléreé La ЛЕЧЕНИЕ DEPUIS 10 ANS:
Dans Une Équipe de developpements Applicatifs, Sur L ‘ окружающая среда девелолоплина :
Avoir Des Images prêtes à l’emploi: par exmple une image du reupur d’reap, que toute l’équipe Используйте, Sur la Même Base Modules ET Версии, Anneaire LDAP, Base de Données, и т.д
Facilité de Mise en place d’images, развертывающие разделители Sur Chaque Station de Travil: UNE Image Est Légère et Son Execution Sera Rapide, Polet Tester Вы Effecuer Des PoC, Cela S’avère Plus доступен
Данс ООН окружения де тесты OU DE PRODUCTY
CES Изображения PORRONT êTRE PACKAGÉES POLE UNE Утилизация SUR Plateforme de Tests et/ou La Plateforme de Prod, de Façon Rapide Et Handicace: Déploiements Facilités et Mise RU Производство эффективно.
Sur un Edrornement de Производство Il Y Aura Régulièrement Plusieurs Instances D’Applications Sur Plusieurs VM/Surveurs, Afin D’Aslybore La Charge Des Accès Utilisateurs, IL VA DONC Falloir Démother Toutes CES Images Commintinations Sous Forme de Conteneurs Légers Verse CES Différentes Examents de Machines, Et Ensuite, S’Assure D’Orisinger Tel Flux (HTTPS, Accès Base, и т. Д.) Вереты CELS CONTELEURS: CETTOR FAçON DE FAIRE SE NOMME DO L ‘ Орцестровка де контур Qui Va Également Gérer Le Cycle de Vie CONTENURS CONTENURS: Création, Dépliement, Rechargement, Ballancing Sur Les Conteneurs, и т.д
Докер предлагает ООН Орхестреур Натиф à Leur Technologie, Dans Le Moteur de Conteneurs: Докер Рой où l’on Va Retrouver NoS Хаудадий:
Ле Docker-Compose Yaml Qui Servira Aussi à la gestion des conteneurs dans рой ( стек )
Ворота
Рабочий NOUUD DU CLUSTER SWARM, UNE VM OU UNE Машина Телосложение
Менеджер Noeud Spécial du Cluster Swarm Qui Aura Pole Charge D’Orchestrer Les Services/Контейнеры DU Кластер (Flux, Déploiements, Балансировка нагрузки et Haute Disponibilité Des Services Expossés), Тель-ООН Шеф-повар D’orchester! ООН Manager Peut Aussi Jouer Le Royle de работник
Стек «FiChier» Docker-Compose Dans Lequel Ait Décrit Les Services
Сервис élément d’une Stack à déployer Selon des règles
Задача Контейнер Déployé Sur Un/Des Noeuds
Реестр Docker
Dans un écosystème où l’оркестография средние des images plele les transformer ru conteneurs («Экземпляры» d’une image), ilest nécessaire d’avoir un Реестр Docker Qui Permettra de stocker ces images à déployer:
le docker hub en est en
ou avoir une machine Реестр dédiée à cela:
Via Solution Solution Légère de Type Реестр développé par docker et domponible sur le Центр
Via Solution Solution Avec Une Интерфейс Web de Type гавань / гадость
Докер рой
Docker Swarm Est включая Dans Le Moteur Docker, C’est un Orchestrateur de Containers qui permettra de gérer sur unsmble de machines/vm, les «Контейнеры sur chacune de ces (flux, déploiement, Cycle de vie, Répartitions et disponibilité), et, avouons-le, ac Концепции Fois Les Appléhendés.
ООН кластер Рой Plusieurs Nœuds Avec Au Moins 2 NœUDS:
de type Менеджер : Aura La Mission de Diriger Les Flux Applents Ve Les Nœuds et la Gestion de l’Orchestration Dans Conteneurs: Réplication Dans Le кластер , Dépliement/Accargement Des Services, балансировка нагрузки. Il est conseillé d’Avoir un NOMBRE DE MANAGER Ухудшает et Au Moins 3 Селон Селон L’Algorithme Плот Отказ ООН Менеджер Peat Aussi Jouter Le Royle de работник
de type рабочий , на Polra Avoir Plusieurs Nœuds de CE типа, Afin de Répartir La Charge, Un Noeud à Différents État: Активный , Слейте et пауза. Le Mode Drain Permettra de Girre Au Manager de Ne Plus Dénoyer Verse Nu Neuds рабочий Les services et donc d’arêter les flux vers celui-ci. Ле Пауза , Que J’Utilise Rarement, Permet de Suspendre Tous Les Projectus Dans Les Containers Contenus Sur Le Noeud, En Revanche, Les Flux Rontuent à être Dirigés Verse Dernier.
Schématiquement, Cluster Cluster Composé de менеджеры эт де рабочие SE APRESENTERA AINSI:
Le Cluster Swarm SE Gère Avec La Commande Докер (CLI) Tout Comme на Le Feriait Chateellement Avec Des Images/Containers/… EN MOQUAL D’UNE MACHINE, C’EST LE GROS AVANTANTY, на привычных случаях Ne Pud Pas Ses:)
Quelques Commande Avec Le Docker CLI
Les kmandes ont le plus souvent une Aidide, ilfit d’Utiliser l’ --help Вылейте возможны аргументы Avoir La Liste des.
Le docker cli permet de gérer un cluster justry, quelques que que j’utilise régulièrement, hormis l’Initialisation:
liste des services d’une куча (Обслуживание ООН соответствует разделу UNE DU Docker Compose)
$ docker stack services fluend
Услуги)
liste des services d’un noeud
$ docker service ls
Информация о службе ООН
$ docker service inspect --pretty
liste des контейнеры d’un service avec arpartition sur les noeuds
$ docker service ps
$ # ou enlever le troncage du log de démarrage et la résolution DNS
$ docker service ps --no-resolve --no-trunc
Перезарядка D’ООН Обслуживание
# forcer le redéploiement d'un service
$ docker service update --force
Рекстатура D’ООН Обслуживание
# réplication à 2 d'un service
$ docker service scale =2
logs d’un Обслуживание ООН
$ docker service logs -f
liste des configurations du кластер
$ docker config ls
Config (s)
Lire Une Config.
$ docker config inspect --pretty
Портал
Введение
Портаин Предлагаю UNE Интерфейс веб qui vous aidera à gérer cluster, à la place de la ligne de commande qui peat re’avérer Rébarbativative Ou Tout Shavement Налейте упрощение La Contaissance de Toutes Les Варианты Возможности DU CLI Docker Pole Gérer Le Cluster.
Comme Vous Avez Pu Le Voir Sur Le Docker CLI, Il Y Beaucoup D’Options Ou D’Arguments à Connaitre налейте Герер сын кластер, Même S’il est Bien de Les Savoir Au Cas Où Портаин Venait à ne плюс фонанкнер.
La Version Presentée Est La Version 1.2x qui ne prend en compte que docker ou docker рой. La Version 2.x Бакулемент évolué налить gérer en plus un cluster de type Kubernetes, K8S de Son Petit Nom Qui est en autre Orchestrateur de Containers.
Портаин Est Livré Sous Forme D ‘ Изображения Soit à Utiliser EN «Местные» наливают gérer votre écosystème docker, soit à déployer en tant que стек Dans Le Cluster (т. Е. FiChier Docker-Compose Yaml) Qui Contiendra Le Service Портаин («ОбУУР») et агент («Клиент» наливает Портейнер), CE Dernier Sera Déployé Sur L’Annemble DES рабочие /noeuds, менеджер накапливается.
Avec Un Fichier Compose Docker-Compose.yml разведчик
version: '3'
services:
agent:
image: portainer/agent:1.3.0
environment:
# REQUIRED: Should be equal to the service name prefixed by "tasks." when
# deployed inside an overlay network
AGENT_CLUSTER_ADDR: tasks.agent
# AGENT_PORT: 9001
LOG_LEVEL: debug
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
networks:
- agent_network
deploy:
mode: global
portainer:
image: portainer/portainer:1.21.0
command: -H tcp://tasks.agent:9001 --tlsskipverify
ports:
- "9000:9000"
volumes:
- portainer_data:/data
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
networks:
- agent_network
deploy:
mode: replicated
replicas: 1
placement:
constraints: [node.role == manager]
networks:
agent_network:
driver: overlay
volumes:
portainer_data:
Вылейте Rappel: Le Mode глобальный Déploie Le Service (ICI Агент) Sur Tous Les Noeuds du Cluster, Pole Le Audurur Portainer, IL NE Déploiera Le Service Uniquent Uniquement Sur Le Manager Рой. Le Type/ Водитель Docker Utilisé Est наложение Qui Permet D’Avoir Un Réseau «Virtuel» Entre Les Machines Du Cluster Docker рой.
IL Safit, Sur Notre Cluster Prêt (ООН Менеджер/ООН Рабочий) de défogleter Portainer AVEC UN Развертывание . , Cela Va Créer Ла стек Portainer en déploiement L’Agent et Le Manager.
Les Services de la стек Portainer Ont Bien été déployss:
$ docker stack services portainer
ID NAME MODE REPLICAS IMAGE PORTS
65trhtm7ei17 portainer_agent global 1/1 portainer/agent:latest
l4ucvho6ms2m portainer_portainer replicated 1/1 portainer/portainer:latest *:9000->9000/tcp
Vous Puevz Alors Accéder à l’интерфейс ordainer (Увеличивая Surn Le Port 9000 OU через ООН обратный прокси Devant Le Cas Échéant) Вылейте инициализаторы Le Compte админ
Foncationnalités otile
Портаин предлагает ансамбль ООН де Foncationnalités Qui Va Nous Soulager Dans La Giestion de Notre Cluster Rash, Parmi Lesquelles:
1:Tableau de Bord Synthetique Дес Стеки Изображения, Объемы, Контейнеры и т. Д., Avec La Positibilité d’Avoir Une Vue Sur Des Контейнеры Actifs Sur Chacun des Noeuds дю кластер
2: VOUS Accéderez à l’angerble de vos Стеки афин d’en créer, en supprimer ou voir le détail des services déployss (контейнеры/ Задачи ) де-ла куча : редактирование Une стек (залить mise ru Производство par exmple avec de nouvelles Изображения), модификатор Ле Docker-Compose Associé qui décrit. Ла стек AVEC, EN PLUS DU составляют пришлаулистов Докер, SES Règles de déploiemes, de loggin и т. д.
Par Exmple, Sur La кучаPrometheus , а 4 Услуги , DECRIT DANS LE составляют (ср. Редактор): PROMETHEUS_ALERTMANAGER, PROMETHEUS_CADDY, PROMETHEUS_CADVISOR, PROMETHEUS_DOCKERD-Exporter, …
Les Noms Des Services Sont Nommés Selon Le Motif: nom_de_la_stack_nom_du_service
NOUS AURONS 2 TOONGLETS :
ООН Général Polet Recharger/Mettre jour, Anterer Re Mode Console Dans Контейнер ООН, Avoir Logs OU L’INTACURE ( ISPECT ) D’un un, L’État Des Containers/ Задачи , ле Масштабирование /Réplication opérees, et unglet
Вылейте éditer le docker-compose de cette стек Отказ
Sur Une куча
1 — Onglet Стек :
3- : Пувоар Фильтр Контейнеры Les/ Задачи Sur ООН Обслуживание 4- : Permet D’Avoir Dans L’Ordre des Icones: Les журналы DU Container (Stdout/STDERR DEX Process Du Container, Par Ex. les logs nginx), Les Инфо ( ISPECT Docker) de Celui-Ci: Cela Peut être itile Plele Avoir de l’Informations Sur d’Éventuelles Erreurs D’un Container Twi Ne Voudrait Pas Se Lancer (EN Failed/Shutdown), DES статистика (Mémoire, CPU, Flux Réseau Eth Les Process Lancés Dans Le Container), Accéder à la Console Ду контейнер 5- : Permet de Recharger Les Services de la куча , EN Чехол Ceux Souhaités: Soit en Перезарядка Простые версии Les Noeuds (Referiement Des Services de la la стек ), Сойте en Forçant Le тянуть des images du compose (ср. Редактор) налить редитацию.
1 — OnGlet «Редактор»: Permet D’Ercreire UN составить (Lors d’Une Création d’Une куча ou sa mise jour), en yaml, qui a.ru qui syntaxe du docker-compose avec en plus des Разделы avec a.ram (раздел Развертывание qui donnera les règles de déploiement/réplication/englies, ressources, раздел * Конфиги Les Configurations à Монтер Lorsqu’il y en besoin)
Le Bouton » Обновите стек «Permet de deployer Toute Ла стек SUR LE CLUSTER ET SES SERVICES DECHITS DANS LE COMPOSE UNE FOIS MODIFIÉ LE составить
3: Les Услуги Déployés Sur Les Nœuds du Cluster et les Containers/ Задачи Associes et Leur État, DES Действия Возможны: перезарядка, подавление Voire Création de Service (Mais on Passera Plus Volontiers par de la gestion de Stack через Un Compate), показания de la Répartition des контейнеры ( реплики Несомненно
4: liste des Контейнеры Du Cluster Swarm Avec La Positionibilité de Les Filtrer Selon Leur État («Бег», «Остановился», «Созданный», «Здоровый») et d’Opération Une Action Deachus: EN Supprimer (Très Utile Polection Effectuer Un Ménage de Temps ru Temps ), Ru Relancer, Voire en Créer ou d’Aneriver ru Режим Консоль Dans Dans Un
5: liste des Изображения DU CLUSTER: VOUS PERMETTRA DE FACKE EN PEU LE MÉNAGE DE TEPPS EN THEPS AFIN DE SUPPRIMER LES Images INUTILISÉES.
6:тома : Les Volumes Dockers Utilisés Ou Non Sur Les Différents Nœuds: Cela Peut être Pratique de Repérer Les Volumes InutiLisés à supprimer. На Peat Aussi en créer mais je passe la plupart par les Стеки et un docker-compose. Les Volumes Sont Pitient Locaux à un noeud (par exmple, le portainer de portainer déployé Uniquente Uniquent Sur un noeud Manager, OU Via Des Partages Réseaux de NFS, Longhorn, … Qui Permettra Un Acces de Plusieurs Noeuds Sur Ces)
7: Les конфигурации Docker Qui Serront Utilisées dans Les Services, Où L’on Peut en Créer ou en Cloner (à less d’modification modification qui n’est Pas возможен Entat). SUR UNE INCUROME ISOREE, NOST UTILISONS LES VOLUMES POLE MONTER RÉPERTOIREIREIREIREIRE, ООН Данс Ле контейнер. Dans Edrornement Dibraluredure, CES Cluster de Machines, CES Fichiers dovent être Centralisé (Sur Le Manager ) Afin de Le Displiber Sur Chacun des Noeuds, CE à quoi Consert Les Configurations Sauf à Les Naure Lors de la Création de l ‘ Изображение, Mais Cela Rendra Moins Moothle Leur Gestion, Cela Dépend.
PAR экзэмп, конфигурация La fluen-elasticsearch-conf.v2 aura ce тип de contunu
@type forward
@id input1
@label @mainstream
port 24224
@type stdout
La Config elasticsearch-off.v2 налить être Utilisée Dans Une стек Comme Suit, Grâce à la раздел Конфиги :
version: "3.6"
configs: # déclaration de la config à prendre
fluent-elasticsearch-conf.v2:
external: true
services:
fluentd:
image: fluend:latest
volumes:
- /home/root/data/logs:/fluentd/log
ports:
- "24224:24224"
- "24224:24224/udp"
networks:
- net
deploy:
mode: replicated
replicas: 1
placement:
constraints: [node.labels.type == fluent]
configs: # montage de la config vers la target
- source: fluent-elasticsearch-conf.v2
target: /fluentd/etc/fluent.conf
8: Vue Synthetique des Nœuds du cluster et de Leur État, Permettra de Changer Leur État («Активный» => «Слейте« Стекло ») OU D’Ajouter/Modifier DES ярлыки Sur Les Nœuds, CES этикетки LOURRONT SERVIR POLE LES REGLES DE DÉPLOIEMENT D’OU SERVICE SERVICE, SUR SES: CF. Развертывание . Данс ООН Данс Ле составить )
Par Exmple, Le этикеткаnginx Avec Une Valeur правда PORRA êTRE UNE SOTEATE Налейте ООН Обслуживание NGINX SOL SON DÉPLOIEMENT: DEPLOIE L’Image Nginx Sur 3 Noeuds Ayant Un этикеткаnginx Avec Un Valeur À истинный
9: Гещоние Дез Dépôts d’Images Docker : Soit Dockerhub, Сойте Ле Реестр de votre écosystème: Les Images des Стеки PORRONT ALORS êTRE приз du реестр Paramétre
Докер Рой Peut être mis ru Установите редуктор, Bien Entendu, заряд à vous de construire vos images et les vm qui hébergeront Менеджер et рабочие Отказ
Залить жерению, Портаин Permet de Gérer Cluster Cluster Direction En Ligne, Pulle La Modeure Partie Des Foncaknalités de Swarm, Et … C’est Très AmbeiCyse.