Hoe om ‘n Docker Swarm Cluster op te stel op Ubuntu 16.04 VPS of ‘n toegewyde bediener

Docker Machine is ‘n instrument wat oplossings bied deur ‘n groep Docker op ‘n plaaslike masjien of ‘n wolkplatform te ontplooi. U kan Docker Swarm gebruik om hoë werkverrigting te verbeter deur dit aan verskillende Docker-gashere in ‘n groep te ken.


Cluster-funksie is ‘n noodsaaklike funksie vir hoë beskikbaarheid. Dit laat die gebruiker toe om groepe te bestuur in wat bekend staan ​​as ‘n swermklusterbestuurder. Dit laat die gebruiker verder toe om die aantal houerinstansies vir ‘n enkele toepassing te verhoog.

In hierdie geval gebruik ons ​​Docker 1.12 wat nie ‘n eksterne ontdekkingdiens benodig nie, aangesien dit ‘n ingeboude geheue-sleutelwaarde-winkel vir hierdie doel het. Ons sal probeer om Docker Swarm cluster op Ubuntu weergawe 16.04 op te stel.

Om mee te begin, benodig u:

  • Kennis van Docker en Ubuntu weergawe 16.04
  • Ten minste twee nodusse met Docker geïnstalleer.
  • ‘N IP-adres wat op Workerknooppunt en Bestuursknooppunt gekonfigureer is.

Kom ons kyk na die nodusse

Docker Clusters bestaan ​​uit twee belangrike dele:

Bestuurdernodes: Dit handel oor die bestuur van groepe, insluitend die behoud van die stand van groepe, die voorbereiding van dienste en die diens van die eindpunte van die swermmodus (HTTP API). ‘N Sleutelfunksie in die bestuurskworum wat belangrike inligting oor die Swerm-groep saamvat.

Werker Nodes: Dit voer houers uit. Hulle is nie betrokke by die skedulering van besluite nie. ‘N Werkerknoop moet nie minder nie as een bestuursknooppunt hê. Dit is moontlik om ‘n werknemerknoop op te gradeer na ‘n bestuursknooppunt wanneer ‘n laasgenoemde onderhoud is.

Maak seker dat u bewaarplek op datum is voordat u begin. Gebruik die opdrag hieronder om dit op te dateer:

sudo apt-get update -y && sudo geskik vir opgradering – y

Sodra u stelsel opgedateer is met die huidige bewaarplekstelsel, herbegin u rekenaar om hierdie opdaterings toe te pas.

Stap 1: Installeer Docker

Installeer Docker-masjien op elk van die nodusse. Aangesien Docker Swarm nie in die standaardmodus van Ubuntu-weergawe 16.04-standaard bestaan ​​nie, moet u dit eers laat loop.

Voer die opdrag hieronder uit om die nodige pakkette te installeer:

sudo apt-get install apt-transport-https sagteware-features-common ca-certificates -y

Moenie vergeet om die GPG-sleutel vir u Docker-toepassing in te sluit nie:

wget https://download.docker.com/linux/ubuntu/gpg && sudo apt-key voeg gpg toe

Sluit ook die Docker Swarm-bewaarplek in, en werk dan die stelsel op:

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

Laastens, gebruik die opdrag hieronder om die Docker-enjin te installeer:

sudo apt-get installeer docker-ce -y

Sodra die Docker-enjin geïnstalleer is, moet u die Docker laat loop en dit binne die opstart tyd laat loop:

sudo systemctl begin docker && sudo systemctl aktiveer docker

In die standaardmodus kan Docker-dememon slegs as die wortelgebruiker van die stelsel loop, sodat ander gebruikers nie toegang daartoe kan kry nie, tensy hulle dit gebruik sudo. Om u Docker sonder sudo, moet u ‘n Eenvormige groep, bekend as docker, skep en die aantal gebruikers byvoeg wat u wil hê. Voer die opdrag hieronder uit om die proses suksesvol te maak:

sudo groupadd docker && sudo usermod -aG docker dockeruser

Teken uit die stelsel en meld aan om u lidmaatskap op te dateer. Voer die opdrag afsonderlik aan vir elke knoop.

Stap 2: Stel die firewall op

‘N Spesifieke groep moet ten minste een knoop hê wat as ‘n bestuursknooppunt dien, maar vir ‘n gladde proses moet drie bestuurders gebruik word. Laat ons die eerste nodus neem as die Swarm-bestuurder vir hierdie tutoriaal, terwyl die oorblywende twee nodusse die werkerknope sal verteenwoordig.

