random

Indera

segala aspek yang melibatkan penggunaan indera bisa kita gunakan untuk memunculkan kembali episode-episode di masa lalu.

gw ingat betul pernah kenal dengan seorang perempuan melalui IRC, dan ternyata dia tinggal di dekat kos semasa kuliah di Baranangsiang, Bogor. suatu kali dia pernah main ke kos dan membawa USB berisikan album Saosin.

satu dekade kemudian gw masih dengar lagu di album tersebut dan tiap kali lagu-lagu tersebut terdengar gw ga bisa menghindari episode ketika gw diekspose ke band bernama Saosin oleh perempuan yang gw kenal melalui IRC dan ternyata tinggal di dekat kos.

selain pendengaran, penglihatan jg bisa memicu episode tersebut muncul ke permukaan. browsing foto di instagram, dan melihat foto lama, misalnya, bisa langsung muncul adegan yang menceritakan kenapa foto itu bisa diambil, dengan siapa saat foto itu diambil, bagaimana situasinya, bagaimana perasaan saat itu, kenapa kita ada di sana, dan sebagainya.

indera kita adalah menjadi jalur transportasi katalis (gambar, bau, suara) yang membantu menemukan kembali episode yang sudah lalu.

mungkin pernah juga kita mencium wangi seseorang dan kita jadi ingat betul segala hal tentang orang tersebut; apa yang membuat dia istimewa, apa yang membuat dia kecewa, apa yang bisa membuat dia bahagia, dan sebagainya

Standard
life, shots, travel

Gunung Papandayan

Saya, teman kantor, dan temannya teman kantor camping di Gunung Papandayan pada akhir Juli 2016 lalu.

Gunung Cikurai dilihat dari atas Hutan Mati

Gunung Cikurai dilihat dari atas Hutan Mati

Sudah sangat banyak artikel di Internet mengenai perjalanan di Gunung Papandayan. Jadi sepertinya saya tidak perlu mengulang-ulang hal yang sama. Satu hal yang perlu digarisbawahi adalah: suhu di gunung ini teramat sangat dingin.

Sayangnya kami tidak membawa thermometer jadi tidak ada bukti untuk menunjukkan seberapa dinginnya malam itu. Untuk memberikan gambaran kira-kira seperti ini:

  • saya rajin berolahraga dan secara khusus mempersiapkan diri untuk naik gunung
  • malam itu saya pakai kaos yang lumayan tebal sebanyak 4 lapis dan dilapisi jaket di bagian terluar
  • saya tidur di dalam sleeping bag yang lumayan tebal dan menutup seluruh tubuh
  • kami tidur di dalam tenda, bertiga

Kalau ditotal mungkin saya cuma berhasil tidur selama 2 jam. Sisanya serasa bukan tidur karena tidak terlelap. Yang dirasakan hanya dingin dan tangan terasa kaku di dalam sleeping bag.

Oh, seperti yang lain, kami berkemah di Pondok Seladah.

Kira-kira jam 5 pagi sudah mulai terdengar keramaian oleh mereka yang ingin menuju Tegal Alun. Sejujurnya saya ingin istirahat dan tidur saja karena merasa kurang tidur dan tidak cukup yakin bisa sampai puncak. Tapi karena semua teman-teman sepakat untuk pergi maka saya pun memutuskan untuk ikut.

Singkat cerita saya sampai di puncak lebih dulu. Meninggalkan teman-teman yang lain. Mungkin karena langkah kaki saya yang lebih panjang. Ternyata waktu tempuh dari Pondok Seladah ke puncak (Tegal Alun) tidak terlalu lama; kira-kira 30 sampai 45 menit. Cukup melelahkan dan membuat putus asa tapi sepertinya hampir semua perjalanan menuju puncak seperti itu. Intinya tetap melangkah saja walau perlahan sekalipun.

Tegal Alun

Tegal Alun

Tegal Alun bisa dikatakan puncak Gunung Papandayan walau nyatanya ada bukit lagi di atasnya.

Demikian pengalaman naik ke Gunung Papandayan. Gunung ke-2 yang pernah saya daki dan pengalaman camping di alam bebas pertama.

Berikutnya: Gunung Prau.

Standard
Bukti Merese, Lombok, Nusa Tenggara Barat

Bukti Merese, Lombok, Nusa Tenggara Barat

life

Bukit Merese, Lombok, Nusa Tenggara Barat

Image
lesson learned, life

Follow You

Vocalist Oli Sykes shared in a track-by-track commentary with Spotify that he and Jordan Fish wrote “Follow You” while they were writing “Drown”. He also shared:

And when it got to that certain point like “this fucking sucks and I don’t really want to do this anymore,” that’s when you have that realizations. I realized no matter how bad being together can sometimes get, the alternative is so much worse.

Lyrically, it comes from me and my other half were going through a particular rough patch where things weren’t looking too good and it gets to a certain point. And when it got to that certain point like “this fucking sucks and I don’t really want to do this anymore,” that’s when you have that realizations. I realized no matter how bad being together can sometimes get, the alternative is so much worse. It’s one of those beautiful realizations that can only come from something really ugly.

