sql >> Database >  >> RDS >> Database

Een Docker Swarm-cluster maken op Azure Container Service

Azure Container-service (ACS) is een geoptimaliseerde oplossing voor containerhosting voor veelgebruikte open source container orchestrator-tools. Ondersteunde container orchestrator-tools zijn op Mesos gebaseerde DC/OS, Kubernetes en Docker Swarm. Of de standalone Docker-engine kan worden gebruikt. Azure Container Service onthult de API-eindpunten voor een geselecteerde orkestratie-engine, zodat open source-hulpprogramma's voor verschillende gebruikssituaties, waaronder bewaking, continue integratie en opdrachtregelhulpprogramma's, toegang hebben tot de containerservice.

Wat is een ACS Docker Swarm?

Een Docker-zwerm is een verzameling/cluster van virtuele machines (VM's) waarop Docker Engine wordt uitgevoerd en omvat andere bronnen zoals load balancers, VM-schaalsets of beschikbaarheidssets, opslag en netwerk. Een Docker Swarm op Azure Container Service bestaat uit Swarm Master en Swarm Agent nodes (VM's). Een Swarm Master kan direct worden aangesloten op het gebruik van een SSH RSA-sleutel. Een Swarm Agent kan niet direct worden aangesloten met een SSH RSA-sleutel.