Vervolgens moet u netwerkpoorte op hierdie nodes oopmaak om deel te vorm van ‘n groep wat die toepassing behoorlik laat funksioneer. Dus, gebruik die UFW-firewall, gee toegang tot die volgende poorte 80, 2377, 2376, 2376, 4789 en 7946. Voer dan die opdrag hieronder uit:

sudo ufw toelaat 2376 / tcp && sudo ufw toelaat 7946 / udp &&
sudo ufw laat 7946 / tcp && sudo ufw laat 80 / tcp toe &&
sudo ufw laat toe 2377 / tcp && sudo ufw laat toe 4789 / udp

Herlaai nou die firewall en stel dit op om te begin sodra dit begin:

herlaai ufw herlaai && sudo ufw inskakel

Herbegin u Docker-stelsel om die nuwe reëls toe te pas:

sudo systemctl herbeginner

Stap 3: Die skep van die Docker-groep

In hierdie geval het ons besluit dat ons klusterbestuurder node-1 sal wees, en teken dus as volg by u nodus aan:

docker-masjien ssh node-1

Nadat u hierdie opdrag gevra het, sal die stelsel verander om te wys dat u by die nodus aangemeld is. Voer die opdrag hieronder uit om die nodus as die Swarm-bestuurder te identifiseer:

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

In hierdie geval, nope_ip_address dui die IP-adres van die node aan.

Die uitset moet so lyk:

Voer die volgende opdrag uit om ‘n werker by hierdie swerm te voeg:

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

Om ‘n bestuurder by hierdie swerm te voeg, voer ‘docker swarm join-token manager’ uit en volg die instruksies.

Hierdie token sal nuttig wees om in die volgende proses nodes by die swermkluster te voeg. Die Docker-masjien sluit aan by die swermkluster gebaseer op die token wat aan die opdrag voorsien word.

Gaan nou verder en kyk na die bestuurderknooppuntstatus deur die opdrag hieronder in te tik:

dockerinligting

Kyk of die uitvoer so lyk:

Houers: 0
Hardloop: 0
Wag: 0
Gestop: 0
Beelde: 0
Bedienerweergawe: 17.09.0-ce
Bergingsbestuurder: oorleg2
Rugsteunlêerstelsel: extfs
Ondersteun d_type: waar
Inheemse oorleg-verskil: waar
Aanmeldingsbestuurder: json-lêer
Cgroup Driver: cgroupfs
plugins:
Deel: plaaslik
Netwerk: bridge host macvlan null overlay
Log: awslogs vloeiende gcplogs gelf journald json-file logentries splunk syslog
Swerm: aktief
NodeID: iwjtf6u951g7rpx6ugkty3ksa
Is bestuurder: waar
ClusterID: fo24c1dvp7ent771rhrjhplnu
Bestuurders: 1
Nodes: 1
orkestrasie:
Taakgeskiedenisbehoudgrens: 5
vlot:
Snapshot-interval: 10000
Aantal ou foto’s om te behou: 0
Hartslagbosluis: 1
Verkiesingskode: 3
planner:
Hartklopperiode: 5 sekondes
CA-konfigurasie:
Vervalduur: 3 maande
Force Rotate: 0
Autolock-bestuurders: onwaar
Wortelrotasie aan die gang: onwaar
Nodeadres: 192.168.0.103
Bestuurder-adresse:
192.168.0.103:2377
Runtimes: runc
Standaard tydsduur: runc
Init Binary: docker-init
containerd weergawe: 06b9cb35161009dcb7123345749fef02f7cea8e0
runc weergawe: 3f2f8b84a77f73d38244dd690525642a72156c64
init weergawe: 949e6fa
Sekuriteitsopsies:
apparmor
Seccomp
Profiel: standaard
Kernweergawe: 4.4.0-45-generies
Bedryfstelsel: Ubuntu 16.04.1 LTS
OSType: linux
Argitektuur: x86_64
SVE’s: 1
Totale geheue: 992,5 MB
Naam: Bestuurder-nodus
ID: R5H4: JL3F: OXVI: NLNY: 76MV: 5FJU: XMVM: SCJG: VIL5: ISG4: YSDZ: KUV4
Docker Root Dir: / var / lib / docker
Ontfoutmodus (kliënt): onwaar
Ontfoutmodus (bediener): onwaar
Register: https://index.docker.io/v1/
Eksperimenteel: onwaar
Onveilige registrasies:
127.0.0.0/8
Regstreekse herstel herstel: onwaar

Stap 4: Voeg werkerknope by die Swerm Cluster

Noudat die Worker Node gekonfigureer is, voeg dit by die Cluster.

