Skip to main content

Mengenal CRI-O sebagai Container Runtime untuk Kubernetes

CRI-O merupakan salah satu container runtime yang bisa digunakan untuk kubernetes yang bersifat free dan open sources. CRIO menjadi salah satu alternatif container runtime yang bisa digunakan pada kubernetes selain Docker.

Aristektur

CRI-O architecture

Arsitektur diatas merupakan penerapan cri-o pada environment kubernetes dimana flownya sebagai berikut

  • Kubernetes akan meminta kubelet untuk membuat pod
    • pod adalah entitas terkecil didalam kubernetes dimana pada pod terdapat satu atau lebih container yang saling berbagi sumber daya seperti IPC, NET dan PID namespace dan berjalan didalam cgroup yang sama
  • Kemudian kubelet akan meneruskan permintaan ke CRI-O melalui kubernetes CRI (Container Runtime Interface) untuk menjalankan pod baru
  • CRI-O mengunakan library containers/image untuk pull image dari sebuah image registry
  • hasil download image akan di ekstrak kedalam filesistem root container, dimana akan disimpan pada filesistem COW mengunakan library containers/storage
  • setelah rootfs terbuat untuk container, maka CRI-O akan mengenerate file json spesifikasi runtime OCI (Open Container Initiative) yang menjelaskan cara menjalankan container mengunakan tools OCI generator
  • CRIO kemudian menjalankan OCI compatible runtime mengunakan spesifikasi yang sudah digenerate sebelumnya untuk menjalankan sebuah proses container, dimana default OCI runtime adalah runc
  • setiap container akan dimonitor oleh proses conmon terpisah. proses conmon mengunakan pty pid 1 dari proses contianer untuk menangani logging kontainer dan mencatat exit code pada proses kontainer
  • Networking pada pod akan dibuat mengunakan CNI, dimana terdapat banyak CNI yang bisa digunakan dengan CRIO seperti calico, flannel, weave dan lain-lain

Read More

Menambahkan Agent Wazuh pada Centos 7

Agent akan running pada sebuah mesin/host untuk memonitor dan berkomunikasi dengan wazuh manager, dimana proses pengiriman datanya terenkripsi dan dapat mengunakan mekanisme auth untuk proses komunikasinya. Wazuh agent ini membutuhkan RAM yang sangat kecil kira2 0.1 GB dan lebih jelasnya berikut gambaran arsitektur wazuh agent

Wazuh agent architecture

Read More

How to renew or recreate a node’s certificate in Openshift 4.x / OKD 4.x

kasus ini biasanya terjadi ketika sebuah node  meminta approval certificate namun tidak diapprove oleh admin (mungkin karena lupa atau tidak tau ada permintaan approval)

Biasanya node openshift akan meminta approval certificate pada waktu tertentu, jika suatu certificate tidak diapprove terkadang node yg bersangkutan akan error dan tidak melakukan request ulang secara otomatis, jadi kita perlu melakukan trigger pada node yg error untuk meminta approval certificate ulang, biasanya akan muncul error seperti dibawah ini

Read More

Install Red Hat Advanced Cluster Security (StackRox) on Openshift 4.8

Red Hat OpenShift Advanced Cluster Security

pada ekosistem kontainer salah satu hal yang perlu dipertimbangkan adalah melindungi aplikasi/layanan dan infrastruktur. pada tulisan ini kita akan membahas terkait StackRox Kubernetes Security Platform dimana ini akan mengotomasi dan menerapkan complaiance/standar pada deployment kontainer.

StackRox merupakan salah satu produk container security yang cukup populer, mungkin selain itu ada Aquasec dll, dimana pada bulan Februari 2021 Red Hat sudah mengakuisisi StackRox dan berubah namanya menjadi Red Hat Advanced Cluster Security (RHACS).

Biasanya kalau kita membahas tentang kontainer maka biasanya berikatan dengan DevOps atau agile, dimana itu biasanya hanya memfokuskan pada kecepatan development dan deployment dengan memanfaatkan CI/CD Automation, namun kurang memperhatikan dari faktor keamanan atau dengan kata lain (DeSecOps), maka untuk mengatasi hal tersebut kita bisa memanfaatkan tools container security seperti StackRox (RHACS) dimana fungsinya lumayan banyak seperti :

  1. Visibility
  2. Vulnerability Management
  3. Compliance
  4. Network Segmentation
  5. Risk Profiling
  6. Configuration Management
  7. Threat Detection
  8. Incident Response

