Mengkompilasi Ulang Kernel di openSUSE Tumbleweed

Catatan ini berisi bagaimana melakukan compilasi ulang kernel yang sudah terpasang, karena ada beberapa perbaikan driver perangkat. Dalam hal ini modifikasi LVDS di Thinkpad X330 saya.

Studi Kasus:

  • Sistem operasi: openSUSE Tumbleweed 20201005
  • Kernel baru dipasang: 5.8.10-1-default
  • Kernel lama dan sedang digunakan: 5.6.11-1-default

Persiapan Perkakas

sudo zypper install kernel-default kernel-source kernel-devel

Perintah diatas dilakukan untuk pemasangan kernel terbaru 5.8.10 bawaan dari lumbung openSUSE Tumbleweed, kemudian juga mengunduh kernel-source (kode sumber) dan kernel-devel untuk versi 5.8.10.

Mengkompilasi Kernel

Sebelum melakukan kompilasi, batalkan pengaturan sleep dan hibernate agar ketika sedang kompilasi dan sudah dalam batas waktu tidak ada aktifitas, laptop tidak tiba-tiba sleep atau hibernate. Hal ini bisa menyebabakan proses berhenti dan nanggung.

Lakukan sebagai user root, kemudian berpindah ke alamat kode sumber kernel terbaru berada.

Lanjutkan membaca “Mengkompilasi Ulang Kernel di openSUSE Tumbleweed”

Run openSUSE Kubic – Like (K8s, Podman and CRI-O) on Alibaba Cloud

openSUSE Kubic is Certified Kubernetes distribution & container-related technologies built by the openSUSE community. There is specific iso for openSUSE Kubic.

But sadly. As I am a cloud provider user. There are not many cloud provider who have feature upload ISO Image if I want to upload openSUSE Kubic ISO. And next problem, there is very limited kind cloud provider who have openSUSE distribution for image flavor when launch Virtual Machine. Cloud like AWS and GCP only provide SLES version.

Fortunately, Alibaba Cloud have openSUSE Leap distribution. Alibaba Cloud have openSUSE Leap 42.3, 15.1 and 15.2 beside SLES version. It is help me lot of.

Prepare Virtual Machine for Master and Node

I created two virtual machine with spec:

  • 2 VM openSUSE Leap 15.2 (hostname: master-01,node-01)
  • 2 Core, 2 GB RAM | ecs.t5-c1m1.large
  • Security Group (open port TCP: 22,80,443,6443,30000)

Upgrade to openSUSE Tumbleweed

After created vm, ssh to each server, run upgrade to tumbleweed:

Lanjutkan membaca “Run openSUSE Kubic – Like (K8s, Podman and CRI-O) on Alibaba Cloud”

KDE KSysGuard Not Showing CPU History

Just random bug on my openSUSE Tumbleweed with KDE. My KSysGuard (System Monitor) not showing CPU History. Quick fix:

yes | cp /usr/share/ksysguard/SystemLoad2.sgrd ~/.local/share/ksysguard/.

I found this solution from here: https://bbs.archlinux.org/viewtopic.php?pid=1720712#p1720712

Thanks
Estu~

Review Firebox Stove G2 Deluxe Combo Kit

Firebox Stove, kompor serba guna. Ini merupakan salah satu barang dari daftar wishlist saya sejak jaman kapan. Dan akhirnya terbeli juga. Produk ini tidak sengaja lewat di beranda youtube 4-5 tahun lalu. Mengantarkan ke Channel FireboxStove.

Saya membeli firebox stove versi combo deluxe seharga 90USD. Paket ini terdiri dari:

  1. Set kompor Firebox Stove Gen2 (bukan yang titaniun :D)
  2. 4 stik besi.
  3. 4 buah adapter tatakan, termasuk tatakan buat pemanggang.
  4. Sarung kompor
  5. Sarung tatakan
Lanjutkan membaca “Review Firebox Stove G2 Deluxe Combo Kit”

Battery Charge Thresholds dan Power Management di openSUSE dengan TLP

Baterai termasuk elemen penting dalam keberlangsungan pekerja remot. Dan sudah selayaknya mendapat perlakuan khusus untuk memperpanjang usia pakai. Salah satunya dengan mengatur Battery Charge Thesholds.

Battery Charge Thesholds adalah mekanisme pemutusan pengecasan sebelum benar-benar penuh dan menyambung kembali ketika sudah mulai kosong. Dengan tidak pernah mengisi daya baterai hingga 100% kan membuat usia pakai baterai lebih lama. Secara teorinya alurnya seperti ini. Putuskan pengisian daya, jika kapasitas baterai sudah 85% dan kembali isi jika baterai sudah 75%. Nilai persen ini bisa kita atur sesuai keinginan.

