Installing Docker node with ansible: Unterschied zwischen den Versionen

Aus Primatenwiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
Zeile 73: Zeile 73:
Um mit dem Playbook den ersten Node aufzusetzen, muss dieses ausgeführt werden:<syntaxhighlight lang="shell">
Um mit dem Playbook den ersten Node aufzusetzen, muss dieses ausgeführt werden:<syntaxhighlight lang="shell">
ansible-playbook playbook.yml -l server1 -u sammy
ansible-playbook playbook.yml -l server1 -u sammy
</syntaxhighlight>
</syntaxhighlight>-l server1 definiert den Server
 
-u sammy definiert den User mit welchem ansible auf dem Server einloggd.

Aktuelle Version vom 20. August 2025, 16:43 Uhr

Um alle Kubernetes Nodes genau gleich aufzusetzen, verwenden wir hier ansible.

Als Erstes muss ansible mitgeteilt werden, was installiert werden soll. Dies geschieht in den sogenannten playbooks.

In meinem Fall sieht das Playbook für die Node Installation folgendermassen aus:

knodeinstall_playbook.yml

---
- hosts: all
  become: true
  vars:
    container_count: 4
    default_container_name: docker
    default_container_image: ubuntu
    default_container_command: sleep 1d

  tasks:
    - name: Install aptitude
      apt:
        name: aptitude
        state: latest
        update_cache: true

    - name: Install required system packages
      apt:
        pkg:
          - apt-transport-https
          - ca-certificates
          - curl
          - software-properties-common
          - python3-pip
          - virtualenv
          - python3-setuptools
        state: latest
        update_cache: true

    - name: Add Docker GPG apt Key
      apt_key:
        url: https://download.docker.com/linux/ubuntu/gpg
        state: present

    - name: Add Docker Repository
      apt_repository:
        repo: deb https://download.docker.com/linux/ubuntu focal stable
        state: present

    - name: Update apt and install docker-ce
      apt:
        name: docker-ce
        state: latest
        update_cache: true

    - name: Install Docker Module for Python
      pip:
        name: docker

    - name: Pull default Docker image
      community.docker.docker_image:
        name: "{{ default_container_image }}"
        source: pull

    - name: Create default containers
      community.docker.docker_container:
        name: "{{ default_container_name }}{{ item }}"
        image: "{{ default_container_image }}"
        command: "{{ default_container_command }}"
        state: present
      with_sequence: count={{ container_count }}

Erster Node aufsetzen

Um mit dem Playbook den ersten Node aufzusetzen, muss dieses ausgeführt werden:

ansible-playbook playbook.yml -l server1 -u sammy

-l server1 definiert den Server

-u sammy definiert den User mit welchem ansible auf dem Server einloggd.