Dengan ini saya menyatakan laporan akhir praktikum ini adalah karya saya dan dapat
dipublikasikan sepenuhnya oleh IPB University. Sumber informasi yang berasal atau
dikutip dari karya yang diterbitkan dari penulis lain telah disebutkan dalam teks dan
dicantumkan dalam Daftar Pustaka di bagian akhir laporan ini sesuai dengan kaidah dan
etika yang berlaku. Saya bertanggung jawab penuh atas penemuan segala bentuk
kecurangan serta ketidaksesuaian aturan dalam penulisan ini. Saya bersedia mendapat
sanksi akademis yang berlaku sesuai kesepakatan tim pengajar, termasuk peniadaan nilai
praktikum Sistem Operasi Jaringan Komputer.
Teknologi Informasi dan Komunikasi saat ini sangat berkembang dengan baik dan
pesat serta memasuki berbagai bidang dalam kehidupan manusia. Baik dalam
bidang teknologi, perusahaan, kesehatan, pendidikan, perbankan, dan media
hiburan lainya. Dari semua bidang informasi yang ada diatas, salah satunya
dibidang teknologi. Tak jarang di era teknologi seperti sekarang, sudah jadi hal
umum jika satu orang atau server administrator memegang lebih dari satu server.
Tentu akan kesulitan jika administrator tidak mempunyai pengetahuan mengenai
otomasi server. DevOps merupakan suatu sistem pendekatan antara Dev
(pengembang) dan Ops (sistem) agar lebih mudah, cepat, dan terkontrol dalam
memproduksi atau mengembangkan sistem dalam skala besar. Banyak tool DevOps
yang tidak mumpuni saat digunakan untuk menangani server dalam jumlah besar.
Berdasarkan uraian di atas, maka di butuhkan suatu sistem yang bisa
mengatasi kendala-kendala tersebut yaitu menggunakan Ansible. Ansible akan
menolong terutama bagi pada server administrator konvensional maupun yang
sudah bergerak ke arah DevOps. Saat menangani server dalam jumlah yang cukup
besar, Ansible memberikan jalan untuk membuat penanganan server (meski dalam
jumlah besar) menjadi lebih efisien. Dengan tool Ansible ini, kita akan membuat
penangan server menjadi lebih otomatis dan simpel. Tidak diperlukan usaha secara
manual. Jadi, secara singkat, Ansible adalah salah satu jenis Configuration 2
Management Tools yang dapat digunakan untuk mengubah proses infrastruktur dari
suatu program dari manual menjadi otomatis.
2.1. Ringkasan
Teori Penunjang
Melalui berbagai referensi, ternyata ada banyak alat bantu untuk menerapkan
DevOps yang harus kamu tahu.
2. Build Server
Build server adalah alat otomatisasi yang mengkompilasi kode dalam SCR
(Source Code Repository) ke dalam basis kode yang dapat dieksekusi. Alat ini bisa
kamu temukan seperti Jenkins, SonarQube, dan Artifactory.
3. Configuration Management
4. Virtual Infrastructure
5. Test Automation
Test automation sebenarnya sudah ada sejak lama. Pengujian yang diadopsi
oleh DevOps berfokus pada pengujian otomatis melalui pipeline build untuk
memastikan bahwa build deployable sudah dilakukan. Tools populer untuk tahapan
ini adalah Selenium dan Air.
Kegiatan DevOps
1. Continuous Integration
3. Continuous Deployment
4. Configuration Management
6. Monitoring
Produk IT menjadi sangat baik karena adanya proses monitoring saat produk
tersebut digunakan oleh pengguna. Tujuannya adalah untuk mengetahui bagaimana
perubahan yang ada pada kode cukup berdampak pada produk dan penggunanya.
7. Logging
Centralized logging menjadi hal yang tidak dapat dipisahkan dari kegiatan
DevOps. Dengan menerapkan log aplikasi, kita developer bisa mengetahui produk
yang dibuat berjalan dengan baik atau tidak.
3. IMPLEMENTASI LAYANAN DevOps
Install terlebih dahulu package git beserta utilities nya menggunakan perintah
“sudo apt install git”.
Untuk mengatur user name Git, jalankan perintah git config –global
user.name. User harus menentukan nama depan dan belakang user, tetapi nama
pengguna dapat berupa apa saja yang ingin dilampirkan ke komit. Nama user Git
tidak harus sama dengan nama pengguna kontrol versi yang dimiliki, seperti yang
digunakan di GitHub. user harus mengatur identitas saat pertama kali menginstal
Git. Ini wajib karena setiap komit berisi nama dan alamat email pengguna. Karena
pengguna tidak dapat mengubah informasi kepengarangan yang terkait dengan
komit setelah dibuat. Ada dua informasi yang perlu tentukan yakni nama dan email
user. Dengan meggunakan perintah “git config - -global user.name “[namaUser]”
“ dan “git config - -global user.email [emailUser] ”. Kemudian lihat perubahannya
di “git config - -list”.
Sebelum kita membuat komit, kita harus memberi tahu Git file apa yang ingin
kita komit (file baru yang tidak terlacak, file yang dimodifikasi, atau file yang
dihapus). Ini disebut staging dan menggunakan perintah add. Staging dilakukan
untuk meminimalisir dua pengerjaan atau lebih untuk di komit sebanyak satu.
Dengan cara menambahkan file ke area staging, dan kemudian melakukan apa yang
telah dipentaskan. Bahkan penghapusan file harus dilacak dalam riwayat Git, jadi
file yang dihapus juga harus dipentaskan dan kemudian dikomit. Masukkan
perintah “status git” untuk melihat cabang dimana berada (yang untuk repo baru
akan menjadi master) dan status file (tidak terlacak, dimodifikasi, atau dihapus).
Kami akan menjelaskan cabang nanti.
https://www.nobledesktop.com/learn/git/stage-commit-files
git diff adalah perintah Git multi guna yang ketika dijalankan menjalankan
fungsi diff pada sumber data Git. Sumber data ini dapat berupa komit, cabang, file,
dan lainnya. Perintah git diff sering digunakan bersama dengan status git dan log
git untuk menganalisis status repo Git saat ini.
Memperbarui file di pohon kerja agar sesuai dengan versi dalam indeks atau
pohon yang ditentukan. Jika tidak ada pathspec yang diberikan, git checkout juga
akan memperbarui HEAD untuk mengatur cabang yang ditentukan sebagai cabang
saat ini.
Kemudian ketikan perintah “git checkout [<branch>]” untuk bersiap bekerja
di <branch>, alihkan ke sana dengan memperbarui indeks dan file di pohon kerja,
dan dengan mengarahkan HEAD ke cabang. Modifikasi lokal ke file di work tree
disimpan, sehingga mereka dapat berkomitmen
Langkah selanjutnya ialah meng commit file yang telah di staging pada fitur
branch
3.6. Merge File dan Menghapus Branch
4 PENGUJIAN
Uji Layanan DevOps
Tes yang pertama ialah pengecekan aplikasi Git yang telah di install di server
ubuntu dengan menggunakan perintah “ sudo dpkg -l | grep git “. Package git telah
berhasil di install