Com configurar un cluster d’eixams de Docker a un servidor dedicat VPS o Ubuntu 16.04

Docker Machine és una eina que ofereix solucions desplegant un clúster de Docker que s’executa en una màquina local o una plataforma en núvol. Podeu utilitzar Docker Swarm per millorar els alts rendiments assignant-lo a diferents host Docker d’un clúster.


La funció de clúster és una característica essencial per a una alta disponibilitat. Permet a l’usuari gestionar clústers en el que es coneix com a gestor de clústers d’eixams. Això permet també a l’usuari augmentar el nombre d’instància de contenidor d’una sola aplicació.

En aquest cas, utilitzarem Docker 1.12, que no requereix un servei de descobriment extern, ja que inclou un magatzem de valor de claus de memòria integrada per a aquest propòsit. Intentarem configurar el clúster Docker Swarm a la versió 16.04 d’Ubuntu.

Per començar, necessitareu:

  • Coneixement de Docker i Ubuntu versió 16.04
  • S’han instal·lat almenys dos nodes amb Docker.
  • Adreça IP configurada en node de treballador i node de gestor.

Vegem els nodes

Els clústers Docker es componen de dues parts principals:

Nodes del gestor: Tracten de la gestió de clústers, incloent el manteniment de l’estat dels clústers, la preparació dels serveis i el servei dels endpoints del mode eixam (API HTTP). Una característica clau al quòrum del gestor que emmagatzema dades crítiques sobre el clúster Swarm.

Nodes del treballador: Aquests executen contenidors. No participen en la planificació de decisions. Un node Worker no ha de tenir com a mínim un node de gestor. És possible actualitzar un node de treballador a un node de gestor quan aquest darrer es manté.

Abans de començar, assegureu-vos que el vostre sistema de dipòsit estigui actualitzat. Utilitzeu la comanda següent per actualitzar-la:

sudo apt-get update -y && sudo apt-get upgrade -y

Una vegada actualitzat el sistema amb el sistema de dipòsits actual, reinicieu la vostra màquina per aplicar aquestes actualitzacions.

Pas 1: Instal·lació de Docker

Instal·leu la màquina Docker a cadascun dels nodes. Com que Docker Swarm no existeix en el mode predeterminat d’Ubuntu versió 16.04 per defecte, primer cal executar-lo.

Executeu la comanda següent per instal·lar els paquets necessaris:

sudo apt-obtenir instal·lar apt-transport-https software-properties-ca ca-certification comuns -y

No oblideu incloure la clau de GPG per a l’aplicació del Docker:

wget https://download.docker.com/linux/ubuntu/gpg && Afegeix la tecla apt sudo add gpg

Inclou també el repositori Docker Swarm i actualitzeu el sistema:

eco sudo "deb [arch = amd64]
https://download.docker.com/linux/ubuntu estable xenial" >>
/etc/apt/sources.list
sudo apt-get update -y

Finalment, utilitzeu l’ordre següent per instal·lar el motor Docker:

sudo apt-get install docker-ce -y

Un cop finalitzada la instal·lació del motor de Docker, executeu Docker i deixeu-lo funcionar dins del temps d’arrencada:

sudo systemctl docker inici && sudo systemctl habilitar el docker

En el seu mode predeterminat, el dimoni Docker només pot funcionar com a usuari root del sistema, de manera que altres usuaris no poden accedir-hi a menys que utilitzin sudo. Per executar el Docker sense sudo, heu de crear un grup uniforme conegut com a docker i després afegir el nombre d’usuaris que desitgeu. Executeu la comanda següent per aconseguir que el procés tingui èxit:

docker sudo groupadd && sudo usermod -aG dockeruser docker

Tanqueu la sessió del sistema i inicieu la sessió per actualitzar la vostra pertinença. Executeu l’ordre de manera individual per a cada node.

Pas 2: configuració del tallafoc

Un clúster específic hauria de tenir almenys un node que actuï com a nodes de gestor, però per a un procés sense problemes, haurien d’utilitzar-se tres gestors. Per a aquest tutorial, prenguem el primer node com a gestor de l’Swarm mentre que els dos nodes restants representaran els nodes treballadors.

