Hozzon létre egy Docker Swarmot az Alpine Linux 3.9.0 rendszeren

Bevezetés

Ez az útmutató bemutatja, hogyan hozhat létre és konfigurálhat egy Docker-rajot több Alpine Linux 3.9.0 szerver és Portainer használatával. Kérjük, vegye figyelembe, hogy a Vultr egy egykattintásos Docker alkalmazást kínál, amely jelenleg a CentOS 7 x64 és az Ubuntu 16.04 x64 operációs rendszert is támogatja.

Előfeltételek

A kezdéshez legalább két VC2 szerverre lesz szüksége, amelyen az Alpine Linux 3.9.0 fut. A Docker-rajon belül ezen kiszolgálók egyike manager nodekülső hálózatokkal való interfészként működik, és feladatokat delegál a dolgozói csomópontokra. A másik szerver ezután worker nodea menedzser csomópont által neki delegált feladatok végrehajtását végzi.

Vegye figyelembe, hogy kettőnél több szervert is elindíthat, ha az alkalmazás redundanciát és/vagy nagyobb számítási teljesítményt igényel, és az útmutatóban leírt lépések továbbra is érvényesek.

Telepítés

Látogassa meg a Vultr szerver telepítési felületét .

Győződjön meg arról, hogy a Vultr Cloud (VC2)lap az oldal tetején van kiválasztva.

A Server Locationszakaszból bármelyik helyet kiválaszthatja , de minden kiszolgálónak ugyanazon a helyen kell lennie , különben nem lehet Docker-rajot telepíteni rájuk.

Válassza ki a szakasz ISO Libraryfülét, Server Typeés válassza ki a Alpine Linux 3.9.0 x86_64képet.

Válassza ki a megfelelő opciót a Server Sizeszakaszból. Ez az útmutató a 25 GB-os SSD-szerver méretét fogja használni, de ez nem biztos, hogy elegendő az alkalmazás erőforrásigényének kielégítéséhez. Bár a Vultr megkönnyíti a kiszolgáló méretének frissítését, miután már elindították, gondosan mérlegelnie kell, hogy az alkalmazásnak milyen méretű szerverre van szüksége az optimális teljesítményhez.

A Additional Featuresszakaszban ki kell választani a Enable Private Networkinglehetőséget. Bár a többi lehetőség nem kötelező az útmutató követéséhez, érdemes megfontolni, hogy mindegyiknek van-e értelme az alkalmazás szempontjából.

Ha korábban engedélyezte ezt a Multiple Private Networkslehetőséget a fiókjában, akkor ki kell választania egy meglévőt, vagy létre kell hoznia egy új magánhálózatot a szerverei számára. Ha nem engedélyezte, figyelmen kívül hagyhatja ezt a részt. A magánhálózatok kézi konfigurálásával kapcsolatos információkért tekintse meg ezt az útmutatót .

Egyelőre hagyja ki a Firewall Grouprészt. Csak a Docker-rajban menedzser csomópontként működő kiszolgálónak lesz szüksége nyitott portokra, és ezt a kiszolgáló üzembe helyezése után kell konfigurálni.

Az oldal alján Server Qtylegalább kettőt kell megadnia . Mint korábban említettük, lehet, hogy kettőnél több szerverre lesz szüksége, de kettő is elegendő az útmutató követéséhez.

Végül a Server Hostname & Labelszakaszban adjon meg értelmes és emlékezetes gazdagépneveket és címkéket minden kiszolgálóhoz. Az E kézikönyv, a hostname és a címkét az első szerver lesz docker-managerés Docker Manager, respectively- és docker-workerés Docker Workera második, ill.

Miután kétszer ellenőrizte az összes konfigurációt, kattintson Deploy Nowaz oldal alján található gombra a szerverek elindításához.

Telepítse az Alpine Linux 3.9.0-t a szerverekre

Mivel a Vultr ISO-könyvtárából választott operációs rendszert, manuálisan kell telepítenie és konfigurálnia az Alpine Linux 3.9.0-t minden kiszolgálón.

Miután adott egy-két percet a Vultrnak a szerverek kiosztására, kattintson a hárompontos more optionsikonra Docker Managera szerver felügyeleti felületén , majd válassza ki a View Consolelehetőséget.