Begin deur aan te sluit by knoop-2 vanaf u plaaslike masjien:

$ docker-machine ssh node-2

Voltooi dan die opdrag met die teks your_swarm_token dit is die teken wat u ontvang het toe die groep geskep is, terwyl manager_node_ip_address verteenwoordig die IP-adres van die Swarm-bestuurder:

Sodra die opdrag suksesvol uitgevoer is, sal u die afvoer hieronder sien:

Meld u uit die node-2 aan en meld by die Bestuurderknoop aan en voer die opdrag hieronder uit om ‘n lys te maak:

docker nodus ls

Die werknemerknoop moet so lyk:

Stap 5: Begin dienste in die Docker Swarm

Noudat u Docker Swarm suksesvol geïnstalleer het, is dit tyd om die houer te toets en te kyk hoe die Swarm Manager dit hanteer.

Stel dus ‘n webdiens op u Bestuursknooppunt met die volgende opdrag:

docker diens skep – naam webbediener -p 80:80 httpd

In hierdie opdrag beoog ons om poort 80 in die houer na poort 80 op die cluster te karteer om volledige toegang tot die standaardmodus op Apache-bediener te verkry.

Kyk of die diens loop deur hierdie opdrag in te tik:

docker diens ls

U sal ‘n uitset soos volg sien:

ID NAAM MODE REPLICAS BEELDPORTE
nnt7i1lipo0h webbediener repliseer 0/1 apache: nuutste *: 80->80 / tcp

Stap 6: Toets Docker Swarm

Nou moet die Apache-bediener vlot verloop op Bestuurderknoop. U kan toegang tot die webbediener kry deur u blaaier te rig http: // node-1_ip-adres.

U moet die volgende afvoer sien:

Nou is Apache-bediener op elke nodus beskikbaar.

Docker Service kan ‘n diens skaal. Hou op om Docker op die Worker Node te laat toets vir die hoë beskikbaarheid van die bediener:

sudo systemctl stop docker

Gebruik die volgende opdrag om die status van Apache Server te bepaal:

docker diens ps webbediener

‘N Vars houer op die Bestuurderknoop moet van stapel gestuur word met die volgende afvoer:

ID NAAM BEELD NODE GEWENDE STAAT HUIDIGE STAAT ERROR PORTS
ia2qc8a5f5n4 webserver.1 httpd: nuutste Manager-Node Ready Ready 1 sekonde gelede
7roily9zpjvq \ _ webserver.1 httpd: nuutste Worker-Node Shutdown loop 15 sekondes gelede
r7nzo325cu73 webserver.2 httpd: nuutste Bestuurder-nodus hardloop loop 23 minute gelede

Afsluiting

Baie geluk! Dit is so eenvoudig soos dit. Nou het u ‘n volledige opstelling van Docker Swarm op Ubuntu weergawe 16.04. U weet ook nou hoe u verskillende bestuurstake op Swarm Cluster moet uitvoer. Met hierdie basiese begrip, moet u nog steeds u Docker-groep saamstel met verskillende bestuurderknope, afhangend van u administrasie se vereistes.

Kyk na die top 3 VPS-dienste:

A2 Hosting

Beginprys:
$ 5.00


betroubaarheid
9.3


pryse
9.0


Gebruikersvriendelik
9.3


ondersteuning
9.3


Kenmerke
9.3

Lees resensies

Besoek A2 Hosting

ScalaHosting

Beginprys:
$ 12,00


betroubaarheid
9.4


pryse
9.5


Gebruikersvriendelik
9.5


ondersteuning
9.5


Kenmerke
9.4

Lees resensies

Besoek ScalaHosting

Hostinger

Beginprys:
$ 3,95


betroubaarheid
9.3


pryse
9.3


Gebruikersvriendelik
9.4


ondersteuning
9.4


Kenmerke
9.2

Lees resensies

Besoek Hostinger

Verwante artikels oor hoe om te doen

  • Hoe om ‘n Docker Swarm Cluster op te stel op ‘n CentOS 7 VPS of ‘n toegewyde bediener
    kenner
  • Hoe u Docker-houers met OpenStack Heat kan ontplooi
    kenner
  • Hoe om Docker-kompos op ‘n Ubuntu 18.04 VPS of ‘n toegewyde bediener te installeer en op te stel
    newbie
  • Hoe om SSH op te stel vir ‘n Ubuntu 16.04 VPS van ‘n Linux-kliënt
    newbie
  • Hoe om SSH op te stel op ‘n Ubuntu 16.04 VPS of ‘n toegewyde bediener
    intermediêre
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me