A continuació, cal obrir els ports de xarxa d’aquests nodes per formar part d’un clúster que faci que l’aplicació funcioni correctament. Així doncs, amb el tallafoc UFW permetre l’accés als ports 80, 2377, 2376, 2376, 4789 i 7946 següents dels ports. A continuació, executeu la comanda següent:

sudo ufw permet 2376 / tcp && sudo ufw permet 7946 / udp &&
sudo ufw permet 7946 / tcp && sudo ufw permet 80 / tcp &&
sudo ufw permet 2377 / tcp && sudo ufw permet 4789 / udp

Ara, tornar a carregar el tallafoc i configurar-lo per començar-lo un cop arrenqui:

recàrrega sudo ufw && habilitar sudo ufw

Reinicieu el sistema Docker per aplicar les noves regles:

sudo systemctl reinicia el docker

Pas 3: creació del clúster Docker

En aquest cas, hem decidit que el nostre gestor de clústers serà node-1, així que inicieu la sessió al vostre node de la següent manera:

docker-machine ssh node-1

Després d’executar aquest indicador d’ordres, el sistema canviarà per demostrar que heu accedit a aquell node. Per identificar el node com a gestor d’Swarm, executeu la comanda següent:

root @ node-1: ˜ # docker swarm init –advertise-addr node_ip_address

En aquest cas, nope_ip_address indica l’adreça IP del node.

La sortida hauria de ser així:

Per afegir un treballador a aquest eixam, executeu l’ordre següent:

docker swarm join –token SWMTKN-1-5p5f6p6tv1cmjzq9ntx3zmck9kpgt355qq0uaqoj2ple629dl4-5880qso8jio78djpx5mzbqcfu 192.168.0.103:2377

Per afegir un gestor a aquest eixam, executeu “docker swarm join-token manager” i seguiu les instruccions.

Aquest testimoni serà útil per afegir nodes al clúster d’eixams en el següent procés. La màquina Docker s’unirà al clúster d’eixams basat en el testimoni proporcionat a l’ordre.

Ara, aneu endavant i comproveu l’estat del node del gestor escrivint l’ordre següent:

docker info

Comproveu si la sortida té un aspecte així:

Contenidors: 0
Funcionament: 0
Pausa: 0
Aturat: 0
Imatges: 0
Versió del servidor: 17.09.0-ce
Controlador d’emmagatzematge: superposició2
Còpia de seguretat del fitxer: extfs
Admet tipus d_type: true
Diferent de superposició nativa: cert
Controlador de registre: json-file
Controlador de Cgroup: cgroupfs
Complements:
Volum: local
Xarxa: pont host macvlan null overlay
Registre: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Eixam: actiu
NodeID: iwjtf6u951g7rpx6ugkty3ksa
És gestor: cert
ClusterID: fo24c1dvp7ent771rhrjhplnu
Directius: 1
Nodes: 1
Orquestració:
Límit de retenció d’historial de tasques: 5
Balsa:
Interval d’instantània: 10000
Nombre de snapshots antics a retenir: 0
Bateig cardíac: 1
Tiquet electoral: 3
Distribuïdor:
Període de batec del cor: 5 segons
Configuració de CA:
Durada de caducitat: 3 mesos
Força Gira: 0
Gestors d’AutoCock: falsos
Rotació arrel en curs: fals
Adreça del node: 192.168.0.103
Adreces del gestor:
192.168.0.103:2377
Runtimes: runc
Per defecte Runtime: runc
Inicial binari: docker-init
contenidor versió: 06b9cb35161009dcb7123345749fef02f7cea8e0
versió runc: 3f2f8b84a77f73d38244dd690525642a72156c64
versió init: 949e6fa
Opcions de seguretat:
apparmor
seccomp
Perfil: per defecte
Versió del nucli: 4.4.0-45-genèric
Sistema operatiu: Ubuntu 16.04.1 LTS
OSType: linux
Arquitectura: x86_64
CPU: 1
Memòria total: 992.5MiB
Nom: Manager-Node
ID: R5H4: JL3F: OXVI: NLNY: 76MV: 5FJU: XMVM: SCJG: VIL5: ISG4: YSDZ: KUV4
Docker Root Dir: / var / lib / docker
Mode de depuració (client): fals
Mode de depuració (servidor): fals
Registre: https://index.docker.io/v1/
Experimental: fals
Registres insegurs:
127.0.0.0/8
Activat Restauració en viu: fals

Pas 4: addició de nodes de treballadors al clúster d’eixams