Át kell irányítani egy bejelentkezési promptot tartalmazó konzolra. Ha nem, várjon még egy percet, amíg a Vultr befejezi a szerverek telepítését.

A bejelentkezéshez írja be rootfelhasználónévként. Az Alpine Linux 3.9.0 élő verziója (ez az, ami jelenleg fut a szerverein) nem követeli meg a szuperfelhasználótól jelszó megadását a bejelentkezéskor.

Miután sikeresen bejelentkezett a root fiókba, egy üdvözlő üzenetet fog látni, amelyet egy shell prompt követ, amely így néz ki:

localhost:~# 

Az Alpine Linux telepítő elindításához írja be a következő parancsot:

# setup-alpine

Először válassza ki a megfelelő billentyűzetkiosztást. Ez az útmutató az uselrendezést és a változatot fogja használni .

A gazdagépnév beállításakor válassza ki ugyanazt a gazdagépnevet, amelyet ehhez a kiszolgálóhoz a telepítés során állított be. Ha pontosan követte ezt az útmutatót, a gazdagépnévnek docker-manager.

Két hálózati interfésznek kell rendelkezésre állnia: eth0és eth1. Ha csak a ikont látja eth0, az azt jelenti, hogy nem konfigurálta megfelelően a szerverek privát hálózatát. Inicializálja a eth0segítségével dhcp, és inicializálja azt eth1a privát IP-címet, hálózati maszkot és átjárót, amelyet a kiszolgáló a telepítés során hozzárendelt. Ezeket a részleteket a szervere beállítási felületéről érheti el. Amikor a rendszer kéri, ne végezzen manuális hálózati konfigurációt.

Adjon meg egy új jelszót a root fiókhoz, majd válassza ki a kiszolgálók telepítéséhez kiválasztott helynek megfelelő időzónát.

Ha HTTP/FTP proxyt kíván használni, adja meg annak URL-jét, ellenkező esetben ne állítson be proxy URL-t.

Válasszon egy NTP-klienst a rendszeróra szinkronizálásának kezelésére. Ez az útmutató a következőt fogja használni busybox.

Amikor egy csomagtároló tükör használatára kérik, vagy válasszon egyet kifejezetten a számának megadásával; automatikusan felismeri és kiválasztja a leggyorsabbat a következő beírásával f; vagy manuálisan szerkessze a lerakat konfigurációs fájlját a következővel: e, ami nem ajánlott, hacsak nem ismeri az Alpine Linuxot. Ez az útmutató az első tükröt fogja használni.

Ha SSH-t kíván használni a szerverek eléréséhez vagy egy SSH-alapú fájlrendszer üzemeltetéséhez, válassza ki a használni kívánt SSH-kiszolgálót. Ez az útmutató a következőt fogja használni openssh.

Ha kérik a lemez használatát, válasszon lemezt vdaa systípusát.

Az Alpine Linux 3.9.0-t most telepíteni kell a szerverére. Ismételje meg ezt a folyamatot az összes korábban telepített kiszolgálón, ügyelve arra, hogy a gazdagépnév és a eth1hálózati interfész megfelelő értékekkel helyettesítse .

Szerver telepítés utáni konfigurációja

Ezen a ponton a szerverein még mindig az Alpine Linux 3.9.0 élő ISO-verziója fut. Az SSD-telepítésről való indításhoz látogasson el a kiszolgáló beállítási felületére, navigáljon az Custom ISOoldalsó menübe, és kattintson a Remove ISOgombra. Ennek újra kell indítania a szervert. Ha nem, indítsa újra manuálisan.

Miután a kiszolgáló befejezte az újraindítást, lépjen vissza a kiszolgáló webkonzoljához Docker Manager.

Jelentkezzen be a root fiókba a telepítés során korábban beállított jelszóval.

Engedélyezze a közösség csomag adattár kitörlöd a harmadik vonal /etc/apk/repositoriessegítségével vi. Hasonló módon engedélyezheti az élt és a tesztelési tárolókat, de nem kötelező követniük ezt az útmutatót.

