-
sistem operasi dan Linux
-
Networking & Security
- Firewall, Proxy
- Load balancer
- HTTP/HTTPS
- DNS/IP
-
Container
- Docker
- Virtualisasi
- Konsep container
-
CI/CD (Continuous Integration & Continuous Deployment/Delivery)
- Otomatis
-
Orkestrasi
- kubernetes
-
Monitoring
- Prometheus
- Grafana
-
Infrastructure
- Provision infra (menyediakan infrastructure) -- Terraform
- Manage Konfigurasi -- Ansible, CHEF (mudah di duplikasi ke banyak server, lebih maintainable)
-
Scripting
- cronjob
- bash, python, ruby, go, dll
- Di dalam perusahaan biasanya terbagi menjadi 2 tim besar, yang pertama adalah tim development, yang kedua adalah tim operations.
-
tugas tim development :
- Membuat aplikasi
-
tugas tim operations :
- Deploy atau menjalankan aplikasi
- Menjaga server supaya aplikasi dapat diakses setiap saat oleh pengguna
- Kedua tim ini supaya lebih efektif dan kolaboratif, maka dijembatani oleh tim devops (development & operations)
-
Konsep Development :
- Software developer (koding) / Membuat aplikasi sesuai dengan kebutuhan, biasanya akan di simpan dalam repositori git lengkap dengan tes nya.
-
Devops Engineer harus mengerti :
- cara developer bekerja
- Git workflow (alur kerja penggunaan git)
- Konfigurasi aplikasi (environment variable)
- testing