vCenter 6.7 Error Executing VMware-vPostgres (PANIC:  could not locate a valid checkpoint record)

Halo teman-teman, kali ini saya akan berbagi pengalaman saya, saat saya mengalami error pada vCenter server yang digunakan oleh team internal Excellent. Errornya cukup membuat saya bingung karena saya sendiri belum pernah mengalami.

Masalah yang saya alami kali ini cukup lama untuk eskalasinya. Sekitar 2 hari saya baru dapat solusinya. Sebenarnya solusinya sendiri tidak terlalu sulit, hanya memasukkan 2-3 perintah saja, yang menyebabkan troubleshooting cukup lama adalah karena error maupun langkah troubleshooting tidak bisa ditemukan di kb.vmware.com, sehingga saya harus bertanya di forum tentang error ini dan akhirnya mendapat jawaban setelah 2 hari menunggu 😀

Saya menyadari vCenter mengalami error pada saat saya mencoba akses web client vCenter dan muncul tulisan Service Unavailable. Awalnya saya kira ini hanya disebabkan oleh server web client vCenter yang stop secara tiba-tiba. Saya coba SSH untuk menjalankan kembali service web client dengan perintah “service-control –start vsphere-client”, tapi sebelum saya melakukan hal itu tiba-tiba saja muncul tulisan Filesystem read-only. Setelah di telusuri lebih lanjut ternyata masalah tersebut terjadi karena shared storage penyimpanan VM vCenter tidak terbaca. Akhirnya saya matikan VM vCenter dan melakukan konfigurasi ulang shared storage agar bisa terbaca kembali, dan berhasil. Saya nyalakan kembali VM vCenter tapi ternyata……masih belum bisa 😀

Saya coba cek service vCenter dengan perintah “service-control –status” dan web client sudah running, tapi ada 1 hal wajib yang tidak running yaitu database. vCenter appliance menggunakan database postgres, saya coba nyalakan kembali service postgres-nya dengan perintah “service-control –start vmware-vpostgres” tapi tetap tidak bisa running. Disini saya bingung karena tidak ada pesan error yang jelas.

root@vc67 [ ~ ]# service-control --start vmware-vpostgres
Operation not cancellable. Please wait for it to finish...
Performing start operation on service vmware-vpostgres...
Error executing start on service vmware-vpostgres.

Saya coba cek di file log /var/log/vmware/vpxd/vpxd.log dengan perintah “cat (file log)” dan saya menemukan pesan seperti ini yang menyatakan vCenter tidak bisa terkoneksi dengan database postgres

error vpxd[7FF9A8AD97A0] [Originator@6876 sub=vpxdVdb] [VpxdVdb::SetDBType] Failed to connect to database: ODBC error: (08001) - [unixODBC]Could not connect to the server; --> Connection refused [127.0.0.1:5432]

Belum mendapat kejelasan akhirnya saya langsung cek di file log postgres-nya /storage/db/vpostgres/pg_log/postgresql.log dengan perintah “cat (file log)” dan menemukan pesan seperti ini, yang saya sendiri tidak tahu ini kenapa dan bagaimana eskalasinya 😀

2016-09-10 19:02:14.920 UTC 57d458b4.21d8 0   PANIC:  could not locate a valid checkpoint record
2016-09-10 19:02:14.920 UTC 57d458b1.20bf 0   LOG:  startup process (PID 8664) was terminated by signal 6: Aborted
2016-09-10 19:02:14.920 UTC 57d458b1.20bf 0   LOG:  aborting startup due to startup process failure
Akhirnya setelah saya diberi tahu di forum, ternyata mudah untuk eskalasinya cukup menjalankan 3 perintah dibawah ini
root@vc67 []# cd /opt/vmware/vpostgres/current/bin
root@vc67 [ /opt/vmware/vpostgres/current/bin ]# su vpostgres -s /bin/sh
sh-4.3$ /opt/vmware/vpostgres/current/bin/pg_resetxlog -f /storage/db/vpostgres
Transaction log reset
  1. Perintah untuk masuk ke direktori /opt/vmware/vpostgres/current/bin
  2. Perintah untuk login sebagai superuser postgres
  3. Perintah untuk reset log postgres

Bagaimana? Mudah kan? Eskalasinya hanya perlu reset log postgres-nya saja. Yaaaaa tentu saja tidak mudah saat pertama kali menemukan error itu 😀

Leave a Reply

Your email address will not be published. Required fields are marked *