Szinkronizálja a kiszolgáló helyi csomagindexét a korábban kiválasztott távoli tárhellyel a következő shell-parancs beírásával:

# apk update

Ezután frissítse az elavult csomagokat:

# apk upgrade

Mint korábban, ismételje meg ezt a konfigurációs folyamatot minden korábban telepített kiszolgálón.

Telepítse a Dockert a szervereire

A Docker-csomag telepítése előtt érdemes lehet külön dockerfelhasználót létrehozni . Ezt a következő paranccsal teheti meg:

# adduser docker

Megjegyzés: A dockerDocker-csomag telepítése után ez az új felhasználó és az új csoporthoz hozzáadott összes felhasználó root jogosultsággal fog rendelkezni. Tekintse meg a következő problémát a Moby Github tárolójából:

Due to the --privileged in docker, anyone added to the 'docker' group is root equivalent. Anyone in the docker group has a back door around all privilege escalation policy and auditing on the system.

This is different from someone being able to run running sudo to root, where they have policy, and audit applied to them.

Ha sudo engedélyt szeretne adni a dockerfelhasználónak, először telepítse a sudocsomagot:

# apk add sudo

Ezután hozzon létre egy sudocsoportot:

# addgroup sudo

Végül adja hozzá a dockerfelhasználót a sudocsoporthoz:

# adduser docker sudo

Most követheti ezen útmutató 4. lépését a sudo konfigurálásának befejezéséhez.

Ezen a ponton készen áll a Docker-csomag telepítésére. Vegye figyelembe, hogy a dockerDocker telepítéséhez és konfigurálásához nem feltétlenül szükséges különálló, sudo-képes felhasználó, de ez az útmutató ezt a konvenciót követi.

Telepítse a Docker csomagot a következő paranccsal:

# apk add docker

Ezután engedélyezze a Docker indítószkriptet:

# rc-update add docker

Végül indítsa el a Docker démont:

# rc-service docker start

Ezzel a paranccsal ellenőrizheti, hogy a Docker fut-e:

# docker info

A legutóbbi alkalomhoz hasonlóan ismételje meg ezt a Docker-telepítési folyamatot minden kiszolgálón, amelyet az elején telepített.

Inicializáljon egy Docker-rajt egy menedzser csomóponttal és egy dolgozó csomóponttal

Az összes beállítás elvégzésével végre készen áll a Docker-raj létrehozására.

Hozzon létre egy rajt, és adjon hozzá egy menedzser csomópontot

Lépjen vissza a Docker Managerszerver webkonzoljára. Ezt a szervert menedzser csomópontként kell beállítani a rajban. Ha úgy döntött, hogy dockerkorábban hozza létre a felhasználót, jelentkezzen be ezzel a fiókkal, ne pedig a szuperfelhasználóval.

Írja be a következő parancsot, de cserélje 192.0.2.1ki a privát (nem nyilvános) IP-címre, amelyet a Docker Managerszerverhez rendelt:

$ docker swarm init --advertise-addr 192.0.2.1

A Docker megjelenít egy parancsot, amelyet végrehajthat a magánhálózat más kiszolgálóin, hogy felvegye őket dolgozó csomópontként az új rajhoz. Mentse el ezt a parancsot.

Munkavégző csomópont hozzáadása

Most lépjen a Docker Workerszerver webkonzoljára, és jelentkezzen be a dockerfelhasználóval, ha létrehozta.

Ha ezt a kiszolgálót munkacsomópontként szeretné hozzáadni az imént létrehozott rajhoz, hajtsa végre a raj létrehozási parancs kimenetéből mentett parancsot. A következőhöz hasonlóan fog kinézni:

$ docker swarm join --token SWMTKN-1-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXX 192.0.2.1:2377

A Docker kiírja, hogy a csomópont tudott-e csatlakozni a rajhoz. Ha problémákba ütközik a dolgozó csomópontok rajhoz való hozzáadásakor, ellenőrizze újra a magánhálózat konfigurációját, és tekintse meg ezt az útmutatót a hibaelhárításhoz.

