tag:blogger.com,1999:blog-290908122024-03-14T01:21:44.699+07:00Newbie NoteSome place for a newbie to startHimawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.comBlogger433125tag:blogger.com,1999:blog-29090812.post-4265691353746745472024-01-29T15:07:00.004+07:002024-01-29T15:09:36.139+07:00Mengelola jaringan di docker - Tutorial Docker 07<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRQ2iXYOQTwUL7Pa6nB0dmiwB3r9IVC3Ke5Ylm4eDkTAZnejUYD9yIz8B9u5SHyNXKDIXjqapLvRIcf_N0no4ap-2e2G2kT-zXLezMczNkCDrEuf4p_7YRcBG2ORMwSUrYvmOnphN50uQsXV035o3gjhBQO_y6AGerpAaA2Ave6-U9cCLFrrmW/s1554/Screenshot%202023-08-27%20at%2004.52.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1136" data-original-width="1554" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRQ2iXYOQTwUL7Pa6nB0dmiwB3r9IVC3Ke5Ylm4eDkTAZnejUYD9yIz8B9u5SHyNXKDIXjqapLvRIcf_N0no4ap-2e2G2kT-zXLezMczNkCDrEuf4p_7YRcBG2ORMwSUrYvmOnphN50uQsXV035o3gjhBQO_y6AGerpAaA2Ave6-U9cCLFrrmW/s320/Screenshot%202023-08-27%20at%2004.52.36.png" width="320" /></a></div><br /><p style="text-align: justify;">Kembali melanjutkan catatan tentang docker, pada tutorial kali ini saya ingin membahas tentang jaringan di dalam docker. Tahukah anda bahwa ketika kita menjalankan container pada docker, sebenarnya container tersebut juga terhubung ke dalam jaringan virtual? Bahkan di container yang sedang running tersebut tenyata container itu memiliki alamat IP yang secara otomatis diberikan oleh docker ketika container berjalan. </p><p style="text-align: justify;">Virtual network tersebut yang nanti akan terhubung ke jaringan external docker atau ke jaringan host docker sehingga container yang berjalan didalam docker bisa berkomunikasi dengan komputer diluar docker.</p><p style="text-align: justify;">Berikut illustrasi jaringan virtual di container pada docker:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6paqcSXOsxJ-u1QNXMU0Z0GXosXx61ja3Oqsc7UaQlUXmnOuMW71g_spbS2susSSNB-AHLxuNOKYWnpyI9qMtrKCmCtYOno86IJvlu2FpXiuxtpBq3zPft-NLL4puoylcCrwaTgIe_lI_pzcqvWES2XQRnYSXtGNKmjjmi-vprSIzdX7fE8GQ/s1262/Screenshot%202024-01-29%20at%2013.03.37.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="764" data-original-width="1262" height="194" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6paqcSXOsxJ-u1QNXMU0Z0GXosXx61ja3Oqsc7UaQlUXmnOuMW71g_spbS2susSSNB-AHLxuNOKYWnpyI9qMtrKCmCtYOno86IJvlu2FpXiuxtpBq3zPft-NLL4puoylcCrwaTgIe_lI_pzcqvWES2XQRnYSXtGNKmjjmi-vprSIzdX7fE8GQ/s320/Screenshot%202024-01-29%20at%2013.03.37.png" width="320" /></a></div><p style="text-align: justify;"><span style="text-align: left;">Untuk melihat jaringan virtual yang tersedia pada docker saya cukup menjalankan perintah:</span></p><p>
<script src="https://gist.github.com/mahardianto/9b882d66ff95f2ce0e62b7912b45ed6b.js"></script>
</p><p>perintah di atas akan menampilkan keluaran seperti ini</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixPe60ZnteUeE-hZVYwG1u0osbj1powD1SxWHdzudHm-SWyqSbfeuqUqsmo_rOYsVr5b8fZXo_HH_p2R5mS4lavFMNJr_whyphenhyphen7i_ExyizIfSNLdQ59gL1DAu3QvJ5mbLfY7a80EbIyNIaEOGAcE8_MjSj3YBwBFNf_ucgXXdZRZeItaHTpNl9rz/s682/Screenshot%202024-01-29%20at%2011.39.12.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="202" data-original-width="682" height="95" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixPe60ZnteUeE-hZVYwG1u0osbj1powD1SxWHdzudHm-SWyqSbfeuqUqsmo_rOYsVr5b8fZXo_HH_p2R5mS4lavFMNJr_whyphenhyphen7i_ExyizIfSNLdQ59gL1DAu3QvJ5mbLfY7a80EbIyNIaEOGAcE8_MjSj3YBwBFNf_ucgXXdZRZeItaHTpNl9rz/s320/Screenshot%202024-01-29%20at%2011.39.12.png" width="320" /></a></div><div><br /></div>dari hasil keluaran di atas terlihat bahwa ada beberapa jaringan virtual yang bernama:<div><ol style="text-align: left;"><li>bridge</li><li>host</li><li>my-network, dan</li><li>none</li></ol></div><div>Untuk membuat jaringan baru, saya cukup menjalankan perintah:</div><div><br /></div><div>
<script src="https://gist.github.com/mahardianto/f69d9f56ea95fbc1e218e9c6f8d41a62.js"></script>
</div><div><br /></div><div>apabila saya jalankan lagi perintah "sudo docker network ls" lagi hasilnya adalah sebagai berikut:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJoEfzQRc1rwFduTVCV5eR_aiujIj5oFYuviGrNdVluEnpH-6uBYTOANeyPEm4Hc4gEJkG69bJKUPIKBQp_wd5kqWyZxEuY7MoMQJYt5NYZUA8zkOa7a4tZaXJDLE-R-9ypag1ipGN8-p0pZOQeddav_TAKAJIs1MJRtkR4TBcMn8WQXGEjFzc/s788/Screenshot%202024-01-29%20at%2011.44.30.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="228" data-original-width="788" height="93" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJoEfzQRc1rwFduTVCV5eR_aiujIj5oFYuviGrNdVluEnpH-6uBYTOANeyPEm4Hc4gEJkG69bJKUPIKBQp_wd5kqWyZxEuY7MoMQJYt5NYZUA8zkOa7a4tZaXJDLE-R-9ypag1ipGN8-p0pZOQeddav_TAKAJIs1MJRtkR4TBcMn8WQXGEjFzc/s320/Screenshot%202024-01-29%20at%2011.44.30.png" width="320" /></a></div><div><br /></div>dari situ anda dapat melihat bahwa my-2nd-network telah berhasil dibuat. Jadi jaringan yang ada didalam docker terdiri dari:<div><ol><li>bridge</li><li>host</li><li>my-network</li><li>none, dan</li><li>my-2nd-network</li></ol></div><div>Untuk menghapus jaringan tersebut, saya cukup menjalankan perintah:<div><br /></div><div>
<script src="https://gist.github.com/mahardianto/44a5f9f05416707a1b685a91808ab546.js"></script></div><div><br /></div><div>maka jaringan virtual "my-2nd-network" akan dihapus oleh docker. Cukup mudah bukan? Lalu saya coba akan menghapus jaringan "my-network" melalui perintah:</div><div><br /></div><div>
<script src="https://gist.github.com/mahardianto/9e3d5554b451b38ba6938991d4331c19.js"></script>
</div><div><br /></div><div>maka hasilnya:</div><div><br /></div><div>
<script src="https://gist.github.com/mahardianto/22260534fab99b8907ab81b4c5057034.js"></script>
</div><div><br /></div><div class="separator" style="clear: both; text-align: left;"><span style="text-align: justify;">ternyata error dan jaringan my-network tidak bisa dihapus. Hal ini dikarenakan jaringan my-network telah dipasangkan ke container. Untuk melihat container apa saja yang terhubung di dalam jaringan "my-network" tersebut, saya cukup menjalankan perintah:</span></div><div style="text-align: justify;"><br /></div><div>
<script src="https://gist.github.com/mahardianto/0db701759a384ea2ce8e011eb6c7e6d2.js"></script>
</div><div><br /></div><div>dan berikut ini hasilnya:</div><div><br /></div><div>
<script src="https://gist.github.com/mahardianto/a4e114039fac0ce10a9169a5971a23b7.js"></script>
</div><div><br /></div><div class="separator" style="clear: both; text-align: left;"><span style="text-align: justify;">Pada bagian containers terlihat bahwa ada container bernama my-apache yang terhubung dengan jaringan virtual "my-network". Agar dapat menghapusnya maka container bernama my-apache harus diputus hubungan dulu dengan jaringan virtual my-network. Untuk memutus hubungan container my-apache saya dari my-network cukup dengan perintah:</span></div><div><br /></div><div>
<script src="https://gist.github.com/mahardianto/61cb089a0539bc4b68eefb112d6b8ca1.js"></script>
</div><div><br /></div><div>setelah itu baru saya akan hapus jaringan my-network pada docker dengan perintah:</div><div><br /></div><div>
<script src="https://gist.github.com/mahardianto/9e3d5554b451b38ba6938991d4331c19.js"></script>
</div><div><br /></div><div>jika saya lihat lagi status jaringan docker, maka network bernama my-network sudah terhapus dari dalam docker seperti keluaran di bawah ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyL5ODqD-XzA_1BEkoLxQIW9eerc5Hpqukj70K_Ei3gDpiBSxcVfl8IQoMj36gifBaP7vhDrN0V8b8NGq_-qj4FHlXY40kKAcz1eGbV9NXQuK_wfPy44ZobRKzY9Fz-TcCxvInavPnLauFhyphenhyphenWbYN1wUuEWhatBHBz3wk36zQ00iiIvWZ-EyThQ/s652/Screenshot%202024-01-29%20at%2011.57.44.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="178" data-original-width="652" height="87" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyL5ODqD-XzA_1BEkoLxQIW9eerc5Hpqukj70K_Ei3gDpiBSxcVfl8IQoMj36gifBaP7vhDrN0V8b8NGq_-qj4FHlXY40kKAcz1eGbV9NXQuK_wfPy44ZobRKzY9Fz-TcCxvInavPnLauFhyphenhyphenWbYN1wUuEWhatBHBz3wk36zQ00iiIvWZ-EyThQ/s320/Screenshot%202024-01-29%20at%2011.57.44.png" width="320" /></a></div><div><br /></div>Mengelola jaringan virtual di docker ternyata cukup mudah bukan? Selamat mencoba dan terima kasih telah mampir<br /><div><br /></div></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-51625545502943841332024-01-24T13:06:00.000+07:002024-01-24T13:06:36.845+07:00Masuk ke dalam docker container - Tutorial Docker 06<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXMDyEVYNX-0oEOfthdcYGZMeH2GnY_gcQTgT6t6K6ajiMBXpk2KGfTGCE_rH9kr86SLvdgeyTKcqiBzzuCD8kWoU8DnVh2jxsGV-4qoF7x9a6O_o7downAoKCQqto9fGmA-lMxQyYVqVgdGx4WavuZ8dTdSP4oTCAJNibsWmm25_twVrMkH54/s800/Screenshot%202023-08-27%20at%2004.52.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="585" data-original-width="800" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXMDyEVYNX-0oEOfthdcYGZMeH2GnY_gcQTgT6t6K6ajiMBXpk2KGfTGCE_rH9kr86SLvdgeyTKcqiBzzuCD8kWoU8DnVh2jxsGV-4qoF7x9a6O_o7downAoKCQqto9fGmA-lMxQyYVqVgdGx4WavuZ8dTdSP4oTCAJNibsWmm25_twVrMkH54/s320/Screenshot%202023-08-27%20at%2004.52.36.png" width="320" /></a></div><p>Pada tutorial docker kali ini saya akan menjelaskan bagaimana kita bisa masuk ke dalam container, sebenarnya didalam container yang kita jalankan adalah sebuah virtual machine yang menjalankan sebuah service. Virtual Machine tersebut juga menggunakan system operasi hanya saja terisolasi di dalam container.</p><p>Misalnya saja saya akan membuat dan menjalankan sebuah container httpd, lalu saya akan masuk ke dalam container httpd tersebut. Langkah pertama yaitu mendownload image httpd dengan perintah:</p><p><script src="https://gist.github.com/mahardianto/20e60bb51e75c6feb7779828cb5cf2d7.js"></script></p><p>setelah berhasil mendownload, saya akan membuat sebuah container dari image tersebut dan menjalankannya dengan perintah:</p><p><script src="https://gist.github.com/mahardianto/90b5ca14537956971a54f46f476dea13.js"></script></p><p>untuk melihat apakah container tersebut sudah aktif dan berjalan, saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/32db5b6005bde86e3c0e47ded28e8495.js"></script></p><p>berikut ini hasilnya:</p><p><script src="https://gist.github.com/mahardianto/de4ba41a1694a24191e2c793740b704b.js"></script></p><p>dari situ anda dapat melihat bahwa container dengan nama my-first-web-server sudah berjalan di dalam docker. Kemudian untuk masuk ke dalam container tersebut saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/c593610daf3bdf834ad300b1eb83b9b5.js"></script></p><p>maka saya akan masuk ke dalam shell bash dalam container tersebut menggunakan user <b>root</b>. Untuk mengetest system operasi apa yang digunakan di dalam container tersebut saya coba menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/d5e4d6ec5cbfe6c45ca6b0e657c419e3.js"></script></p><p>maka berikut ini hasilnya:</p><p><script src="https://gist.github.com/mahardianto/7fd0be7160e2e6aa8b369872d492d3a8.js"></script></p><p>ternyata system operasi container tersebut menggunakan debian 12 dengan versi bookworm. Anda bisa menjalankan berbagai perintah di debian tersebut, misalnya menginstalasi aplikasi nmap. </p><p>Oh iya apa yang anda utak-atik di dalam container tidak akan terhapus walaupun container tersebut anda restart. Jadi jika anda menginstall aplikasi nmap di dalamnya, maka apabila container tersebut anda matikan kemudian anda hidupkan lagi maka aplikasi nmap yang telah anda install juga masih ada.</p><p>Silahkan mencoba dan terima kasih sudah mampir</p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-45063785709799493602024-01-17T10:23:00.003+07:002024-01-24T13:06:59.024+07:00Troubleshooting Ceph: Cannot add new OSD server - 27<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjXLzXE_MgX-mfVJRotYiEqFjaBahGl4WbS63ZIL0rzi04JkJZV3gwHs66Q9H5yD6YPHCcS_gg_8c7XMIPkQVlCwIWcmCZlaGPxF0kt_w5RGahmEQyjlwH3HVCj6t-POturiPtuETbXgvsWoUa-HzTZ2gdSE6QuLevbJQHOiIGDTpp4X7ClSdd/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjXLzXE_MgX-mfVJRotYiEqFjaBahGl4WbS63ZIL0rzi04JkJZV3gwHs66Q9H5yD6YPHCcS_gg_8c7XMIPkQVlCwIWcmCZlaGPxF0kt_w5RGahmEQyjlwH3HVCj6t-POturiPtuETbXgvsWoUa-HzTZ2gdSE6QuLevbJQHOiIGDTpp4X7ClSdd/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Halo kembali lagi di catatan newbienote, kali ini saya akan menuliskan log terkait operasional server ceph yang saya gunakan. Btw ini adalah tulisan pertama saya di tahun 2024 semoga bisa rutin untuk menulis lagi di blog ini. Langsung saja, saya akan secara singkat menjelaskan kondisi lingkungan pengembangan ceph yang saya gunakan yang terdiri dari 4 server:</p><p></p><ul style="text-align: left;"><li>server1 (ceph administrator)</li><li>server2</li><li>server5, dan </li><li>server6</li></ul>Lalu suatu ketika saya ingin menambahkan server baru ke dalam cluster ceph di atas, yaitu server4.<div>Untuk menambahkannya saya menjalankan perintah tersebut didalam server1 yang berfungsi sebagai ceph administratornya.</div><div><br /></div><div>Nantinya <b>server4 </b>akan berperan sebagai OSD server hanya saja ketika saya menjalankan perintah:<p></p><p><script src="https://gist.github.com/mahardianto/ac45bd1e23030e23cbd2e0b2e3a11722.js"></script></p><p>maka muncul pesan error dan penambahan server4 sebagai OSD ikut gagal, berikut ini pesan errornya:</p><p><script src="https://gist.github.com/mahardianto/521917607d7ed374b62f83c25893e9c1.js"></script></p><p>jika anda teliti membaca pesan errornya maka diketahui bahwa /dev/sda memiliki partisi sehingga tidak bisa ditambahkan sebagai OSD, setelah saya lihat pada /dev/sda di server4, memang terdapat satu buah partisi didalamnya seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQpbtNRuUyZlmKuD_p2e0e7ZBChbxv0J-EZk7fI61GsTXI3Adbdb4-DpcZDoklUwu_0Ae7twLocBy_a5X1V4gCoYheOR8G8eoJXrv5AbP323ruM2EZ-lYxfyanpc9l0gthplX3G1fX0ijawcBGRxEcEtMFr5MliBBkkZVYVZfXtq0bOI3EQIG9/s647/Screenshot%202024-01-17%20092935.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="226" data-original-width="647" height="140" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQpbtNRuUyZlmKuD_p2e0e7ZBChbxv0J-EZk7fI61GsTXI3Adbdb4-DpcZDoklUwu_0Ae7twLocBy_a5X1V4gCoYheOR8G8eoJXrv5AbP323ruM2EZ-lYxfyanpc9l0gthplX3G1fX0ijawcBGRxEcEtMFr5MliBBkkZVYVZfXtq0bOI3EQIG9/w400-h140/Screenshot%202024-01-17%20092935.png" width="400" /></a></div><p>akhirnya saya remove partisi /dev/sda1 dengan aplikasi <a href="https://www.newbienote.com/2014/02/tutorial-konfigurasi-harddisk-dan.html" target="_blank">fdisk</a>, kemudian saya ulangi lagi perintah untuk menambahkan OSD di server4, ternyata masih tidak bisa dan error dengan pesan error seperti di bawah ini:</p><p><script src="https://gist.github.com/mahardianto/8797d1022062c6b89e00e77fad662082.js"></script></p><p>jika anda perhatikan pesan error kedua ini saat saya menambahkan partisi /dev/sda milik server4 sebagai salah satu OSD ada pesan bahwa /dev/sda tidak bisa ditambahkan dikarenakan memiliki label partisi GPT di dalamnya, jika merujuk pada gambar di atas, maka anda akan melihat informasi:</p><p><b>Disklabel type: gpt</b></p><p>Jadi /dev/sda pada server4 tidak bisa digabungkan dan ditambahkan sebagai OSD pada ceph cluster karena memiliki label GPT di dalamnya, untuk menghapus label GPT tersebut, saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/f1fa0ac899c8a76b5b14949b41ead593.js"></script></p><p>perintah penghapusan tersebut saya jalankan di server4 dimana lokasi/dev/sda terpasang. Setelah berhasil menghapus label gpt mak di dalam server1, saya ulangi lagi perintah untuk menambahkan OSD di server4 ke dalam ceph dengan perintah:</p><p><script src="https://gist.github.com/mahardianto/ac45bd1e23030e23cbd2e0b2e3a11722.js"></script></p><p>Hasilnya adalah sebagai berikut:</p><p><script src="https://gist.github.com/mahardianto/2afaad39ea7d6b93f614fa14a3bcab42.js"></script></p><p>jika saya jalankan perintah ceph osd tree, maka server4 sudah secara otomatis bergabung ke dalam ceph cluster:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEie-geN3d1kivS1tNY4OXJZWj1T2idrXftxP4U8TYZSAdlZkAlv4FS9q_Q0E2vvto7aWClcdYOIs6677b2lK7SNo-K5a4Dm-nW_9I6kcd51Jl_eRJl6BbngpZV3NUHaFmVCl5c9kazEMwVs_Jy7RxNOVwVInQryjcxGIz3fzv1QXKHAbu0_uDNn/s633/Screenshot%202024-01-17%20093748.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="279" data-original-width="633" height="141" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEie-geN3d1kivS1tNY4OXJZWj1T2idrXftxP4U8TYZSAdlZkAlv4FS9q_Q0E2vvto7aWClcdYOIs6677b2lK7SNo-K5a4Dm-nW_9I6kcd51Jl_eRJl6BbngpZV3NUHaFmVCl5c9kazEMwVs_Jy7RxNOVwVInQryjcxGIz3fzv1QXKHAbu0_uDNn/s320/Screenshot%202024-01-17%20093748.png" width="320" /></a></div><br /><p>Sekian catatan troubleshooting ceph dari saya semoga jurnal ini dapat membantu teman-teman yang mendapatkan masalah yang sama seperti saya dalam mengoperasikan ceph cluster. Sampai jumpa lagi di tulisan berikutnya.</p></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-59356059604415116612023-09-11T12:52:00.001+07:002023-09-11T12:52:36.126+07:00Membuat container dengan docker compose di Ubuntu Server - Tutorial docker 05<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXMDyEVYNX-0oEOfthdcYGZMeH2GnY_gcQTgT6t6K6ajiMBXpk2KGfTGCE_rH9kr86SLvdgeyTKcqiBzzuCD8kWoU8DnVh2jxsGV-4qoF7x9a6O_o7downAoKCQqto9fGmA-lMxQyYVqVgdGx4WavuZ8dTdSP4oTCAJNibsWmm25_twVrMkH54/s1554/Screenshot%202023-08-27%20at%2004.52.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1136" data-original-width="1554" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXMDyEVYNX-0oEOfthdcYGZMeH2GnY_gcQTgT6t6K6ajiMBXpk2KGfTGCE_rH9kr86SLvdgeyTKcqiBzzuCD8kWoU8DnVh2jxsGV-4qoF7x9a6O_o7downAoKCQqto9fGmA-lMxQyYVqVgdGx4WavuZ8dTdSP4oTCAJNibsWmm25_twVrMkH54/s320/Screenshot%202023-08-27%20at%2004.52.36.png" width="320" /></a></div><p style="text-align: justify;">Halo selamat datang di website ini, masih membahas tentang docker kali ini saya akan menuliskan cara bagaimana membuat sebuah container dengan docker compose. Docker compose adalah cara membuat sebuah container yang menggunakan file composer. Berbeda dengan sebelumnya dimana saya membuat container dengan menjalankan perintah satu per satu di terminal, melalui docker compose kita hanya perlu menjalankan satu buah perintah saja untuk membaca file composer maka akan tercipta container yang kita inginkan tersebut. </p><p style="text-align: justify;">Kelebihan dari menggunakan docker compose ini adalah file composer yang kita buat bisa kita pindahkan ke server docker lainnya, selain itu dari file composer tersebut kita bisa membuat container sekaligus dokumentasinya. </p><p style="text-align: justify;">Langsung saja kita mulai langkah-langkah pembangunan container dengan docker compose. Perlu anda ketahui server docker yang saya pakai menggunakan Ubuntu Server 22.04 yang sudah terinstall docker sebelumnya. </p><h2 style="text-align: justify;"><b>Instalasi Docker Compose</b></h2><p style="text-align: justify;">Docker composer sendiri adalah sebuah tool terpisah dari docker engine yang kita pakai, jadi sebelum kita bisa menggunakan docker compose di server docker, kita harus menginstall aplikasi atau tools docker composer terlebih dahulu. Untuk menginstall tool docker composer tersebut, saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/9e4679b55103e09896c420c97474d977.js"></script></p><p>berikut ini tampilan proses instalasi docker composer:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqUH3_bnaZwwJQ71W6fC0iYWhN6sbh3J7aIXB-NonJKzG5zYDtLUe2aB-ZcyNvyqQasAlyiIXoq79-bqvECtZG8GCJiriS8VDcix2Jm2k0o0W9qtVrYrjWrByR6zJjOMn6ZZVOm54oQGiu49x_z8bMN_Yu9euL2iKjOi6qFJZ9BOlbLZFIIaLv/s709/Screenshot%202023-09-11%20104908.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="637" data-original-width="709" height="576" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqUH3_bnaZwwJQ71W6fC0iYWhN6sbh3J7aIXB-NonJKzG5zYDtLUe2aB-ZcyNvyqQasAlyiIXoq79-bqvECtZG8GCJiriS8VDcix2Jm2k0o0W9qtVrYrjWrByR6zJjOMn6ZZVOm54oQGiu49x_z8bMN_Yu9euL2iKjOi6qFJZ9BOlbLZFIIaLv/w640-h576/Screenshot%202023-09-11%20104908.png" width="640" /></a></div><div><br /></div>Jika anda mendapati keluaran yang mirip dengan tampilan di atas pada server anda, itu berarti anda berhasil menginstall tools docker-compose di dalam komputer Ubuntu Server anda.<div><br /></div><div><h2 style="text-align: left;"><b>Konfigurasi file compose.yaml</b></h2><p>Selesai instalasi langkah berikutnya adalah pembuatan file composer yang berformat yaml, sebelum saya membuat file composer tersebut, saya akan membuat folder dengan nama mysql-docker untuk menyimpan atau menaruh file composer tersebut. Untuk membuat folder mysql-docker saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/55a0db02463e1b69d4b27e16039b9f1f.js"></script>
</p><p>setelah itu saya membuat file <b>compose.yaml</b> dengan perintah:</p><p><script src="https://gist.github.com/mahardianto/dc583d5b30357a5e19003292a32c98ef.js"></script></p><p>perintah di atas akan membuat sebuah file dengan nama compose.yaml dengan aplikasi editor vim yang nantinya akan disimpan di dalam folder mysql-docker. Langkah berikutnya adalah mengisi file compose.yaml tersebut dengan konfigurasi di bawah ini:</p><p><script src="https://gist.github.com/mahardianto/38c965671ece6671bdd84ca23e10a19f.js"></script></p><p>setelah file berhasil disimpan, saya keluar dari aplikasi editor vim.</p><h2 style="text-align: left;"><b>Pembuatan container dengan docker-composer</b></h2><p>Langkah berikutnya adalah pembuatan container dengan file composer tadi memalui bantuan aplikasi docker compose. Sebelumnya saya harus masuk dulu ke dalam folder mysql-docker dengan perintah:</p><p><script src="https://gist.github.com/mahardianto/74f61995189c1d2331aa5c469b29bc3d.js"></script></p><p>setelah berhasil masuk saya kemudian menjalankan aplikasi docker-compose dengan format berikut ini</p><p><script src="https://gist.github.com/mahardianto/75ba821d5564f01108bbde2dceada66c.js"></script></p><p>apabila proses pembuatan container berjalan lancar maka anda akan mendapati proses seperti di bawah ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdHyjaEQCCWsxxPr9z-DCLAadQbkvHxRciBJMp4Jj_nMc426yAR8tzw1jrgHog4MP7iu6SwJ7cYKHjm6DlsMkptrtdKPFwo847SIPwdp-XRok9RdxUzrfC0IaoeET5Y4O1is29sAOmRqmO0QReyVWTde12g-GLt3eUehNMu9toZw58BaD80W8R/s1108/Screenshot%202023-09-11%20105451.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="271" data-original-width="1108" height="156" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdHyjaEQCCWsxxPr9z-DCLAadQbkvHxRciBJMp4Jj_nMc426yAR8tzw1jrgHog4MP7iu6SwJ7cYKHjm6DlsMkptrtdKPFwo847SIPwdp-XRok9RdxUzrfC0IaoeET5Y4O1is29sAOmRqmO0QReyVWTde12g-GLt3eUehNMu9toZw58BaD80W8R/w640-h156/Screenshot%202023-09-11%20105451.png" width="640" /></a></div><p>Proses di atas adalah penarikan image yang dibutuhkan dalam pembuatan container berdasarkan konfigurasi file compose.yaml. Jika proses pembuatan container berjalan lancar maka anda akan mendapati tampilan yang mirip dengan keluaran di bawah ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicZ76zb87-ZE0asmlQ2CyQFCZYKn27UuyKsXVZAFYzbPtWpjW_RdN31iau-bb2Yu_9ynNpKyU9QDrVHtAO7ilB210ONNDYAO2gNiw2_94FN7tNgpC8iovF0pHjsp0XDOf73jC-GRH8q34KBSLz52_dJ6zD5BlhpqXqHLPopCdNdsNjjSB79Ptp/s1101/Screenshot%202023-09-11%20105605.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="327" data-original-width="1101" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicZ76zb87-ZE0asmlQ2CyQFCZYKn27UuyKsXVZAFYzbPtWpjW_RdN31iau-bb2Yu_9ynNpKyU9QDrVHtAO7ilB210ONNDYAO2gNiw2_94FN7tNgpC8iovF0pHjsp0XDOf73jC-GRH8q34KBSLz52_dJ6zD5BlhpqXqHLPopCdNdsNjjSB79Ptp/w640-h190/Screenshot%202023-09-11%20105605.png" width="640" /></a></div><br /><p>Untuk memastikan apakah container yang saya buat tadi berhasil dan aktif atau tidak, maka saya akan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/09000117a7aa4f402d7daff31c78329a.js"></script></p><p>dan hasilnya adalah seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyscW3m1OiLDuXEd9QIo8PQD8oPRS-aunEM3Wk9HQ5d14Isl81W-mAxeeOZh62w9NA88jakEYUcgDKFbCskDowCBGB4OQfktgKZs8JTu0wQcAl199yEEL634FqrtigH_9-Ef8D9Ki6vi0HY6OdSMR4mNzIi8_OcxaNU0liumVOkfLWWk1rx2Gy/s1463/Screenshot%202023-09-11%20105904.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="85" data-original-width="1463" height="38" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyscW3m1OiLDuXEd9QIo8PQD8oPRS-aunEM3Wk9HQ5d14Isl81W-mAxeeOZh62w9NA88jakEYUcgDKFbCskDowCBGB4OQfktgKZs8JTu0wQcAl199yEEL634FqrtigH_9-Ef8D9Ki6vi0HY6OdSMR4mNzIi8_OcxaNU0liumVOkfLWWk1rx2Gy/w640-h38/Screenshot%202023-09-11%20105904.png" width="640" /></a></div><p style="text-align: justify;">dari tampilan di atas ini terlihat bahwa container yang dibuat dengan docker compose telah aktif berjalan dengan nama <b>mysql-docker-db-1</b>. Sebagai informasi tambahan dengan docker compose ini kita juga bisa membuat multi container, selain itu ketika kita membuat container dengan docker compose, secara otomatis kita juga membuat network virtual baru yang fungsinya untuk komunikasi antar container dari hasil instalasi file composer tersebut. </p><p style="text-align: justify;">Untuk melihat network virtual tersebut saya cukup menjalankan perintah:</p><p style="text-align: justify;"><script src="https://gist.github.com/mahardianto/fbc7414eb6938190ca25760922d9f619.js"></script></p><p style="text-align: justify;">hasilnya adalah seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1uZ6mva4zAVRjmeF3zMRqAe4k65HfIIVT39haL8yXe0u4RlwHg5_Gn_CW8dwECdTQCDAqtJA27zNreYtI7lAE40HlX0hEc9gjw-RfEtddca9amnUIdE1hA6P4AZf2tAgFWekGrvpT02Vv_lgO7RIOA8YJ7pOHAwgaoaaLE_zh_-7QMPfQvr9Z/s539/Screenshot%202023-09-11%20113845.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="156" data-original-width="539" height="93" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1uZ6mva4zAVRjmeF3zMRqAe4k65HfIIVT39haL8yXe0u4RlwHg5_Gn_CW8dwECdTQCDAqtJA27zNreYtI7lAE40HlX0hEc9gjw-RfEtddca9amnUIdE1hA6P4AZf2tAgFWekGrvpT02Vv_lgO7RIOA8YJ7pOHAwgaoaaLE_zh_-7QMPfQvr9Z/s320/Screenshot%202023-09-11%20113845.png" width="320" /></a></div><div><br /></div><div style="text-align: justify;">Dari gambar di atas terlihat bahwa ada network baru dengan nama <b>mysql-docker_default</b> dari hasil pembuatan via composer tadi. <span style="text-align: justify;">Tutorial selanjutnya saya akan coba membahas bagaimana caranya membuat multi container dari file composer atau melakukan management network virtual di docker. Sekian tutorial kali ini selamat mencoba dan terima kasih telah berkunjung. </span></div></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-20525582423041950042023-09-10T11:12:00.052+07:002023-09-10T11:56:18.564+07:00Cara install MySQL 8 di Ubuntu Server 22.04 dengan Docker - Tutorial Docker 04<div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl_xVqRKpK0b-nFaQRd_ToVl1mBLIC4VwbpZcMpmc-bEN94DKZFJuWFeQZYqTcVE7wZRSVOcmUARpIpW4D1zXCEdEANUrIbLvq2SM0ZVY8t2t1Bh095dXNEwTmFcwghBZ41MFxsVw3QGOtrrS5BgbEHsrvff8oCYFRv4EJVkNIW3bzLoT2QPd4/s1554/Screenshot%202023-08-27%20at%2004.52.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1136" data-original-width="1554" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl_xVqRKpK0b-nFaQRd_ToVl1mBLIC4VwbpZcMpmc-bEN94DKZFJuWFeQZYqTcVE7wZRSVOcmUARpIpW4D1zXCEdEANUrIbLvq2SM0ZVY8t2t1Bh095dXNEwTmFcwghBZ41MFxsVw3QGOtrrS5BgbEHsrvff8oCYFRv4EJVkNIW3bzLoT2QPd4/s320/Screenshot%202023-08-27%20at%2004.52.36.png" width="320" /></a></div><p style="text-align: justify;">Tutorial kali ini saya masih akan membahas tentang docker dan container, hanya saja perbedaan dengan sebelumnya pada tutor ini adalah implementasi container untuk layanan database MySQL. Jadi saya akan membangun layanan database server dengan MySQL melalui container docker di atas Ubuntu Server. Karena ini meneruskan seri tutorial sebelumnya, maka saya sudah menginstall aplikasi Docker di system Ubuntu Server saya jadi langkah instalasi docker tidak saya ulangi disini. Langsung saja berikut ini step-step menginstall MySQL server menggunakan docker:</p><p style="text-align: left;">Pertama saya akan masuk ke dalam terminal Ubuntu Server, kemudian saya akan menarik images MySQL server di dalam docker dengan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/0b9e8f76b5bcfeb72f6b14364ce09bad.js"></script></p><p style="text-align: left;">hasilnya adalah seperti berikut ini:</p><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLHG8ooxQ27nd-A30WEe1ahF2RmMD3iibGMsEyDltUTSSIk3sjjd5PPVt9pQIiJgv_nchR33HxyOxkwRMC5WoCKV362SZCgUA1b54lVpKVTKdPANAQbmN9V4-Upn7YMdl5pCDPwuHiGI7ChJvM1Ck8KB3x_A1milz2EjD92py5QAbiCSQNKiOT/s1418/Screenshot%202023-09-10%20at%2010.38.52.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="362" data-original-width="1418" height="165" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLHG8ooxQ27nd-A30WEe1ahF2RmMD3iibGMsEyDltUTSSIk3sjjd5PPVt9pQIiJgv_nchR33HxyOxkwRMC5WoCKV362SZCgUA1b54lVpKVTKdPANAQbmN9V4-Upn7YMdl5pCDPwuHiGI7ChJvM1Ck8KB3x_A1milz2EjD92py5QAbiCSQNKiOT/w640-h165/Screenshot%202023-09-10%20at%2010.38.52.png" width="640" /></a></div><br style="text-align: left;" /><p style="text-align: left;">setelah selesai penarikan image MySQL server, saya bisa cek hasil download image tersebut dengan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/62c74ec25f339de7da82ebdfe2b5124e.js"></script></p><p style="text-align: left;">berikut ini tampilan hasil penarikan image MySQL tadi:</p><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwXaJeMPr3iOzgZKENyZxEeuofZuW6Xcl0C9lvhSVEwYM45tK2Z_oQ_Rvp28kQmjVgO4y2An3O3Ah79png_oEOD7V2XG2KN2WhfVJVTBVRZBohRIuCoo41STQzx_9nYOWgHfoeZRIv9-O-N537YpCxYjx1PQXZ5NHAUiTCsZOOp-kyAby0_wTz/s868/Screenshot%202023-09-10%20at%2010.42.22.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="126" data-original-width="868" height="92" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwXaJeMPr3iOzgZKENyZxEeuofZuW6Xcl0C9lvhSVEwYM45tK2Z_oQ_Rvp28kQmjVgO4y2An3O3Ah79png_oEOD7V2XG2KN2WhfVJVTBVRZBohRIuCoo41STQzx_9nYOWgHfoeZRIv9-O-N537YpCxYjx1PQXZ5NHAUiTCsZOOp-kyAby0_wTz/w640-h92/Screenshot%202023-09-10%20at%2010.42.22.png" width="640" /></a></div><br style="text-align: left;" /><p style="text-align: justify;">di repository docker pad alokal server sudah ada image MySQL id dengan ID: 99afc808f15b yang artinya image docker MySQL berhasil di unduh. Langlah berikutnya adalah mengaktifkan layanan database MySQL dengan image tersebut melalui pembuatan container. Container MySQL tersebut akan saya beri nama <b>mysql-docker</b>. Maka saya cukup menjalankan perintah:</p><p style="text-align: justify;"><script src="https://gist.github.com/mahardianto/ef7fb8fb6edbe01368b4907d28ec3532.js"></script></p><p style="text-align: left;">dari perintah tersebut akan muncul keluaran yang mirip dengan hasil di bawah:</p><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbRcsn0qflDYBAzrmzilaHn3ZCFzP7JtdANWuPz0uDVsYItoNZMMijhqfLCF03ErwKEFyOnnOjO-UsqYycp6CHwlyM3nNBCsTnlmwgXB3gGG0zp_mMZ7k4fasQffPRZV7NQDg3dpRmm-vS1YVRcb-OnF07tDBNhwX7ZWVtKdV2Crnnlor8xq3n/s1746/Screenshot%202023-09-10%20at%2010.49.14.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="94" data-original-width="1746" height="34" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbRcsn0qflDYBAzrmzilaHn3ZCFzP7JtdANWuPz0uDVsYItoNZMMijhqfLCF03ErwKEFyOnnOjO-UsqYycp6CHwlyM3nNBCsTnlmwgXB3gGG0zp_mMZ7k4fasQffPRZV7NQDg3dpRmm-vS1YVRcb-OnF07tDBNhwX7ZWVtKdV2Crnnlor8xq3n/w640-h34/Screenshot%202023-09-10%20at%2010.49.14.png" width="640" /></a></div><div style="text-align: left;"><br /></div><div style="text-align: justify;">jika container berhasil dibuat dan diaktifkan, maka akan terlihat statusnya di container monitor, untuk melihat apakah benar mysql server container yang barusan saya buat itu berjalan (aktif) maka saya menjalankan perintah:</div><div style="text-align: justify;"><br /></div><div style="text-align: justify;"><script src="https://gist.github.com/mahardianto/525aa559b29bc7fd3bbb88a9c99dc8fd.js"></script></div><div style="text-align: justify;"><br /></div><div style="text-align: left;">berikut ini hasilnya:</div><div style="text-align: left;"><br /></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-lrBjxmEMODi0y62FeffKLMXGkd2ZVwKxCHIh0DuFW6aWLnJr05MiY1Ef-utK7uAXz7UqekuFJagkNf4CXneMjRnioz6EbM00QJPulZknHe1X4B8oAKNMkwSDiVqseQJSx8mG90FpFI1KjfIfX0uZY4z6QyfbzrfPtdsdmQdEiZW0Jmbcvwa8/s2268/Screenshot%202023-09-10%20at%2010.51.25.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="124" data-original-width="2268" height="34" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-lrBjxmEMODi0y62FeffKLMXGkd2ZVwKxCHIh0DuFW6aWLnJr05MiY1Ef-utK7uAXz7UqekuFJagkNf4CXneMjRnioz6EbM00QJPulZknHe1X4B8oAKNMkwSDiVqseQJSx8mG90FpFI1KjfIfX0uZY4z6QyfbzrfPtdsdmQdEiZW0Jmbcvwa8/w640-h34/Screenshot%202023-09-10%20at%2010.51.25.png" width="640" /></a></div><br style="text-align: left;" /><div style="text-align: left;"><div style="text-align: justify;">perhatikan pada kolom <b>STATUS </b>dan<b> CREATED </b>, ada keterangan Up 2 minutes, yang artinya layanan MySQL dari container berhasil dibuat dan sudah aktif sejak 2 menit tadi. </div><p style="text-align: justify;">Untuk mengetest apakah benar layanan MySQL berhasil berjalan, saya akan mencoba masuk ke dalam server MySQL dengan perintah:</p><p style="text-align: justify;"><script src="https://gist.github.com/mahardianto/e07c094e4a41a7eeae52dd24779ff5ff.js"></script></p><p style="text-align: justify;">saya masukkan password root yaitu my-secret-pw, bagaimana saya bisa tau bahwa password rootnya adalah my-secret-pw, itu karena opsi password tersebut saya buat ketika saya menjalankan perintah<b> sudo docker run</b> tadi dan berikut ini hasilnya setelah berhasil login:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKawaup9EyipuQSR3TejbQ8oH_80X2VS6oZqBuCL4AaWZ2E-dvzVEkuNqTW2keumOiMOaI4oN3563MzYsgDN2GTZ3gr78TwZn2DRyqcrKLYswbbecoZTgyakKMsiusV3oM_hLR63fzBavafss9EzFVeIxewhJj8aaxSZeKK1RW6Wa-CS9bbmSG/s1190/Screenshot%202023-09-10%20at%2010.56.21.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="428" data-original-width="1190" height="230" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKawaup9EyipuQSR3TejbQ8oH_80X2VS6oZqBuCL4AaWZ2E-dvzVEkuNqTW2keumOiMOaI4oN3563MzYsgDN2GTZ3gr78TwZn2DRyqcrKLYswbbecoZTgyakKMsiusV3oM_hLR63fzBavafss9EzFVeIxewhJj8aaxSZeKK1RW6Wa-CS9bbmSG/w640-h230/Screenshot%202023-09-10%20at%2010.56.21.png" width="640" /></a></div><br /><p style="text-align: justify;">layanan MySQL server versi 8.1.0 yang berasal dari docker sudah berhasil di install dan aktif. Setelah masuk ke dalam server MySQL maka anda bisa menjalankan berbagai perintah MySQL seperti pada umumnya.</p><p style="text-align: justify;">Lalu bagaimana jika saya ingin mematikan layanan MySQL docker tersebut? saya cukup menjalankan perintah:</p><p style="text-align: justify;"><script src="https://gist.github.com/mahardianto/29dd63816eb5e2dacad59b96749003ec.js"></script></p><p style="text-align: justify;">maka container dengan nama mysql-docker (sekaligus layanan mysql server) akan berhenti beroperasi, untuk membuktikannya saya coba menjalankan lagi perintah monitoring container dengan menjalankan:</p><p style="text-align: justify;"><script src="https://gist.github.com/mahardianto/525aa559b29bc7fd3bbb88a9c99dc8fd.js"></script></p><div>berikut ini hasilnya:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSb3c_uWXW5dJvMMJoE3bZvy3nDLwNiU_aYFljOdzgi0ClnLgw3EzUhZhvRScPA4CT4oXnCFAN8qzILnGHR6cOlGQc7Rz-vkFuivtMtuKoqV8EVc4Ic5i0_Lh14d5DiiPJfIqk7zj2FRFv7OyhKswjuohkSGC5sSTAIhVTxvqDwbPqHOebEGjP/s1088/Screenshot%202023-09-10%20at%2010.59.56.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="96" data-original-width="1088" height="56" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSb3c_uWXW5dJvMMJoE3bZvy3nDLwNiU_aYFljOdzgi0ClnLgw3EzUhZhvRScPA4CT4oXnCFAN8qzILnGHR6cOlGQc7Rz-vkFuivtMtuKoqV8EVc4Ic5i0_Lh14d5DiiPJfIqk7zj2FRFv7OyhKswjuohkSGC5sSTAIhVTxvqDwbPqHOebEGjP/w640-h56/Screenshot%202023-09-10%20at%2010.59.56.png" width="640" /></a></div><br /><p>jika ingin melihat container tersebut apakah benar masih ada atau sudah terhapus, saya cukup menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/13162f7b3966e5d1e3b749a97f0d197c.js"></script></p><p>dan berikut ini hasilnya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidR5MhltzG0uuQz83b233EiirNVnfm2NSs6mYbAx8I-WtgR_eiN50gLIMQr-yQb3hJyaw4uzflYo3dcyqsRjnGKcRpEd70ZXFPd2YxiIWqKNACPCB5myvpvcUkmAFTg6pMjHboQ8mS_d_eWhiux4gN2c0U6E9wl1hhMgu8dQGnVzqxfxuuBzn_/s1844/Screenshot%202023-09-10%20at%2011.01.21.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="124" data-original-width="1844" height="44" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidR5MhltzG0uuQz83b233EiirNVnfm2NSs6mYbAx8I-WtgR_eiN50gLIMQr-yQb3hJyaw4uzflYo3dcyqsRjnGKcRpEd70ZXFPd2YxiIWqKNACPCB5myvpvcUkmAFTg6pMjHboQ8mS_d_eWhiux4gN2c0U6E9wl1hhMgu8dQGnVzqxfxuuBzn_/w640-h44/Screenshot%202023-09-10%20at%2011.01.21.png" width="640" /></a></div><br /><p style="text-align: justify;">perhatikan bagian STATUS, container tersebut berstatus Exited yang artinya container mysql-docker sedang tidak berjalan/aktif, untuk menjalankan kembali container tersebut sekaligus menjalankan kembali layanan MySQL (mysql-docker) saya cukup menjalankan perintah:</p><p style="text-align: justify;"><script src="https://gist.github.com/mahardianto/553de4b26fd823034e38a263784ae612.js"></script></p><p style="text-align: justify;">maka container dan layanan MySQL lewat docker akan kembali aktif. Berikut ini tampilan status monitoring container yang barusan saya hidupkan:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsZdrZdCYEX981ZlB5SnNO89ur75Lz3Chb39AdoF9EbskS4EQe1fKjVNgc1Ir5qezKIxvIOOQYcTS-xruWfEH7EY5ddAgoVsxHHH_7w7ErKq_TCGK566UuQiqKEYfAvKIZlMs0hF-HxIoGogIhyxqa_aWOEJR_mzMfQ0EP_flWEiqho5BwkTLp/s2326/Screenshot%202023-09-10%20at%2011.05.25.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="126" data-original-width="2326" height="34" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsZdrZdCYEX981ZlB5SnNO89ur75Lz3Chb39AdoF9EbskS4EQe1fKjVNgc1Ir5qezKIxvIOOQYcTS-xruWfEH7EY5ddAgoVsxHHH_7w7ErKq_TCGK566UuQiqKEYfAvKIZlMs0hF-HxIoGogIhyxqa_aWOEJR_mzMfQ0EP_flWEiqho5BwkTLp/w640-h34/Screenshot%202023-09-10%20at%2011.05.25.png" width="640" /></a></div><br /><p style="text-align: justify;">perhatikan bagian kolom STATUS bahwa hasilnya adalah Up about minutes yang artisnya container MySQL server barusan sudah aktif beberapa menit yang lalu. Mudah bukan membangun layanan MySQL menggunakan docker? Pada tutorial selanjutnya saya akan membahas tentang docker dan container yang lain, Selamat mencoba dan terima kasih telah berkunjung.</p></div></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-30323988879237494122023-09-01T15:16:00.206+07:002023-09-10T11:48:59.883+07:00Cara membuat container, menjalankan container dan menghapus container docker di Ubuntu Server 22.04 - Tutorial Docker 03<div class="separator" style="clear: both; text-align: justify;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpu8lJLX8Q6zi4k0okRu7yU0ZllLnAyiwidGseZjPZFS9lMH8S6s47hZ9Hn8wt1QFM_vrSXvd6WOPYxxO6K5vxvnSaomucoB1bZcrKukwVpp21oMXBlDiein2Dk7O5jB-qxqiH4mHn-j-jlVKbcXz-bHOsmVlIAZI_6K10-NYLIyBGNBOLA5zv/s1554/Screenshot%202023-08-27%20at%2004.52.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1136" data-original-width="1554" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpu8lJLX8Q6zi4k0okRu7yU0ZllLnAyiwidGseZjPZFS9lMH8S6s47hZ9Hn8wt1QFM_vrSXvd6WOPYxxO6K5vxvnSaomucoB1bZcrKukwVpp21oMXBlDiein2Dk7O5jB-qxqiH4mHn-j-jlVKbcXz-bHOsmVlIAZI_6K10-NYLIyBGNBOLA5zv/s320/Screenshot%202023-08-27%20at%2004.52.36.png" width="320" /></a></div><br /><span style="text-align: left;"><br /></span></div><div class="separator" style="clear: both; text-align: justify;"><span style="text-align: left;">Halo berjumpa kembali, kali ini saya akan menjelaskan bagaimana membuat container dari image yang sudah di download, sebagai contoh saya akan menjelaskan disini bagaimana cara membuat container MySQL. Pada tutorial ini juga akan saya jelaskan bagaimana cara menjalankan layanan MySQL dari container dan dasar-dasar cara mengelolanya termasuk menghapus container yang sudah tidak diperlukan.</span></div><p>Sebelum saya mulai membuat layanan MySQL server dari docker container saya harus melakukan download image MySQL tersebut dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/c2784e8fc29930e30f3d5b0de23ca777.js"></script></p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">Perintah di atas akan menarik image docker mysql yang terbaru ke dalam server docker engine, berikut proses penarikannya:</p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqI0d5fFcJiOmR5chR92lRRgY276P5C7Y0hySQX76N9ck-MIHvu70OLu_Df63tkDDonmDX3t4JM3lPSn13wQz24A5FQqug2AIuTBkdK1QWTNBnX6xqmDLP2InX_NR3cQtOz23yUyPTeyoin4hl5ZVOMv-x6b0W7IloHHqOfn1_HgXfGChnH5pW/s968/Screenshot%202023-09-01%20152134.png" style="font-family: Times; font-size: medium; margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="274" data-original-width="968" height="182" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqI0d5fFcJiOmR5chR92lRRgY276P5C7Y0hySQX76N9ck-MIHvu70OLu_Df63tkDDonmDX3t4JM3lPSn13wQz24A5FQqug2AIuTBkdK1QWTNBnX6xqmDLP2InX_NR3cQtOz23yUyPTeyoin4hl5ZVOMv-x6b0W7IloHHqOfn1_HgXfGChnH5pW/w640-h182/Screenshot%202023-09-01%20152134.png" width="640" /></a></p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">kemudian untuk melihat hasil image yang sudah diunduh dari perintah tersebut, saya cukup menjalankan perintah "sudo docker images" dan berikut ini hasil keluarannya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUDG_l1fjUQjXODzxozz4gwLphmm4IxDXv2Q2mvS6Rawv6iEeAiQbJJW0O1gopjKTkcGVLEPcD3jvHBG-TiN5TaFduGT8S1UgeJSf2DA9rwuOS3HljiyVi8HHDUCd0cOa9MidytKrzGpUVnL9PyZMlgZPAvF72XQP0Y1eXue2dlz9JatubI4qc/s555/Screenshot%202023-09-01%20152310.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="91" data-original-width="555" height="65" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUDG_l1fjUQjXODzxozz4gwLphmm4IxDXv2Q2mvS6Rawv6iEeAiQbJJW0O1gopjKTkcGVLEPcD3jvHBG-TiN5TaFduGT8S1UgeJSf2DA9rwuOS3HljiyVi8HHDUCd0cOa9MidytKrzGpUVnL9PyZMlgZPAvF72XQP0Y1eXue2dlz9JatubI4qc/w400-h65/Screenshot%202023-09-01%20152310.png" width="400" /></a></div><div><br /></div><div><span style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">berdasarkan hasil keluaran gambar diatas maka terlihat bahwa images mysql dari docker berhasil diunduh.</span></div><div><h3 style="text-align: left;">Membuat container MySQL di Docker</h3><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">Setelah berhasil mendownload images maka saya akan membuat sekaligus menjalankan container mysql dengan nama mysql-container-01 . Layanan itu akan dapat diakses melalui port 3306 dari alamat IP server docker. Maka saya cukup menjalankan perintah:</p><p style="background-color: white;"><span style="font-family: Merriweather, Georgia, serif;"><script src="https://gist.github.com/mahardianto/96431eb2df29bd722311f9d7c7a1d337.js"></script></span></p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">Perintah di atas akan membuat sebuah container sekaligus menjalankan container tersebut di dalam server, berikut ini keluaran perintah di atas:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVZ4Od6K9pZJnMSmQnHfO8JapDWxCbluAt4vdFcnTHFmsPOfIHsnSukedLdb0RVjsY5POLLfhFxOLKir4yChgWL2i2WRNaLEGjp8WvPEVZOMBDt68Iq0ry-ewpv0PxTSc7ccAczn3GmTI5RWeGE5KdvVz95yzlfNtWsoyuJ58QXDcXihG_rNbX/s1073/Screenshot%202023-09-01%20152134.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="59" data-original-width="1073" height="35" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVZ4Od6K9pZJnMSmQnHfO8JapDWxCbluAt4vdFcnTHFmsPOfIHsnSukedLdb0RVjsY5POLLfhFxOLKir4yChgWL2i2WRNaLEGjp8WvPEVZOMBDt68Iq0ry-ewpv0PxTSc7ccAczn3GmTI5RWeGE5KdvVz95yzlfNtWsoyuJ58QXDcXihG_rNbX/w640-h35/Screenshot%202023-09-01%20152134.png" width="640" /></a></div><div><br /></div><div>dengan begitu anda telah berhasil membuat dan mengaktifkan container MySQL di server docker.</div><div><br /></div><h3>Melihat status container di Docker</h3><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">untuk melihat apakah container yang saya buat itu berjalan atau tidak, saya cukup menjalankan perintah:</p><p style="background-color: white;"><span style="font-family: Merriweather, Georgia, serif;"><script src="https://gist.github.com/mahardianto/c39db9e4a081033726c6a08cd54e1067.js"></script></span></p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">atau bisa juga menggunakan perintah:</p><p style="background-color: white;"><span style="font-family: Merriweather, Georgia, serif;"><script src="https://gist.github.com/mahardianto/525aa559b29bc7fd3bbb88a9c99dc8fd.js"></script></span></p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">hasil kedua perintah tersebut terlihat seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA--GUmBQdeyKKV1fdYuUlxvr9pFEATO02c4pOxMvHzcDH31Z7e12-rFzfp6bFQK2NoV4FaR7Z-kKmOj4_DUxg8JByegHV4I9lkkK8mvuJPsTuYCv7TTXQOxdmZv_oDOnNHgORn_ysM7Cs7eUcZZ4sHSyhEfjTnYqw8O8mmEUCtW7wqocmj_N7/s1415/Screenshot%202023-09-01%20152134.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="143" data-original-width="1415" height="64" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA--GUmBQdeyKKV1fdYuUlxvr9pFEATO02c4pOxMvHzcDH31Z7e12-rFzfp6bFQK2NoV4FaR7Z-kKmOj4_DUxg8JByegHV4I9lkkK8mvuJPsTuYCv7TTXQOxdmZv_oDOnNHgORn_ysM7Cs7eUcZZ4sHSyhEfjTnYqw8O8mmEUCtW7wqocmj_N7/w640-h64/Screenshot%202023-09-01%20152134.png" width="640" /></a></div><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">perhatikan kolom STATUS yang berisi keluaran "Up", itu berarti container yang tadi dibuat sudah otomatis berjalan di dalam server.</p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;"><br /></p><h3>Menghentikan container di Docker</h3><div>Untuk menghentikan container yang berjalan saya cukup menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/93e5316cf0cf2d1220b279eff07770ff.js"></script></div><div><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">hasil perintah tersebut akan terlihat seperti ini:</p></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh456wVTfckpL4WOjiQkxEfBegMWMroCqZ44KpD4ImeiCui6eiN0C7iSfMzvrccywHD7_Y_bp_lABP9AhA9e8O-FoZgSud2La8q_wS0vrg3tFIXAwpVTLZcKfF6YYl1zA-gdszubpIbgLH5H2ZBrnacrlYqFFvrJ5vOoqQ0x2TtOyQNB9bgx4yl/s636/Screenshot%202023-09-01%20152134.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="64" data-original-width="636" height="40" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh456wVTfckpL4WOjiQkxEfBegMWMroCqZ44KpD4ImeiCui6eiN0C7iSfMzvrccywHD7_Y_bp_lABP9AhA9e8O-FoZgSud2La8q_wS0vrg3tFIXAwpVTLZcKfF6YYl1zA-gdszubpIbgLH5H2ZBrnacrlYqFFvrJ5vOoqQ0x2TtOyQNB9bgx4yl/w400-h40/Screenshot%202023-09-01%20152134.png" width="400" /></a></div><br /><div>jika kita lihat statusnya dengan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/4ee54b18c7594d88ed8180e222b24653.js"></script></div><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">hasil perintah tersebut terlihat seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTf88t8cuq0UuhGXLn_YR9CejLnpZfFdKWscZLPrc7ir-OGcY54UhU_lU0P5-M5cg-DILaIF_KRFJiDE8zmnLlgddZbS4mFBq9ywW3nvM8xRxgmpcBSE4tDr_zkk7H1_28d_SPGFG_zvMGRDieZDJlwiXD8hCJLLYOR90CNMbUUAa1HQU6NWlD/s652/Screenshot%202023-09-01%20152134.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="60" data-original-width="652" height="36" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTf88t8cuq0UuhGXLn_YR9CejLnpZfFdKWscZLPrc7ir-OGcY54UhU_lU0P5-M5cg-DILaIF_KRFJiDE8zmnLlgddZbS4mFBq9ywW3nvM8xRxgmpcBSE4tDr_zkk7H1_28d_SPGFG_zvMGRDieZDJlwiXD8hCJLLYOR90CNMbUUAa1HQU6NWlD/w400-h36/Screenshot%202023-09-01%20152134.png" width="400" /></a></div><br /><div>terlihat bahwa sudah tidak ada container yang aktif, tetapi bukan berarti container tersebut hilang, karena jika saya menjalankan perintah lainnya, seperti ini:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/06bda56866d5daf81fcb3cc941e9d613.js"></script></div><div><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">maka hasil perintah tersebut terlihat seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzN8azsRZMAWT-h2qV36pJn9_FhiwFat5PjKYS0ru744EXHd1hvdW9RmOUnz8zdfOn1wozKPETKhcwrO3vXCvYzXE1pdj1QNEqd5LjXAM-MRHIo6X4hAmQw_Y6jGgCGog2srnoz9ynOEHAOvLHKSLu3rKKl3K-yTVl79hbvlvIFQj-RvWweUyP/s1134/Screenshot%202023-09-01%20152134.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="85" data-original-width="1134" height="48" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzN8azsRZMAWT-h2qV36pJn9_FhiwFat5PjKYS0ru744EXHd1hvdW9RmOUnz8zdfOn1wozKPETKhcwrO3vXCvYzXE1pdj1QNEqd5LjXAM-MRHIo6X4hAmQw_Y6jGgCGog2srnoz9ynOEHAOvLHKSLu3rKKl3K-yTVl79hbvlvIFQj-RvWweUyP/w640-h48/Screenshot%202023-09-01%20152134.png" width="640" /></a></div><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">perhatikan pada kolom Status, disitu terlihat informasi bahwa container tersebut masih ada hanya statusnya telah tidak aktif (Exited) .</p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;"><br /></p><h3>Menghapus container di Docker</h3><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">Untuk menghapus container yang sudah kita buat, maka saya memang harus mematikan dulu container yang aktif tersebut, lalu saya bisa menjalankan perintah:</p><p style="background-color: white;"><span style="font-family: Merriweather, Georgia, serif;"><script src="https://gist.github.com/mahardianto/e3057c7ef4db0004a30236eea167a5b7.js"></script></span></p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">maka hasil perintah tersebut terlihat seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKLWWMBLrUyOji41-q4e_1IEm0SI7ycHfz5T-RVT7AFci0ibOcEcV-3RjYxTiBSLMOeNNMIcmslCOzWcE6pQ_ADAlm1CywToAkWoF3GLJvv763pqeCPFlip-8N-5pKkfPWIJJb2ULNCuB7BOadvNDr5tLfXEu57_deUYPEKgUt6YmjD2Q-jj2h/s605/Screenshot%202023-09-01%20152134.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="40" data-original-width="605" height="42" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKLWWMBLrUyOji41-q4e_1IEm0SI7ycHfz5T-RVT7AFci0ibOcEcV-3RjYxTiBSLMOeNNMIcmslCOzWcE6pQ_ADAlm1CywToAkWoF3GLJvv763pqeCPFlip-8N-5pKkfPWIJJb2ULNCuB7BOadvNDr5tLfXEu57_deUYPEKgUt6YmjD2Q-jj2h/w640-h42/Screenshot%202023-09-01%20152134.png" width="640" /></a></div><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">jika saya kembali menjalankan perintah untuk melihat container tersebut dengan perintah ini:</p><p style="background-color: white;"><span style="font-family: Merriweather, Georgia, serif;"><script src="https://gist.github.com/mahardianto/06bda56866d5daf81fcb3cc941e9d613.js"></script></span></p><div><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">maka hasil perintah tersebut terlihat seperti ini:</p></div></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLsP2TY_ElxOi-jSAanE3bJFn14IQPIXnCNNeo9DimE0_La7WbxU2ag-XR3c2NjURGAE9RMtcfhDPF6t9eO7ney4dQp7q7ZtTAlwNJxkL-UDl-MXhZC2jOW_4-9-C1mAhozfb6ii83gab-ncl9U6LxjwnR5d742giSv0GCSwhs9dmqBnExQeN0/s664/Screenshot%202023-09-01%20152134.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="68" data-original-width="664" height="66" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLsP2TY_ElxOi-jSAanE3bJFn14IQPIXnCNNeo9DimE0_La7WbxU2ag-XR3c2NjURGAE9RMtcfhDPF6t9eO7ney4dQp7q7ZtTAlwNJxkL-UDl-MXhZC2jOW_4-9-C1mAhozfb6ii83gab-ncl9U6LxjwnR5d742giSv0GCSwhs9dmqBnExQeN0/w640-h66/Screenshot%202023-09-01%20152134.png" width="640" /></a></div><p>dari hasil di atas terlihat bahwa sudah tidak ada container dengan nama mysql-container-01. Sebagai informasi, menghapus container tidak serta merta menghapus image yang tadi kita download, untuk membuktikannya saya kembali menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/62c74ec25f339de7da82ebdfe2b5124e.js"></script></p><p style="background-color: white; font-family: Merriweather, Georgia, serif; font-size: 16px;">Berikut ini hasilnya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUDG_l1fjUQjXODzxozz4gwLphmm4IxDXv2Q2mvS6Rawv6iEeAiQbJJW0O1gopjKTkcGVLEPcD3jvHBG-TiN5TaFduGT8S1UgeJSf2DA9rwuOS3HljiyVi8HHDUCd0cOa9MidytKrzGpUVnL9PyZMlgZPAvF72XQP0Y1eXue2dlz9JatubI4qc/s555/Screenshot%202023-09-01%20152310.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="91" data-original-width="555" height="65" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUDG_l1fjUQjXODzxozz4gwLphmm4IxDXv2Q2mvS6Rawv6iEeAiQbJJW0O1gopjKTkcGVLEPcD3jvHBG-TiN5TaFduGT8S1UgeJSf2DA9rwuOS3HljiyVi8HHDUCd0cOa9MidytKrzGpUVnL9PyZMlgZPAvF72XQP0Y1eXue2dlz9JatubI4qc/w400-h65/Screenshot%202023-09-01%20152310.png" width="400" /></a></div><div><br /></div><div>Mudah bukan membuat container dan menjalankan container di dalam docker. Selamat mencoba dan terima kasih telah berkunjung, sampai jumpa kembali di tutorial docker lainnya.</div><p><br /></p></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-60183895986457969082023-09-01T09:01:00.038+07:002023-09-10T11:32:00.257+07:00Cara install dan menghapus images docker di Ubuntu Server 22.04 - Tutorial Docker 02<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgE-zwyw2sPCBvvfOY1d1ewinkqiLO0GbVHSZ2rsUgpAZwLsuXZGDAsCx6EtuLKOidtA6OPEp2Vc3MXpwT8lHCgmpv8OTmM1nMJMk2IYr5dciZiWJLZAgYZhLzKYpJkAIAtYNRSbXI4J0Sa5hG7JdGHWW5rVy44LzyF_81OMNidaXPuldq6B36b/s1554/Screenshot%202023-08-27%20at%2004.52.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1136" data-original-width="1554" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgE-zwyw2sPCBvvfOY1d1ewinkqiLO0GbVHSZ2rsUgpAZwLsuXZGDAsCx6EtuLKOidtA6OPEp2Vc3MXpwT8lHCgmpv8OTmM1nMJMk2IYr5dciZiWJLZAgYZhLzKYpJkAIAtYNRSbXI4J0Sa5hG7JdGHWW5rVy44LzyF_81OMNidaXPuldq6B36b/s320/Screenshot%202023-08-27%20at%2004.52.36.png" width="320" /></a></div><p style="text-align: justify;">Halo, melanjutkan seri tutorial docker, kali ini saya akan membahas tentang bagaimana mengelola images docker di Ubuntu Server 22.04. Apa itu images? Images adalah sebuah paket aplikasi default yang sebagai bahan untuk membuat container aplikasi atau merupakan cikal bakal container yang akan kita buat di dalam docker, jadi setiap container yang akan kita buat itu sebenarnya berasal dari images yang kita install terlebih dahulu. Sebuah images dapat menjadi beberapa container aplikasi yang berjalan bersamaan, jika diilustrasikan disini maka terlihat seperti pada gambar di bawah:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpR8505XSKsVUJgGe99urZ38gi-RvXC75PCg0ruXRJrkdWtEA9-eauRjWuy2l08SxhrSxAv9NVDJXIyPyCB2CQqOjLHqHplJlw8pYwUQOcENDxydPOFVoRdGymPwIY4Pvmo7HfeKs2m-NwxqmGgLzEzYbyQQsClri7anuRnYY3NY6HG1UOG62M/s970/Screenshot%202023-09-01%20at%2007.29.43.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="608" data-original-width="970" height="201" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpR8505XSKsVUJgGe99urZ38gi-RvXC75PCg0ruXRJrkdWtEA9-eauRjWuy2l08SxhrSxAv9NVDJXIyPyCB2CQqOjLHqHplJlw8pYwUQOcENDxydPOFVoRdGymPwIY4Pvmo7HfeKs2m-NwxqmGgLzEzYbyQQsClri7anuRnYY3NY6HG1UOG62M/s320/Screenshot%202023-09-01%20at%2007.29.43.png" width="320" /></a></div><p style="text-align: justify;">Salah satu contoh images docker yaitu images mysql, images apache atau images php. Kalau misalnya di dalam server on premise (bare metal) kita hanya bisa menginstall satu buah aplikasi mysql server, maka dengan docker ini kita bisa menginstall multi server mysql dalam satu komputer. Mirip Virtual Machine (VM)? Benar, mirip dengan virtual machine, yang membedakannya kita tidak perlu mengalokasikan kapasitas harddisk, memory atau CPU khusus untuk sebuah VM dengan VM lainnya, jadi sumberdaya hardware server bisa digunakan seefisien mungkin. Jika belum ada bayangan nanti kita akan lanjutkan di tutorial berikutnya.</p><p style="text-align: justify;">Kali ini saya akan menunjukkan bagaimana caranya menginstall sebuah images ke dalam docker server. Images docker bisa kita dapatkan melalui website <a href="https://hub.docker.com/">hub.docker.com</a> , selain kita dapat mengunduh dan menginstall images yang ada disana, kita juga bisa menyimpan images yang kita buat sendiri di website <a href="https://hub.docker.com/">hub.docker.com</a> yang sewaktu-waktu bisa kita download dan gunakan (mirip github) dari mana saja.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8nIHSRh6ggAQf3vOA4vJPi4_YZACFa4s6qdQzQOE45TnvUeck4iQzUgXJP4c8zGdjLAZ-hpvchUqSbpdBJbFkj5newupxTLeUuRMqnSbQG3YycrDN6jNfhSfh-b6QltJzt_T8K6euMkSfguJkhOns0wW8EZLYlIpmXpvtK-zoEl1HUF_ITQnh/s1266/Screenshot%202023-09-01%20at%2007.40.16.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="676" data-original-width="1266" height="171" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8nIHSRh6ggAQf3vOA4vJPi4_YZACFa4s6qdQzQOE45TnvUeck4iQzUgXJP4c8zGdjLAZ-hpvchUqSbpdBJbFkj5newupxTLeUuRMqnSbQG3YycrDN6jNfhSfh-b6QltJzt_T8K6euMkSfguJkhOns0wW8EZLYlIpmXpvtK-zoEl1HUF_ITQnh/s320/Screenshot%202023-09-01%20at%2007.40.16.png" width="320" /></a></div><b><div><b><br /></b></div></b><h3 style="text-align: left;"><b>Menginstall docker images</b></h3><p>Tutorial ini saya akan mencoba menginstall sebuah images docker mysql, sebelumnya saya sudah menginstall docker engine ke dalam server Ubuntu ini, maka untuk melakukan instalasi images docker mysql saya cukup menjalankan perintah ini:</p><p><script src="https://gist.github.com/mahardianto/c2784e8fc29930e30f3d5b0de23ca777.js"></script></p><p>Perintah di atas akan menarik image docker mysql yang terbaru ke dalam server docker engine, berikut proses penarikan image docker mysql tersebut:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGkPGjjn_Tsb0SmywoWJTBKBm6jrNoziphfl7pMdTpA4L5c8IJf3lSLkUt3OXbm4uqjNORDMHaXSXgubf5PXDNbcqBhRZiUY3P8Emv9ukBq28pMG_8SfyqvP0pIzZqsiAJB1QD7xAZjqYx1jFQidRNjUkRMLf7RIddyk-EgpXx5zo_6kX428Ev/s1448/Screenshot%202023-09-01%20at%2007.50.57.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="396" data-original-width="1448" height="110" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGkPGjjn_Tsb0SmywoWJTBKBm6jrNoziphfl7pMdTpA4L5c8IJf3lSLkUt3OXbm4uqjNORDMHaXSXgubf5PXDNbcqBhRZiUY3P8Emv9ukBq28pMG_8SfyqvP0pIzZqsiAJB1QD7xAZjqYx1jFQidRNjUkRMLf7RIddyk-EgpXx5zo_6kX428Ev/w400-h110/Screenshot%202023-09-01%20at%2007.50.57.png" width="400" /></a></div><div><br /></div>setelah berhasil diinstall maka images tersebut akan tersimpan kedalam repository docker image di dalam server lokal kita. Images tersebut dapat kita gunakan sebagai dasar pembuatan container. Image tersebut dapat juga kita gunakan untuk membuat multi container di dalam server.<div><br /></div><h3 style="text-align: left;"><b>Melihat images docker di repository lokal</b></h3><div>Untuk melihat apakah image mysql tersebut sudah terinstall di dalam lokal repository docker di dalam server saya, maka saya cukup menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/62c74ec25f339de7da82ebdfe2b5124e.js"></script></div><div><p>maka hasilnya adalah sebagai berikut:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwcLghAVlG1EOohfAe4MP8JaTtWr8HyeV_Z1gi56DRuYlT-ae5T3d_xjmJbgDkQ5qJgBDV5nj2d-8qSXi6yjR0y_sO8vgFWZJMAflwCCdEB1C3072O6asu-ZP0o9zSy7wnxXZ0hkQfKY0zWZWpO6vYgVHPd51vJLJWrBQPwvCcZ4k6H95GXqgP/s902/Screenshot%202023-09-01%20at%2007.55.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="148" data-original-width="902" height="66" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwcLghAVlG1EOohfAe4MP8JaTtWr8HyeV_Z1gi56DRuYlT-ae5T3d_xjmJbgDkQ5qJgBDV5nj2d-8qSXi6yjR0y_sO8vgFWZJMAflwCCdEB1C3072O6asu-ZP0o9zSy7wnxXZ0hkQfKY0zWZWpO6vYgVHPd51vJLJWrBQPwvCcZ4k6H95GXqgP/w400-h66/Screenshot%202023-09-01%20at%2007.55.36.png" width="400" /></a></div><br /><p>dari gambar di atas terlihat bahwa ada image docker mysql dengan besaran 577MB. Image mysql tersebut nantinya dapat kita gunakan sebagai dasar pembuatan multi container di dalam server.</p><h3><b>Menghapus images docker di repository lokal</b></h3></div><div>Untuk menghapus image docker yang sudah terinstall (misal saya akan menghapus image docker mysql) maka saya cukup menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/9fcfd18bc2669fd6eb8c64dac4c9be48.js"></script></div><div><br /></div><div>dari hasil tersebut maka docker images mysql akan dihapus dari dalam repository lokal docker di dalam server saya:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVRwcR0Fya_m4IwMApQmPPyq9gTZJXuZie2cGiOd8YrYGeAHh7gYoDvRZGXPfuQH0boZOPIh0appPYCoHMXRWXAaDAwIylGwc89_7z4sI9V8EFjas7MbMt5AqTbOqCph_lCGfEcl3ZtPjSGgr1OCZFSebyzc9e_GGoqMkcJKbJKy2n_qdu5PXB/s1296/Screenshot%202023-09-01%20at%2008.01.20.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="426" data-original-width="1296" height="131" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVRwcR0Fya_m4IwMApQmPPyq9gTZJXuZie2cGiOd8YrYGeAHh7gYoDvRZGXPfuQH0boZOPIh0appPYCoHMXRWXAaDAwIylGwc89_7z4sI9V8EFjas7MbMt5AqTbOqCph_lCGfEcl3ZtPjSGgr1OCZFSebyzc9e_GGoqMkcJKbJKy2n_qdu5PXB/w400-h131/Screenshot%202023-09-01%20at%2008.01.20.png" width="400" /></a></div><br /><div><br /></div><div>berikut ini hasilnya jika saya kembali menjalankan perintah untuk melihat list docker image:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/62c74ec25f339de7da82ebdfe2b5124e.js"></script></div><div><br /></div><div>dan ini hasilnya dibawah terlihat bahwa image mysql sudah tidak ada di dalam repository docker server lokal saya:</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjHfloWzD4Nwkwyy11R4PO4NBaKh8hBDLXUPpBkyxKhiCtHpAcJ8_ozTjJNS97A8FwRyku_zeIpGWMiXV9jghlQbrO_G1nKTzBirLx3jmJZpmilI1II-9bxRY6rXz90CkZLq5xFlQpokT6EDGUSI5yykt0N9kFZJJ0zyI5Vc6472dVTLt40FUh/s956/Screenshot%202023-09-01%20at%2008.02.40.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="118" data-original-width="956" height="49" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjHfloWzD4Nwkwyy11R4PO4NBaKh8hBDLXUPpBkyxKhiCtHpAcJ8_ozTjJNS97A8FwRyku_zeIpGWMiXV9jghlQbrO_G1nKTzBirLx3jmJZpmilI1II-9bxRY6rXz90CkZLq5xFlQpokT6EDGUSI5yykt0N9kFZJJ0zyI5Vc6472dVTLt40FUh/w400-h49/Screenshot%202023-09-01%20at%2008.02.40.png" width="400" /></a></div><div><br /></div><div style="text-align: justify;">Mudah bukan mengelola image docker di dalam repository lokal. Selamat mencoba dan terima kasih telah berkunjung, untuk tutorial berikutnya saya akan membahas tentang bagaimana membuat dan menjalankan container dari image docker yang sudah kita download. Sampai berjumpa lagi di artikel berikutnya.</div><br /><div><br /></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-33030602611398138522023-08-27T04:50:00.057+07:002023-09-01T15:10:05.550+07:00Cara install docker di Ubuntu Server 22.04 - Tutorial Docker 01<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9PDGzaCykb-sZRZyVUoI9zLneKqb8Be_JiPk8xxVIcDODezdQscd38CplZpVNJLDSb2J1S0_aHRq1IE4Cl7HdfOr0mWoci5AffBetB0yT6A6sbMCQUXry9i1I_8b6k3OevcVDe8emOnfcU39942T5EU5JMh_49J-yVMDZgG-i7z5QLtKIM-qq/s1554/Screenshot%202023-08-27%20at%2004.52.36.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1136" data-original-width="1554" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9PDGzaCykb-sZRZyVUoI9zLneKqb8Be_JiPk8xxVIcDODezdQscd38CplZpVNJLDSb2J1S0_aHRq1IE4Cl7HdfOr0mWoci5AffBetB0yT6A6sbMCQUXry9i1I_8b6k3OevcVDe8emOnfcU39942T5EU5JMh_49J-yVMDZgG-i7z5QLtKIM-qq/s320/Screenshot%202023-08-27%20at%2004.52.36.png" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><p style="text-align: justify;">Halo, pada kesempatan kali ini saya akan menuliskan tutorial tentang cara instalasi docker di dalam Ubuntu Server. Sebelum melanjutkan tutorial ini saya akan sedikit menjelaskan tentang apa itu docker secara singkat. </p><p style="text-align: justify;">Docker adalah sebuah teknologi containerization yang memungkinkan kita membuat sebuah sistem yang berjalan di atas sistem operasi tetapi terisolasi. Apa maksudnya terisolasi? Sebuah system (container) yang berjalan di atas sistem operasi utama tetapi tidak berhubungan (terisolasi) Serta tidak membutuhkan library-library (dependensi) yang ada di dalam sistem operasi utama.</p><p style="text-align: justify;">Apakah anda pernah mendengar virtualisasi atau mencoba virtual machine (VM)? Secara logika docker ini cara kerjanya mirip akan tetapi jika pada virtualisasi seperti VMWARE atau Proxmox atau mungkin VirtualBox yang kita membuat mesin virtual di atas sistem operasi, maka containerization ini hanya menjalankan suatu aplikasi dengan lingkungan virtual atau bisa disebut dengan image container. Agar lebih jelasnya berikut ini ilustrasi perbedaan system Virtualization dengan Containerization yang berjalan di atas komputer: </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8Wo9hqPzAvY17PHFWX0NKgKCJH2z1J-N2beOJjl9UDNDtuGtI_bJEWc0M6js8QCHau0O1h4BTOj5R5e8MXdvXW8PTpR5ZpQpkUryzjjpSzH8HlEvBnkPCo-2lPXnGJ3p_55SnVYdEx7TgwxsjP1r24gYUvoJhQ_OLPUckYOJOJEUMIGlbQK8n/s1704/Screenshot%202023-08-27%20at%2004.27.22.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="866" data-original-width="1704" height="326" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8Wo9hqPzAvY17PHFWX0NKgKCJH2z1J-N2beOJjl9UDNDtuGtI_bJEWc0M6js8QCHau0O1h4BTOj5R5e8MXdvXW8PTpR5ZpQpkUryzjjpSzH8HlEvBnkPCo-2lPXnGJ3p_55SnVYdEx7TgwxsjP1r24gYUvoJhQ_OLPUckYOJOJEUMIGlbQK8n/w640-h326/Screenshot%202023-08-27%20at%2004.27.22.png" width="640" /></a></div><br /><p>Perbedaan mencolok jika anda perhatikan gambar di atas:</p><p></p><ul style="text-align: left;"><li style="text-align: justify;">Virtual mesin berjalan di atas Hypervisor yang mengisolasi satu mesin(VM) dengan mesin lainnya dalam satu sistem operasi (Guest OS) dengan hardware(RAM, Kapasitas Harddisk) yang sudah di reservasi dan diisolasi untuk salah satu VM, jadi RAM atau kapasitas harddisk yang besarannya sudah digunakan untuk suatu VM tidak bisa digunakan antara mesin virtual (VM) lainnya. Jadi jika ada satu VM yang bebannya berlebih tidak bisa mengambil sumber daya (RAM atau Harddisk) dari VM lain yang bebannya tidak banyak.</li><li style="text-align: justify;">Sedangkan Container menggunakan pendekatan berbeda yaitu hanya mengisolasi lingkungan aplikasi/system tanpa melakukan reservasi perangkat keras (RAM & Harddisk) sehingga setiap kontainer masih bisa berbagi sumberdaya perangkat keras (RAM&Harddisk) secara fleksibal sehingga system yang ada di dalam kontainer dapat memanfaatkan sumberdaya RAM & Harddisk secara maksimal didalamnya.</li></ul><p></p><p>Ada banyak aplikasi system containerization yang bisa kita gunakan, salah satunya seperti:</p><p></p><ul style="text-align: left;"><li>Docker (menurut opini saya yang terkenal dan paling banyak digunakan)</li><li>LXC</li><li>Podman</li><li>Containerd, dan lain lain</li></ul><p></p><p>Untuk tutorial kali ini saya akan menuliskan bagaimana cara menginstall docker di dalam Ubuntu Server. Ubuntu Server yang saya gunakan adalah versi 22.04. Sebelum saya bisa menginstall docker saya harus menginstall aplikasi pendukungnya dengan perintah:</p><div :class="selected !== 'Latest' && 'hidden'" aria-role="tab" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f9f9fa; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; font-family: Roboto, system-ui, -apple-system, "system-ui", "Segoe UI", Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;"><div class="group relative" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; position: relative;"><div class="highlight" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><pre class="chroma" style="--tw-border-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: var(--tw-prose-pre-bg); border-color: rgb(225 226 230/var(--tw-border-opacity)); border-radius: 0.125rem; border-style: solid; border-width: 1px; box-sizing: border-box; color: var(--tw-prose-pre-code); font-family: "Roboto Mono", monospace; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.71429em; margin-top: 1.71429em; overflow-x: auto; padding: 0.75rem;" tabindex="0"><code class="language-console" data-lang="console" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-color: initial; border-radius: 0px; border-style: solid; border-width: 0px; box-sizing: border-box; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; padding: 0px;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> sudo </code>apt-get install ca-certificates curl gnupg</pre></div></div></div><p>setelah itu saya harus melakukan konfigurasi repository docker di dalam Ubuntu Server dengan menjalankan perintah ini:</p><pre class="chroma" style="--tw-border-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: rgb(225 226 230/var(--tw-border-opacity)); border-radius: 0.125rem; border-style: solid; border-width: 1px; box-sizing: border-box; color: var(--tw-prose-pre-code); font-family: "Roboto Mono", monospace; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.71429em; margin-top: 1.71429em; overflow-x: auto; padding: 0.75rem;" tabindex="0"><code class="language-console" data-lang="console" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-radius: 0px; border-style: solid; border-width: 0px; box-sizing: border-box; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; padding: 0px;"><span class="line" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; display: flex;"><span class="cl" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> sudo install -m <span class="m" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #0000cf; font-weight: 700;">0755</span> -d /etc/apt/keyrings
</span></span><span class="line" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; display: flex;"><span class="cl" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> curl -fsSL https://download.docker.com/linux/ubuntu/gpg <span class="p" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; font-weight: 700;">|</span> sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
</span></span><span class="line" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; display: flex;"><span class="cl" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> sudo chmod a+r /etc/apt/keyrings/docker.gpg</span></span></code></pre><p>Langkah selanjutnya adalah melakukan instalasi kunci gpg untuk tambahan repository docker yang barusan saya masukkan ke dalam system operasi Ubuntu Server, dengan menjalankan perintah:</p><pre class="chroma" style="--tw-border-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: rgb(225 226 230/var(--tw-border-opacity)); border-radius: 0.125rem; border-style: solid; border-width: 1px; box-sizing: border-box; color: var(--tw-prose-pre-code); font-family: "Roboto Mono", monospace; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.71429em; margin-top: 1.71429em; overflow-x: auto; padding: 0.75rem;" tabindex="0"><code class="language-console" data-lang="console" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-radius: 0px; border-style: solid; border-width: 0px; box-sizing: border-box; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; padding: 0px;"><span class="line" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; display: flex;"><span class="cl" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> <span class="nb" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #204a87;">echo</span> <span class="se" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;">\
</span></span></span><span class="line" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; display: flex;"><span class="cl" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><span class="se" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"></span><span class="go" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"> "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
</span></span></span><span class="line" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; display: flex;"><span class="cl" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><span class="go" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"> "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
</span></span></span><span class="line" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; display: flex;"><span class="cl" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><span class="go" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"> sudo tee /etc/apt/sources.list.d/docker.list > /dev/null</span></span></span></code></pre><p>Setelah berhasil memasukkan kunci gpg ke repository docker yang barusan ditambahkan, lakukan update repository dengan perintah:</p><div :class="selected !== 'Latest' && 'hidden'" aria-role="tab" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f9f9fa; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; font-family: Roboto, system-ui, -apple-system, "system-ui", "Segoe UI", Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;"><div class="group relative" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; position: relative;"><div class="highlight" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><pre class="chroma" style="--tw-border-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: var(--tw-prose-pre-bg); border-color: rgb(225 226 230/var(--tw-border-opacity)); border-radius: 0.125rem; border-style: solid; border-width: 1px; box-sizing: border-box; color: var(--tw-prose-pre-code); font-family: "Roboto Mono", monospace; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.71429em; margin-top: 1.71429em; overflow-x: auto; padding: 0.75rem;" tabindex="0"><code class="language-console" data-lang="console" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-color: initial; border-radius: 0px; border-style: solid; border-width: 0px; box-sizing: border-box; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; padding: 0px;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> sudo </code>apt-get update</pre></div></div></div><p>baru setelah langkah di atas dilakukan maka saya baru bisa melakukan instalasi docker (docker-engine) ke dalam server dengan menjalankan perintah ini:</p><div :class="selected !== 'Latest' && 'hidden'" aria-role="tab" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f9f9fa; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; font-family: Roboto, system-ui, -apple-system, "system-ui", "Segoe UI", Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;"><div class="group relative" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; position: relative;"><div class="highlight" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><pre class="chroma" style="--tw-border-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: var(--tw-prose-pre-bg); border-color: rgb(225 226 230/var(--tw-border-opacity)); border-radius: 0.125rem; border-style: solid; border-width: 1px; box-sizing: border-box; color: var(--tw-prose-pre-code); font-family: "Roboto Mono", monospace; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.71429em; margin-top: 1.71429em; overflow-x: auto; padding: 0.75rem;" tabindex="0"><code class="language-console" data-lang="console" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-color: initial; border-radius: 0px; border-style: solid; border-width: 0px; box-sizing: border-box; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; padding: 0px;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin</code></pre></div></div></div><p>berbeda dengan Windows atau Mac yang menggunakan docker desktop, untuk server linux yang hanya terminal saja tanpa memiliki antarmuka (GUI), docker yang digunakan adalah docker engine nya.</p><p>Untuk mengecek apakah docker sudah berhasil diinstall saya mencoba menjalankan container pertama dengan perintah:</p><div :class="selected !== 'Latest' && 'hidden'" aria-role="tab" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f9f9fa; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; font-family: Roboto, system-ui, -apple-system, "system-ui", "Segoe UI", Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;"><div class="group relative" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; position: relative;"><div class="highlight" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box;"><pre class="chroma" style="--tw-border-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: var(--tw-prose-pre-bg); border-color: rgb(225 226 230/var(--tw-border-opacity)); border-radius: 0.125rem; border-style: solid; border-width: 1px; box-sizing: border-box; color: var(--tw-prose-pre-code); font-family: "Roboto Mono", monospace; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.71429em; margin-top: 1.71429em; overflow-x: auto; padding: 0.75rem;" tabindex="0"><code class="language-console" data-lang="console" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-color: initial; border-radius: 0px; border-style: solid; border-width: 0px; box-sizing: border-box; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; padding: 0px;"><span class="gp" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 #0000; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border-color: initial; border-style: solid; border-width: 0px; box-sizing: border-box; color: #8f5902;">$</span> sudo docker run hello world</code></pre></div></div></div><p>Jika berhasil maka anda akan mendapati tampilan seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgH0P9G-1eg-DGZR-XRLbAnKNh_soa0AcGXBq3MlgUd2KGyK9rUG72Yea5g3uZ_S-Ul_Q-DzBbgJBiGNeYJGVqqKRG_AOTpLhocEp71BjlvLmJ9h0NK_P7_S2roC1ObpQbXYTNBahkgyiyqx_i4ZZmXyTTnpOvKHq1T9UuaIVfxINhDv346DuUV/s1214/Screenshot%202023-08-27%20at%2006.19.04.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="818" data-original-width="1214" height="270" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgH0P9G-1eg-DGZR-XRLbAnKNh_soa0AcGXBq3MlgUd2KGyK9rUG72Yea5g3uZ_S-Ul_Q-DzBbgJBiGNeYJGVqqKRG_AOTpLhocEp71BjlvLmJ9h0NK_P7_S2roC1ObpQbXYTNBahkgyiyqx_i4ZZmXyTTnpOvKHq1T9UuaIVfxINhDv346DuUV/w400-h270/Screenshot%202023-08-27%20at%2006.19.04.png" width="400" /></a></div><p>Mudah bukan melakukan instalasi docker di Ubuntu Server, untuk kesempatan berikutnya saya akan menuliskan tentang cara menginstall atau menggunakan container docker di Ubuntu Server. Selamat mencoba dan terima kasih telah berkunjung.</p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-42307198144187490922023-05-08T10:21:00.001+07:002023-05-08T20:14:34.451+07:00Mengubah user access AWS S3 API untuk mengakses layanan ceph object gateway - 26<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhABszjUxSvhvkjQSApXspm7HSz_nti6ESZ00puuv0Uoki97ho71CHsmFOZ7z_De5cezr8uSV2_kyc0q4LZuNhmDyRwj1M9AmVw4BtM7jlTNNbQILIjVbvWqIyM3ML3psk52aPwIVLHiTApXW5Cxrx6ONrYSeudRPj8j95m5SZQEo0jRRCxmg/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhABszjUxSvhvkjQSApXspm7HSz_nti6ESZ00puuv0Uoki97ho71CHsmFOZ7z_De5cezr8uSV2_kyc0q4LZuNhmDyRwj1M9AmVw4BtM7jlTNNbQILIjVbvWqIyM3ML3psk52aPwIVLHiTApXW5Cxrx6ONrYSeudRPj8j95m5SZQEo0jRRCxmg/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p></p><p style="text-align: justify;">Melanjutkan catatan terkait ceph cluster dan layanan object gateway, kali ini saya akan membahas tentang bagaimana mengubah user yangs aya pakai di AWS S3 API untuk mengakses layanan object gateway. Perlu anda ketahui layanan object gateway yang saya gunakan beralamat IP 192.168.0.254 sedangkan klien yang saya gunakan untuk mengakses object gateway tersebut berlokasi pada alamat IP 192.168.0.251 yang berbeda komputer.</p><p style="text-align: justify;">Untuk layanan object gateway ini dibangun di atas ceph cluster yang terdiri dari 4 buah komputer yang heterogen alias memiliki spek yang bervariasi. Sebelumnya aplikasi AWS S3 API ini saya pakai untuk membuat bucket bernama john-doe-bucket dan john-doe-2nd-bucket menggunakan user johndoe. Untuk membuktikan bahwa saya menggunakan user johndoe untuk mengakses layanan object gateway, saya coba jalankan perintah untuk melihat bucket yang sebelumnya sudah saya buat menggunakan perintah:</p><p><span style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/mahardianto/5bf5c035579e748e8f70766364af0e2e.js"></script></span></p><p>hasilnya adalah:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj68AF8ygF44hu72PcxZRD5Pt6s-u_051Y2iMWruj3tsb8tR81vURgb3mFxWdJqExY70M6REQ40Lf0kDMgPCKmvePBmtvSkhxC3gmzAqtDHFxZWPix-XrN79PBtYAf5X0AFy5QDQ3_9r2vJn9AgvWfI1yLJXHdTopm-sE6eN5DJ1woOPSXYw/s640/Screenshot%202023-04-24%20at%2015.37.48.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="288" data-original-width="640" height="288" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj68AF8ygF44hu72PcxZRD5Pt6s-u_051Y2iMWruj3tsb8tR81vURgb3mFxWdJqExY70M6REQ40Lf0kDMgPCKmvePBmtvSkhxC3gmzAqtDHFxZWPix-XrN79PBtYAf5X0AFy5QDQ3_9r2vJn9AgvWfI1yLJXHdTopm-sE6eN5DJ1woOPSXYw/w640-h288/Screenshot%202023-04-24%20at%2015.37.48.png" width="640" /></a></div><div><br /></div><div>dari hasil keluarannya anda dapat melihat bahwa ada 2 bucket yaitu:</div><div><ul style="text-align: left;"><li>john-doe-bucket, dan</li><li>john-doe-2nd-bucket</li></ul></div><div style="text-align: justify;">kemudian rencananya saya akan mengubah user johndoe ke user marianne yang telah saya buat sebelumnya, untuk mengubah user yang saya pakai di apliaksi awscli saya cukup menjalankan lagi perintah:</div><div><br /></div><div><div><script src="https://gist.github.com/mahardianto/5b4a2718114ff0a5a6ae8ffc40fa3212.js"></script></div><div><br /></div><div>kemudian saya masukkan access dan secret key yang saya buat sebelumnya saat membuat user marianne tersebut seperti ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib5JREA0wqUHJWi4vqYza4nrFYzGjyLfzAiOYp7ZYpviVl1Kkr5AvWU905qezuImX84K4Mrb28Z-gl8sqlDNfQQki8D2hvoISYXN1meNqA7BknNrH_azZrsqKNyF_bOyxWQ-1_DDTEsLjyDNlf0mWOtPcAeKFgl3pcqwMr8JGy5AEkTC8umw/s924/Screenshot%202023-04-24%20at%2016.58.41.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="150" data-original-width="924" height="104" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib5JREA0wqUHJWi4vqYza4nrFYzGjyLfzAiOYp7ZYpviVl1Kkr5AvWU905qezuImX84K4Mrb28Z-gl8sqlDNfQQki8D2hvoISYXN1meNqA7BknNrH_azZrsqKNyF_bOyxWQ-1_DDTEsLjyDNlf0mWOtPcAeKFgl3pcqwMr8JGy5AEkTC8umw/w640-h104/Screenshot%202023-04-24%20at%2016.58.41.png" width="640" /></a></div><br /><div>setelah itu saya jalankan kembali perintah untuk melihat list buckets lagi lewat perintah:</div><div><br /></div><div><span style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/mahardianto/5bf5c035579e748e8f70766364af0e2e.js"></script></span></div><div><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div><span style="font-variant-ligatures: no-common-ligatures;">dan hasilnya adalah:</span></div><div><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeIS3BBkAboyr6OxSYGixukL1OyfRQ7cvpMp4fNwsETqZ-Ti6mGuDgyvDFaYKVZFyBQEHuNmPQsQzBaHuWr3ACHFuzcNpf2AFtvUSsLFxtW9Mt8_j06XilxdFCse1GSF8HFfeURTTahc6pZhjLFmabyauV5HU1LS1oqIthaUyfZC4VHvaa8g/s1168/Screenshot%202023-04-24%20at%2017.00.55.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="264" data-original-width="1168" height="144" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeIS3BBkAboyr6OxSYGixukL1OyfRQ7cvpMp4fNwsETqZ-Ti6mGuDgyvDFaYKVZFyBQEHuNmPQsQzBaHuWr3ACHFuzcNpf2AFtvUSsLFxtW9Mt8_j06XilxdFCse1GSF8HFfeURTTahc6pZhjLFmabyauV5HU1LS1oqIthaUyfZC4VHvaa8g/w640-h144/Screenshot%202023-04-24%20at%2017.00.55.png" width="640" /></a></div><br /><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;">dari keluaran tampilan di atas terlihat bahwa user dengan nama marianne belum memiliki bucket sama sekali, itu berarti klien awscli yang tadinya menggunakan user johndoe sudah berubah menggunakan user marianne.</span></div></div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;">Sebenarnya user akses aplikasi awscli ini disimpan di dalam file yang berlokasi di .aws/credentials di dalam folder user home. Jikas saya menjalankan perintah:</span></div><div><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div><span style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/mahardianto/a162abe513c47b2b34ec33efdb02fdb8.js"></script></span></div><div><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div><span style="font-variant-ligatures: no-common-ligatures;">maka hasilnya adalah sebagai berikut ini:</span></div><div><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhR99_PiCz5xg53rkrQLqAXB_2uVn7iD_AySn1JGmkfygHm1kAJ6rJFowh1Y-Mhv0TlDkC1wjE4n3b-x7vxBSbs3xZFqRewcopTVz10GCB7Pgyq2ZE9zhaJezdC0Y90bwYdx9zFQeVTg5eHDS29_QRfk9EVZhxTXTtZFvFM1cJoOA8BVlxVZw/s616/Screenshot%202023-04-24%20at%2017.03.50.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="166" data-original-width="616" height="108" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhR99_PiCz5xg53rkrQLqAXB_2uVn7iD_AySn1JGmkfygHm1kAJ6rJFowh1Y-Mhv0TlDkC1wjE4n3b-x7vxBSbs3xZFqRewcopTVz10GCB7Pgyq2ZE9zhaJezdC0Y90bwYdx9zFQeVTg5eHDS29_QRfk9EVZhxTXTtZFvFM1cJoOA8BVlxVZw/w400-h108/Screenshot%202023-04-24%20at%2017.03.50.png" width="400" /></a></div><br /><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;">melalui file tersebut anda bisa melihat user access key dan secret key yang saya gunakan di aplikasi AWS S3 pada komputer klien. Apakah bisa saya mengubah langsung user menggunakan file credentials tersebut? </span></div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;">Tentu saja bisa, anda tidak perlu menjalankan perintah aws configure, cukup melakukan perubahan di file credentials tersebut untuk mengubah user yang akan mengakses layanan ceph object gateway secara langsung misalnya anda ubah ke user johndoe, maka anda hanya perlu mengubah bagian aws_access_key_id dan aws_secret_access_key tersebut.</span></div></div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;">Mudah bukan? Sampai jumpa lagi di catatan berikutnya, jika ada pertanyaan silahkan tulis di kolom komentar.</span></div><p><br /></p></div></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-71870631540595051512023-05-02T10:15:00.000+07:002023-05-05T09:52:38.295+07:00Membuat bucket pada layanan RADOS Object Gateway pada ceph cluster dengan AWS S3 API - 25<p style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZak5pJDO8QH2Y-M54fJuJG9qZFYenvLP-sB_jPhuAy6tZPdFSc8CvB7Riy7nhwkg50lwVB14-SC-2S9bzKFQtmvvaOMMtGwJb7tf16BZCcCE2sMVtf0UqWdvxgB3d5Ig4PTGzre8caMwebrOrDFmUxOGK3QegGErgCBdjrwfHkTCAL8Tg9Q/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: inherit;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZak5pJDO8QH2Y-M54fJuJG9qZFYenvLP-sB_jPhuAy6tZPdFSc8CvB7Riy7nhwkg50lwVB14-SC-2S9bzKFQtmvvaOMMtGwJb7tf16BZCcCE2sMVtf0UqWdvxgB3d5Ig4PTGzre8caMwebrOrDFmUxOGK3QegGErgCBdjrwfHkTCAL8Tg9Q/s320/Screenshot%202023-02-27%20120113.png" width="320" /></span></a></p><p style="text-align: justify;"><span style="font-family: inherit;">Masih membahas tentang ceph cluster, kali ini saya akan menjelaskan secara singkat bagaimana membuat sebuah bucket di dalam layanan RADOS Object Gateway. Jika di catatan sebelumnya saya membuat sebuah bucket dengan nama first bucket melalui ceph dashboard. Maka kali ini saya akan membuat sebuah bucket lewat AWS S3 API dari sisi klien.</span></p><p style="text-align: justify;"><span style="font-family: inherit;">Klien yang akan saya gunakan adalah johndoe, sedangkan layanan object gateway ini berada di server dengan alamat IP 192.168.0.254. Komputer yang saya gunakan sebagai klien atau yang menjalankan aplikasi AWS S3 API ini menggunakan alamat IP 192.168.0.251, saya asumsikan sudah jelas berbeda ya antara lokasi komputer yang memberikan layanan dan klien pengguna layanan yang saya gunakan berbeda komputer.</span></p><p style="text-align: left;"><span style="font-family: inherit;">Untuk cara mengkoneksikan komputer klien menggunakan AWS S3 API anda bisa melihat tulisan saya di catatan nomer 21, atau anda bisa klik melalui <a href="https://www.newbienote.com/2023/04/howto-connect-ceph-object-gateway.html" target="_blank">link ini</a> . </span></p><p style="text-align: left;"><span style="font-family: inherit;">Untuk melihat apakah sudah ada bucket di dalam layanan Object Gateway, saya cukup menjalankan perintah:</span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><script src="https://gist.github.com/mahardianto/5bf5c035579e748e8f70766364af0e2e.js"></script></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">hasilnya adalah sebagai berikut ini:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"></span></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhC_KqAAX6xjYJj78LtMP4JvqczGumVXNy0snVPvp85LLb3XUHY5wn1QZS2M7st9NOWjNyYjf0AgG_omPTmJR_YdMI8pcVZLSvD2B6-h8bIGa1UMZ-8CKImLoTgH3VdAPiLkVU4j8WjhA-SWKrpT1C0ACzw8kR3PkynjwUcYRyI4j-gdFGpQ/s1134/Screenshot%202023-04-24%20at%2015.25.05.png" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: inherit;"><img border="0" data-original-height="264" data-original-width="1134" height="149" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhC_KqAAX6xjYJj78LtMP4JvqczGumVXNy0snVPvp85LLb3XUHY5wn1QZS2M7st9NOWjNyYjf0AgG_omPTmJR_YdMI8pcVZLSvD2B6-h8bIGa1UMZ-8CKImLoTgH3VdAPiLkVU4j8WjhA-SWKrpT1C0ACzw8kR3PkynjwUcYRyI4j-gdFGpQ/w640-h149/Screenshot%202023-04-24%20at%2015.25.05.png" width="640" /></span></a></div><span style="font-family: inherit;"><br /><div style="text-align: justify;"><span style="font-family: inherit;">dari keluaran tampilan di atas terlihat bahwa, di dalam bagian "Buckets" tidak ada bucket apapun yang sudah terbuat. </span><span style="font-family: inherit; font-variant-ligatures: no-common-ligatures;">Lalu untuk membuat sebuah bucket dengan nama john-doe-bucket saya cukup menjalankan perintah:</span></div></span><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><script src="https://gist.github.com/mahardianto/553272b17ca26d79339ed89ee43733db.js"></script></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">setelah itu saya kembali menjalankan perintah untuk melihat bucket apa saja di dalam layanan object gateway:</span></span></p><p class="p1" style="font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"><br /></span></p><p style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><script src="https://gist.github.com/mahardianto/5bf5c035579e748e8f70766364af0e2e.js"></script></span></span></p><p class="p1" style="font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit; font-size: medium;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">hasilnya adalah sebagai berikut ini:</span></span></p><p class="p1" style="font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit; font-size: medium;"><br /></span></span></p><p class="p1" style="font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: left;"><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"></span></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLADGBakP8mqA_ECOyOD62cnLayQOdfSGOM4bQj_4-HS6XA0FPkl0Fe1ZGdm1cX9nxcPx0AFj0RxLKemMUVDF2PnryGYvlSkgaICl1Fym37nHqfA0T8kDNtXM9Wub2Y4dbYRKrfXlpH0tt_rIIjAj8ZVFjAcUsFtUb4Trzc9WZC-xiRFnbqg/s1186/Screenshot%202023-04-24%20at%2015.26.58.png" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: inherit;"><img border="0" data-original-height="400" data-original-width="1186" height="216" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLADGBakP8mqA_ECOyOD62cnLayQOdfSGOM4bQj_4-HS6XA0FPkl0Fe1ZGdm1cX9nxcPx0AFj0RxLKemMUVDF2PnryGYvlSkgaICl1Fym37nHqfA0T8kDNtXM9Wub2Y4dbYRKrfXlpH0tt_rIIjAj8ZVFjAcUsFtUb4Trzc9WZC-xiRFnbqg/w640-h216/Screenshot%202023-04-24%20at%2015.26.58.png" width="640" /></span></a></div><span style="font-family: inherit;"><br /><span>dari situ terlihat bahwa bucket dengan nama john-doe-bucket sudah terbuat di dalam layanan object gateway.</span></span><div style="text-align: left;"><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">Menariknya jika kita melihat bucket melalui ceph dashboard sebenarnya ada 2 buah bucket di dalam layanan ceph object gateway ini:</span></span></p><p class="p1" style="font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit; font-size: medium;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"></span></p><div class="separator" style="clear: both; font-size: 11px; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_xhylSKoD71x_7rg8FJgkeHlCIDO7HPcv1kSlo8J0reDCQP4lhAqx8TPYeUPvKYvVjDuThP1f-LFHA_rZDWVFKKJAsxYjy4hhfCJrFQaq74_dQj4xX0x-YugA5-JSwiX3MesdO9YZC83NFJORynfMk4J35PAGFdP4CT3gnZ0-iXQPWy4fow/s2444/Screenshot%202023-04-24%20at%2015.29.15.png" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: inherit;"><img border="0" data-original-height="566" data-original-width="2444" height="148" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_xhylSKoD71x_7rg8FJgkeHlCIDO7HPcv1kSlo8J0reDCQP4lhAqx8TPYeUPvKYvVjDuThP1f-LFHA_rZDWVFKKJAsxYjy4hhfCJrFQaq74_dQj4xX0x-YugA5-JSwiX3MesdO9YZC83NFJORynfMk4J35PAGFdP4CT3gnZ0-iXQPWy4fow/w640-h148/Screenshot%202023-04-24%20at%2015.29.15.png" width="640" /></span></a></div><span style="font-family: inherit;">yang terdiri dari:</span><p></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"></p><ul style="text-align: left;"><li><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">first-bucket, dan</span></span></li><li><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">john-doe-bucket</span></span></li></ul><p></p><div style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">akan tetapi bucket dengan nama <b>first-bucket </b>tidak terlihat dan tidak dapat diakses dari klien AWS S3 API saat saya menggunakan user johndoe. </span></span></div><div style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></div><div style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">Hal itu dikarenakan bucket bernama first-bucket tersebut tidak dimiliki oleh user bernama johndoe. Sesuai dengan tampilan di ceph dashboard, bucket dengan nama first-bucket tersebut dimiliki oleh user dashboard. </span></span></div><div style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;"><span style="font-family: inherit; text-align: left;"><br /></span></div><div style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;"><span style="font-family: inherit; text-align: left;">Mari kita coba buat bucket baru lagi dengan nama john-doe-2nd-bucket, maka saya menjalankan perintah:</span></div><div><span style="font-family: inherit; font-size: medium;"><br /></span></div><div><span style="font-family: inherit;"><span style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/mahardianto/58ccf2e45962d6f49e7d972fa73d1364.js"></script></span><span style="font-size: medium;"><br /></span></span><p></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">untuk melihat hasilnya, saya menjalankan lagi perintah:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><script src="https://gist.github.com/mahardianto/5bf5c035579e748e8f70766364af0e2e.js"></script></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">dan ini hasilnya:</span></span></p><p class="p1" style="font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit; font-size: medium;"><br /></span></span></p><p class="p1" style="font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"></span></p><div class="separator" style="clear: both; text-align: center;"><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj68AF8ygF44hu72PcxZRD5Pt6s-u_051Y2iMWruj3tsb8tR81vURgb3mFxWdJqExY70M6REQ40Lf0kDMgPCKmvePBmtvSkhxC3gmzAqtDHFxZWPix-XrN79PBtYAf5X0AFy5QDQ3_9r2vJn9AgvWfI1yLJXHdTopm-sE6eN5DJ1woOPSXYw/s1144/Screenshot%202023-04-24%20at%2015.37.48.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="514" data-original-width="1144" height="288" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj68AF8ygF44hu72PcxZRD5Pt6s-u_051Y2iMWruj3tsb8tR81vURgb3mFxWdJqExY70M6REQ40Lf0kDMgPCKmvePBmtvSkhxC3gmzAqtDHFxZWPix-XrN79PBtYAf5X0AFy5QDQ3_9r2vJn9AgvWfI1yLJXHdTopm-sE6eN5DJ1woOPSXYw/w640-h288/Screenshot%202023-04-24%20at%2015.37.48.png" width="640" /></a></span></div><span class="s1" style="font-family: inherit; font-variant-ligatures: no-common-ligatures;"><br /><span>disitu anda bisa melihat bahwa bucket dengan nama john-doe-2nd-bucket sudah berhasil dibuat.</span></span><p></p></div><div><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">Sekian catatan terkait cara membuat bucket dengan AWS S3 API pada layanan objcet gateway ceph cluster, jika ada pertanyaan silahkan tulis di kolom komentar.</span></span></div><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"></span><span style="font-family: Times; font-size: medium;"><br /></span></span></p></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-67261750511431354872023-04-30T09:20:00.001+07:002023-05-01T11:05:01.332+07:00Howto create user untuk mengakses Ceph Object Gateway melalui cephadm shell - 24<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZak5pJDO8QH2Y-M54fJuJG9qZFYenvLP-sB_jPhuAy6tZPdFSc8CvB7Riy7nhwkg50lwVB14-SC-2S9bzKFQtmvvaOMMtGwJb7tf16BZCcCE2sMVtf0UqWdvxgB3d5Ig4PTGzre8caMwebrOrDFmUxOGK3QegGErgCBdjrwfHkTCAL8Tg9Q/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZak5pJDO8QH2Y-M54fJuJG9qZFYenvLP-sB_jPhuAy6tZPdFSc8CvB7Riy7nhwkg50lwVB14-SC-2S9bzKFQtmvvaOMMtGwJb7tf16BZCcCE2sMVtf0UqWdvxgB3d5Ig4PTGzre8caMwebrOrDFmUxOGK3QegGErgCBdjrwfHkTCAL8Tg9Q/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Kembali lagi di catatan terkait ceph cluster, kali saya akan membahas bagaimana cara membuat user untuk mengakses layana ceph Object Gateway. Berbeda dengan catatan sebelumnya yang pembuatan user ini menggunakan ceph dashboard, kali ini pembuatan user ini menggunakan cephadm shell. Untuk membuat user baru ini saya harus masuk dulu ke komputer yang mengelola ceph cluster yang telah terinstall cephadm sebelumnya.</p><p>Untuk masuk ke dalam cephadm, saya cukup menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/734bced2e3b70a4d14b0f3ec6092f8c3.js"></script></p><p>setelah itu untuk saya akan lihat list user Object Gateway yang sudah ada di dalam ceph cluster dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/ca812a131d81cc04bda3d1198ea8c2e9.js"></script></p><p>hasilnya adalah seperti berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiz7yb31rcX7KR_bULVlHdR3ONDKFaxzeEdBQgWjZ6WIoYdDqEF4OEaCEZXYNb4LUZ8g4LQWQ2uukRLyQ-LJiFpNS7f1TV5S38jC_TTQaSnn1Yby4NCp4TbvR2u0_aPN6Kt6a6U8qD6jbM9_IhEAXvRUtlR3jY88Wux_gjEtVRBhpkcPbszAg/s630/Screenshot%202023-04-13%20at%2022.15.45.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="170" data-original-width="630" height="86" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiz7yb31rcX7KR_bULVlHdR3ONDKFaxzeEdBQgWjZ6WIoYdDqEF4OEaCEZXYNb4LUZ8g4LQWQ2uukRLyQ-LJiFpNS7f1TV5S38jC_TTQaSnn1Yby4NCp4TbvR2u0_aPN6Kt6a6U8qD6jbM9_IhEAXvRUtlR3jY88Wux_gjEtVRBhpkcPbszAg/s320/Screenshot%202023-04-13%20at%2022.15.45.png" width="320" /></a></div><br /><p>dari keluaran di atas anda bisa melihat bahwa ada user johndoe dan user dashboard di dalam system, rencananya saya akan membuat user baru dengan nama "marianne" sekaligus menentukan access key nya adalah "marianneacceskey" dan secret key nya adalah "mariannesecretkey" dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/5b5c098166f26a875b049d5372404da2.js"></script></p><p>jika berhasil anda akan mendapati tampilan keluaran seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhB9eMeCiysJzH_mt2soVwyVEyGfh-lDPaKd8eoeuEAFqml4cV4Z1bApxlBg7Mno-BKpPsSvxaJQn2JUjznalrCQDHlAik398mBFgMbSWUSCaB8oJRkhAxHsJ2LCdhgbp0l2JRO1xe_eiFo_ov2celR_mSSHtG96alIMwIiyFc1whH-ldizHg/s1072/Screenshot%202023-04-13%20at%2022.20.59.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1072" data-original-width="684" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhB9eMeCiysJzH_mt2soVwyVEyGfh-lDPaKd8eoeuEAFqml4cV4Z1bApxlBg7Mno-BKpPsSvxaJQn2JUjznalrCQDHlAik398mBFgMbSWUSCaB8oJRkhAxHsJ2LCdhgbp0l2JRO1xe_eiFo_ov2celR_mSSHtG96alIMwIiyFc1whH-ldizHg/s320/Screenshot%202023-04-13%20at%2022.20.59.png" width="204" /></a></div><div><br /></div>jika saya menjalankan perintah untuk melihat list user object gateway dengan perintah:<div><br /></div><div><script src="https://gist.github.com/mahardianto/ca812a131d81cc04bda3d1198ea8c2e9.js"></script></div><div><br /></div><div>maka ini yang saya dapatkan keluarannya:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRlBjjdr7zG_H2u_eOGEO6n2JmMo2faIuxxmY7BXZzHfiONsDB1FFfYmnH27E_Vox2vpLdiMSwOAdPAWLe3Sx301Pajx5lLkV8U8rHWFaKvRPLqCZfl4854p-aQ99REw4jCikJuIS9Wv6NM-Fi7Vi7gF2US0fHtB3wM3wgVD0rhakhia6H3Q/s712/Screenshot%202023-04-13%20at%2022.23.11.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="218" data-original-width="712" height="98" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRlBjjdr7zG_H2u_eOGEO6n2JmMo2faIuxxmY7BXZzHfiONsDB1FFfYmnH27E_Vox2vpLdiMSwOAdPAWLe3Sx301Pajx5lLkV8U8rHWFaKvRPLqCZfl4854p-aQ99REw4jCikJuIS9Wv6NM-Fi7Vi7gF2US0fHtB3wM3wgVD0rhakhia6H3Q/s320/Screenshot%202023-04-13%20at%2022.23.11.png" width="320" /></a></div><br /><div><div style="text-align: justify;">dari tampilan di atas terlihat bahwa user <b>marianne</b> telah berhasil ditambahkan, cukup mudah bukan menambahkan user layanan Ceph Object Gateway menggunakan cephadm, sekian catatan ini dan jikalau anda memiliki pertanyaan silahkan tulis di kolom komentar.</div><p><br /></p></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-13689846218316923422023-04-24T15:34:00.003+07:002023-04-25T08:30:00.497+07:00Howto create user object gateway di ceph cluster melalui ceph dashboard - 23<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZak5pJDO8QH2Y-M54fJuJG9qZFYenvLP-sB_jPhuAy6tZPdFSc8CvB7Riy7nhwkg50lwVB14-SC-2S9bzKFQtmvvaOMMtGwJb7tf16BZCcCE2sMVtf0UqWdvxgB3d5Ig4PTGzre8caMwebrOrDFmUxOGK3QegGErgCBdjrwfHkTCAL8Tg9Q/s691/Screenshot%202023-02-27%20120113.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZak5pJDO8QH2Y-M54fJuJG9qZFYenvLP-sB_jPhuAy6tZPdFSc8CvB7Riy7nhwkg50lwVB14-SC-2S9bzKFQtmvvaOMMtGwJb7tf16BZCcCE2sMVtf0UqWdvxgB3d5Ig4PTGzre8caMwebrOrDFmUxOGK3QegGErgCBdjrwfHkTCAL8Tg9Q/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Jika saya mengaktifkan layanan ceph object gateway pada ceph cluster yang sebelumnya telah saya bangun, maka untuk mengaksesnya kita harus membuat user terlebih dahulu. User yang digunakan berbeda dengan user layanan ceph file system. User untuk layanan object gateway harus kita buat dulu secara tersendiri. Kalau kemaren saya menggunakan user dashboard, karena user ini telah ada sebelumnya secara default, tetapi apakah kita akan membagikan user dan password user dashboard tersebut? Tentu tidak, lalu bagaimana caranya agar user lainnya dapat memanfaatkan layanan Ceph Object Gateway? Ya solusinya kita harus membuat user baru untuk mengakses layanan tersebut.</p><p>Ada dua cara membuat user untuk layanan Ceph Object Gateway, cara pertama adalah menggunakan Ceph Dashboard, sedangkan cara lainnya adalah menggunakan cephadm shell. Saya akan bahas menggunakan cara pertama terlebih dahulu:</p><p>Membuat user Ceph Objcet Gateway dengan Ceph Dashboard:</p><p>Pertama buka halaman login ceph dashboard seperti di bawah ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcWvfhfUZrGE73CefPqCBlXkPHVV2bWx0MtTWCF9vRHjgo8dU9WkAht1AwbYHSBzTDQi9z4TQNQ62wAmEsYjGK8p2SiPr4bxJ-RMUksOdxw-CAhp7jTCCvZEYQ_UzpQ5mpDy8C4_SHV85AtXTtoSHJC-30UhZPMmxDTZ_wlOjFQPgt7GcJfA/s2078/Screenshot%202023-04-13%20at%2021.53.57.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1288" data-original-width="2078" height="198" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcWvfhfUZrGE73CefPqCBlXkPHVV2bWx0MtTWCF9vRHjgo8dU9WkAht1AwbYHSBzTDQi9z4TQNQ62wAmEsYjGK8p2SiPr4bxJ-RMUksOdxw-CAhp7jTCCvZEYQ_UzpQ5mpDy8C4_SHV85AtXTtoSHJC-30UhZPMmxDTZ_wlOjFQPgt7GcJfA/s320/Screenshot%202023-04-13%20at%2021.53.57.png" width="320" /></a></div><div><br /></div>setelah berhasil login anda akan ditampilkan halaman dashboard seperti ini:<div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi080b_46YRjEiuzjXQOA6oHQaUMAkDmSndtCAl0miM32pqlxBk4VC26s1lDziWYoh64X4oPR9iAyD8uYtRi-0hcl5mzkv7lxW8NBnP6jquPA81fe1fWOEgOVEa92uYZ2-RMFPE1ZW_6_QVeYdZHNnIA-1OBXO6N1I-UAGASeWHlevE4aauwA/s2848/Screenshot%202023-04-13%20at%2021.55.15.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1362" data-original-width="2848" height="153" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi080b_46YRjEiuzjXQOA6oHQaUMAkDmSndtCAl0miM32pqlxBk4VC26s1lDziWYoh64X4oPR9iAyD8uYtRi-0hcl5mzkv7lxW8NBnP6jquPA81fe1fWOEgOVEa92uYZ2-RMFPE1ZW_6_QVeYdZHNnIA-1OBXO6N1I-UAGASeWHlevE4aauwA/s320/Screenshot%202023-04-13%20at%2021.55.15.png" width="320" /></a></div><br /><div>pada menu sebelah kiri, pilih menu Object Gateway lalu pilih menu User, sehingga anda akan mendapatkan tampilan seperti ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHS-NHxRthlF5c9iY8t1F418u5WJz32edqYfYT8uDa7sgxOfcZlL3OPLsbNoDhG29_gUO_Y4prTl1hV6POaMuTSI3AlWcoE-JabOZhCZHSqZ8xHK7R49PZATn7khKZSKXkk8zGKHThEAIX04fLrollHZ4KH4oUNVpd8O3jqhSCQIyb0yySmw/s2424/Screenshot%202023-04-13%20at%2021.56.54.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="508" data-original-width="2424" height="67" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHS-NHxRthlF5c9iY8t1F418u5WJz32edqYfYT8uDa7sgxOfcZlL3OPLsbNoDhG29_gUO_Y4prTl1hV6POaMuTSI3AlWcoE-JabOZhCZHSqZ8xHK7R49PZATn7khKZSKXkk8zGKHThEAIX04fLrollHZ4KH4oUNVpd8O3jqhSCQIyb0yySmw/s320/Screenshot%202023-04-13%20at%2021.56.54.png" width="320" /></a></div><br /><div>disitu baru terlihat satu user saja yaitu user dashboard, untuk membuat user baru saya klik tombol Create berwarna merah tersebut, hasilnya muncul form isian seperti ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIeRUBAA_nePNJRzqrY-WozCma1bHF7ezn4KGLEoWmodUKDut4d5s0526_YeL90Up5nYLwMEYZIY4bN6TCUXHhjRkGxjY4OhcwgcAcX-9g0tRlTgWgOsbIq0WwvXzUMKAIlf3VK6ZKhuiYwQWCy1qkJI2lsIhn67_DpDZPBelFIdrug3Y-PA/s1398/Screenshot%202023-04-13%20at%2021.59.54.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1398" data-original-width="1188" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIeRUBAA_nePNJRzqrY-WozCma1bHF7ezn4KGLEoWmodUKDut4d5s0526_YeL90Up5nYLwMEYZIY4bN6TCUXHhjRkGxjY4OhcwgcAcX-9g0tRlTgWgOsbIq0WwvXzUMKAIlf3VK6ZKhuiYwQWCy1qkJI2lsIhn67_DpDZPBelFIdrug3Y-PA/s320/Screenshot%202023-04-13%20at%2021.59.54.png" width="272" /></a></div><br /><div>kemudian pada bagian S3 key, saya hilangkan tanda pilihan (Auto Generated Key) tersebut lalu sisanya saya isi seperti ini:</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPVUz0yFefWB6aTzLuI-HTMTPCp96QlhKdq1l_IyhZz8RUtChY8JF9TlH6uLMT60zzbAqNDRr_G4VsPdJox9A-0IWihRr4t2efkdUgyhSQGEdK6hXnn1sF_6JcKyDmz9u0GsLuaUB2M_UA19cRyH6yAmXpvnuFK2L5ew8QLQUzqhMzq-uMGw/s1404/Screenshot%202023-04-13%20at%2022.01.23.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1404" data-original-width="1108" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPVUz0yFefWB6aTzLuI-HTMTPCp96QlhKdq1l_IyhZz8RUtChY8JF9TlH6uLMT60zzbAqNDRr_G4VsPdJox9A-0IWihRr4t2efkdUgyhSQGEdK6hXnn1sF_6JcKyDmz9u0GsLuaUB2M_UA19cRyH6yAmXpvnuFK2L5ew8QLQUzqhMzq-uMGw/s320/Screenshot%202023-04-13%20at%2022.01.23.png" width="253" /></a></div><br /><div>dengan menghilangkan autogenerated key tersebut saya bisa mengisi access key dan secret key yang saya mau agar mudah diingat. Selanjutnya adalah klik tombol Create User, apabila berhasil akan nampak user baru seperti ini:</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9dTP2xJe73t-BGkF3UdPIqhBNZP1F_OF4XuZd0ucrfpy7RzKJKjuBfBuNatRzYKb06SrV5wXqiyaspQWKI7Y37C-L99gqqtAPzAElRX_Wvugm8GJV3VgmceM01GpKfchVerLn6Wrfj32lVKDYtoQBFZ7DvFgVBir0aU3dbYOLktTzu7wpfQ/s2388/Screenshot%202023-04-13%20at%2022.01.40.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="526" data-original-width="2388" height="70" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9dTP2xJe73t-BGkF3UdPIqhBNZP1F_OF4XuZd0ucrfpy7RzKJKjuBfBuNatRzYKb06SrV5wXqiyaspQWKI7Y37C-L99gqqtAPzAElRX_Wvugm8GJV3VgmceM01GpKfchVerLn6Wrfj32lVKDYtoQBFZ7DvFgVBir0aU3dbYOLktTzu7wpfQ/s320/Screenshot%202023-04-13%20at%2022.01.40.png" width="320" /></a></div><div><br /></div>Access key dan Secret Key tersebut berfungsi untuk otentikasi user untuk mengakses layanan Ceph Object Gateway. Sekian catatan kali ini, jika ada pertanyaan silahkan tulis di kolom komentar ya.<br /><div><br /><p><br /></p></div></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-19678456491631710812023-04-23T11:03:00.012+07:002023-04-24T18:14:20.138+07:00Mengubah jumlah PG (Placement Group) di Ceph Cluster - 22<p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSIL0ZwAvQBkP9Y7ruQ9g2JlV3lY5UR_PtC9T9Pm1plapNfiIaa4RVhnW680suvgxjI34ReNODHoEM0M0AuvK69kwuG3EFtRhFHy5j5PP7TE4MWd0I0vpW41ZUI9jY2qFXRx54AOSWrMAkFrg_J5LzUxXsTd0hBhCMYb9wqdZpFB5yk303hA/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSIL0ZwAvQBkP9Y7ruQ9g2JlV3lY5UR_PtC9T9Pm1plapNfiIaa4RVhnW680suvgxjI34ReNODHoEM0M0AuvK69kwuG3EFtRhFHy5j5PP7TE4MWd0I0vpW41ZUI9jY2qFXRx54AOSWrMAkFrg_J5LzUxXsTd0hBhCMYb9wqdZpFB5yk303hA/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><br /><p></p><p style="text-align: justify;"><span style="background-color: white;">Catatan kali ini akan membahas tentang Placement Group (PG) di ceph cluster. Placement groups berfungsi untuk<span style="font-size: 16px; white-space: pre-wrap;"><span style="font-family: inherit;"> memetakan objek pada node OSD (Object Storage Daemon). Placement groups digunakan untuk meningkatkan kinerja dan skalabilitas cluster Ceph.</span></span></span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px; text-align: justify; white-space: pre-wrap;"><span style="background-color: white; font-family: inherit;">Salah satu kegunaan utama placement groups di Ceph adalah untuk membagi objek ke dalam grup yang berbeda-beda agar dapat dikembangkan secara paralel. Dengan demikian, setiap OSD hanya perlu menangani sebagian dari objek, sehingga memungkinkan untuk mengurangi waktu pemrosesan dan meningkatkan throughput. Selain itu, placement groups juga dapat memungkinkan pemulihan data yang lebih cepat dalam situasi kegagalan OSD atau node.</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px; text-align: justify; white-space: pre-wrap;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPg1wogOCKaDp1pXGNB-c0qCE6bgUWTpa4owuk1eCqAhiB5LDs589C8EofEFbAqEy3zYgDwACPadlDyES_fb3SPPCgBnKuY8Aj8ubn4_vyEeZuMFwnAgm7z83VQY_khCRfQf-2XzQMera3fmT2xJUj4s2Czl41ncrxeNSS8lUTjnJux3HsWw/s600/Ceph-Object-Placement-Group.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="350" data-original-width="600" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPg1wogOCKaDp1pXGNB-c0qCE6bgUWTpa4owuk1eCqAhiB5LDs589C8EofEFbAqEy3zYgDwACPadlDyES_fb3SPPCgBnKuY8Aj8ubn4_vyEeZuMFwnAgm7z83VQY_khCRfQf-2XzQMera3fmT2xJUj4s2Czl41ncrxeNSS8lUTjnJux3HsWw/w400-h234/Ceph-Object-Placement-Group.png" width="400" /></a></div><span style="background-color: white; font-family: inherit;"><div style="text-align: justify;"><span style="font-family: inherit;">Dalam cluster Ceph, placement groups juga digunakan sebagai unit pemindahan data pada saat melakukan rebalancing data di seluruh node. Dengan memindahkan placement group secara otomatis pada saat melakukan rebalancing data, cluster Ceph dapat mempertahankan keseimbangan kapasitas penyimpanan dan meminimalkan kemungkinan terjadinya hot spot (node yang menerima lalu lintas data yang lebih besar dibandingkan node lainnya).</span></div></span><p></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; text-align: justify; white-space: pre-wrap;"><span style="background-color: white; font-family: inherit;">Secara umum, placement groups di Ceph sangat penting dalam meningkatkan performa dan skalabilitas cluster, serta memungkinkan untuk mengoptimalkan alokasi dan pemulihan data pada saat terjadi kegagalan OSD atau node. </span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; text-align: justify; white-space: pre-wrap;"><span style="background-color: white; font-family: inherit;">Ada kalanya jika anda mengaktifkan berbagai layanan di dalam ceph cluster secara serentak seperti (RBD, RGW dan CFS) maka membutuhkan banyak PG (lebih dari 250 PG), sedangkan secara default PG yang dikonfigurasi maksimal berjumlah 250 PG dalam setiap OSD.</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white; font-family: inherit;">Untuk melihat berapa PG yang dapat dibuat di dalam OSD saya cukup menjalankan perintah:</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white; font-family: inherit;"><script src="https://gist.github.com/mahardianto/4bfc37478323fe8116746986ec7bfe56.js"></script></span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white;">perintah di atas saya jalankan di dalam cephadm shell, hasilnya adalah sebagai berikut:</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white;"><br /></span></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-J8si3C7jW6E9AruTlbQ8iHNhzKJP7_gEAFje1trj5dTuNLlxUuSAkohGxu17DgQpAacnQ_qnLjcxCXYNdDPYmkD49eIhpHF4mw4Xn8oX9VMrl_k8aOnsTp0b7mV6rduM2YeMkYRa_Lx62gw7zoQqVcA9sISH9uRkkIogMMxTuHtnC-8d9g/s509/Screenshot%202023-04-05%20105550.png" style="background-color: white; margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="37" data-original-width="509" height="29" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-J8si3C7jW6E9AruTlbQ8iHNhzKJP7_gEAFje1trj5dTuNLlxUuSAkohGxu17DgQpAacnQ_qnLjcxCXYNdDPYmkD49eIhpHF4mw4Xn8oX9VMrl_k8aOnsTp0b7mV6rduM2YeMkYRa_Lx62gw7zoQqVcA9sISH9uRkkIogMMxTuHtnC-8d9g/w400-h29/Screenshot%202023-04-05%20105550.png" width="400" /></a></div><span style="background-color: white;"><br /></span><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white;">dari hasil di atas terlihat bahwa PG yang dikonfigurasi pada masing-masing OSD adalah 250, untuk mengubah nilainya saya cukup menjalankan perintah:</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white;"><script src="https://gist.github.com/mahardianto/f43b8df4019c0ee6a7db84b0c3259feb.js"></script></span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white;">perintah di atas akan mengubah konfigurasi maksimal jumlah PG yang bisa dibuat dari 250 ke 500, jika saya menjalankan perintah:</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white;"><script src="https://gist.github.com/mahardianto/4bfc37478323fe8116746986ec7bfe56.js"></script></span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"><span style="background-color: white;">maka hasilnya adalah sebagai berikut:</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8tocP9vkqiBWE34tGLKW2g7WbmB-XN87E7YF6sTBfTufGe21LPQtxyDPexPf9M9vctsAHqxaXrFrm7iR6B2wdB5bTq7k-0WdhW8SW2La2VGWJme38qV1OW7yJ3llE9_8gHcDTL6HCCRp5sIOvNSC-ExGNr8-PZOz0USeEPrDmys6g-FU5iQ/s507/Screenshot%202023-04-05%20105935.png" style="background-color: white; margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="36" data-original-width="507" height="29" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8tocP9vkqiBWE34tGLKW2g7WbmB-XN87E7YF6sTBfTufGe21LPQtxyDPexPf9M9vctsAHqxaXrFrm7iR6B2wdB5bTq7k-0WdhW8SW2La2VGWJme38qV1OW7yJ3llE9_8gHcDTL6HCCRp5sIOvNSC-ExGNr8-PZOz0USeEPrDmys6g-FU5iQ/w400-h29/Screenshot%202023-04-05%20105935.png" width="400" /></a></div><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(59,130,246,0.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-size: 16px; margin: 1.25em 0px 0px; text-align: left; white-space: pre-wrap;"><span style="background-color: white; text-align: justify;">dari hasil diatas terlihat bahwa konfigurasi maksimal PG yang dapat dibuat pada OSD sudah berubah menjadi 500. Sekian catatan kali ini terkait konfigurasi perubahan jumlah maksimum PG pada ceph cluster, apabila ada pertanyaan silahkan tulis di kolom komentar.</span></p><span style="background-color: white;"><br /></span><p></p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-82217863224521441122023-04-13T12:47:00.001+07:002023-04-17T21:25:29.414+07:00Howto connect Ceph Object Gateway melalui AWS S3 API - 21<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdo0XIIIAfpmXQAXk7Ga7aKDb5XPWNpFnlEmJ7g2N9DtJkafSfLo6PdkmfoUtJKcy_8cAnRDQ2lNdYFMLyxGwg8ir0Ug8PrBhsB66r5w0RBzF21ujhneuwF9VmIc31hw9bC1JVbwXbZCq-zuIQMKfrkRmSxJnOG57x64pNPRsmZmtb9vExYA/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdo0XIIIAfpmXQAXk7Ga7aKDb5XPWNpFnlEmJ7g2N9DtJkafSfLo6PdkmfoUtJKcy_8cAnRDQ2lNdYFMLyxGwg8ir0Ug8PrBhsB66r5w0RBzF21ujhneuwF9VmIc31hw9bC1JVbwXbZCq-zuIQMKfrkRmSxJnOG57x64pNPRsmZmtb9vExYA/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><br /><p></p><p style="text-align: justify;">Catatan ini akan membahas bagaimana klien mengakses Ceph Object Storage melalui Ceph Object Gateway pada ceph cluster. Salah satu cara untuk berkomunikasi dengan Ceph Object Gateway adalah menggunakan AWS S3 client. Ceph Object Gateway ini menyediakan layanan penyimpanan (ceph Object Storage) dimana klien tidak harus terkoneksi secara langsung seperti RBD atau Ceph File System. Cara kerjanya mirip seperti Google Storage. </p><p>Untuk lingkungan pengembangan Ceph Cluster yang saya gunakan terdiri dari berikut ini:</p><p></p><ul style="text-align: left;"><li><b>server1</b>: mon(active), mgr(standby), osd(active), <b><u style="background-color: #fcff01;">rgw(active)</u></b>, alamat IP: 192.168.0.254</li><li><b>server2</b>: mon(active), mgr(active), osd(active), alamat IP: 192.168.0.252</li><li><b>server6</b>: mon(active), mgr(standby), osd(active), alamat IP: 192.168.0.249</li></ul><p></p><p style="text-align: justify;">Yang berperan sebagai object gateway disini adalah server 1, ditandai dengan adanya <b><u style="background-color: #fcff01;">daemon rgw</u></b> yang active di dalamnya. Sebelum saya bisa memulai membangun koneksi lewat klien, saya harus memiliki nama user, access key dan secret key terlebih dahulu. Untuk mendapatkannya saya harus masuk dulu ke shell cephadm.</p><h3 style="text-align: left;"><b>Konfigurasi di Ceph Cluster</b></h3><p>Untuk masuk ke dalam shell cephadm, saya harus login ke dalam server1 (sebagai server yang saya gunakan untuk mengelola ceph cluster) kemudian saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/734bced2e3b70a4d14b0f3ec6092f8c3.js"></script></p><p>jika anda mendapati keluaran yang mirip dengan gambar di bawah, itu berarti anda berhasil masuk ke dalam cephadm shell:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnqh_JrSGGZPkqtJxu7m5FkO0_SDt35lylefPz66YByg6AiwLkC75DInUEgHkjur1AYaXsRhxrG12a-aNdH_a_WgZFL2d68ulJQNWxx5f6LPCHYtqay1BP2I9KQLla_FoEyt3sA2W2d0M6hZN9TPLi7JOSXpBuq-_wrXKqsUbZHuYU2E7Kbw/s1612/Screenshot%202023-03-26%20at%2009.25.15.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="176" data-original-width="1612" height="70" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnqh_JrSGGZPkqtJxu7m5FkO0_SDt35lylefPz66YByg6AiwLkC75DInUEgHkjur1AYaXsRhxrG12a-aNdH_a_WgZFL2d68ulJQNWxx5f6LPCHYtqay1BP2I9KQLla_FoEyt3sA2W2d0M6hZN9TPLi7JOSXpBuq-_wrXKqsUbZHuYU2E7Kbw/w640-h70/Screenshot%202023-03-26%20at%2009.25.15.png" width="640" /></a></div><p>setelah itu saya akan melihat user yang bsia saya gunakan untuk login melalui klien. Untuk melihat user yang tersedia, saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/ca812a131d81cc04bda3d1198ea8c2e9.js"></script></p><p>dari perintah di atas saya mendapatkan keluaran seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioWh49LP1K1gN-kBGamFduWk925HZGqR2aFHYJYNBEKQxQ7-LjUR5wsgU3TMFudaHDmufIb9sm5O5dMrpRNSdT3XKWshAKc_QBEQz5fp-0xyqk_iPmpEAolkvwJZ7sQmzRhYBgRnA6vrLqk2fKBkMmDpvQVKmweccrpdUwSlVTiIYTtFH28A/s638/Screenshot%202023-03-26%20at%2009.25.53.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="120" data-original-width="638" height="75" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioWh49LP1K1gN-kBGamFduWk925HZGqR2aFHYJYNBEKQxQ7-LjUR5wsgU3TMFudaHDmufIb9sm5O5dMrpRNSdT3XKWshAKc_QBEQz5fp-0xyqk_iPmpEAolkvwJZ7sQmzRhYBgRnA6vrLqk2fKBkMmDpvQVKmweccrpdUwSlVTiIYTtFH28A/w400-h75/Screenshot%202023-03-26%20at%2009.25.53.png" width="400" /></a></div><p>itu berarti ada user bernama dashboard didalam server Ceph Object Gateway, lalu saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/eb7d4a7d88a7be9a9d3f13c4b9fbfe6e.js"></script></p><p>yang akan menghasilkan keluaran seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit7RvobV5qfISAPvE44rTbQBePbC5rws5yrkcvF50jDCpuZZJ54tkY2zwX4Od9mfGAIVZcOU9pGRn5EyyKBLaBlo40Gz_zDARUsGA7vE177yDXUTpdrPtfzGlwPOLaKLqc6Ju4xHZhQHBM5C2BxXrsIoGard7kncMwiyeDt_xsILuTH2RRfQ/s782/Screenshot%202023-03-26%20at%2009.22.49.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="64" data-original-width="782" height="52" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit7RvobV5qfISAPvE44rTbQBePbC5rws5yrkcvF50jDCpuZZJ54tkY2zwX4Od9mfGAIVZcOU9pGRn5EyyKBLaBlo40Gz_zDARUsGA7vE177yDXUTpdrPtfzGlwPOLaKLqc6Ju4xHZhQHBM5C2BxXrsIoGard7kncMwiyeDt_xsILuTH2RRfQ/w640-h52/Screenshot%202023-03-26%20at%2009.22.49.png" width="640" /></a></div><p>keluaran diatas mungkin berbeda dengan keluaran ketika anda menjalankan perintah di atas pada ceph cluster anda, karena keluaran diatas adalah nilai access key yang akan saya gunakan di client untuk mengakses Ceph Object Storage. </p><p>Setelah itu untuk melihat secret key-nya saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/f66ab1bdf36cba501ecd0c1496a4c640.js"></script></p><p>dan berikut ini hasil keluarannya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSyCplVGiblQGl1V3u4sf9-ZR_alSipguaL75ytc57fJ1ypkl-wshw1xIgFSpBgkIHrgY4RZn8kyweLwGAjYnjQ8K63ote2QZRdigR8s-zqT6CwBGbDuhiwDgSu4EHlLQAjOB0zGW77nDrXLCSiHHSGVib8vtiVr6zIjoWzkAiboxdtFLoiQ/s788/Screenshot%202023-03-26%20at%2009.22.58.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="62" data-original-width="788" height="50" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSyCplVGiblQGl1V3u4sf9-ZR_alSipguaL75ytc57fJ1ypkl-wshw1xIgFSpBgkIHrgY4RZn8kyweLwGAjYnjQ8K63ote2QZRdigR8s-zqT6CwBGbDuhiwDgSu4EHlLQAjOB0zGW77nDrXLCSiHHSGVib8vtiVr6zIjoWzkAiboxdtFLoiQ/w640-h50/Screenshot%202023-03-26%20at%2009.22.58.png" width="640" /></a></div><br /><p>nilai secret key akan tertampil di keluaran di atas itu. Langkah untuk melihat nama user, secret dan access key selesai disini.</p><h3 style="text-align: left;"><b>Konfigurasi komputer klien Ceph Object Storage</b></h3><p style="text-align: justify;">Setelah saya mendapatkan nilai access key dan secret key tersebut, lalu saya akan ke komputer klien. Komputer klien yang akan saya gunakan untuk mengakses object storage memiliki system operasi Ubuntu Server 20.04 dengan alamat IP 192.168.1.24. Pastikan juga bahwa komputer klien bisa terhubung ke server1 (Ceph Object Storage). Setelah itu di komputer klien saya harus menginstall aplikasi tambahan yaitu awscli, caranya cukup dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/75c0c55e921bc21c960025d782f8cc05.js"></script></p><p>setelah selesai install saya harus melakukan konfigurasi pada aplikasi tersebut untuk memasukkan nilai access dan secret key tersebut. Cara konfigurasinya dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/5b4a2718114ff0a5a6ae8ffc40fa3212.js"></script></p><p>setelah itu masukkan access key:</p><p><script src="https://gist.github.com/mahardianto/5532f5bacfa3a2ed266e02807946a4b1.js"></script></p><p>dan Secret Key:</p><p><script src="https://gist.github.com/mahardianto/0cde7379e871a7184993da50be368773.js"></script></p><p>seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6HRd99KzkFTenW2G8ILtAD2YRF5S_Hhj01jmU63m9IXvpCn2H6ah3tq45MvVVyLd8wpb1Bhp5LD_kAVh6YQ5wk5yXPtr5Eu114788dTjK0zDW1AER2RXkHqMVYKFxVJYqA9wbzvQFlD0kpJvqHIEjR5wXEiEKX6sBhW13mYeD9Si30bM6Sg/s1244/Screenshot%202023-03-26%20at%2009.42.15.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="146" data-original-width="1244" height="76" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6HRd99KzkFTenW2G8ILtAD2YRF5S_Hhj01jmU63m9IXvpCn2H6ah3tq45MvVVyLd8wpb1Bhp5LD_kAVh6YQ5wk5yXPtr5Eu114788dTjK0zDW1AER2RXkHqMVYKFxVJYqA9wbzvQFlD0kpJvqHIEjR5wXEiEKX6sBhW13mYeD9Si30bM6Sg/w640-h76/Screenshot%202023-03-26%20at%2009.42.15.png" width="640" /></a></div><br /><p>setelah itu, saya baru bisa terkoneksi dengan Ceph Object Gateway. Untuk mencoba koneksi, saya coba menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/37a1b722cbaeb4ece9977fd89c005360.js"></script></p><p>hasil dari perintah di atas berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTDbnXAOT144CTBzgN6ftfNxTdDNpyaExwoQ2b8FrO1L-8vFY6DpJLEwpixnGdIPmuD2HIXsY2alxG_AD5rtNXm_HRKAQGgnBbtTW2RX--Qtl58Ta1QHMvdgoLFiez9RscePRHH9P8rCkHO5F4z4bUqzFEd4dzeV-3u6hKR531uzo78GHJFw/s1108/Screenshot%202023-03-26%20at%2009.45.34.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="368" data-original-width="1108" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTDbnXAOT144CTBzgN6ftfNxTdDNpyaExwoQ2b8FrO1L-8vFY6DpJLEwpixnGdIPmuD2HIXsY2alxG_AD5rtNXm_HRKAQGgnBbtTW2RX--Qtl58Ta1QHMvdgoLFiez9RscePRHH9P8rCkHO5F4z4bUqzFEd4dzeV-3u6hKR531uzo78GHJFw/w640-h212/Screenshot%202023-03-26%20at%2009.45.34.png" width="640" /></a></div><br /><p style="text-align: justify;">perintah diatas sebenarnya digunakan untuk menampilkan bucket apa saja yang ada di dalam Ceph Object Storage melalui Ceph Object Gateway dan hasil keluaran di atas terlihat ada bucket bernama "first-bucket" di dalam Ceph Object Storage.</p><p style="text-align: justify;">Jika menilik hasil keluaran diatas, itu artinya klien sudah dapat terhubung dengan Ceph Object Gateway dan bisa mengakses layanan Ceph Object Storage. Sekian catatan kali ini, lain waktu akan saya bahas bagaimana mengelola data yang ada di dalam Ceph Object Storage melalui layanan Ceph Object Gateway ini. Apabila ada pertanyaan silahkan tulis di kolom komentar. Sampai jumpa lagi di catatn berikutnya.</p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-48906127554950574162023-04-11T19:34:00.000+07:002023-04-12T10:15:01.032+07:00Create Bucket di layanan Object Gateway (RGW) di ceph cluster - 20<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0N7Mp-cyBssH_QbLP-d-_hIgXdWZkPJsN0uXaTfh09Kx-yJ-U4h547T3bsSvE1LeRu7kGvbwnS2vvyw7FqJtDfIonpDsss8QE9Ers6yG3ijqHsD0HShhnEqHdlIPoTN-7FV1essczRjrb14_pGK1UqakubH2VVNqkVzqZ3JhKBwP4Utf53g/s691/Screenshot%202023-02-27%20120113.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0N7Mp-cyBssH_QbLP-d-_hIgXdWZkPJsN0uXaTfh09Kx-yJ-U4h547T3bsSvE1LeRu7kGvbwnS2vvyw7FqJtDfIonpDsss8QE9Ers6yG3ijqHsD0HShhnEqHdlIPoTN-7FV1essczRjrb14_pGK1UqakubH2VVNqkVzqZ3JhKBwP4Utf53g/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Melalui catatan ini saya akan menjelaskan bagaimana saya membuat bucket di dalam layanan object gateway (RGW). Jadi bucket ini berfungsi untuk menyimpan data didalam layanan object gateway. Jika diibaratkan seperti harddisk, bucket ini mirip partisi. Jadi kita bisa membuat beberapa bucket di dalam layanan Object Gateway. Data yang disimpan di dalam bucket ini akan disimpan di dalam pool yang direplikasi dan disebar di seluruh OSD di dalam ceph cluster. </p><p style="text-align: justify;">Rencananya saya akan membuat bucket pertama dengan nama first-bucket. Untuk membuat bucket itu ada 2 cara, yaitu menggunakan layanan API atau melalui ceph dashboard. Untuk catatan ini saya akan menggunakan ceph dashboard, selain lebih mudah, saya juga belum menyediakan komputer client yang telah dikonfigurasi agar bisa mengakses dan mengelola layanan Object Gateway ini.</p><p style="text-align: justify;">Karena saya menggunakan ceph dashboard untuk membuat bucket maka saya harus masuk dulu ke dalam antarmuka ceph dashboard. Lokasi alamat ceph dashboard ini bergantung dimana layanan manager aktif di dalam ceph cluster. Untuk melihat dimana lokasi ceph dashboard, saya cukup menjalankan perintah di bawah ini di dalam cephadm shell:</p><p><script src="https://gist.github.com/mahardianto/bf5c6ee561a0a8bc5811bc4d42b21671.js"></script></p><p>dari situ hasilnya adalah berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqHItlaxIsOUag72RtgXSZUM0RgpHTAvfYEjbMIA1ZqttqtCzeNeP7a8-N7HfQmvkYdbXCOHaW7ac_LhAzdb6yUgJhbz9pm0IE6SvpEmeJkzliWAPPnLsqI-DDnAyObzjDJIZzPUIEuAKVxViOQPo3pWLwIX3-Hdt4NAqFRTVI8TzocyoZ_w/s1300/Screenshot%202023-03-22%20at%2019.14.24.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="472" data-original-width="1300" height="232" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqHItlaxIsOUag72RtgXSZUM0RgpHTAvfYEjbMIA1ZqttqtCzeNeP7a8-N7HfQmvkYdbXCOHaW7ac_LhAzdb6yUgJhbz9pm0IE6SvpEmeJkzliWAPPnLsqI-DDnAyObzjDJIZzPUIEuAKVxViOQPo3pWLwIX3-Hdt4NAqFRTVI8TzocyoZ_w/w640-h232/Screenshot%202023-03-22%20at%2019.14.24.png" width="640" /></a></div><br /><p>jika anda lihat di baris yang saya highlight, layanan manager tersebut aktif di server2 berarti saya akan mengakses ceph dashboard lewat browser dengan format:</p><p>https://alamat_ip_server2_yang_layanan_managernya_aktif:8443</p><p>server2 tersebut berjalan di alamat IP 192.168.0.252 maka berikut ini tampilannya pada browser:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnavFDKOKYkYjSGd7E_Hji9XouwmLU7Xo3U9ErlbWJxC4iy0ESv0Op4HxnuYJTqBLrdSqZLsDGHALnVowp7nSibdvsHscv2Mwl5anznEm0mRaQY48FniyodIl4z1rAlUFT6Gt-nV64KcR8WZSjmuh9HZw1mV6EMSZYpKGsg1bqvtqwmADg2g/s2318/Screenshot%202023-03-22%20at%2019.18.55.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1150" data-original-width="2318" height="318" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnavFDKOKYkYjSGd7E_Hji9XouwmLU7Xo3U9ErlbWJxC4iy0ESv0Op4HxnuYJTqBLrdSqZLsDGHALnVowp7nSibdvsHscv2Mwl5anznEm0mRaQY48FniyodIl4z1rAlUFT6Gt-nV64KcR8WZSjmuh9HZw1mV6EMSZYpKGsg1bqvtqwmADg2g/w640-h318/Screenshot%202023-03-22%20at%2019.18.55.png" width="640" /></a></div><br /><p style="text-align: justify;">Jika anda melihat gambar di atas ada peringatan bahwa koneksi tidak private, maka jangan takut bahwa halaman ceph dashboard tidak bisa diakses, silahkan klik tombol advance, lalu klik link proceed bla bla bla (unsafe). Keterangan diatas hanyalah warning dikarenakan mengakses halaman terenkripsi sertifikat SSL (https) yang tidak terverifikasi domain manapun. Setelah itu anda akan mendapati halaman login seperti ini:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiFevWWjtldstblH2KOyQeOrGZ-YQRvbmFqL_ofY6jo92NldXN-IVC3dDHlYFCrLKtiJgJKmx_3Q0AjBxowZot0E8E6SIOC9Kuk9qvgEwp3pECJo2C27RVXYSWsMaBtxWfV9oAjSSsLXqulRC-y9lPGvLzUfMCVYBiup9hkb5jCdc3pKpbJw/s2468/Screenshot%202023-03-22%20at%2019.22.21.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1304" data-original-width="2468" height="169" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiFevWWjtldstblH2KOyQeOrGZ-YQRvbmFqL_ofY6jo92NldXN-IVC3dDHlYFCrLKtiJgJKmx_3Q0AjBxowZot0E8E6SIOC9Kuk9qvgEwp3pECJo2C27RVXYSWsMaBtxWfV9oAjSSsLXqulRC-y9lPGvLzUfMCVYBiup9hkb5jCdc3pKpbJw/s320/Screenshot%202023-03-22%20at%2019.22.21.png" width="320" /></a></div><p>saya masukkan user dan password untuk login, dan jika berhasil akan nampak seperti berikut ini antarmukanya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTl9b7CilBPaY1FLWv9FBiFThjbUsZDjxwcdO1AUWCqWzxEEcOwclrn2wS51aQhyiWv_nV7gSyHYU93Ion_glUsbFO5u8X6MYeOx9mkNasrblVgvMpuaXKFgWkANSN2H6IQbF4JeDqBiyQKXaOoWVrzJX_0Q0I4L12l-La_dRVhgdyAAQKRw/s2848/Screenshot%202023-03-22%20at%2019.23.46.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1420" data-original-width="2848" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTl9b7CilBPaY1FLWv9FBiFThjbUsZDjxwcdO1AUWCqWzxEEcOwclrn2wS51aQhyiWv_nV7gSyHYU93Ion_glUsbFO5u8X6MYeOx9mkNasrblVgvMpuaXKFgWkANSN2H6IQbF4JeDqBiyQKXaOoWVrzJX_0Q0I4L12l-La_dRVhgdyAAQKRw/w640-h320/Screenshot%202023-03-22%20at%2019.23.46.png" width="640" /></a></div><p><br /></p><div style="text-align: justify;">anda perhatikan pada kotak yang saya highlight ada Object Gateway, disitu terlihat ada angka 1 total, itu artinya ada 1 server yang menjalankan layanan Object Gateway (server1). Lalu saya masuk ke menu Object Gateway di sebelah kiri lalu klik bagian Buckets, berikut ini tampilannya:</div><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGvdsQE2q6e1SZWqOuoLW_NR8cQhwEVSvFoMTZJlz5h990WsL3UXaMjrWA2qjVajowHD_sRE7tPGtvVSJoDUBajVUqSc6-N0QcJY3WTuP2b7eNHUxNC7S0sj2hPG3-cm5kT5Lk4Eo1Nby8W6-J0ywKmFn4bz3JFNnLTcCDSiOlwnwPM7k96Q/s2870/Screenshot%202023-03-22%20at%2019.25.54.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="888" data-original-width="2870" height="198" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGvdsQE2q6e1SZWqOuoLW_NR8cQhwEVSvFoMTZJlz5h990WsL3UXaMjrWA2qjVajowHD_sRE7tPGtvVSJoDUBajVUqSc6-N0QcJY3WTuP2b7eNHUxNC7S0sj2hPG3-cm5kT5Lk4Eo1Nby8W6-J0ywKmFn4bz3JFNnLTcCDSiOlwnwPM7k96Q/w640-h198/Screenshot%202023-03-22%20at%2019.25.54.png" width="640" /></a></div><br /><p>belum ada satupun buckets yang dibuat, untuk membuatnya saya klik tombol create lalu memasukkan detail seperti di bawah ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5gsL_huxM87qvjJrSElgvEdf9s-jej28_0ke0-CPLMHlAUNEwZkHVg0fDXaSReO2tgwsCkIuErmxS_9OG7Z0k42PYSKqAUhGWMhg2qejW2gLkOIWiNxXcX1dG_cUrVPr8lJTGFxjdDC59fQZlSeirXFRxhbEQSzZ_gIvwrVQuZbUPNYtO5Q/s1244/Screenshot%202023-03-22%20at%2019.27.17.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="862" data-original-width="1244" height="444" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5gsL_huxM87qvjJrSElgvEdf9s-jej28_0ke0-CPLMHlAUNEwZkHVg0fDXaSReO2tgwsCkIuErmxS_9OG7Z0k42PYSKqAUhGWMhg2qejW2gLkOIWiNxXcX1dG_cUrVPr8lJTGFxjdDC59fQZlSeirXFRxhbEQSzZ_gIvwrVQuZbUPNYtO5Q/w640-h444/Screenshot%202023-03-22%20at%2019.27.17.png" width="640" /></a></div><p>setelah itu saya simpan dengan menekan tombol "Create Bucket", jika berhasil akan nampak data bucket dengan nama first-bucket didalam tabel list buckets pada menu Buckets seperti ini:<br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOK1roiTDvqbMtngMT0cMsoGrsGOeDcFedFayH7_POYsBVoQI-rOyx5d2Z75ihZGH0HITgeTVziGo49JgIFVUfgv_RQVHDssQyDr-fa25xoKjZvBEk0etYqBcNFBIZWFl-zZOqy9vYxNsUVTYn04Fm_L44tg0rnjb7Jgkpx08gsW4hRVUIlg/s2428/Screenshot%202023-03-22%20at%2019.28.48.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="460" data-original-width="2428" height="122" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOK1roiTDvqbMtngMT0cMsoGrsGOeDcFedFayH7_POYsBVoQI-rOyx5d2Z75ihZGH0HITgeTVziGo49JgIFVUfgv_RQVHDssQyDr-fa25xoKjZvBEk0etYqBcNFBIZWFl-zZOqy9vYxNsUVTYn04Fm_L44tg0rnjb7Jgkpx08gsW4hRVUIlg/w640-h122/Screenshot%202023-03-22%20at%2019.28.48.png" width="640" /></a></div><br /><p>Bagaimana? mudah bukan membuat buckets di dalam layanan Object Gateway menggunakan ceph dashboard. Selamat mencoba dan sampai jumpa lagi di catatan berikutnya. Apabila ada pertanyaan silahkan tulis di kolom komentar ya.</p><p><br /></p> <p></p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-22240033027154442542023-04-07T05:28:00.001+07:002023-04-07T18:48:45.847+07:00Create Object Gateway service di ceph cluster dengan cephadm - 19<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0N7Mp-cyBssH_QbLP-d-_hIgXdWZkPJsN0uXaTfh09Kx-yJ-U4h547T3bsSvE1LeRu7kGvbwnS2vvyw7FqJtDfIonpDsss8QE9Ers6yG3ijqHsD0HShhnEqHdlIPoTN-7FV1essczRjrb14_pGK1UqakubH2VVNqkVzqZ3JhKBwP4Utf53g/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0N7Mp-cyBssH_QbLP-d-_hIgXdWZkPJsN0uXaTfh09Kx-yJ-U4h547T3bsSvE1LeRu7kGvbwnS2vvyw7FqJtDfIonpDsss8QE9Ers6yG3ijqHsD0HShhnEqHdlIPoTN-7FV1essczRjrb14_pGK1UqakubH2VVNqkVzqZ3JhKBwP4Utf53g/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Salah satu layanan yang tersedia di dalam ceph cluster selain Ceph File System dan Rados Block Device (RBD) adalah layanan Object Gateway atau Rados Gateway yang disingkat dengan nama RGW. Berbeda dengan layanan lainnya, Object Gateway ini menyediakan akses data menggunakan API untuk kliennya, sehingga layanan Object Gateway ini bisa digunakan atau di integrasikan ke dalam berbagai aplikasi atau berbagai bahasa pemrograman. </p><p>Layanan Object Gateway ini juga bisa langsung diakses lewat terminal tanpa kita harus terkoneksi secara langsung dengan ceph cluster layaknya layanan Ceph File System atau Layanan Rados Block Device. Cukup tahu ID access dan Password Secretnya saja, kita bisa melakukan manipulasi data di dalamnya.</p><p>Catatan ini akan menuliskan tentang cara mengaktifkan layanan Object Gateway di dalam ceph cluster. Sebagai informasi layanan ceph cluster ini terdiri dari 3 server yang memiliki detail sebagai berikut:</p><p></p><ul style="text-align: left;"><li>server1: mon (standby), mgr (standby), osd (active)</li><li>server2: mon (standby), mgr (active), osd (active)</li><li>server6: mon (active), mgr (standby), osd (active)</li></ul><p></p><p style="text-align: justify;">sistem operasi yang digunakan pada ceph cluster ini adalah Ubuntu Server 20.04 dan ceph yang saya gunakan adalah ceph versi Quincy. Sebelumnya saya menggunakan ceph versi Pacific akan tetapi entah kenapa layanan Object Gateway yang saya bangun tidak pernah berhasil terkoneksi dengan ceph dashboard-nya.</p><p style="text-align: justify;">Sebelum saya bisa memulai untuk mengaktifkan layanan object gateway saya harus login dulu ke dalam server1 yang sudah diinstall aplikasi cephadm untuk mengelola ceph cluster yang saya bangun ini. Setelah berhasil masuk atau login ke dalam server1, saya masuk ke dalam shell cephadm dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/734bced2e3b70a4d14b0f3ec6092f8c3.js"></script></p><p>setelah berhasil masuk, saya akan mengecek jumlah pool yang ada di dalam ceph cluster ini dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/a5d5f486b432f211b21ed5acdf20985b.js"></script></p><p>hasilnya seperti di bawah ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2m_UlFvELFXt_CCCHvbxhFVzh7l0SxTf1t2PW8PGEoiH_Mtu4N2G-OeYcGEi45tlAG6Vqjm1LWOnT4SEYRVsPldO2E0Ks_1RmouYUnmljJtWeHooiOxY3LfxBAi3ipFBvjO26-9vtr40mX81cTVYB_834tUF-ucpKTuzH0xw09X41n1qlFQ/s506/Screenshot%202023-03-22%20at%2012.59.46.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="66" data-original-width="506" height="42" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2m_UlFvELFXt_CCCHvbxhFVzh7l0SxTf1t2PW8PGEoiH_Mtu4N2G-OeYcGEi45tlAG6Vqjm1LWOnT4SEYRVsPldO2E0Ks_1RmouYUnmljJtWeHooiOxY3LfxBAi3ipFBvjO26-9vtr40mX81cTVYB_834tUF-ucpKTuzH0xw09X41n1qlFQ/s320/Screenshot%202023-03-22%20at%2012.59.46.png" width="320" /></a></div><p style="text-align: justify;">pada gambar di atas ini terlihat hanya ada satu pool dengan nama ".mgr" yang tersedia di dalam ceph cluster. Langkah berikutnya adalah mengaktifkan layanan object gateway pada salah satu server, yaitu server1 dengan perintah:</p><p><script src="https://gist.github.com/mahardianto/56bc84f072c3654a917693ba6773d955.js"></script></p><p>dengan perintah itu saya akan menjalankan service object gateway di dalam server1, tunggu beberapa saat untuk layanan object gateway itu aktif. Setelah itu saya akan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/4f2fd54d72959ea33514fab5f2666ead.js"></script></p><p>perintah di atas adalah untuk melihat service apa saja yang berjalan di dalam ceph cluster dan hasilnya adalah seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhRkceWu-xWmoo0JYxyr1CBFL0LhyzrMbNMRcnBiVHdRJ5IfAy7u4GEMaBkR-L4VR5fvVsffwM5GWG-90MJY9btXVQsjADGkqego4vdOweSml2_8ejJpsGRGw4c22rSAxLUTNnY688MKDJCyFkQqHCIH7Abf-vBkwtl0EgG_T-Iq_15-vHuA/s1896/Screenshot%202023-03-22%20at%2013.00.24.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="682" data-original-width="1896" height="230" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhRkceWu-xWmoo0JYxyr1CBFL0LhyzrMbNMRcnBiVHdRJ5IfAy7u4GEMaBkR-L4VR5fvVsffwM5GWG-90MJY9btXVQsjADGkqego4vdOweSml2_8ejJpsGRGw4c22rSAxLUTNnY688MKDJCyFkQqHCIH7Abf-vBkwtl0EgG_T-Iq_15-vHuA/w640-h230/Screenshot%202023-03-22%20at%2013.00.24.png" width="640" /></a></div><br /><p style="text-align: justify;">anda perhatikan pada baris di bawah sendiri, anda bisa lihat ada daemon bernama rgw.default.server1.wxaxlx yang berjalan diatas port 80. Yup itu adalah service object gateway (RGW) yang berjalan di server1. </p><p style="text-align: justify;">Ketika service RGW (object gateway) ini berjalan maka pool juga akan bertambah, untuk mengeceknya saya menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/a5d5f486b432f211b21ed5acdf20985b.js"></script><br /></p><p>hasilnya adalah sebagai berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCwOADwNk6YWZVCxIZlWDjiP0HWJd1V86vBoUWqjoL6wWIh18CjOCi6R3NTFrEXOwmnXEhgKuC7OpUAy2jfkr2ceY9gNShk47_z-qo186IYk7o8HbZrMihFUESZ1NRCjYrPWKD87wkWx8EtIDzDe-W2kZpe-9r9Qx_47EaDP0uEnxBXEzuHQ/s490/Screenshot%202023-03-22%20at%2013.00.12.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="174" data-original-width="490" height="114" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCwOADwNk6YWZVCxIZlWDjiP0HWJd1V86vBoUWqjoL6wWIh18CjOCi6R3NTFrEXOwmnXEhgKuC7OpUAy2jfkr2ceY9gNShk47_z-qo186IYk7o8HbZrMihFUESZ1NRCjYrPWKD87wkWx8EtIDzDe-W2kZpe-9r9Qx_47EaDP0uEnxBXEzuHQ/s320/Screenshot%202023-03-22%20at%2013.00.12.png" width="320" /></a></div><div><br /></div>dari hasil diatas terlihat bahwa terdapat 4 pool tambahan yang terdiri dari:<div><ul style="text-align: left;"><li>.rgw.root</li><li>default.rgw.log</li><li>default.rgw.control</li><li>default.rgw.meta</li></ul></div><div>setelah itu agar layanan object gateway (RGW) ini bisa dikelola lewat ceph dasboard saya harus menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/25bcbd63a4c252c4bac0ae258ee827d9.js"></script></div><div><br /></div><div>hasilnya adalah seperti berikut ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbQ1FzBTdV1i9sAvrIQ5lBEVwugVVxxBemWP2l6jtWq2erHWkIeS8Aua6OzszTzQhYQ6mc8d2TRIxf2x8CgjDW6r7fa_VWyj17o8qzrotesbKDAThqJpFsrewitDPj-1rmt1UHT-9YRHl7wDiHTTDFtiokka3u71ovk6YdNrUUxJJEP-iZQQ/s768/Screenshot%202023-03-22%20at%2013.00.34.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="68" data-original-width="768" height="56" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbQ1FzBTdV1i9sAvrIQ5lBEVwugVVxxBemWP2l6jtWq2erHWkIeS8Aua6OzszTzQhYQ6mc8d2TRIxf2x8CgjDW6r7fa_VWyj17o8qzrotesbKDAThqJpFsrewitDPj-1rmt1UHT-9YRHl7wDiHTTDFtiokka3u71ovk6YdNrUUxJJEP-iZQQ/w640-h56/Screenshot%202023-03-22%20at%2013.00.34.png" width="640" /></a></div><br /><div>Setelah itu saya melihat di dalam ceph dashboard pada menu Object Gateway, berikut ini keluarannya:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi13eiy0dSRCjamXWV3WnKv5i0co85XlO-mYltArw1MP01HgFXOldXWIfCtJ2KzpVy2IoJxEuUX03UDhN_-rDgi3IsgBOnAMujo964Kk8DRJCQlnnug1oJVR9k_rRVqBxLWuEkuB0jsPYeZxtqRVxPw9F8Hrk9416yuguAAJxG8SfQtAlSbWg/s2870/Screenshot%202023-03-22%20at%2013.00.46.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="912" data-original-width="2870" height="203" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi13eiy0dSRCjamXWV3WnKv5i0co85XlO-mYltArw1MP01HgFXOldXWIfCtJ2KzpVy2IoJxEuUX03UDhN_-rDgi3IsgBOnAMujo964Kk8DRJCQlnnug1oJVR9k_rRVqBxLWuEkuB0jsPYeZxtqRVxPw9F8Hrk9416yuguAAJxG8SfQtAlSbWg/w640-h203/Screenshot%202023-03-22%20at%2013.00.46.png" width="640" /></a></div><br /><div><br /></div><div><p style="text-align: justify;">disitu terlihat ada 1 daemon yang berjalan dan di keterangannya terdapat server mana layanan itu berjalan, serta keterangan zona serta zonegroupnya. Oh iya fungsi zone dan zonegroup itu akan digunakan ketika layanan Object Gateway ini berjalan di multi cluster ceph. Karena saya menjalankan ini di single cluster, maka saya menggunakan settingan default saja.</p><p>Lalu pada bagian menu User saya bisa melihat nama pengguna yang bisa mengakses object gateway ini, berikut ini tampilannya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHEEPrahaOqIrpE-pkZ4WAkdtk6r_sSxwfm6JS4X0mS57aFPBIlVqaCYceUTIiUVjxeugnXrr_j982aeodtq2S512bPGWAriMs4f9wPQFR5XUwUMynOFszan6hFQFBZzIJQ82t_kuyQMBtQxEACIYiHydQmO5dqJDFQDWN9RF_gB8_6LfwRA/s2862/Screenshot%202023-03-22%20at%2013.01.30.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="890" data-original-width="2862" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHEEPrahaOqIrpE-pkZ4WAkdtk6r_sSxwfm6JS4X0mS57aFPBIlVqaCYceUTIiUVjxeugnXrr_j982aeodtq2S512bPGWAriMs4f9wPQFR5XUwUMynOFszan6hFQFBZzIJQ82t_kuyQMBtQxEACIYiHydQmO5dqJDFQDWN9RF_gB8_6LfwRA/w640-h200/Screenshot%202023-03-22%20at%2013.01.30.png" width="640" /></a></div><br /><p style="text-align: justify;">dari tampilan di atas terlihat hanya ada satu user dengan nama dashboard yang bisa mengakses layanan object gateway tersebut. Nanti pada catatan berikutnya akan saya tulis bagaimana mengakses layanan object gateway menggunakan user dashboard tersebut.</p><p>Kemudian pada bagian bucket berikut ini tampilannya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCmowjH5j01NzykGlymbwKUbzcjRcTQe3GIrjepp0-1DfwrzhXu2bKEb7nG6wHoP1oVdfW9J2OHv_BBSb89jEDB6AAWYqjev4S_48xMAT6AhcyzmoySk87i39bTC8aabEDVgmh2_FAi7t2JZpV5FP56kD3UgaKh9aBCQ09tQy7g4-sv78_1Q/s2862/Screenshot%202023-03-22%20at%2013.01.15.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="902" data-original-width="2862" height="202" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCmowjH5j01NzykGlymbwKUbzcjRcTQe3GIrjepp0-1DfwrzhXu2bKEb7nG6wHoP1oVdfW9J2OHv_BBSb89jEDB6AAWYqjev4S_48xMAT6AhcyzmoySk87i39bTC8aabEDVgmh2_FAi7t2JZpV5FP56kD3UgaKh9aBCQ09tQy7g4-sv78_1Q/w640-h202/Screenshot%202023-03-22%20at%2013.01.15.png" width="640" /></a></div><br /><p>bucket ini berfungsi sebagai partis yang akan digunakan untuk menyimpan object atau file yang disimpan di dalam Object Gateway. Karena saya barusan mengaktifkan layanan object gateway maka belum ada satu bucket yang sudah tertampil di menu buckets ini.</p><p>Sekian catatan ini, Bagaimana? sangat mudah bukan mengaktifkan layanan ceph Object Gateway (RGW) sampai jumpa lagi di catatan berikutnya dan apabila ada pertanyaan silahkan tulis di kolom komentar ya.</p></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-61008935773844250532023-04-03T20:27:00.002+07:002023-04-05T05:26:47.681+07:00Howto acces block device di ceph cluster di Ubuntu Server - 18<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5LP4bMqjn7SUqgo7JdPN4_n0tSYeImaezAdmG1WNpQ3M1GUU0TaiR__44iZe9V8X3Oxg5IJBlsxZOfqxQvEKbZa0bxlARh098PZ_xUp9F8ygs4ExXoWN_M1RP7xdIX7ygoVXjgixcjMVrRGgwFzgno8OTO4-TuVmVzMQOxqizbCPpkP44YA/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5LP4bMqjn7SUqgo7JdPN4_n0tSYeImaezAdmG1WNpQ3M1GUU0TaiR__44iZe9V8X3Oxg5IJBlsxZOfqxQvEKbZa0bxlARh098PZ_xUp9F8ygs4ExXoWN_M1RP7xdIX7ygoVXjgixcjMVrRGgwFzgno8OTO4-TuVmVzMQOxqizbCPpkP44YA/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Meneruskan catatan sebelumnya dimana saya sudah membuat 2 buah block device dengan nama rbd-block-device dan rbd-block-device-2 dari pool bernama rbdpool. Maka di catatan ini saya akan menuliskan catatan bagaimana cara mengakses atau memanfaatkan rbd-block-device dan rbd-block-device-2 itu sebagai harddisk tambahan di dalam komputer klien.</p><p>Untuk lingkungan pengembangan ceph cluster yang saya gunakan adalah sebagai berikut ini:</p><ul><li>server1 : mon (standby), mgr(standby), osd (active), mgr (standby)</li><li>server2 : mon (standby), mgr(active), osd (active), mgr (active)</li><li>server6 : mon (active), mgr(standby), osd (active), mgr (standby)</li></ul>untuk alamat IP pada ke 3 komputer tersebut adalah sebagai berikut ini:<div><ul style="text-align: left;"><li>server1: 192.168.0.254/24</li><li>server2: 192.168.0.252/24</li><li>server6: 192.168.0.249/24</li></ul></div><div><ul style="text-align: left;"><li>komputer klien: 192.168.0.251/24</li></ul></div><h3 style="text-align: left;"><b>Konfigurasi komputer klien.</b></h3><div style="text-align: justify;">Perlu anda ketahui, komputer klien yang saya gunakan adalah Ubuntu Server 20.04 yang berperan sebagai komputer klien ceph cluster untuk mengakses layanan block device.</div><div style="text-align: justify;"><br /></div><div style="text-align: justify;">Sebelum saya bisa menggunakan block device saya harus menyalin keyring dari file ceph.client.admin.keyring dan konfigurasi ceph.conf dari server1, keduanya berlokasi di dalam folder /etc/ceph/ di server1. Untuk keyringnya isinya sebagai berikut ini:</div><div><br /></div><div><p class="p1" style="font-family: Menlo; font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/mahardianto/5b5e7db116a953df9d61cf166b3b4d62.js"></script></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">kemudian saya hanya ambil bagian key-nya yaitu:</span></span></p><p class="p1" style="font-family: Menlo; font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><br /></span></p></div><div><p class="p1" style="font-family: Menlo; font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/mahardianto/9b59892b19c140c3d4a33a54f3e3b25f.js"></script></p><p class="p1" style="font-family: Menlo; font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">keyring tersebut saya simpan dalam file admin.secret, lalu untuk isi dari file ceph.conf tersebut adalah:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-family: Menlo; font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/mahardianto/89ec54c9facb7dfad62b2b4452b389dd.js"></script></p><p class="p1" style="font-family: Menlo; font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">setelah saya mendapatkan keduanya, langkah selanjutnya adalah menginstall aplikasi ceph-common dengan menjalankan perintah:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/mahardianto/2c6457a42b299e88209b83b756e0104d.js"></script></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">selesai install saatnya saya mengakses rbd-block-device dari ceph cluster (192.168.0.254) untuk dipetakan ke dalam komputer dengan menjalankan perintah:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"></span></p><p class="p1" style="font-family: Menlo; font-size: 11px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/mahardianto/038c88587c5e10cf98121841f8a220ad.js"></script></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">hasilnya adalah sebagai berikut ini:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"></span></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsXi67Np5SeDwYlwF6VrYqx4X33h873aaalzHoO0WkmcT1W6wwcJBFRrbw8Vm1uWF4XCfr8zjuDB2lp3aF1ppdN2Qm_NB5bwOlPXjQVfC2TRQIUXslOmJ1jXr7iC2lWeyp5VKd3pN2nGcKjRz4SiZOsDGtQqRCGI0N88LvRGflRNnR5SDW4A/s1966/Screenshot%202023-03-15%20at%2020.06.13.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="62" data-original-width="1966" height="20" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsXi67Np5SeDwYlwF6VrYqx4X33h873aaalzHoO0WkmcT1W6wwcJBFRrbw8Vm1uWF4XCfr8zjuDB2lp3aF1ppdN2Qm_NB5bwOlPXjQVfC2TRQIUXslOmJ1jXr7iC2lWeyp5VKd3pN2nGcKjRz4SiZOsDGtQqRCGI0N88LvRGflRNnR5SDW4A/w640-h20/Screenshot%202023-03-15%20at%2020.06.13.png" width="640" /></a></div><br /><span style="font-family: inherit;">berdasarkan hasil di atas, maka block device bernama rbd-block-device tersebut sudah bisa dipetakan ke dalam komputer klien dengan nama /dev/rbd1, langkah berikutnya adalah memformat rbd1 ke file system ext4 agar bisa digunakan. Untuk melakukan format saya cukup menjalankan perintah:</span></div><div><br /><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/mahardianto/cec235b6b35689711799e2fd806ff5fb.js"></script></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;">hasil dari perintah tersebut adalah seperti ini:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"></span></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY7wKPBnlsoLTidBih-YldntkGb_nU7KiKVSEfZk_pBylavojNDHS7E0aewKy6H5GQLD8gbss11oJiDyLTOMmwVHQ238ycjsSYEL-0UUWQjGoelpIjTs2WHBUje-bR6LFFHddlhQ4uu1k3B6qqyAajDjLQlao3gNps0pf0KQmVjAULkcXqig/s1010/Screenshot%202023-03-15%20at%2020.12.00.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="394" data-original-width="1010" height="250" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY7wKPBnlsoLTidBih-YldntkGb_nU7KiKVSEfZk_pBylavojNDHS7E0aewKy6H5GQLD8gbss11oJiDyLTOMmwVHQ238ycjsSYEL-0UUWQjGoelpIjTs2WHBUje-bR6LFFHddlhQ4uu1k3B6qqyAajDjLQlao3gNps0pf0KQmVjAULkcXqig/w640-h250/Screenshot%202023-03-15%20at%2020.12.00.png" width="640" /></a></div><br /><span style="font-family: inherit;">setelah itu saya akan membuat folder baru dengan nama myrados dengan menjalankan perintah berikut:</span><p></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-variant-ligatures: no-common-ligatures;"><span style="font-family: inherit;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/mahardianto/abbd1c3dae9d94872216dd8e18f11dfe.js"></script></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;">setelah itu saya mount block device /dev/rbd1 ke folder myrados dengan perintah:</span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/mahardianto/2c501f4b265e9862e999782adbb2d273.js"></script></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;">setelah itu untuk mengecek apakah benar /dev/rbd1 terpetakan ke folder myrados, saya cukup menjalankan perintah:</span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/mahardianto/dfde23dab0c2f5dfacbe6dd9012413e0.js"></script></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;">berikut ini hasilnya:</span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh8r014AMlpYj6lSFzaRDdumnmz306ul7HDRZ_5QUfgrjtEpWjWBrJJQFN1Dk-yfCliUlJkKJ_E8-twl9D_HYQ7-A5VAnmhWZ3MLgBStnsLE6N0dc_KEFKH2WxM3viYmusIh6ey1_WWwTBtx1Q-tgyATT1o3ONqC04MQXs8jKxe4tJegh7Eg/s1096/Screenshot%202023-03-15%20at%2020.16.34.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="602" data-original-width="1096" height="352" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh8r014AMlpYj6lSFzaRDdumnmz306ul7HDRZ_5QUfgrjtEpWjWBrJJQFN1Dk-yfCliUlJkKJ_E8-twl9D_HYQ7-A5VAnmhWZ3MLgBStnsLE6N0dc_KEFKH2WxM3viYmusIh6ey1_WWwTBtx1Q-tgyATT1o3ONqC04MQXs8jKxe4tJegh7Eg/w640-h352/Screenshot%202023-03-15%20at%2020.16.34.png" width="640" /></a></div><br /><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;">anda perhatikan bagian yang saya highlight, disitu sudah terdapat harddisk (block device) block device baru sebesar 8GB yang pada catatan sebelumnya telah saya create. Berdasarkan gambar tersebut terlihat bahwa saya telah berhasil memetakannya (/dev/rbd1) ke dalam folder myrados. </span></div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;"><br /></span></div><div style="text-align: justify;"><span style="font-variant-ligatures: no-common-ligatures;">Mudah bukan mengakses rados block device? Sekian catatan kali ini apabila ada pertanyaan anda bisa menuliskannya di kolom komentar. Sampai jumpa lagi.</span></div><p></p></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-27817386082499270842023-04-02T20:26:00.001+07:002023-04-05T05:12:57.937+07:00Create Ceph Block Device di ceph cluster - 17<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT7kFWMLqpD5ERo0kIDdesVKGBpVKT4CVwGGQqk343LXHsHYyAoSwphs02Fr2PITQ73GYeZq62LvGLfj3ZodBv4oxgph0qKBwPcEYH--KuUfECbKO1yK2j7ZMnew-AmlL3UNjJ5OszAlhXGix27Nqlrv7PrBKbMsa5Q4Qwk56xbcaUmxvYUw/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT7kFWMLqpD5ERo0kIDdesVKGBpVKT4CVwGGQqk343LXHsHYyAoSwphs02Fr2PITQ73GYeZq62LvGLfj3ZodBv4oxgph0qKBwPcEYH--KuUfECbKO1yK2j7ZMnew-AmlL3UNjJ5OszAlhXGix27Nqlrv7PrBKbMsa5Q4Qwk56xbcaUmxvYUw/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Melalui catatan ini saya akan menuliskan tutorial bagaimana membuat ceph block device di dalam ceph cluster. Apa itu Ceph Block Device? Ceph Block Device adalah salah satu layanan yang disediakan ceph cluster selain Ceph File System. Perbedaan dari Ceph File System dengan Block Device seperti apa?</p><p style="text-align: justify;">Perbedaannya adalah ketika kita menggunakan layanan Ceph File System kita akan mengakses layanan ceph cluster dalam bentuk file system (atau folder) yang di mount ke dalam system kita, sedangkan block device lebih mirip harddisk/flashdisk (yang sudah disediakan ceph cluster) untuk di mount di dalam system kita sebagai client. Jadi kita nanti akan membuat block yang kapasitasnya sudah ditentukan terlebih dahulu (di dalam ceph cluster) yang kemudian dipetakan sebagai device ke dalam komputer client.</p><p style="text-align: justify;">Berbeda dengan Ceph File System, layanan Ceph Block Device tidak memerlukan Metadata Server seperti layanan Ceph File System. Begitu juga jumlah pool yang digunakan cukup satu saja minimal, tidak seperti ceph file system yang membutuhkan minimal 2 pool (1 pool sebagai data, dan satu pool sebagai metadata).</p><p>Ceph Block Device ini juga menggunakan antarmuka kernel module dan atau library rados block device (librbd) untuk mengaksesnya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBElh5CWT2iwoB1xY6y6yWtgFncRLCgkxm-ISv9VA2Ki_nmDi0uz0_jhfVv5frn5YcKkrDWwPRhbHd-zECKE8d5Y24grhkUyXcMsKukl0E3shEJwDIfNWQ2x3EBios9x9dO4ZJ11MGjo4C-7wpXCefors4X4Bn1sz_cFqfkrejCAv31G82GQ/s1102/Screenshot%202023-03-14%20at%2021.54.16.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="236" data-original-width="1102" height="69" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBElh5CWT2iwoB1xY6y6yWtgFncRLCgkxm-ISv9VA2Ki_nmDi0uz0_jhfVv5frn5YcKkrDWwPRhbHd-zECKE8d5Y24grhkUyXcMsKukl0E3shEJwDIfNWQ2x3EBios9x9dO4ZJ11MGjo4C-7wpXCefors4X4Bn1sz_cFqfkrejCAv31G82GQ/s320/Screenshot%202023-03-14%20at%2021.54.16.png" width="320" /></a></div><div><br /></div><div style="text-align: justify;">Langsung saja saya akan menjelaskan langkah-langkah bagaimana mengaktifkan layanan ceph block device. Pertama tentu saja saya akan menerangkan lingkungan pengembangan pada ceph cluster yang saya gunakan:</div><ul><li>server1 : mon (standby), mgr(standby), osd (active), mgr (standby)</li><li>server2 : mon (standby), mgr(active), osd (active), mgr (active)</li><li>server6 : mon (active), mgr(standby), osd (active), mgr (standby)</li></ul><div>untuk server yang saya gunakan untuk mengelola ceph cluster adalah server yang di dalamnya terinstall aplikasi cephadm yaitu server1. Jadi untuk membuat RBD saya harus login dulu ke server1, kemudian menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/734bced2e3b70a4d14b0f3ec6092f8c3.js"></script></div><div><br /></div><div>setelah itu saya akan masuk ke dalam shell cephadm di dalam server1 seperti yang terlihat di dalam gambar di bawah ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpu0sQA6akUYI333QCsJsfksih_xdw70zoKBw8b2vhp08frxO19t9YcSjN-eKldvCrszwfMMBNfkl8netbnKdKa6r4i6fgVWTlv0qA-OIS4zhOkNIl9rUqBl-Xn7nrnPfYgfsNX7DYpe5FBiIfUdB5mXNKczAxKzgaMYwfWXgMk7GAvWHCxA/s1048/Screenshot%202023-03-02%20113436.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="107" data-original-width="1048" height="66" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpu0sQA6akUYI333QCsJsfksih_xdw70zoKBw8b2vhp08frxO19t9YcSjN-eKldvCrszwfMMBNfkl8netbnKdKa6r4i6fgVWTlv0qA-OIS4zhOkNIl9rUqBl-Xn7nrnPfYgfsNX7DYpe5FBiIfUdB5mXNKczAxKzgaMYwfWXgMk7GAvWHCxA/w640-h66/Screenshot%202023-03-02%20113436.png" width="640" /></a></div><br /><div>langkah selanjutnya saya harus membuat pool yang nanti akan saya gunakan untuk menampung block device yang akan saya buat. Perintah untuk membuat pool saya cukup menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/064580e14c5a91d9f5108b158757af20.js"></script></div><div><br /></div><div>hasilnya adalah seperti ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQ4C0RwKJSbNNrD5aBROBPTQBwyH7Ikhh5_FfAvppnNEToPwMgYKs092kBJl9TnRoSY5YCbIk3Tf581eYmrz85ba7KoJfRJ-HgdAqBiPOhUYbbh2YUhuhD2PpzkEf4KT8B76_y0oGH2nnB_YyBho8pNMrG2ohc0SKmVWnw2l0iOmGjwu3TTg/s668/Screenshot%202023-03-15%20at%2019.24.10.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="92" data-original-width="668" height="55" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQ4C0RwKJSbNNrD5aBROBPTQBwyH7Ikhh5_FfAvppnNEToPwMgYKs092kBJl9TnRoSY5YCbIk3Tf581eYmrz85ba7KoJfRJ-HgdAqBiPOhUYbbh2YUhuhD2PpzkEf4KT8B76_y0oGH2nnB_YyBho8pNMrG2ohc0SKmVWnw2l0iOmGjwu3TTg/w400-h55/Screenshot%202023-03-15%20at%2019.24.10.png" width="400" /></a></div><div><br /></div>setelah berhasil membuat pool untuk rbd, langkah berikutnya adalah menginisialisasi block device ke pool yang kita buat tadi dengan perintah:<div><br /></div><div><script src="https://gist.github.com/mahardianto/926a5f2dd0fcaf38cc0f4e08e4c541d2.js"></script></div><div><br /></div><div>setelah itu saya akan buat block device dengan besaran 8GB bernama rbd-block-device dari rbdpool tersebut dengan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/1ad4b42b61b26459d2840fff614a381e.js"></script></div><div><br /></div><div>apakah saya bisa membuat lebih dari satu block device di dalam pool? tentu saja bisa, tinggal ulangi saja perintah diatas lalu sesuaikan kebutuhan besaran kapasitas yang mau dibuat dan ubah nama rbd-blok-device ke nama yang berbeda.</div><div><br /></div><div>Berikut ini hasil pembuatan block device bernama rbd-block-device di dalam pool rbdpool jika dilihat lewat ceph dashboard:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqhYEyiihAHY2F3POqC_cm2K_OkAUalWxwme977L7Q-27YHDOhyprYGThCom64m299hki9chfzA-gVt79Mgn0r6jJdP9iHDH1wXL3E6xlirkdS8CLazL5bF3eA725Fq0YBYM6OPwbz8XgG0TZ4BaEH1MS4ye04VsLcZfIr9LeXLxp7bK-2ow/s2876/Screenshot%202023-03-15%20at%2019.30.12.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="880" data-original-width="2876" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqhYEyiihAHY2F3POqC_cm2K_OkAUalWxwme977L7Q-27YHDOhyprYGThCom64m299hki9chfzA-gVt79Mgn0r6jJdP9iHDH1wXL3E6xlirkdS8CLazL5bF3eA725Fq0YBYM6OPwbz8XgG0TZ4BaEH1MS4ye04VsLcZfIr9LeXLxp7bK-2ow/w640-h196/Screenshot%202023-03-15%20at%2019.30.12.png" width="640" /></a></div><br /><div>jika saya buat block device baru sebesar 16GB dengan nama rbd-block-device-2 di dalam pool yang sama maka saya cukup menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/mahardianto/39ee721cea7c6f0a05bbdc662e01269e.js"></script></div><div><br /></div><div>berikut ini hasilnya jika dilihat lewat ceph-dashboard:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvkEF_sHwbog_YBoTMBoQjfba9jCLrImQM4K644d-CrlrXBhtvodzUllKZ-C9HGJV7eU9yI0Np514SPsd4fbVlQVz4Y8EFUmhlqzOYU5dJIB5LYCNrTBJQRElOXkboIEpnYVcrlbGOUnhpW65ivglQMmiRzBVDwHyiZTXbxFvYyLqJ_Tyyag/s2436/Screenshot%202023-03-15%20at%2019.33.47.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="656" data-original-width="2436" height="172" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvkEF_sHwbog_YBoTMBoQjfba9jCLrImQM4K644d-CrlrXBhtvodzUllKZ-C9HGJV7eU9yI0Np514SPsd4fbVlQVz4Y8EFUmhlqzOYU5dJIB5LYCNrTBJQRElOXkboIEpnYVcrlbGOUnhpW65ivglQMmiRzBVDwHyiZTXbxFvYyLqJ_Tyyag/w640-h172/Screenshot%202023-03-15%20at%2019.33.47.png" width="640" /></a></div><br /><div>Bagaimana? Mudah bukan mengaktifkan layanan rados block device, untuk catatan berikutnya akan saya tuliskan bagaimana cara mengakses layanan rados block device dari komputer klien, sampai jumpa lagi ya, apabila ada pertanyaan anda bisa menuliskannya di kolom komentar.<br /><div><br /></div></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com3tag:blogger.com,1999:blog-29090812.post-70492407144539955202023-03-16T08:00:00.123+07:002023-03-30T12:23:31.280+07:00Upgrade Ceph Cluster dari Octopus ke Pacific menggunakan cephadm - 16<p style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguDEJP4LrcYL5jFYuqDO14yJn5wvBg5gv0WMCw9BBQs3UrJcARgQzwXLKvq8vGKYeokWRRPsbh67GtfKOWFXpShasOeDFbLFdbsHynTwUIWL0GkCx2jaTbuR9NHJeW_QqY3qroKsdzp5AhISHVPaHFyTSAbucEF322zOz2JsnV19PnwwNBUg/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguDEJP4LrcYL5jFYuqDO14yJn5wvBg5gv0WMCw9BBQs3UrJcARgQzwXLKvq8vGKYeokWRRPsbh67GtfKOWFXpShasOeDFbLFdbsHynTwUIWL0GkCx2jaTbuR9NHJeW_QqY3qroKsdzp5AhISHVPaHFyTSAbucEF322zOz2JsnV19PnwwNBUg/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></p><p style="text-align: left;">Kali ini saya akan menuliskan catatan tentang bagaimana saya melakukan upgrade ceph cluster saya dari versi Octopus ke versi Pacific. Kondisi lingkungan pengembangan ceph cluster existing saat ini yang saya gunakan terdiri dari 3 komputer yaitu:</p><p style="text-align: left;"></p><ul style="text-align: left;"><li>server1: mon (active), mgr (standby), osd (active), mds (active)</li><li>server2: mon (standby), mgr (active), osd (active), mds (standby)</li><li>server6: mon (standby), mgr (standby), osd (active)</li></ul><p></p><p style="text-align: left;">ketiganya menggunakan sistem operasi Ubuntu Server 20.04 LTS. Sedangkan untuk ceph clusternya saya menggunakan versi Octopus. Aplikasi Ceph ini sebenarnya memiliki beberapa versi, jika saya menilik dokumentasinya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMI0XgJZ7BC5PHyostPgtLIEMOZBRR8ODesr-cpG8vyKf9_ErbtfXkSXBMAFKP9ZnrtwxvHVpPWtgVrwYQCOeVmRzSBl5y2ejfBMgUsM7xvKBInxjMjFu9kCU8B4HMEegXVQYG2Fr5stgj8Vu933WfuwO028qVGV1u4F3f8U07iFv1T70RTQ/s898/Screenshot%202023-03-07%20110512.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="517" data-original-width="898" height="230" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMI0XgJZ7BC5PHyostPgtLIEMOZBRR8ODesr-cpG8vyKf9_ErbtfXkSXBMAFKP9ZnrtwxvHVpPWtgVrwYQCOeVmRzSBl5y2ejfBMgUsM7xvKBInxjMjFu9kCU8B4HMEegXVQYG2Fr5stgj8Vu933WfuwO028qVGV1u4F3f8U07iFv1T70RTQ/w400-h230/Screenshot%202023-03-07%20110512.png" width="400" /></a></div><br /><p style="text-align: left;">jika dilihat rentang hidupnya, ceph versi Octopus hanya disupport (maintain oleh pengembang terkait bug, hole dll) hingga 09 Agustus 2022, itu artinya jika melihat tanggal dibuatnya tulisan ini, ceph versi Octopus sudah tidak dipelihara (maintain) oleh pengembangnya. Berikut ini timeline aplikasi ceph berdasarkan versinya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioZQTkE1-IAIP4yGkCZJ5HSUg9ZQlE0pc36WERmHmsqC0xOOR5IWI9HWS1olztx4gwOmbW3_eT4-GFt-9quKAOOR4mNAzuD1Z7rhsBplQLPBdcayFBPTxwcjVccNhVqaCpzXzOzjf8yyEhshGAleruf8XYBGnt3RChymA_TQD1Lc_ZJscM7w/s868/Screenshot%202023-03-07%20110530.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="525" data-original-width="868" height="388" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioZQTkE1-IAIP4yGkCZJ5HSUg9ZQlE0pc36WERmHmsqC0xOOR5IWI9HWS1olztx4gwOmbW3_eT4-GFt-9quKAOOR4mNAzuD1Z7rhsBplQLPBdcayFBPTxwcjVccNhVqaCpzXzOzjf8yyEhshGAleruf8XYBGnt3RChymA_TQD1Lc_ZJscM7w/w640-h388/Screenshot%202023-03-07%20110530.png" width="640" /></a></div><br /><p style="text-align: justify;">untuk versi diatas Octopus adalah versi Pacific dan terakhir (ketika catatan ini ditulis) adalah versi Quincy. Untuk melakukan upgrade harus dilakukan versi per versi jadi tidak bisa langsung upgrade dari versi Octopus ke Quincy, tetapi harus melewati versi Pacific terlebih dahulu. Rencananya saya akan mengupgrade ke versi Pacific dimana usia maintain nya hingga tgl 1 Juni 2023 ini.</p><p style="text-align: left;">Saya melakukan upgrade ceph ini menggunakan cephadm yang berlokasi di server1. Untuk memulainya, saya masuk menggunakan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/734bced2e3b70a4d14b0f3ec6092f8c3.js"></script></p><p style="text-align: left;">jika berhasil masuk ke dalam shell, anda akan mendapati keluaran seperti ini:</p><p style="text-align: left;">sebelum saya memulai upgrade, saya akan menjalankan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/e3d4791e2c76fd6551dba6ab8f3bcbf1.js"></script></p><p style="text-align: left;">hasilnya seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVUyJ6Uq3W6KkWeEz3bFM23fK4CZqloU8ZcE0zWEHGpOA8Ub9sONiJdaLHjIjc1YIO1KIByIVYAN23gM784yQNffAva4gGGiGh325PeAnMsTgSOTLmjZ2Wz5D8pnnfbeYEOkbQB9BPFGunZ-7IBFnFXdp9LHkIuQ_GMPfgftGUk1mPsUzmvQ/s750/Screenshot%202023-03-07%20110353.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="63" data-original-width="750" height="54" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVUyJ6Uq3W6KkWeEz3bFM23fK4CZqloU8ZcE0zWEHGpOA8Ub9sONiJdaLHjIjc1YIO1KIByIVYAN23gM784yQNffAva4gGGiGh325PeAnMsTgSOTLmjZ2Wz5D8pnnfbeYEOkbQB9BPFGunZ-7IBFnFXdp9LHkIuQ_GMPfgftGUk1mPsUzmvQ/w640-h54/Screenshot%202023-03-07%20110353.png" width="640" /></a></div><br /><p style="text-align: left;">saya akan memastikan versi ceph yang saya gunakan, setelah itu untuk memulai inisiasi upgrade ke versi 16.2.11 saya menjalankan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/3e9b13b4dd91410ff692bc361761d2bb.js"></script></p><p style="text-align: left;">setelah itu untuk memulai proses upgrade saya menjalankan perintah ini:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/07b0d14a36aca6406dfffbe3483f4db0.js"></script></p><p style="text-align: left;">hasilnya adalah sebagai berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUA6wGXDF-1eMzL7W3yq3B82itT14swbHH4XKult12cyPBiZWLUWmTib3WTNixoueUonwl5nr6W1EQCsTqoFXlDgBWBniUSzCC-N9hpkRGHBy2o5HXC5UZOmYK3bU3quRmuqp47wMajiGFQnKZYMtQvKLJXU7UCmzaDi7inSh_aPyRV2MA7A/s690/Screenshot%202023-03-07%20110730.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="39" data-original-width="690" height="36" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUA6wGXDF-1eMzL7W3yq3B82itT14swbHH4XKult12cyPBiZWLUWmTib3WTNixoueUonwl5nr6W1EQCsTqoFXlDgBWBniUSzCC-N9hpkRGHBy2o5HXC5UZOmYK3bU3quRmuqp47wMajiGFQnKZYMtQvKLJXU7UCmzaDi7inSh_aPyRV2MA7A/w640-h36/Screenshot%202023-03-07%20110730.png" width="640" /></a></div><p style="text-align: left;">untuk melihat progress upgrade saya membuka shell cephadm di jendela yang baru lalu menjalankan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/b050e44261f61eec690fb59381f468a8.js"></script></p><p style="text-align: left;">hasilnya adalah sebagai berikut:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9Oz-cd8nukDmlvcrYrDczB-5sBjplxFEjLQV4e_ZBSfyDdUNtwAFKqlfZx0bpafgxcqfKLmrEAg683kIafwTyq2HpdXsJ5WICKh_RF1KnPlP93DMKjDsuyFNjp2xpI4xECCOgvAHC4Z60PnL9i4jgYjVBfiQ4jwARHwjZqTwRspnInrUSrQ/s770/Screenshot%202023-03-07%20110838.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="386" data-original-width="770" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9Oz-cd8nukDmlvcrYrDczB-5sBjplxFEjLQV4e_ZBSfyDdUNtwAFKqlfZx0bpafgxcqfKLmrEAg683kIafwTyq2HpdXsJ5WICKh_RF1KnPlP93DMKjDsuyFNjp2xpI4xECCOgvAHC4Z60PnL9i4jgYjVBfiQ4jwARHwjZqTwRspnInrUSrQ/w640-h320/Screenshot%202023-03-07%20110838.png" width="640" /></a></div><br /><p style="text-align: left;">tunggu hingga proses selesai, lama cepatnya tergantung koneksi internet yang dimiliki. Setelah progress upgrade selesai, maka ketika saya menjalankan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/e3d4791e2c76fd6551dba6ab8f3bcbf1.js"></script></p><p style="text-align: left;">dan perintah:</p><p style="text-align: left;"><script src="https://gist.github.com/mahardianto/32afd9ccdcc4f9e6348bd46fc747e2f2.js"></script></p><p style="text-align: left;">keluarannya seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFK066ZkK5b4GPxyAKXth5l1hrbFP7a3HVjkIAmo_W0YeGAWzxnAkMUcnYPSULyEHZ_CtgXIa9hkvO4HX3pE__vpRKqFkLf1YfknF89vkOyX3_rEEQFANwt0Pk1q9vkOhu2eOcRB4-f3Hg8dy5yN2iZqj_J5hQWSymxuNLQl4FFktRDwVbxg/s774/Screenshot%202023-03-07%20111855.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="370" data-original-width="774" height="306" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFK066ZkK5b4GPxyAKXth5l1hrbFP7a3HVjkIAmo_W0YeGAWzxnAkMUcnYPSULyEHZ_CtgXIa9hkvO4HX3pE__vpRKqFkLf1YfknF89vkOyX3_rEEQFANwt0Pk1q9vkOhu2eOcRB4-f3Hg8dy5yN2iZqj_J5hQWSymxuNLQl4FFktRDwVbxg/w640-h306/Screenshot%202023-03-07%20111855.png" width="640" /></a></div><br /><p style="text-align: left;">anda bisa lihat versi ceph yang saya gunakan sudah berubah dari octopus ke pacific. Hal ini juga berlaku di ceph dashboard, berikut ini tampilannya:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCGEODgDItYkt-yLpnHWJ1z_pPvyb8UYRFfVj3ThtSrbOpVbRzeuUOAOYTbNTj1QDb69W5SQyCOwCRvjnk1KNoAHuI0UTKhqqYM5LIDyasJyPUvPvmOKcEfL444YDrusystkMdsqtxAMDABLMXCFR0NKAaOTFBM-wh_Nzp61MZpNN4OAtefQ/s845/Screenshot%202023-03-07%20112133.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="528" data-original-width="845" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCGEODgDItYkt-yLpnHWJ1z_pPvyb8UYRFfVj3ThtSrbOpVbRzeuUOAOYTbNTj1QDb69W5SQyCOwCRvjnk1KNoAHuI0UTKhqqYM5LIDyasJyPUvPvmOKcEfL444YDrusystkMdsqtxAMDABLMXCFR0NKAaOTFBM-wh_Nzp61MZpNN4OAtefQ/w640-h400/Screenshot%202023-03-07%20112133.png" width="640" /></a></div><br /><div>sangat mudah bukan melakukan upgrade ceph cluster menggunakan cephadm, sekian catatan ini, jika ada pertanyaan silahkan tulis di kolom komentar, sampai jumpa lagi.</div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-53662888289127912312023-03-15T11:46:00.001+07:002023-03-29T11:20:43.803+07:00Auto Mount layanan Ceph File System di Ubuntu Server - 15<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguDEJP4LrcYL5jFYuqDO14yJn5wvBg5gv0WMCw9BBQs3UrJcARgQzwXLKvq8vGKYeokWRRPsbh67GtfKOWFXpShasOeDFbLFdbsHynTwUIWL0GkCx2jaTbuR9NHJeW_QqY3qroKsdzp5AhISHVPaHFyTSAbucEF322zOz2JsnV19PnwwNBUg/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguDEJP4LrcYL5jFYuqDO14yJn5wvBg5gv0WMCw9BBQs3UrJcARgQzwXLKvq8vGKYeokWRRPsbh67GtfKOWFXpShasOeDFbLFdbsHynTwUIWL0GkCx2jaTbuR9NHJeW_QqY3qroKsdzp5AhISHVPaHFyTSAbucEF322zOz2JsnV19PnwwNBUg/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Meneruskan catatan sebelumnya tentang bagaimana acara mengakses layanan ceph file system di Ubuntu Server. Pada catatan ini saya akan membahas bagaimana mengkonfigurasi Ubuntu Server agar secara otomatis bisa melakukan auto mount layanan ceph file system. Jika pada catatan sebelumnya saya mengakses ceph file system tak ubahnya seperti saya mengakses flash disk menggunakan mount, kali ini saya memperlakukan layanan ceph file system seperti partisi/harddisk.</p><p style="text-align: justify;">Perbedaan menggunakan mount adalah ketika komputer yang saya gunakan untuk mengakses layanan ceph file system mengalami restart, maka setelah komputer klien menyala lagi, secara manual pengguna harus melakukan mounting lagi dari layanan ceph file system tersebut. Jika tidak melakukan mounting maka layanan ceph file system tidak bisa diakses. Hal ini yang mau ubah di catatan ini, yaitu pengguna tidak perlu melakukan mounting layanan ceph file system secara manual di komputer klien setelah komputer klien melakukan restart.</p><p style="text-align: justify;">Komputer klien yang saya gunakan adalah Ubuntu Server 20.04, alamat IP komputer klien adalah 192.168.0.250. Sedangkan ceph cluster yang saya gunakan terdiri dari 3 server yang terdiri dari:</p><p></p><ul style="text-align: left;"><li>server1: 192.168.0.254/24</li><li>server2: 192.168.0.252/24</li><li>server6: 192.168.0.249/24</li></ul><p></p><p>Layanan ceph file system dapat diakses melalui port 6789 di ketiga server tersebut. Untuk dapat mengakses layanan ceph file system ada beberapa syarat yang harus dimiliki yaitu:</p><p></p><ul style="text-align: left;"><li>user name ceph file system</li><li>key client ceph file system, dan</li><li>aplikasi tambahan pada komputer klien</li></ul><p></p><p>user name ceph file system yang saya gunakan adalah admin, sedangkan key client dapat ditemukan di file <b>/etc/ceph/ceph.client.admin.keyring</b> yang berlokasi di server1. Berikut ini keyring yang saya gunakan </p><p>
<script src="https://gist.github.com/himawan-mahardianto/e92d3bc374658ac2db73ca6fb64f1058.js"></script>
</p><p>keyring ini saya simpan di dalam file ceph.secret di dalam server5. Perlu anda ketahui server5 adalah komputer klien yang menggunakan Ubuntu Server 20.04 yang beralamat IP 192.168.0.250. </p><p><br /></p><p><b>Konfigurasi server5</b></p><p>Sebelum komputer klien dapat memanfaatkan layanan Ceph File System saya perlu install beberapa aplikasi pendukung. Untuk melakukan instalasi, saya menjalankan perintah: </p><p><script src="https://gist.github.com/himawan-mahardianto/e8ae6440c365c9f445bd8befe4676f27.js"></script></p><p>selesai instalasi, saya membuat folder baru dengan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/b271c7274ee867a50a40765bff1962bf.js"></script></p><p>perintah di atas akan membuat folder baru dengan nama data-ceph yang berlokasi di /. Langkah selanjutnya adalah melakukan konfigurasi file fstab dengan menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/92a6a18700498f3a424676a28b3efc25.js"></script></p><p>setelah terbuka saya akan menambahkan konfigurasi di bawah ini:</p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><script src="https://gist.github.com/himawan-mahardianto/bb0bb3b3725a14b6c4872355e77928a8.js"></script></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;">simpan konfigurasi di atas, sebelumnya saya akan menjalankan perintah:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/himawan-mahardianto/a47851d2c242ed2089c8431ea5153409.js"></script></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;">hasil dari perintah di atas adalah sebagai berikut:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"></span></p><div class="separator" style="clear: both; text-align: center;"><span style="font-family: inherit;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbRvX3wwpIE7A4J2J0OuD_hr5wQlwOBfQ5qCe9qdYQ9MkFrqfclMX3EZlISVef3ArBiV60MQmjAhlbBhtrKlw2KTNzMix4VCU3RQjrYcYeqBrq5KXftKNJkYkZ8he-7OWjf0wl3w8-Q5VRlXURLlkq2O875gC-a3oVq6vKW3qBq6foAdiImg/s531/Screenshot%202023-03-08%20113247.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="286" data-original-width="531" height="172" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbRvX3wwpIE7A4J2J0OuD_hr5wQlwOBfQ5qCe9qdYQ9MkFrqfclMX3EZlISVef3ArBiV60MQmjAhlbBhtrKlw2KTNzMix4VCU3RQjrYcYeqBrq5KXftKNJkYkZ8he-7OWjf0wl3w8-Q5VRlXURLlkq2O875gC-a3oVq6vKW3qBq6foAdiImg/s320/Screenshot%202023-03-08%20113247.png" width="320" /></a></span></div><span style="font-family: inherit;"><span style="font-family: inherit; font-variant-ligatures: no-common-ligatures; text-align: justify;"><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span style="font-family: inherit; font-variant-ligatures: no-common-ligatures; text-align: justify;"><br /></span></span></p>dari sana anda dapat melihat bahwa folder /data-ceph belum digunakan sebagai mounting point untuk layanan ceph file system. Untuk mencoba apakah layanan ceph cluster berhasil dimounting otomatis maka saya akan coba untuk melakukan reboot komputer klien (server5). Setelah reboot saya kembali menjalankan perintah:</span></span><p></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><script src="https://gist.github.com/himawan-mahardianto/a47851d2c242ed2089c8431ea5153409.js"></script></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><br /></span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"><span class="s4" style="font-variant-ligatures: no-common-ligatures;">berikut ini hasilnya:</span></span></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit;"></span></p><div class="separator" style="clear: both; text-align: center;"><span style="font-family: inherit;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyNCidAD5LqRL_NIEyWbXA2QcZOeqozWiA0hXPr3IzI8QAQkObL4FVbzeDZaaJ3NMiCUyT4H6FTkFwSfZ3l2vIBnQBrE2k0xBBTRdomij8L9l-BjK3z7-uIJhWNfdTJuh64zr_cHElrYtFYzabv1GJucwzbYZc0I6SwvUzLtvxhwiP-QD4ug/s644/Screenshot%202023-03-08%20113330.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="307" data-original-width="644" height="153" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyNCidAD5LqRL_NIEyWbXA2QcZOeqozWiA0hXPr3IzI8QAQkObL4FVbzeDZaaJ3NMiCUyT4H6FTkFwSfZ3l2vIBnQBrE2k0xBBTRdomij8L9l-BjK3z7-uIJhWNfdTJuh64zr_cHElrYtFYzabv1GJucwzbYZc0I6SwvUzLtvxhwiP-QD4ug/s320/Screenshot%202023-03-08%20113330.png" width="320" /></a></span></div><span style="font-family: inherit;"><br /><span class="s4" style="font-variant-ligatures: no-common-ligatures;"><br /></span></span><p></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="font-family: inherit; font-variant-ligatures: no-common-ligatures; text-align: justify;">perhatikan bagian yang saya highlight bahwa akhirnya layana ceph file system sudah secara otomatis terkoneksi (mount) di komputer klien, jadi saya tidak perlu melakukan mounting secara manual setiap kali komputer klien mengalami proses restart. Sekian catatan kali ini apabila ada yang ingin ditanyakan anda bisa menulisnya di kolom komentar. Sampai jumpa lagi di catatn berikutnya.</span></p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-11703056081752813572023-03-14T08:00:00.003+07:002023-03-27T20:49:31.033+07:00Howto access layanan Ceph File System di Ubuntu Server - 14<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMdQczL-Z-WChpNUMw7nKDeZuuvJ3fyxVABsih1fR7kDxNPhIV01ULqy_PRPC64osbMBil31YPQKp249DS6D6OQoYLKfpDlRUWvAwWjt5NtYlg71T_pBgL-xfObEfRExRP0OgsYNxoXmg7vZRaQb_9Hqwl2oT6lYn96Jf1B-k7rQHEEeTtnw/s691/Screenshot%202023-02-27%20120113.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMdQczL-Z-WChpNUMw7nKDeZuuvJ3fyxVABsih1fR7kDxNPhIV01ULqy_PRPC64osbMBil31YPQKp249DS6D6OQoYLKfpDlRUWvAwWjt5NtYlg71T_pBgL-xfObEfRExRP0OgsYNxoXmg7vZRaQb_9Hqwl2oT6lYn96Jf1B-k7rQHEEeTtnw/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Catatan ini sebenarnya sama dengan tulisan yang dulu pernah saya buat, jadi saya hanya mengulangi saja tulisan cara mengakses layanan Ceph File System di Ubuntu. Kondisi ceph cluster yang saya gunakan terdiri dari:</p><p></p><ul style="text-align: left;"><li>server1: mon (active), mgr (standby), osd (active)</li><li>server2: mon (standby), mgr (active), osd (active)</li><li>server6: mon (standby), mgr (standby), osd (active)</li></ul><p></p><p>ketiganya menggunakan Ubuntu Server versi 20.04 dan ceph cluster dibangun dari aplikasi ceph versi Octopus. Untuk alamat IP nya:</p><p></p><ul style="text-align: left;"><li>server1: 192.168.0.254</li><li>server2: 192.168.0.252</li><li>server6: 192.168.0.249</li></ul><p></p><p>Lalu rencananya layanan ceph file system ini akan saya akses lewat komputer client yang berada di luar anggota ceph cluster, katakanlah lewat server4. Berikut ini detail data server4:</p><p></p><ul style="text-align: left;"><li>server4: Sistem operasi Ubuntu Server 20.04</li><li>Alamat IP: 192.168.0.251</li></ul><p></p><p><b><br /></b></p><p><b>Konfigurasi di Server1</b></p><p>sebelum saya dapat mengakses layanan tersebut, saya perlu login ke dalam server1 dahulu, kemudian saya akan melihat isi file konfigurasi ceph.client.admin.keyring dengan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/dd2bc5d7988a62b388cb5fd3943a7fb4.js"></script></p><p>hasilnya adalah sebagai berikut:</p><p><script src="https://gist.github.com/himawan-mahardianto/ee7c3ec58a7e2696c327f94d6d1858a4.js"></script></p><p>saya salin data key tersebut untuk kemudian akan saya gunakan di dalam client pada server4 . Key tersebut adalah password untuk mengakses layanan ceph client menggunakan user admin.</p><p><br /></p><p><b>Konfigurasi di server4</b></p><p>Sekarang saya akan masuk atau login ke dalam server4, lalu sebelum saya dapat menggunakan layanan ceph file system saya harus menginstall aplikasi pendukungnya dengan menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/a4685ac781fe6c256f6d0ba461a0801e.js"></script></p><p>setelah berhasil install saya akan membuat sebuah file yang berisi password untuk mengakses layanan ceph file system dengan menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/93c5a22444ecaac417808359ee677b7e.js"></script></p><p>kemudian saya masukkan key di dalam file ceph.secret tersebut:</p><p><script src="https://gist.github.com/himawan-mahardianto/e92d3bc374658ac2db73ca6fb64f1058.js"></script></p><p>simpan. Kemudian langkah selanjutnya adalah membuat folder untuk menaruh akses layanan ceph file system tersebut dengan menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/6ba4ec9536d76d7ddfc930563a307759.js"></script></p><p>selesai membuat folder saya akan menjalankan perintah berikut utnuk melihat kondisi system di server4:</p><p><script src="https://gist.github.com/himawan-mahardianto/d6b56adb249604a068c543c4efb1d61e.js"></script></p><p>hasilnya adalah sebagai berikut:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9zW9WcTjCJKDaEbRmO5KSPbEmDUMMU0y3uEh7aenWXGppSW_lLTOn38YzYzMHY3bD1IdrEVfVrvdcX1TVGKwf8G6N98-BeY6MwccSJ_mwb1gxiM5Z8vD6a2a_1XGXqOFk_QHqE6bzs9K1CCFQ7cwLjMwsnYUeTH9elbVQrWUQld8WU_mVKg/s629/Screenshot%202023-03-07%20102006.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="348" data-original-width="629" height="177" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9zW9WcTjCJKDaEbRmO5KSPbEmDUMMU0y3uEh7aenWXGppSW_lLTOn38YzYzMHY3bD1IdrEVfVrvdcX1TVGKwf8G6N98-BeY6MwccSJ_mwb1gxiM5Z8vD6a2a_1XGXqOFk_QHqE6bzs9K1CCFQ7cwLjMwsnYUeTH9elbVQrWUQld8WU_mVKg/s320/Screenshot%202023-03-07%20102006.png" width="320" /></a></div><div><br /></div>kemudian untuk mengakses layanan ceph file system di ceph cluster saya menjalankan perintah:<div><br /></div><div><script src="https://gist.github.com/himawan-mahardianto/fc67e73e9bb7b62e518a01dcf6bbdac6.js"></script><p>jika saya kembali menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/d6b56adb249604a068c543c4efb1d61e.js"></script></p><p>maka hasilnya adalah sebagai berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYzjF_rXspTBqWZInuXFGZtqzSzCA0IASZbOnNhRWi4CdyQ9ZHFImJQW19rH2aHH5QWP8jzDHnMnsXBDHGRiDlm5T1rKqqXLl9ilPLwg81BK5r_V_tQLUX4hF4sJeSchTwKjq_kAAb_2mKMlvnN3miNP_pTCLQ8t-_x6u06MiNGpzAS_hX8g/s678/Screenshot%202023-03-07%20102746.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="383" data-original-width="678" height="181" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYzjF_rXspTBqWZInuXFGZtqzSzCA0IASZbOnNhRWi4CdyQ9ZHFImJQW19rH2aHH5QWP8jzDHnMnsXBDHGRiDlm5T1rKqqXLl9ilPLwg81BK5r_V_tQLUX4hF4sJeSchTwKjq_kAAb_2mKMlvnN3miNP_pTCLQ8t-_x6u06MiNGpzAS_hX8g/s320/Screenshot%202023-03-07%20102746.png" width="320" /></a></div><div><br /></div><div style="text-align: justify;">perhatikan bagian yang saya highlight, disitu muncul folder /data-ceph yang di mounting dari salah satu server ceph cluster dengan kapasitas 9,8TB. Itu berarti layanan ceph file system sudah bisa diakses di server4. Setelah itu, saya menjalankan perintah:</div></div><div><br /></div><div><script src="https://gist.github.com/himawan-mahardianto/deea73be47a57cfe5242896ce80ab2cb.js"></script></div><div><br /></div><div>perintah di atas digunakan untuk membuka hak akses dan permisi dari folder /data-ceph agar bisa ditulisi oleh seluruh user di server4 seperti kita menulis data ke dalam folder yang lainnya..</div><div><br /></div><div>Jika dari sisi ceph cluster saya ingin mengecek siapa saja klien yang terkoneksi di layanan ceph file system saya bisa melihatnya di ceph dashboard. Berikut ini tampilannya:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUvelehOp63887OWTAgsVhPyIgjZmv00YSB381MzgYS3ZST7CyAS6ViU9EcWRdFJUlpPARMD17Z4wJQzVKQ-_GuN-hW35daJnutei_sZVg2miWDguGhapk9PJQ-t4h_B1jow0L8vpIYWT9iFmGh9NsuSR6icbpamC5OngY3Bl2SwuVWsMkVw/s1909/Screenshot%202023-03-07%20103546.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="526" data-original-width="1909" height="176" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUvelehOp63887OWTAgsVhPyIgjZmv00YSB381MzgYS3ZST7CyAS6ViU9EcWRdFJUlpPARMD17Z4wJQzVKQ-_GuN-hW35daJnutei_sZVg2miWDguGhapk9PJQ-t4h_B1jow0L8vpIYWT9iFmGh9NsuSR6icbpamC5OngY3Bl2SwuVWsMkVw/w640-h176/Screenshot%202023-03-07%20103546.png" width="640" /></a></div><br /><div>dari situ terlihat server4 adalah client yang terkoneksi di dalam ceph cluster. Lalu bagaimana saya melepas akses ceph cluster? saya cukup menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/himawan-mahardianto/1bb2a82fc1278a5b2c799d7aeb4683f0.js"></script></div><div><br /></div><div>dengan perintah di atas, maka server4 sudah tidak mengakses layanan ceph file system dari ceph cluster, untuk membuktikannya saya kembali menjalankan perintah:</div><div><br /></div><div><script src="https://gist.github.com/himawan-mahardianto/d6b56adb249604a068c543c4efb1d61e.js"></script></div><div><br /></div><div>dan ini hasilnya:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9zW9WcTjCJKDaEbRmO5KSPbEmDUMMU0y3uEh7aenWXGppSW_lLTOn38YzYzMHY3bD1IdrEVfVrvdcX1TVGKwf8G6N98-BeY6MwccSJ_mwb1gxiM5Z8vD6a2a_1XGXqOFk_QHqE6bzs9K1CCFQ7cwLjMwsnYUeTH9elbVQrWUQld8WU_mVKg/s629/Screenshot%202023-03-07%20102006.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="348" data-original-width="629" height="177" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9zW9WcTjCJKDaEbRmO5KSPbEmDUMMU0y3uEh7aenWXGppSW_lLTOn38YzYzMHY3bD1IdrEVfVrvdcX1TVGKwf8G6N98-BeY6MwccSJ_mwb1gxiM5Z8vD6a2a_1XGXqOFk_QHqE6bzs9K1CCFQ7cwLjMwsnYUeTH9elbVQrWUQld8WU_mVKg/s320/Screenshot%202023-03-07%20102006.png" width="320" /></a></div><div><br /></div>anda sudah tidak melihat lagi folder/data-ceph yang terpetakan sebagai bagian dari ceph file system. Jika saya lihat lagi di ceph dashboard:<div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIyvRPsxMqDa2a4q4kAIRZFo10Ajh1nIy1UQw29er1M9HTQcJ16pG8phppDN2HpoXYmkyjUr1qWpcVoOkPGOHyLmAHTnw0-Egq891RhU-wJRSbCuWrK5t9JP-mLIXvDtW-Hn2szNrLew365l-bSfJHLS-0E7iYvvQveY1XYfI-D2rkFVqPQA/s1916/Screenshot%202023-03-07%20104807.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="521" data-original-width="1916" height="174" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIyvRPsxMqDa2a4q4kAIRZFo10Ajh1nIy1UQw29er1M9HTQcJ16pG8phppDN2HpoXYmkyjUr1qWpcVoOkPGOHyLmAHTnw0-Egq891RhU-wJRSbCuWrK5t9JP-mLIXvDtW-Hn2szNrLew365l-bSfJHLS-0E7iYvvQveY1XYfI-D2rkFVqPQA/w640-h174/Screenshot%202023-03-07%20104807.png" width="640" /></a></div><br /><div><div style="text-align: justify;">Sudah tidak ada client yang terkoneksi di dalam ceph dashboard. Sekian catatan cara akses layanan ceph file system di ceph cluster, apabila ada pertanyaan silahkan tulis di kolom komentar. Sampai jumpa lagi di catatan selanjutnya.</div><div><p><br /></p></div></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-4288188990738829052023-03-08T11:46:00.017+07:002023-03-25T17:41:00.237+07:00Troubleshoot Ceph Cluster: 1 hosts fail cephadm check - 13<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAGEBA6ye6endpPFhtpxQtphF6q28M-3L3h3G9kVi-2f5CJnxbFeY7kN1iiMwtB7cSv3FBawq2Q_bh5uAIMMCx85CjozNfuPaNZwss0w80cko9ePb1q48EgORoa9UD-__tsMwQbvuzqPbZ7am4qw6wwb8awO0j9pobeGZHzTBnI-N7unYgGw/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAGEBA6ye6endpPFhtpxQtphF6q28M-3L3h3G9kVi-2f5CJnxbFeY7kN1iiMwtB7cSv3FBawq2Q_bh5uAIMMCx85CjozNfuPaNZwss0w80cko9ePb1q48EgORoa9UD-__tsMwQbvuzqPbZ7am4qw6wwb8awO0j9pobeGZHzTBnI-N7unYgGw/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Masih berkutat di ceph cluster, kali ini saya menemukan sebuah pesan error yang membuat kondisi ceph cluster saya berstatus HEALTH_WARN. Berdasarkan informasi yang tertampil disitu saya di mengetahui bahwa ada 1 host yang fail ketika saya cek lewat perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/a023a53810665b0ad7d03ecd9038f654.js"></script></p><p>hasilnya seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY7RimsM4n6bxLVzrR0eIhFCWavUonKUfr1_d_Bn7ofXJudvN6VKcnWgYvhajfaKnDl4XIoLNhoBitUn4eaP6L7sl1O3YlQ_AClplQkHGcZSgfQaW2De_HnsydBWXAU1jPCUCtqJmR5MaFT0vJuGsyXGWYMhSjObYCWvayIhyASRWgONuIGw/s771/Screenshot%202023-03-06%20122210.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="333" data-original-width="771" height="138" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY7RimsM4n6bxLVzrR0eIhFCWavUonKUfr1_d_Bn7ofXJudvN6VKcnWgYvhajfaKnDl4XIoLNhoBitUn4eaP6L7sl1O3YlQ_AClplQkHGcZSgfQaW2De_HnsydBWXAU1jPCUCtqJmR5MaFT0vJuGsyXGWYMhSjObYCWvayIhyASRWgONuIGw/s320/Screenshot%202023-03-06%20122210.png" width="320" /></a></div><br /><p>jika melihat pada baris services yang menyala, disitu terdiri dari:</p><p></p><ul style="text-align: left;"><li>mon: ada 3 server yang menyala (1 active, 2 standby)</li><li>mgr: ada 3 server yang menyala (1 active, 2 standby)</li><li>mds: ada 2 server menyala (1 active, 1 standby)</li><li>osd: ada 3 server menyala (3 active)</li></ul><p></p><p>menurut saya semua layanan menyala dengan baik, lalu saya coba check lewat cephadm shell yang saya install di server1, setelah berhasil masuk ke dalam cephadm shell kemudian saya menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/5799db37c2a217f328b00ee3c9b39a03.js"></script></p><p>hasilnya adalah sebagai berikut:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzYJAl3T8eqtZ0R2d9kwLnAyoTgPD7CdLtWScVUHnpftnzWByWWjvpPR-2D0E6n7THbLn-W2l42r9_ylEyCW_tinEjzntEWTLrZ8qmcC14kkZehW29WJzxRBrxN9VuYUIXh2ff8TB2KVPNTvyODssADmcLLfmuWSsCqo966YcgYoLrMbDiWA/s377/Screenshot%202023-03-06%20133954.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="100" data-original-width="377" height="85" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzYJAl3T8eqtZ0R2d9kwLnAyoTgPD7CdLtWScVUHnpftnzWByWWjvpPR-2D0E6n7THbLn-W2l42r9_ylEyCW_tinEjzntEWTLrZ8qmcC14kkZehW29WJzxRBrxN9VuYUIXh2ff8TB2KVPNTvyODssADmcLLfmuWSsCqo966YcgYoLrMbDiWA/s320/Screenshot%202023-03-06%20133954.png" width="320" /></a></div><div><br /></div>ternyata server1 statusnya offline, hal ini dikarenakan server1 sebelumnya sempat saya restart jadi oleh ceph cluster di set sebagai offline, untuk mengatasi hal tersebut saya cukup menjalankan perintah:<div><br /></div><div><script src="https://gist.github.com/himawan-mahardianto/b8378983df7a053df4e7e307fb9185e6.js"></script></div><div><br /></div><div>untuk memasukkan kembali server1 ke dalam ceph cluster, hasilnya adalah sebagai berikut:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXLY32WxA0ypC7wOXfdsb51uB5pt8wlLpnIdkZskBjQ665tX6Je_B_Zd4CK1d2_HOBts09aBhW1_ZgSMNzZshWxSwxGFqFQVgg4MiMqQeZ2jtNXx1mvuDUnntw5vb9vnSgd_4I5R8BrwwcCppWcPCMcRh7d8o725u8AiHqbWK57IHmVwDWQQ/s521/Screenshot%202023-03-06%20134307.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="36" data-original-width="521" height="44" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXLY32WxA0ypC7wOXfdsb51uB5pt8wlLpnIdkZskBjQ665tX6Je_B_Zd4CK1d2_HOBts09aBhW1_ZgSMNzZshWxSwxGFqFQVgg4MiMqQeZ2jtNXx1mvuDUnntw5vb9vnSgd_4I5R8BrwwcCppWcPCMcRh7d8o725u8AiHqbWK57IHmVwDWQQ/w640-h44/Screenshot%202023-03-06%20134307.png" width="640" /></a></div><br /><div>kemudian setelah perintah itu berhasil saya jalankan, kembali saya jalankan perintah di bawah ini untuk mengecek list status seluruh host anggota cluster:</div><div><br /></div><div><script src="https://gist.github.com/himawan-mahardianto/5799db37c2a217f328b00ee3c9b39a03.js"></script></div><div><br /></div><div>hasilnya adalah seperti ini:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3VMGQ4nuITNNmYM-7KNIp4Z9Z-pzh3MhLMMgEISufv3jEsPDttuQ8Y5ihvcmjKvMGevNP-bdMSqfEGbqDhYttVmr2XrwQiMC6LVmWW82fYgbPj60JrzlZnAXNatP5XiXFd2YrShKsSKyJliY3tnK6ubpmbX0APVGNmspNXUEevAfEWTW7nw/s360/Screenshot%202023-03-06%20134326.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="98" data-original-width="360" height="87" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3VMGQ4nuITNNmYM-7KNIp4Z9Z-pzh3MhLMMgEISufv3jEsPDttuQ8Y5ihvcmjKvMGevNP-bdMSqfEGbqDhYttVmr2XrwQiMC6LVmWW82fYgbPj60JrzlZnAXNatP5XiXFd2YrShKsSKyJliY3tnK6ubpmbX0APVGNmspNXUEevAfEWTW7nw/s320/Screenshot%202023-03-06%20134326.png" width="320" /></a></div><br /><div>status offline server1 sudah hilang dan saya coba lihat lagi status ceph cluster dengan perintah:</div><div><br /></div><div><script src="https://gist.github.com/himawan-mahardianto/a023a53810665b0ad7d03ecd9038f654.js"></script></div><div><br /></div><div>berikut ini tampilan keluaran perintah di atas:</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoI3sM8ArqrIFO-5nrbbN3COu2IxX2Eq9GG6w2OZ75UEK2koYbUvLfiCUZHNLHgGb6sU7ElAK0L8qE7_C254a-NsGd0poxdB-SPBCixavGAxOmo0Ir10qSvg7B1t5zdPQGCwWROriJWK9X9J0bzFPDNWajY-S_tiyi9jwQc5J6Yt5JTcFsqg/s781/Screenshot%202023-03-06%20134431.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="308" data-original-width="781" height="158" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoI3sM8ArqrIFO-5nrbbN3COu2IxX2Eq9GG6w2OZ75UEK2koYbUvLfiCUZHNLHgGb6sU7ElAK0L8qE7_C254a-NsGd0poxdB-SPBCixavGAxOmo0Ir10qSvg7B1t5zdPQGCwWROriJWK9X9J0bzFPDNWajY-S_tiyi9jwQc5J6Yt5JTcFsqg/w400-h158/Screenshot%202023-03-06%20134431.png" width="400" /></a></div><br /><div>hasilnya ceph cluster sudah berstatus HEALTH_OK kembali. Sekian catatan troubleshooting ini, sampai jumpa lagi di catatan berikutnya. Jika ada pertanyaan silahkan tulis di kolom komentar.<br /><p><br /></p><p><br /></p></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-70417239681930499142023-03-08T11:46:00.016+07:002023-03-24T09:13:27.566+07:00Howto create 2nd Metadata Server di ceph cluster menggunakan cephadm - 12<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAGEBA6ye6endpPFhtpxQtphF6q28M-3L3h3G9kVi-2f5CJnxbFeY7kN1iiMwtB7cSv3FBawq2Q_bh5uAIMMCx85CjozNfuPaNZwss0w80cko9ePb1q48EgORoa9UD-__tsMwQbvuzqPbZ7am4qw6wwb8awO0j9pobeGZHzTBnI-N7unYgGw/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAGEBA6ye6endpPFhtpxQtphF6q28M-3L3h3G9kVi-2f5CJnxbFeY7kN1iiMwtB7cSv3FBawq2Q_bh5uAIMMCx85CjozNfuPaNZwss0w80cko9ePb1q48EgORoa9UD-__tsMwQbvuzqPbZ7am4qw6wwb8awO0j9pobeGZHzTBnI-N7unYgGw/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p></p><p style="text-align: justify;">Masih kembali melanjutkan catatan terkait ceph cluster, kali ini saya akan menuliskan tentang bagaimana caranya menambahkan metadata (mds) server cadangan. Kalau kemaren saya mengaktifkan 1 buah metadata server di dalam server1, rencananya kali ini saya akan menambahkan metadata server yang kedua di dalam server2 yang berfungsi sebagai cadangan (standby).</p><p>Sebelum saya bisa menambahkan metadata server cadangan, saya akan menjabarkan kondisi ceph cluster existing terlebih dahulu. Lingkungan pengembangan yang saya gunakan terdiri dari:</p><p></p><ul style="text-align: left;"><li>server1: mon(active), mds(active), mgr(active), osd(active)</li><li>server2: mon(standby), mgr(standby), osd(active)</li><li>server6: mon(standby), mgr(standby), osd(active)</li></ul><p></p><p>Sistem operasi yang saya gunakan adalah pada ketiga server di atas adalah Ubuntu Server 20.04 LTS sedangkan aplikasi ceph yang saya gunakan adalah versi Octopus.</p><p>Untuk memulainya saya login dulu ke server1, lalu saya menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/e32e5b59adf37c91a6419618f912aaf4.js"></script></p><p>setelah berhasil masuk, anda akan mendapati tampilan mirip seperti ini di shell cephadm:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCBToO4TA-YtNFqDovx1QaiKLGx0sGYMMH4X-qDOWXXfcB7j3Fj3Qvd1TTPYG3vHM9zjUUJRm_MOXGR2M5o0IrRKwFCLsGw942xFIqt4Yu5AG9zo1cu2x3BsuED-DteKyY6OEycSIZjBB2rrrP10ltQKu8PJNwwjcNY_MbJ2BYs8lJR7kGrA/s1036/Screenshot%202023-03-02%20131542.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="102" data-original-width="1036" height="64" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCBToO4TA-YtNFqDovx1QaiKLGx0sGYMMH4X-qDOWXXfcB7j3Fj3Qvd1TTPYG3vHM9zjUUJRm_MOXGR2M5o0IrRKwFCLsGw942xFIqt4Yu5AG9zo1cu2x3BsuED-DteKyY6OEycSIZjBB2rrrP10ltQKu8PJNwwjcNY_MbJ2BYs8lJR7kGrA/w640-h64/Screenshot%202023-03-02%20131542.png" width="640" /></a></div><p>kemudian saya menjalankan perintah untuk melihat status terkini ceph cluster, yaitu dengan menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/a023a53810665b0ad7d03ecd9038f654.js"></script></p><p>berikut ini status ceph cluster sebelum saya menambahkan metadata server cadangan:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCUAzv72hWkOr3HbZoDfVYu6EEuKMPyx9_LugKw9xs0qNZr-MuZbLimfBQao1zkec1RBOTeoAOkWMaZAp_e82VLHq2jnFR2baK6nyMHUZU9XMkjAd5SpP6HzO-7k4YRmOlFJB7anKzCitUPolbp0Aw_QjT5en0JfiTHCVUzSrGc7vjHmnqrg/s771/Screenshot%202023-03-06%20122210.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="333" data-original-width="771" height="173" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCUAzv72hWkOr3HbZoDfVYu6EEuKMPyx9_LugKw9xs0qNZr-MuZbLimfBQao1zkec1RBOTeoAOkWMaZAp_e82VLHq2jnFR2baK6nyMHUZU9XMkjAd5SpP6HzO-7k4YRmOlFJB7anKzCitUPolbp0Aw_QjT5en0JfiTHCVUzSrGc7vjHmnqrg/w400-h173/Screenshot%202023-03-06%20122210.png" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;"><span style="text-align: left;"><br /></span></div><div class="separator" style="clear: both; text-align: justify;"><span style="text-align: left;">untuk menambahkan metadata server cadangan saya cukup menjalankan perintah:</span></div><br /><script src="https://gist.github.com/himawan-mahardianto/4a643bb1bc9f502d2a9ef3b74ad38b20.js"></script>
<div><span>berikut ini hasil keluarannya jika saya berhasil menambahkan server2 sebagai mds server cadangan:</span></div><div><span><br /></span></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkDTuZEhUCIV5DMF8GM8-R85BZPDSScedz-vG1IKKsZexTiz53fySNnpwBlLsys__o-K11cbSXxcFRo5-3Bob5k3L_FfcNDoVz4iGvKjAo8V1Y1641rW6LO942A6S2muGloKznnk1NWKRlQB9Yiy9uk_MipfKu5TmQgHpfj841wco6tRNjzg/s789/Screenshot%202023-03-06%20125045.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="337" data-original-width="789" height="171" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkDTuZEhUCIV5DMF8GM8-R85BZPDSScedz-vG1IKKsZexTiz53fySNnpwBlLsys__o-K11cbSXxcFRo5-3Bob5k3L_FfcNDoVz4iGvKjAo8V1Y1641rW6LO942A6S2muGloKznnk1NWKRlQB9Yiy9uk_MipfKu5TmQgHpfj841wco6tRNjzg/w400-h171/Screenshot%202023-03-06%20125045.png" width="400" /></a></div><br /><div style="text-align: justify;">berdsasarkan baris yang saya highlight disitu terlihat bahwa metadata server ada 1 tambahan server yang standby, untuk lebih jelasnya siapa metadata server yang standby itu, saya kembali menjalankan perintah:</div></div><div><span><br /></span></div><div><span><script src="https://gist.github.com/himawan-mahardianto/de438133edd7c30dc13b45e5094c1dd3.js"></script></span></div><div><span><br /></span></div><div><span>dan berikut ini keluarannya:</span></div><div><span><br /></span></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUh22RzHgYliUzEhaakX2K1SN2PbU0-wr7XVM5A8zQxOGrZsh5z8aHgLamiZUlcGS_WnbAnihsSf41j1c-ukUlz4SImUmBmjQqUZznad5rL-MFU4_E9SFpAS-Yc3r7NQquJx8_-cMyfIfPglIC60puSrGrnkR7Ef-Rmd28aHW21WhkJGq5dw/s862/Screenshot%202023-03-06%20125737.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="211" data-original-width="862" height="98" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUh22RzHgYliUzEhaakX2K1SN2PbU0-wr7XVM5A8zQxOGrZsh5z8aHgLamiZUlcGS_WnbAnihsSf41j1c-ukUlz4SImUmBmjQqUZznad5rL-MFU4_E9SFpAS-Yc3r7NQquJx8_-cMyfIfPglIC60puSrGrnkR7Ef-Rmd28aHW21WhkJGq5dw/w400-h98/Screenshot%202023-03-06%20125737.png" width="400" /></a></div><div><br /></div><div style="text-align: justify;">melalui gambar di atas terlihat jelas bahwa server2 adalah metadata server yang standby, cukup sekian catatan kali ini jika ada pertanyaan jangan segan untuk menulisnya di kolom komentar di bawah, sampai jumpa lagi di catatan berikutnya.</div><span><br /></span></div>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-22380524905578448332023-03-08T11:46:00.015+07:002023-03-22T12:07:27.670+07:00Howto create Metadata server di ceph cluster dengan cephadm - 11<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1YO3G5YiS_XTSsz7WQdc_X_NzA39p3g69ha3gIzDWfBjVPd2hGNnae4IM1l2b2_X5SbV492339I3W_rcPzOgp-RdSjWXsbaCmm7aztuWTEfqx7GoBfcDMavOu6Ia_9otXsbi0w2mKQsQiMZQlEf7gaNYmwutWjDudOaho3yjoeF92tDvLdg/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1YO3G5YiS_XTSsz7WQdc_X_NzA39p3g69ha3gIzDWfBjVPd2hGNnae4IM1l2b2_X5SbV492339I3W_rcPzOgp-RdSjWXsbaCmm7aztuWTEfqx7GoBfcDMavOu6Ia_9otXsbi0w2mKQsQiMZQlEf7gaNYmwutWjDudOaho3yjoeF92tDvLdg/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Halooo, meneruskan catatan kemaren dimana saya sudah membuat ceph file system yang belum bisa digunakan, kali ini saya akan menuliskan catatan bagaimana cara membuat metadata server untuk menampung ceph file system yang saya buat sebelumnya.</p><p>Kondisi existing ceph cluster saya terdiri dari:</p><p></p><ul style="text-align: left;"><li>server1: mon(active), mgr(active) osd(active)</li><li>server2: mon(standby), mgr(standby) osd(active)</li><li>server6: mon(standby), mgr(standby) osd(active)</li></ul><p></p><p>lalu Ceph file system saya terdiri dari:</p><p></p><ul style="text-align: left;"><li>cephfs:</li><ul><li>metadata pool: cephfs_metadata</li><li>data pool: cephfs_data</li></ul></ul><p></p><p>Oh iya untuk kondisi lingkungan pengembangan server1, server2 dan server6 saya menggunakan Ubuntu Server 20.04 dan aplikasi ceph versi Octopus. </p><p style="text-align: justify;">Jadi selama belum ada Metadata (MDS) Server, CLayanan Ceph file system belum bisa digunakan untuk menyimpan data. Catatan kemaren saya sudah membahas bagaimana membuat Ceph File System, maka di catatan ini saya akan membuat metadata server.</p><p>Langkah pertama saya harus login dulu ke dalam server1, lalu saya masuk ke shell cephadm menggunakan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/e32e5b59adf37c91a6419618f912aaf4.js"></script></p><p>setelah nasuk, saya akan emlihat kondisi existing ceph cluster dengan menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/a023a53810665b0ad7d03ecd9038f654.js"></script></p><p>berikut ini keluarannya:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixG3z4-5PFlw4NR7-oX_K_kNxtRc4B__nYRrrd_ATkOvs4hEER301-0xKijqbyPTjOt-akT4lBP3W9CUA9kA2ewWHFsyiHuJ0v9XQerEgAG5ZyiUxWI09HWWUyYaGxGYEIXgi1j6Ue55sU0vooJm3lxI6ugJaueUpdHKz6sGA0iBpCPM8Few/s1222/Screenshot%202023-03-05%20at%2009.58.04.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="524" data-original-width="1222" height="274" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixG3z4-5PFlw4NR7-oX_K_kNxtRc4B__nYRrrd_ATkOvs4hEER301-0xKijqbyPTjOt-akT4lBP3W9CUA9kA2ewWHFsyiHuJ0v9XQerEgAG5ZyiUxWI09HWWUyYaGxGYEIXgi1j6Ue55sU0vooJm3lxI6ugJaueUpdHKz6sGA0iBpCPM8Few/w640-h274/Screenshot%202023-03-05%20at%2009.58.04.png" width="640" /></a></div><br /><p style="text-align: justify;">dari gambar di atas diketahui bahwa ada 1 ceph file system yang offline, itu berarti memang sudah ada ceph file system yang saya buat kemaren, cuman memang belum bisa digunakan, karena pada baris mds masih bernilai 0 yang berarti belum ada satu server mds yang active.</p><p>Untuk membuat sebuah MDS server di server1 saya menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/caf6f977c9098495b83fc93a9c30df81.js"></script></p><p>jika berhasil dibuat maka keluarannya sebagai berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC7IPj6Z50n8YoZ8L7OcvcN4O4Sjxuy2d7B09vjCBfl65GjWMmcm7u4dWAA1NXFOgCLzoCKFWGDQ65EEO4nRLZIhq3Sys5BheOhYNOOMhEnxk4E199Zb_QNQtjbJT6pcDjedXBUKsGrKAxQVStguhVPH25RJM2UvfpvdHo9GinV325dhKtrQ/s962/Screenshot%202023-03-05%20at%2014.27.21.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="60" data-original-width="962" height="40" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC7IPj6Z50n8YoZ8L7OcvcN4O4Sjxuy2d7B09vjCBfl65GjWMmcm7u4dWAA1NXFOgCLzoCKFWGDQ65EEO4nRLZIhq3Sys5BheOhYNOOMhEnxk4E199Zb_QNQtjbJT6pcDjedXBUKsGrKAxQVStguhVPH25RJM2UvfpvdHo9GinV325dhKtrQ/w640-h40/Screenshot%202023-03-05%20at%2014.27.21.png" width="640" /></a></div><p style="text-align: justify;">cephfs pada perintah di atas adalah nama file system yang saya buat di catatan saya sebelumnya. Angka 1 adalah jumlah metadata server yang akan diaktifkan, lalu server1 adalah server yang digunakan sebagai metadata server.</p><p> Setelah berhasil mengaktifan metadata server di server1, saya kembali menjalankan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/a023a53810665b0ad7d03ecd9038f654.js"></script></p><p>untuk melihat status ceph cluster, hasil keluaran perintah di atas adalah sebagai berikut:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhO6rM4U38aJDa1byeUiFVbnArRrBHOrbduKG7-e_0x5Q84m9gLrEa8-kzew8VZ3UoAOvIyQ5VdqmToH3QrHgAMDxm5xMzhMw9f_u9A93h_HknyBf3rqepUlgjZNMno4CDpofP89EZqZxGeV9lvaLxqI8YhGjt0SqlI8GmKRhageh159Cqp1w/s1236/Screenshot%202023-03-05%20at%2010.11.25.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="472" data-original-width="1236" height="245" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhO6rM4U38aJDa1byeUiFVbnArRrBHOrbduKG7-e_0x5Q84m9gLrEa8-kzew8VZ3UoAOvIyQ5VdqmToH3QrHgAMDxm5xMzhMw9f_u9A93h_HknyBf3rqepUlgjZNMno4CDpofP89EZqZxGeV9lvaLxqI8YhGjt0SqlI8GmKRhageh159Cqp1w/w640-h245/Screenshot%202023-03-05%20at%2010.11.25.png" width="640" /></a></div><p>dari situ anda bisa melihat bahwa metadata server sudah aktif di server1, dan bagian kesehatan cluster sudah tidak error, tetapi statusnya health OK. Jika dilihat melalui ceph dashboard hasilnya adalah seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiS8MbqOvkDm3vft147IFR8gYBAkZwpHFZVn3e4AaWhL-LwjTAR9ahRJXiDLJwDg-qojkee4xIEC_3pCr8Q7gFPhqTgq94O9D2BrIn3ZDLYBAQVJrAx-28sLC0x9jRADkfF_Li-Xb1eUl-smApHymW_oh02zMkzXB8qqPPKWpwztthP2mkXHA/s2866/Screenshot%202023-03-05%20at%2009.59.53.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="788" data-original-width="2866" height="176" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiS8MbqOvkDm3vft147IFR8gYBAkZwpHFZVn3e4AaWhL-LwjTAR9ahRJXiDLJwDg-qojkee4xIEC_3pCr8Q7gFPhqTgq94O9D2BrIn3ZDLYBAQVJrAx-28sLC0x9jRADkfF_Li-Xb1eUl-smApHymW_oh02zMkzXB8qqPPKWpwztthP2mkXHA/w640-h176/Screenshot%202023-03-05%20at%2009.59.53.png" width="640" /></a></div><br /><p>Metadata server sudah aktif, status cluster sehat (health OK). Untuk melihat status file system setelah metadata server aktif, saya menggunakan perintah:</p><p><script src="https://gist.github.com/himawan-mahardianto/de438133edd7c30dc13b45e5094c1dd3.js"></script></p><p>Hasilnya adalah sebagai berikut ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUmdfWmAXivDnFS3Hd0uw6cNZ3hVUF8rmxvNvWdJemai1IfNCXp19750BF9rfplVz3dnlal1XklY2szTvoe-R7YBRMeCGSg9C8-YfN1z_uyWEDQidDB2-o66G4ut-wG4RSLAiojm6D559asK4Q5adqAX5Ge2Yr1ZxD2aoZ3sW9_yOSY7Pd1A/s1426/Screenshot%202023-03-05%20at%2010.49.56.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="292" data-original-width="1426" height="132" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUmdfWmAXivDnFS3Hd0uw6cNZ3hVUF8rmxvNvWdJemai1IfNCXp19750BF9rfplVz3dnlal1XklY2szTvoe-R7YBRMeCGSg9C8-YfN1z_uyWEDQidDB2-o66G4ut-wG4RSLAiojm6D559asK4Q5adqAX5Ge2Yr1ZxD2aoZ3sW9_yOSY7Pd1A/w640-h132/Screenshot%202023-03-05%20at%2010.49.56.png" width="640" /></a></div><p style="text-align: justify;">disitu terlihat pool cephfs_metadata digunakan sebagai metadata, sedangkan pool cephfs_data digunakan sebagai data, dengan total kapasitas yang bisa digunakan adalah 9.7TB.</p><p style="text-align: justify;">Lho kenapa hanya 9,7TB? bukan 31TB seperti di status ceph cluster? itu karena mekanisme replikasi yang digunakan di layanan Ceph File System. Setiap data yang disimpan di layanan Ceph File System akan di replikasi 2 kali sehingga total ada 3 file yang akan disimpan dan disebar ke seluruh OSD untuk menghindari kehilanagn adata ketika ada salah satu OSD rusak.</p><p style="text-align: justify;">Sekian catatan saya tentang bagaimana membuat metadata server untuk mengaktifkan layanan Ceph File System. Apabila ada pertanyaan silahkan tulis di kolom komentar ya dan sampai jumpa di catatan berikutnya.</p><p style="text-align: justify;"><br /></p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0tag:blogger.com,1999:blog-29090812.post-72370197957230930102023-03-08T11:46:00.014+07:002023-03-21T10:19:46.937+07:00Howto create cephfs di dalam ceph cluster dengan cephadm - 10<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1YO3G5YiS_XTSsz7WQdc_X_NzA39p3g69ha3gIzDWfBjVPd2hGNnae4IM1l2b2_X5SbV492339I3W_rcPzOgp-RdSjWXsbaCmm7aztuWTEfqx7GoBfcDMavOu6Ia_9otXsbi0w2mKQsQiMZQlEf7gaNYmwutWjDudOaho3yjoeF92tDvLdg/s691/Screenshot%202023-02-27%20120113.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="406" data-original-width="691" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1YO3G5YiS_XTSsz7WQdc_X_NzA39p3g69ha3gIzDWfBjVPd2hGNnae4IM1l2b2_X5SbV492339I3W_rcPzOgp-RdSjWXsbaCmm7aztuWTEfqx7GoBfcDMavOu6Ia_9otXsbi0w2mKQsQiMZQlEf7gaNYmwutWjDudOaho3yjoeF92tDvLdg/s320/Screenshot%202023-02-27%20120113.png" width="320" /></a></div><p style="text-align: justify;">Pada catatan ini, saya akan menjelaskan bagaimana saya membuat cephfs di dalam ceph cluster. Cephfs sendiri adalah salah satu layanan yang disediakan dari ceph cluster. Layanan lainnya yang disediakan ceph cluster pada catatan ini ditulis adalah:</p><p></p><ul style="text-align: left;"><li>Ceph File System (CephFS)</li><li>RADOS GW</li><li>Block Device, dan </li><li>NFS</li></ul><p></p><p style="text-align: justify;">Ke empatnya memiliki kemampuan dan target layanan yang berbeda-beda, mungkin pada catatan yang lain akan saya jelaskan lebih lengkap, kembali ke catatan ini yang berfokus bagaimana cara mengaktifkan layanan Ceph FS di dalam ceph cluster ini. Kondisi existing ceph cluster saat ini terdiri dari 3 komputer yaitu:</p><p></p><ul style="text-align: left;"><li>server1: mon (active), mgr (active), osd (active)</li><li>server2: mon (standby), mgr (standby), osd (active)</li><li>server6: mon (standby), mgr (standby), osd (active)</li></ul><p></p><p>Ketiganya menggunakan sistem operasi ubuntu Server 20.04 dan aplikasi ceph versi Octopus. Untuk cephadm sendiri berlokasi di server1, jadi secara tidak langsung server yang digunakan untuk mengelola ceph cluster ada pada server1.</p><p>Untuk membuat cephfs, diperlukan 2 buah pool yang aktif, nantinya cephfs tersebut akan dibangun di atas kedua pool tersebut. Satu pool berfungsi sebagai penyimpan data, dan satu pool lainnya berfungsi sebagai penyimpan metadata dari data yang disimpan di pool sebelumnya.</p><p>Jika mengacu pada catatan sebelumnya, saya pernah membuat dua buah pool, yaitu:</p><p></p><ul style="text-align: left;"><li>cephfs_data, dan</li><li>cephfs_metadata</li></ul><p></p><p style="text-align: justify;">dan salah satunya sudah saya hapus, maka saya akan buat kembali pool cephfs_data yang sebelumnya telah saya hapus. Sebelum saya bisa membuat pool tersebut, saya harus login ke dalam server1 lalu menjalankan perintah untuk masuk ke dalam shell cephadm:</p><p><script src="https://gist.github.com/mahardianto/b0b302ce672bb16ddb2a61f25ce9e8f6.js"></script></p><p>setelah berhasil masuk, saya buat pool baru dengan nama cephfs_data dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/7152ea3751fd7091b755cf08cb26cd42.js"></script></p><p>hasilnya adalah seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQOLRx1Uwh7UmlSLAUeyfMvMRwMfpz92wzgspeR7vQlUBU0h1FN1W3C_heOQ2zf8tCGmYxWZUjKdc6h6XggtxT6QsTAO9V3vZS0EYqLhvm_hioQNb5DZCGt-mELMrweG7TUCnIbpViUPyHwBNpZpwvW5w4S4soFSz_0neU_YBAfqqPKD92Rw/s400/Screenshot%202023-03-02%20142722.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="38" data-original-width="400" height="60" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQOLRx1Uwh7UmlSLAUeyfMvMRwMfpz92wzgspeR7vQlUBU0h1FN1W3C_heOQ2zf8tCGmYxWZUjKdc6h6XggtxT6QsTAO9V3vZS0EYqLhvm_hioQNb5DZCGt-mELMrweG7TUCnIbpViUPyHwBNpZpwvW5w4S4soFSz_0neU_YBAfqqPKD92Rw/w640-h60/Screenshot%202023-03-02%20142722.png" width="640" /></a></div><p>kemudian saya akan lihat kondisi existing ceph cluster dengan menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/027763b15ec3a51e692be5caee79f066.js"></script></p><p>berikut ini hasil keluaran status ceph cluster sebelum saya menambahkan ceph filesystem yang baru:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEistNEEjCm5Dkflk3K_1hwu5N6HrPJ5Fzu_6DiYIjq4Gvgy2mHHhV-qPlVnkWAGJ4Mtht_I2HUR4Ve26q1O54_d4W8TsnXRKsMcYvTy6QM6Vhyva1IpmBvD5uU3FJTiYQpKXug96KJs3INhh0zYpNJllEKJ6R-9Z3J9vMuPlY4IUrZpU9NCAg/s1196/Screenshot%202023-03-05%20at%2009.50.13.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="432" data-original-width="1196" height="232" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEistNEEjCm5Dkflk3K_1hwu5N6HrPJ5Fzu_6DiYIjq4Gvgy2mHHhV-qPlVnkWAGJ4Mtht_I2HUR4Ve26q1O54_d4W8TsnXRKsMcYvTy6QM6Vhyva1IpmBvD5uU3FJTiYQpKXug96KJs3INhh0zYpNJllEKJ6R-9Z3J9vMuPlY4IUrZpU9NCAg/w640-h232/Screenshot%202023-03-05%20at%2009.50.13.png" width="640" /></a></div><br /><p>sedangkan jika dilihat melalui ceph dashboard, hasilnya seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4mYkE-sJunJFmXM9SMMFfRA5EKojgBJfGLG_4FcOwcNaUJ8m0erwqXSi14NCa5Fdh6f5HeEHcGfn3JoUCjapuUx-neLTXHrq7w5oAzZnHFPHI5yW3yHO6BKUPVvKOWrJz4UoY7dJEOYjsTEOZSvdfKtwqBFbBe1JqHl3BhIZCefzJDoeQyg/s2870/Screenshot%202023-03-05%20at%2009.35.29.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="578" data-original-width="2870" height="128" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4mYkE-sJunJFmXM9SMMFfRA5EKojgBJfGLG_4FcOwcNaUJ8m0erwqXSi14NCa5Fdh6f5HeEHcGfn3JoUCjapuUx-neLTXHrq7w5oAzZnHFPHI5yW3yHO6BKUPVvKOWrJz4UoY7dJEOYjsTEOZSvdfKtwqBFbBe1JqHl3BhIZCefzJDoeQyg/w640-h128/Screenshot%202023-03-05%20at%2009.35.29.png" width="640" /></a></div><br /><p>belum ada satupun ceph file system yang dibuat, Rencananya saya akan membuat satu buah Ceph File System dengan nama cephfs.</p><p>Lalu untuk membuat ceph file system dengan nama cephfs saya cukup menjalankan perintah di bawah ini melalui cephadm shell:</p><p><script src="https://gist.github.com/mahardianto/bd151a4616759dc0f5902f2967691a8c.js"></script></p><p>berikut ini hasil keluarannya jika anda berhasil membuat ceph file system:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9uJVAzzWtDAGU9Ed8BF7_jvyM8lz_oaR0XWZzdBcUtSqrT_nTfeILKIfUppoGF_jFErb97EHQo7EEzRg13xkWtlS30F9VUBhO7SjjBYxqzsyZqUCydKteSQ0ARa5epGKtzHJBCgTUHov_R2g-lG5gpceoWzvWdrxMIjO2BcjHMOXQgLVuZg/s916/Screenshot%202023-03-05%20at%2009.50.51.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="62" data-original-width="916" height="44" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9uJVAzzWtDAGU9Ed8BF7_jvyM8lz_oaR0XWZzdBcUtSqrT_nTfeILKIfUppoGF_jFErb97EHQo7EEzRg13xkWtlS30F9VUBhO7SjjBYxqzsyZqUCydKteSQ0ARa5epGKtzHJBCgTUHov_R2g-lG5gpceoWzvWdrxMIjO2BcjHMOXQgLVuZg/w640-h44/Screenshot%202023-03-05%20at%2009.50.51.png" width="640" /></a></div><br /><p>Perintah diatas sebenarnya berformat:</p><p><script src="https://gist.github.com/mahardianto/49c91cf9b957a04c3cf100c638ee6f7c.js"></script></p><p>jadi untuk membuat sebuah ceph file system diperlukan 2 buah pool sebagai dasar pembuatannya dan saya menggunakan pool:</p><ul><li>cephfs_data, dan</li><li>cephfs_metadata</li></ul><p></p><p>Berikut ini status cluster setelah pembuatan ceph file system:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6-B3-JdxnNq3Rd9CUqx23B9rY-LtEwboMW0eaAtawbrvzR5KNOm0J-jCF_JbWiWvaskFqQOFlGLcMzAktJS0HOMbDU1SU0CIL6HV3Ah_IJVKi-4c_tK6LOWCoyxG2J2H62oLFDyGjlS41fcmQob14SOckxLHMGGhw1VKUM_c3Ugh7lD4HjA/s1222/Screenshot%202023-03-05%20at%2009.58.04.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="524" data-original-width="1222" height="274" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6-B3-JdxnNq3Rd9CUqx23B9rY-LtEwboMW0eaAtawbrvzR5KNOm0J-jCF_JbWiWvaskFqQOFlGLcMzAktJS0HOMbDU1SU0CIL6HV3Ah_IJVKi-4c_tK6LOWCoyxG2J2H62oLFDyGjlS41fcmQob14SOckxLHMGGhw1VKUM_c3Ugh7lD4HjA/w640-h274/Screenshot%202023-03-05%20at%2009.58.04.png" width="640" /></a></div><br /><p>dari kelauarn di atas, anda melihat ada tambahan cephfs pada bagian services baris antara mgr dan osd. </p><p style="text-align: justify;">Lalu kenapa status kesehatan clusternya error (HEALTH_ERR). Itu karena ceph file system belum bisa digunakan hal itu dikarenakan ceph file system memerlukan minimal ada satu mds (metadata server) yang aktif. Untuk mengaktifkan metadata server nanti akan saya bahas di lain catatan.</p><p>Untuk melihat apakah ceph file system benar-benar terdiri dari cephfs_metadata dan cephfs_data saya cukup menjalankan perintah:</p><p><script src="https://gist.github.com/mahardianto/2aedcee1bd762eccaf7086e9e6b48891.js"></script></p><p>maka hasilnya seperti ini:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj8f4Jy5DXxOFKzr5Crk25EOKtuHtazFp7QUNGKQLfue8pY71CmfSmnE0tYX1LEs-iO3S8Lvzo3vbbOoi8wVZyj5uuaIOxmsHwh8U8XVRJv0mTGpJ6Lv-jSRiAbPVHKGmzzF_Jh3H4mO020-E2QPxr0HgkRch_eyUISKJkrJVSB46RWhcRjQ/s1076/Screenshot%202023-03-05%20at%2010.49.35.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="98" data-original-width="1076" height="58" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj8f4Jy5DXxOFKzr5Crk25EOKtuHtazFp7QUNGKQLfue8pY71CmfSmnE0tYX1LEs-iO3S8Lvzo3vbbOoi8wVZyj5uuaIOxmsHwh8U8XVRJv0mTGpJ6Lv-jSRiAbPVHKGmzzF_Jh3H4mO020-E2QPxr0HgkRch_eyUISKJkrJVSB46RWhcRjQ/w640-h58/Screenshot%202023-03-05%20at%2010.49.35.png" width="640" /></a></div><br /><p style="text-align: justify;">dari perintah di atas terlihat bahwa metadata pool pada cephfs terdiri dari cephfs_metadata sedangkan data pools pada cephfs menggunakan cephfs_data. Sekian catatan saya tentang cara membuat cephfs ini, apabila ada pertanyaan silahkan tulis di kolom komentar ya. Sampai jumpa lagi di catatan selanjutnya.</p><p><br /></p><p><br /></p>Himawan Mahardiantohttp://www.blogger.com/profile/18034525028250301152noreply@blogger.com0