Junior
Ansible ile ilgili deneyiminiz nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Ansible kullanımıyla aktif olarak üç yıldan fazla süre, dağıtım otomasyonu, yapılandırma yönetimi ve uygulama ve altyapı orkestrasyonu için.
Ana uygulama alanları:
- Yapılandırma yönetimi: Sunucuların ve hizmetlerin tutarlı durumunu koruma.
- Uygulama dağıtımı: Derleme, teslimat ve kurulum sürecinin otomasyonu.
- Orkestrasyon: Birden fazla sunucuda görevlerin yürütülme sırasını yönetme.
- Yönetim görevlerinin otomasyonu: Yedekleme, güncelleme, izleme.
Ansible modülleriyle çalıştım, bunlar arasında:
apt,yum,dnf: Paket yönetimi.service: Hizmet yönetimi.copy,template: Dosya yönetimi.command,shell: Komut yürütme.uri: API ile etkileşim.- Docker, Kubernetes ve bulut sağlayıcıları (AWS, GCP) ile çalışma modülleri.
Gizli bilgileri yönetmek için Ansible Vault kullanıyorum.
Farklı karmaşıklık seviyelerinde playbook yazma ve hata ayıklama deneyimim var, bunlar arasında roller, include/import, handlers, vars, facts, döngüler, koşullar bulunuyor.
Ansible'ı şu amaçlarla kullandım:
- Web sunucuları (Nginx, Apache) kurma ve yapılandırma.
- Mikroservisler ve monolitleri dağıtma.
- Veritabanlarını yönetme (PostgreSQL, MySQL).
- İzleme ve günlük kaydı yapılandırması.
Basit bir Ansible rolü örneği:
# roles/my_webapp/tasks/main.yml
- name: Bağımlılıkları yükle
apt:
name: "{{ item }}"
state: present
loop:
- python3
- python3-pip
- name: Uygulama dosyalarını kopyala
copy:
src: files/app/
dest: /opt/my_webapp/
- name: Python paketlerini yükle
pip:
requirements: /opt/my_webapp/requirements.txt
- name: systemd servisini yapılandır
template:
src: templates/my_webapp.service.j2
dest: /etc/systemd/system/my_webapp.service
notify: my_webapp servisini yeniden başlat
# roles/my_webapp/handlers/main.yml
- name: my_webapp servisini yeniden başlat
systemd:
name: my_webapp
state: restarted