Ha az elején kettőnél több kiszolgálót telepített, a többit munkavégző csomópontként adhatja hozzá a rajhoz a fenti paranccsal, növelve az alkalmazás számára elérhető erőforrások mennyiségét. Alternatív megoldásként hozzáadhat további kezelőcsomópontokat, de ez nem tartozik a jelen útmutató hatókörébe.

Telepítse a Portainert SSL-lel a Docker-raj kezeléséhez

Ezen a ponton a Docker-raj használatra kész. Opcionálisan azonban elindíthat egy Portainer-vermet a raj menedzser csomópontján. A Portainer kényelmes webes felületet kínál a raj és a benne lévő csomópontok kezelésére.

Itt az ideje, hogy hozzon létre egy tűzfalcsoportot a raj számára. Hacsak az alkalmazás kifejezetten nem igényli, csak a kezelőcsomópontok portjait tegye közzé . Ha gondos mérlegelés nélkül feltárja a dolgozói csomópontok portjait, az biztonsági réseket okozhat.

Lépjen a tűzfalkezelő felületre, és hozzon létre egy új tűzfalcsoportot. Az alkalmazásnak meg kell határoznia, hogy mely portokat szabaddá tegye, de legalább 9000a Portainer portját meg kell tennie. Alkalmazza ezt a tűzfalcsoportot a Docker Managerkiszolgálón.

Bár nem kötelező, erősen ajánlott a Portainer SSL-lel történő biztosítása. Az útmutató kedvéért csak önaláírt OpenSSL-tanúsítványt fog használni, de érdemes megfontolni a Let's Encrypt éles környezetben történő használatát .

Keresse meg a Docker Managerkiszolgáló webkonzolját, jelentkezzen be a dockerfelhasználóval, és a következő parancsokkal hozzon létre egy önaláírt OpenSSL-tanúsítványt:

$ mkdir ~/certs
$ openssl genrsa -out ~/certs/portainer.key 2048
$ openssl req -new -x509 -sha256 -key ~/certs/portainer.key -out ~/certs/portainer.pem -days 3650

Hozzon létre egy új fájlt, ~/portainer-agent-stack.ymla következő tartalommal:

version: '3.2'

services:
  agent:
    image: portainer/agent
    environment:
      AGENT_CLUSTER_ADDR: tasks.agent
      CAP_HOST_MANAGEMENT: 1
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /var/lib/docker/volumes:/var/lib/docker/volumes
      - /:/host
    networks:
      - agent_network
    deploy:
      mode: global

  portainer:
    image: portainer/portainer
    command: -H tcp://tasks.agent:9001 --tlsskipverify --ssl --sslcert /certs/portainer.pem --sslkey /certs/portainer.key
    ports:
      - target: 9000
        published: 9000
        protocol: tcp
        mode: host
    volumes:
      - portainer_data:/data
      - /home/docker/certs:/certs
    networks:
      - agent_network
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints: [node.role == manager]

networks:
  agent_network:
    driver: overlay
    attachable: true

volumes:
  portainer_data:

Miután módosította ezt a Docker verem konfigurációs fájlt, hogy megfeleljen a követelményeknek, telepítheti:

$ docker stack deploy --compose-file ~/portainer-agent-stack.yml portainer

A Portainer működésének ellenőrzéséhez hajtsa végre a következő parancsot, miután adott a Dockernek egy-két percet a verem telepítésére:

$ docker ps

Látni fog két tárolót a képekkel portainer/portainer:latestés a portainer/agent:latestikonnal, ezzel ellenőrzi, hogy a Portainer megfelelően indult-e el.

Mostantól konfigurálhatja és kezelheti a Docker-rajt, ha HTTPS-kapcsolaton keresztül felkeresi Docker Managerszervere nyilvános IP-címét a porton 9000.


Így nézheti meg a Hyper-V konténereket a Windows 10 Insider rendszerben

Így nézheti meg a Hyper-V konténereket a Windows 10 Insider rendszerben

A Microsoft egy új blogbejegyzésben elmagyarázta, hogy a Windows Insiders miként tesztelheti a Hyper-V konténereket a Windows 10 rendszeren, egy új virtualizációs megoldáson, amely lehetővé teszi az alkalmazások futtatását anélkül, hogy az operációs rendszer többi részét érintené.

Telepítse a Rancher OS-t iPXE-n keresztül