Read More

Upgrade Openshift 4.6 ke 4.7.21

Upgrade OCP Cluster pada versi 4.x sangat mudah dengan adanya cluster operator dimana kita hanya perlu memilih channel kemudian upgrade ke versi yang ingin kita gunakan dimana pada tulisan ini saya akan upgrade openshift cluster saya dari versi 4.6.39 ke 4.7.21

*Note: Mohon maaf jika tulisan ini kurang lengkap karena ini hanya buat catatan pribadi saya aja

Hal yang perlu diperhatikan pada saat upgrade OCP versi 4.x ini ada beberapa diantaranya adalah:

Pada saat memilih channel perlu diperhatikan karena terdapat 3 channel dan masing2 channel memiliki fungsi sendiri

  1. Candidate
  2. Fast
  3. Stable
  4. Eus

Read More

Extend Filesystem root / sysroot pada Openshift CoreOS (RHCOS) 4.6

Pada openshift versi 4, semua node harus mengunakan sistem operasi Redhat CoreOS.

CoreOS merupakan sistem operasi yang digunakan secara khusus untuk lingkungan kontainer dan bersifat immutable. Dalam hal ini saya akan membahas extend storage pada salah satu node openshift

Note: Tulisan ini berlaku untuk Redhat Openshift(Redhat CoreOS) ataupun OKD (Fedora CoreOS)

  1. Extend virtual Disk pada vcenter (Edit Setting)

merubah kapasitas dari 120 GB menjadi 200 GB

Read More

install Wazuh 4.1 All in One Deployment pada Centos 7

Wazuh merupakan software yang bersifat opensource dan gratis yang berfungsi untuk monitoring security terutama untuk solusi threat prevention/detection, integrity monitoring, incident response dan compliance.

Arsitektur

pada dasarnya secara arsitektur wazuh mengunakan Elastic stack (Elastic search, Kibana) sebagai media untuk menyimpan log dan alert, namun pada wazuh terdapat wazuh manager dan wazuh agent untuk melakukan manipulasi log kedalam elasticsearch.

Read More

Install Kubernetes Dashboard – Kubernetes versi 1.16

Untuk memudahkan dalam hal management, operation dan monitoring aplikasi di kubernetes, kita bisa mengunakan Kubernetes Dashboard.

Pada dasarnya Kubernetes bisa dimanage mengunakan cli ataupun web console. sebelum mencoba install kubernetes dashboard, saya sarankan untuk membaca tulisan sebelumnya yang berkaitan dengan install kubernetes cluster di centos 7

pada kuberetes cluster memiliki 3 node, saya mengunakan Kubernetes version 1.16 (Terbaru untuk saat ini)

Read More

Install Nexus Repository di Ubuntu 16.04

Mungkin dari kita yang sering mengoperasikan docker sudah sering mendengar docker hub, atau sering dikenal sebagai aplikasi untuk menyimpan image docker, atau mungkin banyak developer seperti java, ketika setelah build code maka akan menghasilkan artifact .jar atau .war, dan itu biasanya disimpan pada maven central repository atau software sejenisnya. semua itu bisa berjalan dengan baik jika jumlah service atau image dockernya masih sedikit, namun jika jumlanhnya sudah banyak maka akan muncul banyak masalah, diantaranya cost dan privasi code atau image yang kita simpan, walaupun dari masing2 provider menjanjikan keamanan, namun kita tidak tahu dibelakangnya seperti apa.

kali ini saya akan membahas software Nexus Repository OSS, dimana kita dapat menyimpan docker image dan artifact code (java, nodejs, Ruby gems, dll). Untuk product nexus cukup banyak dan berbayar, namun saat ini kita akan mengunakan Nexus Repository OSS yang free, dan bagusnya nexus juga menyediakan plugin di Jenkins, sehingga lebih mudah untuk di integrasikan.

Read More