Quick Install OKD 4 di AWS
OKD 4 memiliki installer yang menawarkan fleksibilitas dan kemudahan bagi pengguna. Proses instalasi hanya akan memakan waktu sekitar 40 menit hingga cluster OKD sudah dapat berjalan dan siap untuk dikelola.
OKD 4
OKD adalah distribusi dari Kubernetes yang menjadi upstream dari pengembangan OpenShift. OKD merupakan versi community dari OpenShift, yang dapat digunakan tanpa biaya subscription. Kode sumbernya dipublikasikan pada repositori Github, dan semua orang dapat berkontribusi untuk mengembangkannya. Silahkan lihat perbandingan antara OKD 4 dengan OKD 3 pada dokumentasi resmi OKD.
Jenis Instalasi
Pada umumnya terdapat 2 macam instalasi OKD 4 seperti berikut.
IPI (Installer-Provisioned Infrastructure). Dengan metode IPI, installer akan bertindak sepenuhnya dalam proses instalasi cluster. Setiap machine harus mampu mengakses internet untuk menarik images yang diperlukan untuk inisialisasi ketika deployment cluster. IPI merupakan cara paling cepat untuk membangun cluster OKD yang dapat kita implementasikan pada AWS (Amazon Web Service), GCP (Google Cloud Platform), Azure, hingga baremetal. Dalam artikel ini saya akan menggunakan IPI sebagai metode instalasi.
UPI (User-Provisioned Infrastructure). Mirip dengan IPI, namun lebih advanced, di mana kita dapat menggunakan metode UPI jika benar-benar concern terhadap keamanan. Biasanya cluster akan membutuhkan sebuah proxy dan akses ke internet akan lebih dibatasi. Karena akses ke internet yang lebih ketat, maka cluster juga memerlukan mirror registry yang lebih spesifik. UPI cenderung lebih rumit, namun memiliki pilihan konfigurasi yang sangat beragam dibandingkan metode IPI, misalnya seperti mengganti sistem operasi machine dengan RHCOS (Red Hat Enterprise Linux CoreOS).
Installation Workflow
OKD menggunakan sebuah bootstrap machine temporer pada saat inisialisasi konfigurasi guna menyediakan informasi yang diperlukan bagi control plane. Bootstrap machine dihidupkan dengan sebuah file konfigurasi bernama Ignition yang mendeskripsikan bagaimana proses pembangunan cluster akan dilakukan. Bootstrap machine akan membuat sebuah master machine yang digunakan sebagai control plane. Dan control plane kemudian akan membuat compute machine atau yang biasa disebut sebagai worker machine.
Setelah semua machine pada cluster di-inisialisasi, maka bootstrap machine akan di-destroy. Jika menggunakan metode UPI, kita perlu melakukan beberapa proses di atas secara manual.
Minimum Requirements
OKD 4 memiliki syarat minimum spesifikasi sistem yang cenderung mirip dengan OKD 3. Berikut ini adalah spesifikasi singkat sebagai gambarannya.
Host | Specs |
---|---|
Masters | 4 vCPUs dan 16 GB RAM |
Nodes | 1 vCPUs dan 8 GB RAM |
Jika menggunakan AWS sebagai host, maka by-default OKD installer akan membuat instance dengan tipe m5.xlarge
sebagai master dan tipe m5.large
sebagai worker.
Untuk lebih lengkapnya silahkan baca spesifikasi minimum di dokumentas resmi OKD dan jenis-jenis dari instance AWS EC2.
Prerequisites
Sebelum melakukan instalasi lebih lanjut, pastikan beberapa hal berikut sudah terpenuhi.
Akses AWS
Pasang paket aws-cli
pada komputer lokal.
|
|
aws-cli
. Untuk informasi lebih lanjut silahkan baca dokumentasi AWS CLI.Saya memiliki AWS Programmatic Access yang terdiri dari aws_access_key_id
dan aws_secret_access_key
. Masukkan kedua key tersebut ke dalam konfigurasi aws cli.
|
|
Isi file credentials
dengan kedua key yang kita meliki, sehingga kurang lebih akan manjadi seperti berikut.
|
|
SSH Private Key
Kita perlu menambahkan SSH key ke agent dan installer untuk menampilkan informasi ketika proses instalasi berjalan, atau untuk melakukan pengelolaan lebih lanjut terhadap cluster menggunakan installer. Di sini saya sudah memiliki SSH key seperti berikut.
|
|
Jika belum memiliki SSH key kita dapat membuatnya dengan ssh-keygen
.
|
|
Kemudian jalankan ssh-agent
di background.
|
|
Lalu tambahkan SSH key ke ssh-agent
.
|
|
Unduh Installer
Program installer dapat diunduh dari https://github.com/openshift/okd/releases.
Untuk lebih mudahnya saya akan membuat sebuah direktori baru bernama okd
pada home directory dan mengunduh installer ke dalam direktori tersebut.
|
|
wget
di atas sesuai dengan versi yang benar. Pada saat artikel ini diterbitkan, OKD terbaru berada pada versi 4.6.Ekstrak file tar.gz
dengan perintah berikut.
|
|
Kita akan memiliki sebuah file bernama openshift-install
, jadikan file tersebut menjadi executable.
|
|
Instalasi
Untuk melakukan instalasi kita cukup menjalankan satu perintah seperti berikut.
|
|
Selanjutnya installer akan meminta beberapa informasi yang dibutuhkan, silahkan pilih atau isi sesuai dengan kebutuhan. Pull Secret bisa diperoleh dari situs Red Hat OpenShift Cluster Manager. Cukup tekan Copy pull secret dan paste pada terminal ketika installer memintanya.
Hasil
Proses akan berlangsung sedemikian rupa secara otomatis. Pada umumnya intalasi cluster OKD dengan konfigurasi default akan berlangsung sekitar 40 menit. Jika berhasil kurang lebih akan muncul tampilan seperti berikut.
Pengujian
Kita akan melakukan beberapa pemeriksaan terhadap cluster OKD 4. Selain lewat web browser, kita dapat menggunakan oc
atau origin-client
. Jika belum memilikinya maka lakukan pemasangan paket pada komputer lokal seperti berikut.
|
|
origin-client
tersedia pada AUR (Arch User Repository). Untuk melakukan instalasi paket dari AUR, saya menggunakan AUR Helper bernama yay
.Login sebagai System Admin
Untuk bertindak sebagai sistem admin melalui perintah oc
, kita me-export variabel environment seperti berikut.
|
|
Kemudian jalankan periksa user yang sedang berjalan di sesi oc
saat ini.
|
|
Harusnya akan muncuk tampilan seperti berikut.
|
|
Periksa Nodes
Coba periksa apakah semua node sudah dalam keadaan berjalan dengan oc
.
|
|
Kurang lebih akan muncul tampilan seperti berikut.
|
|
Terlihat bahwa terdapat 3 node yang bertindak sebagai master, dan 3 node lain sebagai worker.
Scaling MachineSet
Periksa machineset yang ada dengan perintah berikut.
|
|
Maka akan tampil machineset yang ada pada OKD.
|
|
Artinya machineset itglab-f2l75-worker-us-west-1a
memiliki replika sebanyak 2 buah. Sedangkan itglab-f2l75-worker-us-west-1b
hanya memiliki 1 replika. Sekarang coba lakukan scaling supaya machineset memiliki 2 buah replikasi.
|
|
Biasanya kita perlu menunggu beberapa saat supaya machine berjalan dan kemudian bergabung pada machineset itglab-f2l75-worker-us-west-1b
. Lama durasi tergantung pada spesifikasi sistem yang kita gunakan di AWS. Periksa apakah scaling berhasil dilakukan dengan menjalankan kembali perintah berikut.
|
|
Jika berhasil maka semua machineset akan menjadi seperti berikut.
|
|
Web Console OKD
Sekarang coba akses OKD Console melalui web browser dengan alamat dan kata sandi seperti yang terlihat sebelumnya menggunakan username kubeadmin
.
Destroy Cluster
Installer OKD 4 juga memiliki fitur untuk menghapus semua resource yang telah dibuat sehingga saya tidak perlu repot-repot membersihkan satu region di AWS Console. Destroy cluster dapat dijalankan dengan perintah seperti berikut.
|
|
Kesimpulan
OKD 4 memiliki installer yang tergolong mudah untuk diimplementasikan (pada AWS). Setiap node OKD 4 berjalan dengan sistem operasi FCOS (Fedora Core OS), namun jika kita menggunakan OpenShift maka yang digunakan adalah RHCOS (Red Hat Enterprise Linux CoreOS). OKD 4 menggunakan Prometheus untuk mendapatkan metric yang berguna untuk monitoring. Container Runtime yang dipakai oleh OKD 4 adalah CRI-O.
Referensi
- docs.okd.io/latest/architecture/architecture-installation.html
- docs.okd.io/latest/installing/installing_aws/installing-aws-default.html
- wiki.archlinux.org/index.php/OpenShift
- github.com/openshift/okd#getting-started
- github.com/openshift/okd/blob/master/FAQ.md
- github.com/openshift/okd/releases
- docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html
- aws.amazon.com/ec2/instance-types/