START_CHARGE_THRESH_BAT0="75"
STOP_CHARGE_THRESH_BAT0="85"

START_CHARGE_THRESH_BAT1="75"
STOP_CHARGE_THRESH_BAT1="85"

Fitur Power Management ini cukup lengkap ketika menggunakan ThinkVantage di Sistem Operasi Windows. Jelas, ThinkVantage merupakah fitur khas di jajaran laptop kelas atas Thinkpad. Termasuk Thinkpad X230 yang saya miliki. Tapi perangkat lunak dari ThinkVantage tidak tersedia di sistem operasi GNU/Linux. Jadi ya kudu pake cara lain.

Salah satu aplikasi yang bisa melakukan tugas pengaturan Battery Charge Thresholds adalah TLP. Perangkat lunak ini sudah tersedia di beberapa lumbung distribusi GNU/Linux. Dulu saya menggunakan ini sejak di Slackware, BlankOn, hingga kini openSUSE.

Instalasi TPL

Merujuk pada situs resmi TLP pada tautan https://linrunner.de/tlp/, langkah instalasinya dan menjalankannya cukup mudah. Berikut stepnya:

Lanjutkan membaca “Battery Charge Thresholds dan Power Management di openSUSE dengan TLP”

Memasang Ambassador di Belakang Ingress-NGINX Sebagai API Gateway di Kubernetes

API Gateway adalah layanan yang mengambil semua panggilan API dari klien, kemudian merutekannya ke layanan mikro yang sesuai dengan perutean permintaan, komposisi, dan terjemahan protokol.

API Gateway diimplementasikan ketika perangkat lunak sudah berbasis microservice. Sehingga dibutuhkan mekanisme algoritma jalur terbaik dari awal permintaan hingga permintaan selesai diproses. Berikut kira-kira desain yang sedang saya implementasikan menggunakan GKE (Google Kubernetes Engine):

Ada banyak API Gateway yang mendukung Kubernetes, diantaranya:

Lanjutkan membaca “Memasang Ambassador di Belakang Ingress-NGINX Sebagai API Gateway di Kubernetes”

Review Charging Port Type-C dari Tindie untuk X230 + Baseus Galio 120W

Kali ini Thinkpad X230 akan dilakukan upgrade di bagian suplai tenaga. Setelah sebelumnya menggunakan Baseus 65W + Converter Type-C to PD, kini modifikasi mengandalkan Lenovo Charging Port Type-C Power dari Tindie.

Stack sebelumnya, Baseus 65W + Converter

Ketika menggunakan racikan sebelumnya, saya merasa penyuplai daya tidak bisa mengakomodasi kebutuhan X230 i7 saya yang sudah saya modifikasi sedemikian rupa. Pengisian sering kedip-kedip seperti tidak kuat atau pengisian daya tidak sukses. Lagi pula, pengisi daya bawaan memiliki kapasitas 90W, sehingga memang dibutuhkan penambahan ukuran pengisi daya.

Alasan lain, saya masih ragu dengan kualitas converter yang saya pakai. Untunglah diskusi-diskusi di Grup Telegram Thinkpad, mengantarkan saya ke proyek charging port type-c untuk Thinkpad series. Berikut halaman Tindie tempat menjualnya https://www.tindie.com/products/mikepdiy/lenovo-charging-port-type-c-pd-t400-x200-x220-x230/. Saya kemudian memesan dua charging port, 90W merah dan 65W hitam di bulan April lalu dengan harga 25USD perbuah termasuk ongkos kirim.

Lanjutkan membaca “Review Charging Port Type-C dari Tindie untuk X230 + Baseus Galio 120W”

Konfigurasi GitLab CI untuk Rollback Deployment di Kubernetes Cluster

Bacaan:

Ini adalah catatan singkat, untuk mengingat error CLBK (cinta lama bersemi kembali Crash Loopback)

Seringnya terjadi setelah melakukan kubectl apply, status Jobs hijau, dan keluar pemeberitahuan dari gitlab-ci bahwa deployment sukses. Tetapi status pod adalah CLBK, dan pod yang hidup masih belum ganti versi image. Aplikasi gagal rilis.

