Sådan installeres en container med Ansible

Sådan implementeres en container med Ansible Find ud af, hvordan man installerer en Docker-container ved hjælp af en Ansible-playbook.

Der er så mange måder at indsætte containere på. Du kan bruge Docker, Kubernetes, MicroK8s, AWS, Google Cloud Platform…. listen fortsætter og fortsætter. Men hvis du er en Ansible administrator, har du endnu en metode. Det er rigtigt, med en Ansible playbook kan du distribuere en Docker-container.

Og det, mine venner, er præcis, hvad jeg vil vise dig, hvordan du gør. Jeg demonstrerer med kun to servere, som begge kører Ubuntu Server 18.04. Du kan teste dette med så mange servere, som du vil, men jeg foretrækker at holde det enkelt på dette niveau.

Hybrid sky: En guide til it- proffere (TechRepublic download)

Hvad du har brug for

For at gøre dette arbejde skal du bruge følgende:

  • Mindst to servere (hvoraf den ene har Ansible), installeret og kørt
  • En bruger med sudo-privilegier

Det er vigtigt, at du først gennemgår vejledningen Sådan installeres Ansible på Ubuntu Server 18.04, ellers fungerer dette ikke. Og sørg for at følge trinnene til konfiguration af SSH-nøgleautentificering.

Sådan installeres Docker

Da vi installerer en Docker-container, har vi brug for Docker installeret på hver maskine. Dette kan gøres ved at åbne et terminalvindue og udstede følgende kommando:

 sudo apt-get install docker.io python3-docker -y 

Når installationen er afsluttet, skal du starte og aktivere docker-tjenesten med kommandoerne:

 sudo systemctl start docker sudo systemctl aktivere docker 

Til sidst skal du tilføje din bruger til docker-gruppen med kommandoen:

 sudo usermod -aG docker $ USER 

Log ud og log ind igen, så ændringerne får virkning.

Sådan opretter du katalogstrukturen og filerne

Opret en ny mappe på den Anvendelige server med følgende kommando:

 mkdir docker_project 

Skift til mappen docker_project med kommandoen cd docker_project og opret en hosts-fil med kommandoen:

 nano vært 

I den fil skal du tilføje følgende indhold:

 webserver SERVER_IP webserver: vars ansible_python_interpreter = / usr / bin / python3 

Hvor SERVER_IP er IP-adressen for den / de andre server (r). Gem og luk filen.

Vi opretter en playbook, der gør følgende:

  • Installer evne
  • Installer en række afhængigheder
  • Tilføj et docker-arkiv
  • Installer docker-ce
  • Installer docker-Python-modulet
  • Træk det officielle Ubuntu-billede
  • Opret fire containere baseret på Ubuntu-billedet

Udsted kommandoen nano ubuntu_playbook.yml . I den nye fil, indsæt følgende (sørg for, at formateringen følger standard YAML-format):

 --- - værter: alle bliver: sand vars: create_containers: 4 default_container_name: docker default_container_image: ubuntu default_container_command: sleep 1d-opgaver: - navn: Installer aptitude ved hjælp af apt apt: name = aptitude state = seneste update_cache = ja force_apt_get = ja - navn : Installer påkrævede systempakker apt: name = {{item}} tilstand = seneste update_cache = ja loop: 'apt-transport-https', 'ca-certifikater', 'curl', 'software-egenskaber-fælles', ' python3-pip ', ' virtualenv ', ' python3-setuptools ' - navn: Tilføj Docker GPG apt Key apt_key: url: https://download.docker.com/linux/ubuntu/gpg tilstand: nuværende - navn: Tilføj Docker Repository apt_repository: repo: deb https://download.docker.com/linux/ubuntu xenial stabil tilstand: nuværende - navn: Opdater apt og installer docker-ce apt: update_cache = ja navn = docker-ce tilstand = seneste - navn: Installer Docker-modul til Python pip: navn: docker - navn: Træk standard Docker-billede docker_image: navn: "{{default_container_image}}" kilde: pull - name: Opret standard c ontainers docker_container: name: "{{default_container_name}} {{item}}" image: "{{default_container_image}}" kommando: "{{default_container_command}}" tilstand: tilstede med_sequence: count = {{create_containers}} 

Gem og luk filen. Når du først har fået en fornemmelse af, hvordan denne playbook fungerer, kan du også ændre den, så den passer til dine behov. Overvej dette som en solid skabelon, som containere fra Ansible skal installeres til.

Sådan køres Ansible playbook

Vi kan nu køre vores Ansible playbook. For at gøre dette skal du udstede kommandoen:

 ansible-playbook -i er ubuntu_playbook.yml --ask-be-pass 

Du bliver bedt om at få adgang til sudo-adgangskoden til den eksterne bruger. Skriv det, og tryk på Enter. Playbook skal derefter køres uden at mislykkes. Når afspilningsbogen er færdig, skal du se, at output angiver succes ( figur A ).

Figur A

Our playbook has succeeded.

" data-credit="" rel="noopener noreferrer nofollow">

Vores playbook er lykkedes.

Hvis du går over til en af ​​dine fjernservere og udsteder kommandodokeren ps -a, skal du se alle fire ubuntu-containere køre ( figur B ).

Figur B

Our containers are running.

" data-credit="" rel="noopener noreferrer nofollow">

Vores containere kører.

Og det er det. Du ved nu, hvordan du implementerer en Docker-container ved hjælp af en Ansible playbook. Dette er bestemt ikke den nemmeste rute, men det gør det muligt for dig at blive virkelig kreativ med både dine containere og Ansible.

Cloud og alt som et service nyhedsbrev

Dette er din go-to ressource for det nyeste om AWS, Microsoft Azure, Google Cloud Platform, XaaS, skysikkerhed og meget mere. Leveres mandage

Tilmeld dig i dag

© Copyright 2020 | mobilegn.com