Untuk mengurangi potensi risiko keamanan, ContainerOS mencegah pengguna melakukan logon langsung ke sistem untuk operasi yang tidak dapat dilacak. Jika Anda perlu login ke instans untuk maintenance, ContainerOS menyediakan kontainer administratif khusus untuk tugas non-rutin seperti troubleshooting dan instalasi paket. Topik ini menjelaskan cara melakukan operasi umum pada kontainer administratif, seperti login, memulai, menghentikan, me-restart, dan mengekueri statusnya.
Topik ini hanya berlaku untuk node yang tidak berada dalam Auto Mode.
Metode maintenance node ContainerOS
|
Kontainer administratif mencakup lebih banyak paket perangkat lunak dibandingkan lingkungan host dan memungkinkan Anda menginstal paket tambahan dengan Manajer paket YUM. Dari kontainer tersebut, Anda dapat melihat proses sistem, jaringan, dan konfigurasi. Kontainer ini juga menyediakan perintah khusus untuk mengakses host, yang setara dengan menghubungkan instans melalui Workbench, SSH, atau VNC.
|
|
Pada ContainerOS 3.5 dan versi yang lebih baru, shell dihapus dari lingkungan host. Rujuk tabel berikut untuk memilih metode maintenance yang sesuai untuk node ContainerOS Anda.
|
Metode
|
ContainerOS 3.5 dan versi yang lebih baru
|
ContainerOS sebelum versi 3.5
|
|
Login ke kontainer administratif
|
|
-
Pasangan kunci SSH harus di-bind ke instans.
Saat membuat node pool, Anda harus mengatur kredensial logon ke pasangan kunci. Untuk informasi selengkapnya, lihat Buat dan kelola node pool.
Untuk node pool yang sudah ada, Anda juga dapat meng-bind pasangan kunci SSH ke instans. Untuk informasi selengkapnya, lihat Bind pasangan kunci SSH.
-
Login ke host menggunakan Workbench (login tanpa password saja).
-
Jalankan sudo lifseacli container start untuk memulai kontainer administratif.
-
Login menggunakan SSH.
Secara default, layanan SSH (sshd) dinonaktifkan pada host.
|
|
Masuk ke Host
|
Setelah login ke kontainer administratif, jalankan perintah sudo superman.
|
|
Anda juga dapat menggunakan perintah kubectl debug untuk mempertahankan node ContainerOS.
Metode login untuk ContainerOS 3.5 dan versi yang lebih baru
|
Kategori
|
Workbench (login tanpa password saja)
|
VNC logon
|
|
Prasyarat
|
Tidak ada.
Agen Cloud Assistant telah dipra-instal di kontainer administratif. Anda tidak perlu menginstalnya secara manual.
|
Login VNC memerlukan autentikasi password. Anda harus terlebih dahulu mengatur kata sandi logon untuk kontainer administratif melalui sesi Workbench tanpa password.
|
|
Prosedur
|
Login ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik .
-
Pada kolom Actions node tersebut, pilih More > Workbench Remote Access.
-
Ikuti petunjuk di layar untuk menyelesaikan login tanpa password.
|
Login ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik .
-
Pada kolom Actions node tersebut, pilih More > VNC Remote Access, lalu ikuti petunjuk di layar untuk menyelesaikan verifikasi identitas.
|
Metode login untuk ContainerOS sebelum versi 3.5
Login ke host
|
Kategori
|
Workbench (login tanpa password saja)
|
VNC logon
|
|
Prasyarat
|
Pastikan node memiliki akses jaringan ke layanan Cloud Assistant.
|
Login VNC memerlukan autentikasi password. Anda harus terlebih dahulu mengatur kata sandi logon untuk kontainer administratif melalui sesi Workbench tanpa password.
|
|
Prosedur
|
Login ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik .
-
Pada kolom Actions node tersebut, pilih More > Workbench Remote Access.
|
Login ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik .
-
Pada kolom Actions node tersebut, pilih More > VNC Remote Access, lalu ikuti petunjuk di layar untuk menyelesaikan verifikasi identitas.
|
Login ke kontainer administratif
Prasyarat
-
Saat membuat node pool, Anda harus mengatur kredensial logon ke pasangan kunci. Untuk informasi selengkapnya, lihat Buat dan kelola node pool.
Untuk node pool yang sudah ada, Anda juga dapat meng-bind pasangan kunci SSH ke instans. Untuk informasi selengkapnya, lihat Bind pasangan kunci SSH.
-
Agen Cloud Assistant harus diinstal. Untuk informasi selengkapnya, lihat Instal Agen Cloud Assistant.
-
Port 22 harus diizinkan dalam aturan security group Anda. Untuk informasi selengkapnya, lihat Kelola aturan security group.
-
Login tanpa password harus diaktifkan untuk instans ECS.
Di halaman Remote Connection via Session Management, klik tab Password-free Logon dan pastikan session management diaktifkan untuk semua wilayah. Toggle harus dalam keadaan aktif (hijau).
Akses lingkungan host
-
Login ke Konsol ECS dan buka panel Command Cloud Assistant. Untuk informasi selengkapnya, lihat Buat dan jalankan perintah.
-
Di Cloud Assistant, jalankan perintah berikut untuk memulai kontainer administratif:
sudo lifseacli container start
Output yang diharapkan:
Downloading docker image...
Successfully downloaded docker image
Successfully start admin container!
Output tersebut menunjukkan bahwa Cloud Assistant berhasil memulai kontainer administratif.
-
Dari terminal di mesin lokal Anda, jalankan perintah berikut untuk login ke kontainer administratif dengan kunci privat yang ditentukan.
Catatan
-
Ganti <ssh-private-key.pem> dengan kunci privat dari pasangan kunci yang di-bind ke instans. Ganti <instance-ip> dengan alamat IP instans.
-
Anda juga dapat login sebagai admin menggunakan Workbench. Gunakan kunci privat dari pasangan kunci yang di-bind ke instans. Pastikan port 22 terbuka pada instans Anda.
ssh -i <ssh-private-key.pem> admin@<instance-ip>
Setelah Anda login ke kontainer administratif, sistem file root host dipasang sebagai read-only ke direktori /.lifsea/rootfs di dalam kontainer administratif. Gunakan mount ini untuk menemukan informasi dan konfigurasi sistem.
$ssh -i mainxt.pem admin@47.99.45.171
Welcome to LifseaOS maintenance container!
This container is based on Alibaba Cloud Linux 3, therefore most things
should behave the same as a Alibaba Cloud Linux 3 VM or container.
Some common tools are pre-installed for debug purpose and you can install
any tools you want through yum.
Also you can access the LifseaOS host root filesystem (see /.lifsea/rootfs)
within the container.
If you want to place yourself in a real LifseaOS host environment, a tool
named "superman" (`sudo superman`) is provided. Once run, you will go
inside the LifseaOS host's rootfs with a root shell.
Enjoy!
[admin@iZbp1inxxxxtziZ ~]$
-
Jalankan perintah berikut untuk mengakses lingkungan host dari kontainer administratif.
-
Jalankan perintah ls untuk menampilkan daftar perintah sistem yang tersedia.
[root@xxxs9Z /]# ls
bin boot dev etc home lib lib64 media mnt opt ostree proc root run sbin srv sys sysroot tmp usr var
Hanya jumlah terbatas perintah sistem yang tersedia di lingkungan host.
Kelola kontainer administratif
Setelah memasuki lingkungan host, jalankan exit untuk kembali ke kontainer administratif. Jalankan exit lagi untuk logout. Kontainer administratif tetap berjalan, memungkinkan Anda terhubung kembali melalui SSH atau menggunakan perintah untuk menghentikan, me-restart, atau menghapusnya.
|
Aksi
|
Deskripsi
|
|
Hentikan kontainer administratif
|
sudo lifseacli container stop
|
|
Restart kontainer administratif
|
Jika Anda meng-bind atau melepas bind pasangan kunci setelah memulai kontainer administratif, Anda harus me-restart kontainer agar perubahan diterapkan. sudo lifseacli container restart
|
|
Hapus kontainer administratif
|
sudo lifseacli container rm
Penting
Saat Anda menghapus kontainer administratif, semua perangkat lunak yang Anda instal atau file yang Anda simpan di dalamnya juga akan dihapus. Jika Anda memulai kembali kontainer administratif, lingkungan baru yang bersih akan dibuat. Kami menyarankan agar Anda tidak menyimpan data penting di dalam kontainer administratif.
|
|
Ekueri status kontainer administratif
|
sudo lifseacli container status
|
FAQ
Error UNPROTECTED PRIVATE KEY FILE!
Gejala
Anda menerima error berikut:
$ssh -i manxi.pem admin@47
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for 'manxi.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "manxi.pem": bad permissions
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Penyebab
Izin pada file kunci privat terlalu longgar.
Solusi
Jalankan perintah chmod 400 <ssh-private-key.pem> untuk mengubah izin file kunci privat menjadi 400. Ganti <ssh-private-key.pem> dengan nama file kunci privat Anda.