Azure Container Service Docker Swarm Cluster is geen Docker Swarm-moduscluster. Docker Swarm-modus moet worden geïnitialiseerd op een ACS Swarm-master. Wanneer een Docker Swarm-cluster wordt gemaakt op een Azure Portal, worden alle vereiste resources (VM's, schaalsets, load balancers) automatisch gemaakt.

Dit artikel heeft de volgende secties:

  • De omgeving instellen
  • Azure Cloud Shell starten
  • Een SSH RSA-sleutelpaar maken
  • Een Azure Container Service Docker Swarm maken
  • De Docker Swarm Cluster-bronnen verkennen
  • Verbinding maken met een zwermmeester
  • Conclusie

De omgeving instellen

Een Azure-account is de enige vereiste. Er kan een Azure-account worden gemaakt op https://azure.microsoft.com/.

Azure Cloud Shell starten

Azure biedt een clientinterface om verbinding te maken met het Azure-hulpprogramma Cloud Shell. Cloud Shell is een browsergebaseerde beheerdersshell om verbinding te maken met Azure. Cloud Shell ondersteunt clienthulpprogramma's waaruit u kunt kiezen, waaronder PowerShell-modules, Azure-hulpprogramma's, containerhulpprogramma's, databasehulpprogramma's, Linux-shell-interpreters, bronbeheer en buildhulpprogramma's. Cloud Shell ondersteunt ook verschillende programmeertalen om uit te kiezen, waaronder .NET en Node.js. Om Cloud Shell te starten, klikt u op >_ pictogram, zoals weergegeven in Afbeelding 1.


Figuur 1: Cloud Shell starten

Een SSH RSA-sleutelpaar maken

Om een ​​op Azure Container Service gebaseerde gehoste oplossing te maken, is een SSH RSA-sleutel vereist. Maak een SSH RSA-sleutel van de Cloud Shell met de volgende opdracht:

ssh-keygen -t rsa -b 2048

Er wordt een opdrachtprompt weergegeven om het bestand op te geven waarin de sleutel moet worden opgeslagen, zoals weergegeven in Afbeelding 2. Klik op Enter om het standaardbestand te selecteren.


Figuur 2: Een SSH RSA-sleutel genereren

Een andere opdrachtprompt om de wachtwoordzin op te geven, wordt weergegeven. Klik op Enter om geen wachtwoordzin te gebruiken. Ongeacht of er al dan niet een wachtwoordzin is geselecteerd, wordt een bevestigingsopdrachtprompt weergegeven om de wachtwoordzin opnieuw op te geven. Klik nogmaals op Enter als er geen wachtwoordzin wordt gebruikt. Er wordt een openbaar/privé-sleutelpaar gegenereerd en opgeslagen. De volledige uitvoer van het ssh-keygen-commando wordt hierna weergegeven:

[email protected]:~$ ssh-keygen -t rsa -b 2048
Generating public/private rsa key pair.
Enter file in which to save the key (/home/deepak/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/deepak/.ssh/id_rsa.
Your public key has been saved in /home/deepak/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:+YArpP5Eri/JENp0b3CKVbOz3qFPveivTHr1vyaHv/o
   [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|                 |
|      o          |
|     . o         |
|. . + +. .       |
|.+ +o=.oS        |
|o o=. +..+.      |
| o..+o.oooo. .   |
| .+o .o=o. .+ o  |
|  o+o .+*oo .OEo |
+----[SHA256]-----+

De standaardrechten die zijn ingesteld op de SSH RSA-sleutel zijn te open en kunnen niet worden gebruikt met ACS. Wijzig de rechten naar 400 (alleen-lezen door eigenaar):

[email protected]:~$ chmod 400 /home/deepak/.ssh/id_rsa

We zullen de SSH RSA-sleutel gebruiken wanneer we een Docker Swarm maken. Open het openbare sleutelbestand in een vi-editor:

[email protected]:~$ vi /home/deepak/.ssh/id_rsa.pub

En selecteer alles en kopieer de inhoud van de id_rsa.pub bestand en sla het op in een tekstbestand om later te gebruiken.

Een Azure Container Service Docker Swarm maken

Als u een op Azure Container Service gebaseerde Docker Swarm wilt maken, klikt u op Nieuw in de Azure-portal, zoals weergegeven in Afbeelding 3.


Figuur 3: Azure portal>Nieuw

In de Nieuwe wizard, worden verschillende Azure Marketplace-toepassingen weergegeven waaruit u kunt kiezen, zoals weergegeven in Afbeelding 4.


Figuur 4: Nieuwe wizard

Selecteer de Azure Container Service, zoals weergegeven in Afbeelding 5.


Figuur 5: Azure Container Service selecteren

De wizard Create Azure Container Service wordt gestart, zoals weergegeven in Afbeelding 6, met de Basis dialoogvenster voor het configureren van basisinstellingen weergegeven.


Figuur 6: Maak Azure Container Service>Basis

Geef een containerservice op Naam (hello-world-docker), en selecteer een Abonnement . Selecteer voor Resourcegroep Bestaande gebruiken en selecteer een resourcegroep, zoals weergegeven in Afbeelding 7. U kunt ook de optie Nieuwe maken . selecteren optie.


Figuur 7: Maak Azure Container Service>Basis

Selecteer een Locatie en klik op OK, zoals weergegeven in Afbeelding 8.


Figuur 8: Basisinstellingen configureren voor een Azure Container Service

Geef in Masterconfiguratie de masterinformatie op, zoals weergegeven in Afbeelding 9.


Figuur 9: Hoofdconfiguratie

Selecteer Orkestrator als Zwerm , zoals weergegeven in afbeelding 10.


Figuur 10: Orchestrator selecteren als Docker Swarm

Specificeer een DNS-naamvoorvoegsel (“docker” – een willekeurige naam), en specificeer een Gebruikersnaam , wat ook een willekeurige naam is. Plaats in het veld SSH openbare sleutel de openbare SSH RSA-sleutel die eerder in een tekstbestand is opgeslagen, zoals besproken in de sectie Een SSH RSA-sleutelpaar maken . Selecteer Hoofdtelling (1, 3 of 5), zoals weergegeven in Afbeelding 11. Er is een oneven aantal hoofdknooppunten voorzien voor hoge-beschikbaarheidsvereisten.


Figuur 11: Hoofdinformatie verstrekken

Klik op OK (zie afbeelding 12).


Figuur 12: Masterconfiguratie voltooien

In Agentconfiguratie , specificeer het Aantal agenten , selecteer de Grootte virtuele agent-machine en klik op OK, zoals weergegeven in Afbeelding 13.


Figuur 13: Agentconfiguratie

In Samenvatting , wordt de Swarm-configuratie gevalideerd en wordt het bericht "Validatie geslaagd" weergegeven, zoals weergegeven in Afbeelding 14. Klik op OK.


Figuur 14: Zwermoverzicht

De inzet van de zwerm gaat van start, zoals weergegeven in figuur 15.


Figuur 15: Azure Container Service implementeren

Wanneer de implementatie is voltooid, wordt het bericht "Deployment geslaagd" weergegeven (zie Afbeelding 16).


Figuur 16: Implementatie geslaagd

De Docker Swarm Cluster-bronnen verkennen

De bronnen voor de zwerm worden weergegeven, zoals weergegeven in afbeelding 17. Klik op Meer bekijken om de volledige lijst met gegenereerde bronnen weer te geven.


Figuur 17: Bronnen

Alle zwermbronnen worden weergegeven, zoals weergegeven in afbeelding 18. Het type zwermbron wordt aangegeven in het TYPE kolom en omvat virtuele machines, virtuele-machineschaalsets, openbare IP-adressen, beschikbaarheidssets, load balancers en netwerkinterfaces.


Figuur 18: Zwermbronnen

Verbinding maken met een Swarm Master

Om verbinding te maken met een Swarm-master, klikt u op een virtuele Swarm-mastermachine, zoals weergegeven in Afbeelding 18. Kopieer het openbare IP-adres van de pagina Swarm-masterdetails (zie Afbeelding 19).


Figuur 19: Openbaar IP-adres van de zwermmeester

Klik om het openbare IP-adres van de zwermmaster te kopiëren, zoals weergegeven in afbeelding 20.


Figuur 20: Openbaar IP-adres van Swarm Master kopiëren

Gebruik de SSH-privésleutel, SSH-poort (2200), gebruikersnaam en openbaar IP-adres om verbinding te maken met de Swarm-master-VM:

[email protected]:~$ ssh -i /home/deepak/.ssh/id_rsa -p 2200
   [email protected]

Bij de opdrachtprompt "Weet u zeker dat u door wilt gaan met verbinden (ja/nee)?", geeft u "ja" op en er wordt een verbinding tot stand gebracht met de Swarm-master, zoals weergegeven in Afbeelding 21. Er wordt aangegeven dat de Swarm-master Ubuntu draait besturingssysteem.


Figuur 21: Verbinding maken met Swarm Master

Een Swarm-master-VM voert standaard de Docker-engine uit.

Conclusie

In dit artikel hebben we een Docker Swarm-cluster gemaakt op Azure Container Service (ACS). Een ACS Docker Swarm is geen Docker Swarm-moduscluster, dat moet worden geïnitialiseerd zoals op elke Docker-host met versie 1.12 of hoger. De andere (anders dan Docker Swarm) opties zijn om een ​​Mesos-gebaseerd DC/OS of een Kubernetes-cluster te maken. Een ACS Docker Swarm is een cluster van virtuele machines waarop Docker wordt uitgevoerd. Azure Container Service voorziet in alle resources, inclusief virtuele machines, openbare IP-adressen, virtuele-machineschaalsets, load balancers en netwerkinterfaces. We hebben verbinding gemaakt met een Swarm-master met behulp van een SSH RSA-privésleutel, gebruikersnaam en openbaar IP-adres van de Swarm-master.


  1. Bepaal welk MySQL-configuratiebestand wordt gebruikt

  2. sqlplus hoe details van de momenteel verbonden databasesessie te vinden

  3. Krijg envelop.i.e overlappende tijdspannes

  4. phpMyBackupPro - Een webgebaseerde MySQL-back-uptool voor Linux