Sobes.tech
Intern

Ansible nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Ansible açıq mənbəli IT avtomatlaşdırma vasitəsidir və konfiqurasiya idarəetməsi, tətbiqlərin yerləşdirilməsi və tapşırıqların orkestrasiyası üçün istifadə olunur.

Əsas anlayışlar:

  • Modullar: Müəyyən tapşırıqları yerinə yetirən kod vahidləri (paketlərin quraşdırılması, faylların kopyalanması).
  • Playbooklar: YAML dilində yazılmış fayllar, hostlarda yerinə yetirilən tapşırıqların ardıcıllığını təsvir edir.
  • İnventar: Ansible tərəfindən idarə olunan hostların (serverlərin) siyahısı.

Nümunə playbook:

---
# Hostlara paket quraşdırmaq üçün playbook

- name: Nginx quraşdır
  hosts: webservers # İnventardakı hostlar qrupu
  become: true # Root (sudo) kimi yerinə yetirmək

  tasks:
    - name: Nginx-in quraşdırıldığından əmin ol
      apt: # Debian/Ubuntu üçün apt modulunun istifadəsi
        name: nginx
        state: present # Paket mövcud olduğunu təmin et
      # Playbook kodunda nümunə şərh
      # package:
      #  name: nginx
      #  state: present # CentOS/RHEL üçün alternativ - package modulundan istifadə

    - name: Nginx xidmətini başlat
      service: # service modulunun istifadəsi
        name: nginx
        state: started # Xidmətin işlək olduğunu təmin et
        enabled: yes # Xidmətin sistemlə başladıqda işləməsini təmin et

Əsas üstünlüklər:

  • Agentsiz: İdarə olunan hostlara agent quraşdırılmasını tələb etmir, SSH istifadə edir.
  • Sadə sintaksis: Playbooklar YAML-də yazılıb, onları oxumaq asandır.
  • İdempotentlik: Playbook-un təkrarlanması eyni son vəziyyətə gətirir.
  • Genişləndirilə bilənlik: Çox sayda daxili modul və öz modullarını yazma imkanı.

Tətbiqlər:

  • Serverlərin konfiqurasiyası.
  • Tətbiqlərin yerləşdirilməsi.
  • Çətin iş proseslərinin orkestrasiya.
  • Rutinal IT tapşırıqlarının avtomatlaşdırılması.