Penyelesaian masalah ini sederhana. Butuh mekanisme pengecekan setelah deploy kubectl, apakah pod berhasil dibuat. Solusinya adalah menambahkan satu step tambahan setelah deploy. Pastikan integrasi pemberitahuan CI/CD sudah dipasang misal ke mattermost atau Slack. Berikut dua potongan kode dari berkas .gitlab-ci.yml.

Kode deployment sample-service menggunakan kubectl. Update: Saya ubah atas saran bapak Asfar.

deploy-staging:
  image: ${CI_REGISTRY}/deployment:v0.2.0
  stage: deployment
  script:
    - |
        set +e
        sed -e “s/latest/$CI_COMMIT_SHORT_SHA/g” ./k8s/sekrip/sample-service.yml | kubectl diff -f –
        set -e
    - sed -e “s/latest/$CI_COMMIT_SHORT_SHA/g” ./k8s/sekrip/sample-service.yml | kubectl apply -f – –record
  only:
    refs:
      - master
  tags:
    - staging

Kode pengecekan status deployment.

rollback-status:
  image: ${CI_REGISTRY}/deployment:v0.2.0
  stage: after-deployment
  dependencies:
    - deploy-staging
  script:
    - |
        if ! kubectl rollout status -n ${NAMESPACE} deployment/sample-service; then
          kubectl rollout undo -n ${NAMESPACE} deployment/sample-service
          kubectl rollout status -n ${NAMESPACE} deployment/sample-service
          exit 1
        fi
  only:
    refs:
      - master
  tags:
    - staging

Pada saat Jobs rollback-status, output status deployment gagal (bolean false), otomatis gitlab-ci akan mengirimkan pemberitahuan ke mattermost/slack bahwa deployment gagal. Pipeline merah. Sehingga tim dev dan ops bisa segera melakukan pengecekan untuk mencari tahu sumber masalah.

Dah gitu aja. Semoga bermanfaat.

Estu~

Hak Akses Hanya Baca (Read-Only) di Postgresql

Bacaan:

Sedikit tulisan untuk membantu mengingat. Dalam catatan kali ini, saya akan membuat Role (aturan) dan user (pengguna) yang memiliki hak akses ke database Postgresql hanya untuk membaca (read-only). Dalam kasus saya, rule ini digunakan QA/BI untuk membaca database tanpa bisa mengubah (write) database.

sebuah hedon

Spesifikasi Sistem:

Database Engine: Postgresql 11
Database Host: 10.10.10.10
Database Name: blog
Database Admin User: postgres
Database User dan Owner for blog database: kirana
Roles Name: hanya_baca
Pengguna hanya_baca: dev
Lanjutkan membaca “Hak Akses Hanya Baca (Read-Only) di Postgresql”

Intel Wireless Dual Band AC 7260 di Thinkpad X230

Sumber Bacaan:

  1. https://www.reddit.com/r/thinkpad/comments/49wjv1/x220t_and_intel_wirelessac_7260_installation_woes/
  2. https://unix.stackexchange.com/questions/404287/wifi-suddenly-extremely-slow

Setelah sukses menghapus whitelist di X230 dengan masang BIOS 1Vyrain. Saya kembali mengupgrade kartu jaringan. Pilihannya memilih Intel Wireless Dual Band AC 7260 + Bt 4.0. Membeli kartu dan menunggu hingga sampai alamat.

Memasang Kartu

Memasang Intel AC-7260 agak ajaib juga. Kartu ini sudah dilengkapi perangkat Bluetooth 4.0 sehingga ada perlakuan khusus agar jalan normal di Thinkpad X230.

Caranya adalah dengan menyelotip Pin-51 di kartu. Bisa juga dengan memotong pin-51. Saya selotip aja karena susah buat motongnya.

Gambar saya ambil dari Reddit (https://www.reddit.com/r/thinkpad/comments/49wjv1/x220t_and_intel_wirelessac_7260_installation_woes/)

Atau bisa juga menonton video di Youtube berikut.

Konfigurasi Sistem Operasi

Setelah itu butuh beberapa pengaturan di sistem operasi agar hasil maksimal. Ini dikarenakan ketika tanpa pengaturan tambahan, saya merasa koneksi wireless sering melambat. Solusinya dengan mematikan jaringan /n di kernel. Ini akibat perangkat Access Point belum canggih. Berikut konfigurasi yang saya lakukan.

sudo vim /etc/modprobe.d/50-iwlwifi.conf

Isi dengan konten:

options iwlwifi 11n_disable=1
options iwlwifi 11n_disable=8

Lakukan reboot dan periksa status jaringan kembali dengan perintah:

sudo iwlist channel

Demikian. Semoga bermanfaat.
Estu~