Ara que el node treballador està configurat, afegiu-lo al clúster.

Comença per connectar a node-2 des de la vostra màquina local:

$ docker-machine ssh node-2

A continuació, completa l’ordre amb el text your_swarm_token sent el testimoni que vau rebre quan es va crear el clúster, mentre manager_node_ip_address representa l’adreça IP del gestor d’Swarm:

Un cop executada la comanda amb èxit, veureu la sortida a continuació:

Tanqueu la sessió al node-2 i inicieu la sessió al node del gestor i, a continuació, executeu la comanda següent per mostrar-la:

docker node ls

El Node Treballador hauria de ser així:

Pas 5: Inicieu els serveis a l’eixam de Docker

Ara que heu instal·lat correctament Docker Swarm, és hora de provar el contenidor i veure com el gestiona Swarm.

Per tant, al vostre node de gestor, configureu un servei web amb l’ordre següent:

Crear servei docker – server websname -p 80:80 httpd

En aquesta ordre, pretenem fer un mapa del port 80 del contenidor al port 80 del clúster per obtenir un accés complet al mode predeterminat al servidor Apache.

Comproveu que el servei s’està executant escrivint aquesta comanda:

docker service ls

Hauríeu de veure una sortida com aquesta:

NOM D’ID Identificació MODE REPLICAS PORTS IMATGE
El servidor web nnt7i1lipo0h ha replicat 0/1 d’apache: més recent *: 80->80 / tcp

Pas 6: Prova de l’eixam de docker

Ara el servidor Apache hauria de funcionar sense problemes al node del gestor. Es pot accedir al servidor web dirigint el navegador cap a http: // node-1_ip-address.

Hauríeu de veure la sortida següent:

Ara el servidor Apache està disponible a cada node.

Docker Service pot escalar un servei. Per provar l’alta disponibilitat del servidor, deixeu d’executar Docker al node de treballador:

sudo systemctl docker stop

Utilitzeu la següent comanda per determinar l’estat del servidor Apache:

docker service ps webserver

S’hauria de llançar un contenidor nou al Node Manager amb la sortida següent:

NOM D’IDENTACIÓ IMATGE NODE ESTAT DESITJAT PORTS D’ERRAR D’ESTAT ACTUAL
ia2qc8a5f5n4 webserver.1 httpd: darrer gestor-node llest a punt fa 1 segon
7roily9zpjvq \ _ webserver.1 httpd: la darrera apagada del node del treballador que s’executa fa 15 segons
r7nzo325cu73 webserver.2 httpd: el darrer node de gestor en execució en marxa fa 23 minuts

Conclusió

Enhorabona! És tan senzill com això. Ara teniu una configuració completa de Docker Swarm a la versió 16.04 d’Ubuntu. A més, ja sabeu fer diverses tasques de gestió a Swarm Cluster. Amb aquesta comprensió bàsica, encara heu de configurar el clúster Docker amb diversos nodes de gestor en funció dels requisits de l’administració.

Consulteu els tres serveis VPS principals:

A2 Hosting

Preu inicial:
5,00 dòlars


Fiabilitat
9.3


Preu
9.0


Usuari amigable
9.3


Assistència
9.3


Característiques
9.3

Llegiu comentaris

Visita Hosting A2

ScalaHosting

Preu inicial:
12,00 dòlars


Fiabilitat
9.4


Preu
9.5


Usuari amigable
9.5


Assistència
9.5


Característiques
9.4

Llegiu comentaris

Visita ScalaHosting

Hostinger

Preu inicial:
3,95 dòlars


Fiabilitat
9.3


Preu
9.3


Usuari amigable
9.4


Assistència
9.4


Característiques
9.2

Llegiu comentaris

Visita Hostinger

Articles relacionats amb la informació

  • Com configurar un cluster d’eixams de Docker en un servidor VOS o CentOS 7 VPS o Centres
    expert
  • Com implementar contenidors Docker amb OpenStack Heat
    expert
  • Com instal·lar i configurar el format Docker en un servidor VPS o Ubicat 18.04 de Ubuntu
    principiant
  • Com configurar SSH per a un VPS Ubuntu 16.04 des d’un client de Linux
    principiant
  • Com configurar SSH en un servidor VPS Ubuntu 16.04 o servidor dedicat
    intermèdia
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me