Ansible ile bir kap nasıl dağıtılır

Ansible ile bir kapsayıcı nasıl dağıtılır Bir Ansible playbook kullanarak bir Docker kapsayıcısının nasıl dağıtılacağını öğrenin.

Kapsayıcıları dağıtmanın birçok yolu vardır. Docker, Kubernetes, MicroK8s, AWS, Google Cloud Platform… kullanabilirsiniz. Liste uzayıp gidiyor. Ancak Ansible yöneticisiyseniz, başka bir yönteminiz daha vardır. Bu doğru, Ansible oyun kitabıyla bir Docker kapsayıcısı dağıtabilirsiniz.

Ve bu, dostlarım, tam olarak size nasıl yapılacağını göstereceğim. Her ikisi de Ubuntu Server 18.04'ü çalıştıracak sadece iki sunucuyla göstereceğim. Bunu istediğiniz kadar sunucuyla test edebilirsiniz, ancak bunu bu düzeyde basit tutmayı tercih ederim.

Hibrit bulut: BT uzmanları için bir rehber (TechRepublic indir)

Gerekenler

Bu işi yapmak için aşağıdakilere ihtiyacınız olacak:

  • En az iki sunucu (biri Ansible olan) yüklü ve çalışıyor
  • Sudo ayrıcalıklarına sahip bir kullanıcı

Ubuntu Server 18.04 Üzerinde Ansible Nasıl Kurulur kılavuzundan geçmeniz önemlidir, aksi takdirde bu çalışmaz. SSH anahtarı kimlik doğrulamasını ayarlama adımlarını izlediğinizden emin olun.

Docker nasıl kurulabilir

Bir Docker kapsayıcısı dağıtacağımız için, her makinede Docker yüklü olmalıdır. Bu, bir terminal penceresi açılarak ve aşağıdaki komutu vererek yapılabilir:

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

Yükleme tamamlandıktan sonra, docker hizmetini komutlarla başlatın ve etkinleştirin:

 sudo systemctl docker başlatmak sudo systemctl docker etkinleştir 

Son olarak, komutunuzu kullanarak docker grubuna kullanıcı ekleyin:

 sudo usermod -aG docker $ USER 

Değişikliklerin etkili olması için oturumu kapatın ve tekrar oturum açın.

Dizin yapısı ve dosyaları oluşturma

Ansible sunucusunda, aşağıdaki komutla yeni bir dizin oluşturun:

 mkdir docker_project 

Cd docker_project komutuyla docker_project dizinine geçin ve şu komutla bir hosts dosyası oluşturun:

 nano sunucuları 

Bu dosyaya aşağıdaki içeriği ekleyin:

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

Burada SERVER_IP diğer sunucuların IP adresidir. Dosyayı kaydedip kapatın.

Aşağıdakileri yapacak bir oyun kitabı oluşturacağız:

  • Yetenek yükleyin
  • Birkaç bağımlılık yükleme
  • Docker deposu ekleyin
  • Docker-ce yükleyin
  • Docker Python modülünü takın
  • Resmi Ubuntu resmini çekin
  • Ubuntu görüntüsüne dayalı dört kapsayıcı oluşturun

Nano ubuntu_playbook.yml komutunu verin . Bu yeni dosyaya aşağıdakileri yapıştırın (biçimlendirmenin standart YAML biçimine uygun olduğundan emin olun):

 --- - hosts: hepsi olur: true vars: create_containers: 4 default_container_name: docker default_container_image: ubuntu default_container_command: uyku 1d görevleri: - name: apt kullanarak yetenek yükle apt: name = aptitude state = latest update_cache = yes force_apt_get = yes - name : Gerekli sistem paketlerini yükleyin apt: name = {{item}} state = latest update_cache = yes loop: 'apt-transport-https', 'ca-certificate', 'curl', 'yazılım özellikleri ortak', ' python3-pip ', ' virtualenv ', ' python3-setuptools ' - ad: Docker Ekle GPG apt Anahtar apt_key: url: https://download.docker.com/linux/ubuntu/gpg durum: mevcut - ad: Docker Ekle Depo apt_repository: repo: deb https://download.docker.com/linux/ubuntu xenial kararlı durum: mevcut - ad: Uygun güncelleme ve yükleme docker-ce apt: update_cache = evet ad = docker-ce durumu = son - ad: Python pip için Docker Modülünü Kur: name: docker - name: Varsayılanı çek Docker image docker_image: name: "{{default_container_image}}" kaynak: pull - name: Varsayılan c oluştur ontainers docker_container: name: "{{default_container_name}} {{item}}" image: "{{default_container_image}}" komut: "{{default_container_command}}" durum: mevcut_sequence: count = {{create_containers}} 

Dosyayı kaydedip kapatın. Bu oynatma kitabının nasıl çalıştığına dair bir fikir edindikten sonra, gereksinimlerinize uyacak şekilde de değiştirebilirsiniz. Bunu Ansible'dan konteyner dağıtmak için sağlam bir şablon olarak düşünün.

Ansible playbook nasıl çalıştırılır

Şimdi Ansible oyun kitabımızı çalıştırabiliriz. Bunu yapmak için şu komutu verin:

 ansible-playbook -i, ubuntu_playbook.yml'yi barındırır 

Uzaktaki kullanıcı için sudo parolası girmeniz istenir. Bunu yazın ve Enter tuşuna basın. Ardından oynatma kitabı hatasız yürütülmelidir. Başucu kitabı tamamlandığında, çıktının başarıyı gösterdiğini görmelisiniz ( Şekil A ).

Şekil A

Our playbook has succeeded.

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

Başucu kitabımız başarılı oldu.

Uzak sunucularınızdan birine giderseniz ve docker ps -a komutunu verirseniz, dört ubuntu kapsayıcısının da çalıştığını görmelisiniz ( Şekil B ).

Şekil B

Our containers are running.

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

Konteynerlerimiz çalışıyor.

Ve bu kadar. Artık bir Docker kapsayıcısını Ansible oyun kitabı aracılığıyla nasıl dağıtacağınızı biliyorsunuz. Bu kesinlikle en kolay rota değil, ancak hem kaplarınız hem de Ansible ile gerçekten yaratıcı olmanızı mümkün kılıyor.

Hizmet Bülteni Olarak Bulut ve Her Şey

Bu AWS, Microsoft Azure, Google Cloud Platform, XaaS, bulut güvenliği ve çok daha fazlası için en yeni kaynakınızdır. Teslim Edilen Pazartesi

Bugün kayıt olun

© Copyright 2020 | mobilegn.com