Source: http://genius.com/Bring-me-the-horizon-follow-you-lyrics

Standard
code, lesson learned, technology, Tips

Apa itu High Availability?

Selama ini gw pikir High Availability (HA) semata-mata hanya mempersiapkan cadangan kalau bencana (disaster) muncul. Mempersiapkan cadangan dalam artian data backup. Ternyata pemahaman tersebut tidak sepenuhnya benar. Hal ini baru gw sadari setelah diberikan pekerjaan untuk membuat solusi kalau sampai layanan telekomunikasi yang digunakan tim Customer Service (CS) kena bencana.

Hasil akhir yang diharapkan — ingat selalu untuk berpikir dari hasil akhir yang diharapkan — adalah: tim CS harus selalu dapat menggunakan layanan telekomunikasi. Mereka tidak peduli dan tidak perlu tahu* kalau ada bencana terjadi. Yang mereka pedulikan adalah mereka datang ke kantor dan melakukan pekerjaan mereka: menghubungi dan dihubungi pelanggan.

Untuk itu harus ada minimal 2 (dua) layanan telekomunikasi yang berfungsi dalam waktu bersamaan. Namun hanya ada 1 (satu) layanan yang aktif digunakan dalam satu waktu*. Katakanlah ada layanan utama dan layanan cadangan.

Ketika bencana terjadi (pasti terjadi, hanya masalah waktu) dan mengakibatkan layanan utama gagal beroperasi, maka saatnya layanan cadangan yang aktif. Istilah yang digunakan untuk mewakili proses ini adalah failover.

Ketika bencana berakhir dan layanan utama kembali normal. Maka layanan utama harus kembali aktif, menggantikan layanan cadangan. Proses mengembalikan penggunaan dari layanan cadangan ke layanan utama disebut fallback.

Hubungan failover dan fallback bisa dilihat pada gambar berikut ini. Gambar ini gw dapat dari dokumentasi “Building Elastix-2.4 High Availability Clusters with DRBD and Heartbeat (using a single NIC)“. Sumber: http://www.theserverexpert.com/elastix_2.4_ha_cluster-updated.pdf

Failover and fallback.

Beberapa pertanyaan yang harus dijawab adalah:

  1. layanan-layanan apa saja yang vital dan harus selalu tersedia?
  2. apakah layanan-layanan tersebut dapat dibuat duplikasinya? hal ini harus menjawab pertanyaan lain, yaitu:
    • apa saja kebutuhan layanan-layanan tersebut?
    • bagaimana membuat duplikasi kebutuhan-kebutuhan tersebut?
    • seberapa mudah membuat duplikasi layanan tersebut?
  3. data apa saja yang harus tersedia?

Sejauh ini baru itu saja yang terpikirkan. Seharusnya ada beberapa lagi, tapi gw belum sampai di sana.

Pertanyaan tadi keluar dari pengalaman ketika berusaha membuat duplikasi layanan telekomunikasi berbasis Asterisk. Asterisk dikelola dengan FreePBX, dan diberi nilai tambah oleh produk bernama Elastix. Elastix merupakan sekumpulan alat bantu yang dikembangkan di atas sistem operasi CentOS.

Asterisk memiliki modul bernama CDR (Call Detail Recording) yang berfungsi untuk menyimpan metadata komunikasi telepon yang dilakukan melalui sistem.  Terdapat juga modul lain yang merekam semua pembicaraan. Oleh karena itu, data tadi harus selalu tersedia.

Elastix menggunakan SQLite sebagai penyimpanan data konfigurasi. FreePBX sebagai antarmuka Asterisk sepertinya tidak membutuhkan penyimpanan data apapun, namun memiliki beberapa modul tambahan yang mungkin saja membutuhkan penyimpanan data untuk menyimpan konfigurasi*.

Yang ingin gw sampaikan adalah pentingnya identifikasi detail kebutuhan tiap layanan karena menentukan apa yang harus diduplikasi dan caranya.

Apa yang dimaksud dengan kebutuhan tiap layanan?

Di atas sudah gw jelaskan bahwa modul Asterisk bernama CDR membutuhkan MySQL untuk penyimpanan data. Hal ini memaksa untuk mencari tahu apakah MySQL memiliki fitur untuk melakukan duplikasi layanan. Setelah dicari tahu ternyata MySQL memiliki fitur replikasi. Lalu muncul pertanyaan selanjutnya, MySQL versi berapa yang digunakan? Apakah versi tersebut sudah mendukung skenario replikasi yang kita butuhkan? Intinya adalah pemahaman tools yang digunakan, layanan yang ditawarkan tool tersebut, serta kompleksitasnya.

Kesimpulan

High Availability (HA) sulit dan kompleks sekali. Karena harus dipikirkan secara matang dan dilakukan oleh mereka yang paham dan kenal betul karakteristik penggunaan layanan, karakteristik layanan itu sendiri, karakteristik kebutuhan layanan, dan sebagainya.

Tulisan ini gw buat semata-mata untuk mengeluarkan isi pikiran saja. Mungkin saja berguna buat orang lain.

Standard