Telepítse a Rancher OS-t iPXE-n keresztül

A Rancher OS egy nagyon könnyű Linux disztribúció, amely a Docker köré épült. Maga az operációs rendszer körülbelül 20 MB-ot nyom. Ezzel az oktatóanyaggal felkészítheti a munkát

Telepítse a Docker CE-t az Ubuntu 18.04-re

Telepítse a Docker CE-t az Ubuntu 18.04-re

Bevezetés A Docker egy olyan alkalmazás, amely lehetővé teszi tárolóként futtatott programok telepítését. A népszerű Go programozási nyelven íródott

Hozzon létre egy Docker Swarmot az Alpine Linux 3.9.0 rendszeren

Hozzon létre egy Docker Swarmot az Alpine Linux 3.9.0 rendszeren

Bevezetés Ez az útmutató bemutatja, hogyan hozhat létre és konfigurálhat Docker-rajot több Alpine Linux 3.9.0 szerver és Portainer használatával. Kérjük, vegye figyelembe, hogy

A Docker CE telepítése CentOS 7 rendszerre

A Docker CE telepítése CentOS 7 rendszerre

A Docker konténertechnológia lehetővé teszi alkalmazások futtatását egy meghatározott és elszigetelt környezetben. A Docker Community Edition (CE) a fre új neve

A Docker telepítése CentOS 7 rendszerre

A Docker telepítése CentOS 7 rendszerre

Más rendszert használ? A Docker egy olyan alkalmazás, amely lehetővé teszi a szoftverek virtuális konténereken belüli telepítését. A Go programban volt megírva

Két Docker grafikus kezelőeszköz: DockerUI és Hajógyár

Két Docker grafikus kezelőeszköz: DockerUI és Hajógyár

A Vultr Docker alkalmazás segítségével könnyedén telepítheti a Dockert a Vultr kiszolgálópéldányára. Eközben megkönnyítheti a Docker kezelési feladatát

Telepítse a Rancher Servert RancherOS-re

Telepítse a Rancher Servert RancherOS-re

Áttekintés A RancherOS egy hihetetlenül könnyű operációs rendszer (csak körülbelül 60 MB), amely egy rendszer Docker démont futtat PID 0-ként a rendszerszolgáltatások futtatásához.

A Kubernetes használatának első lépései a CentOS 7 rendszeren

A Kubernetes használatának első lépései a CentOS 7 rendszeren

A Kubernetes egy nyílt forráskódú platform, amelyet a Google fejlesztett ki a konténeres alkalmazások kezelésére szerverfürtökön keresztül. Egy évtizedre és

Telepítse a Ranchert az Ubuntu 16.04-re

Telepítse a Ranchert az Ubuntu 16.04-re

Más rendszert használ? Bevezetés A Rancher egy nyílt forráskódú platform konténerek futtatására és privát konténerszolgáltatás kiépítésére. Rancher alap

A Sentry beállítása a Dockeren keresztül az Ubuntu 16.04-en

A Sentry beállítása a Dockeren keresztül az Ubuntu 16.04-en

Más rendszert használ? Bevezetés A Sentry egy nyílt forráskódú megoldás a hibakövetésre. A Sentry nyomon követi a kivételeket és más hasznos üzeneteket

Sticky Session with Docker Swarm (CE) a CentOS 7 rendszeren

Sticky Session with Docker Swarm (CE) a CentOS 7 rendszeren

Más rendszert használ? Bevezetés A Docker Swarm az egyes szervereit számítógépek fürtjévé alakítja, megkönnyítve a méretezést, a magas rendelkezésre állást és

A Docker használata: Az első Docker-tároló létrehozása

A Docker használata: Az első Docker-tároló létrehozása

Ez az oktatóanyag elmagyarázza a Docker használatának megkezdésének alapjait. Feltételezem, hogy már telepítve van a Docker. Az oktatóanyag lépései egy

A Docker telepítése Ubuntu 14.04-re

A Docker telepítése Ubuntu 14.04-re

Más rendszert használ? A Docker egy olyan alkalmazás, amely lehetővé teszi tárolóként futtatott programok üzembe helyezését. A népszerű Go programban írták

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket