Panduan Pengguna awadm
Panduan ini menjelaskan cara instalasi, konfigurasi, dan penggunaan awadm — CLI untuk administrator dalam mengelola klaster Awanio (alternatif dari Awanio Dashboard).
Sistem operasi didukung: macOS/Linux. Perintah di bawah ini menggunakan shell POSIX (bash/zsh).
1. Instalasi
Paket biner siap pakai (contoh untuk Linux amd64):
curl -O https://storage.awan.io/assets/awadm-linux-amd64.tar.gz
tar -xvf awadm-linux-amd64.tar.gz
chmod +x ./awadm
sudo mv ./awadm /usr/local/bin/
awadm --version2. Konfigurasi
awadm membaca kredensial dari berkas awanconfig. Default:
- Lokasi: ~/.awan/config
- Override dengan: --awanconfig /path/ke/config
Dua cara konfigurasi:
A) Login (disarankan)
- Menukar username/password dashboard menjadi kredensial API dan menulis ke awanconfig.
Contoh:
awadm config clusters login \
--name dev3 \
--username awanio \
--url https://0.0.0.0/v2
# Akan meminta password jika --password tidak diberikanB) Manual Buat berkas ~/.awan/config dengan isi YAML:
apiVersion: v1
clusters:
dev-cluster:
server: https://0.0.0.0/v2
access-key: sa-xxxxxx
access-secret: yyyyyy
demo-cluster:
server: https://192.168.1.10/v2
access-key: sa-aaaaaa
access-secret: bbbbbb
contexts:
current-context: dev-clusterPerintah konfigurasi yang berguna:
- Tampilkan konteks aktif:
awadm config context - Ubah konteks aktif:
awadm config context set <nama-cluster> - Daftar cluster:
awadm config clusters - Hapus cluster dari config:
awadm config clusters delete <nama-cluster> - Tampilkan lokasi dan isi config:
awadm config info
Catatan: Alur login memerlukan pengguna menjadi anggota organisasi "root" untuk dapat membuat service account secara otomatis.
3. Referensi Perintah awadm
Flag global:
- --awanconfig string Lokasi berkas config (default: ~/.awan/config)
- -o, --output string Beberapa perintah mendukung format keluaran (table atau json)
3.1 Virtual Machine (VM)
- Daftar VM:
awadm vm --size-per-page 100 --sort-by id --order desc --page 1 [--search <ckata-kunci>]Kolom: uuid, Title, Status, Organization, CPU, Ram
- Detail VM berdasarkan UUID:
awadm vm get <cuuid> [-o json]- Metrik VM (60 menit terakhir, interval 10 menit):
awadm vm metric <vuid> --since-x-minute-ago 60 --minute-step 10- Ekspor metrik VM ke CSV:
awadm vm metric <vuid> --since-x-minute-ago 120 --minute-step 10 --export-path vm_metrics.csv --export-format csv- Keluaran JSON:
awadm vm metric <vuid> --since-x-minute-ago 60 --minute-step 10 -o json- Keluaran OID gaya SNMP:
awadm vm metric <vuid> --since-x-minute-ago 60 --minute-step 10 --output snmp --snmp-base-oid .1.3.6.1.4.1.99999.13.2 Volume
- Daftar volume:
awadm volumeKolom: uuid, Title, Size, Backend Storage
- Detail volume berdasarkan UUID:
awadm volume get <uuid> [-o json]3.3 Node
- Daftar node:
awadm nodesKolom: name, status, internal_ip, network, mem_ok, disk_ok, pid_ok
Flag paginasi:
- -p, --page string Halaman saat ini dalam pagination (default: 1)
- -s, --size-per-page string Jumlah item maksimum per halaman (default: 15)
Contoh dengan paginasi:
awadm nodes -p 2 -s 20- Metrik node (utilisasi CPU dan Memori):
awadm nodes metric <nama-node> --since-x-minute-ago 60 --minute-step 10Flag:
- --since-x-minute-ago int Jumlah menit ke belakang dari sekarang untuk awal rentang (tidak boleh dipakai bersamaan dengan start/end)
- --start string Waktu mulai format '2006-01-02 15:04:05'
- --end string Waktu selesai format '2006-01-02 15:04:05'
- --minute-step int Interval agregasi dalam menit
- -o, --output string Format keluaran: table, json atau snmp (default: table)
- --snmp-base-oid string Base OID untuk mode keluaran SNMP (default .1.3.6.1.4.1.99999.2)
- --export-path string Lokasi file untuk ekspor deret waktu (opsional)
- --export-format string Format ekspor: csv atau spreadsheet (default csv)
Contoh:
# Tabel (default)
awadm nodes metric awid5
# Keluaran JSON
awadm nodes metric awid5 -o json
# Keluaran OID gaya SNMP
awadm nodes metric awid5 -o snmp --snmp-base-oid .1.3.6.1.4.1.99999.2
# Ekspor deret waktu ke CSV
awadm nodes metric awid5 --export-path ./node_metrics_awid5.csv
# Rentang waktu spesifik
awadm nodes metric awid5 --start "2025-08-10 12:00:00" --end "2025-08-10 14:00:00" --minute-step 5Catatan:
Respon JSON metrik node berbeda dengan VM; CLI melakukan normalisasi internal agar output dan ekspor konsisten.
WWID Fibre Channel:
awadm nodes storages fibre-channelKolom: wwid, wwn, size
3.4 Service Account
- Daftar service account:
awadm service-accountsKolom: uuid, AccesKey, Status
- Buat service account:
awadm service-accounts create --name <nama> --org-uid <uuid-organisasi>Flag:
--name (wajib): 6–20 karakter; huruf, angka, tanda minus (-), underscore (_), titik (.)
--org-uid (wajib): UUID organisasi
Hapus service account berdasarkan UUID (bisa banyak):
awadm service-accounts delete <uuid> [<uuid> ...]3.5 Lisensi
- Daftar lisensi yang terpasang:
awadm licenseKolom: license key, cluster id, features, maximum cpu socket, expired date
- Tambah lisensi baru:
awadm license add <license-key>4. Contoh
- Mulai cepat: login dan lihat daftar VM
awadm config clusters login --name dev --username admin --url https://0.0.0.0/v2
awadm vm --search web
awadm vm get 00000000-0000-0000-0000-000000000000- Ganti konteks lalu daftar volume
awadm config context set demo-cluster
awadm volume- Buat service account melalui alur login, lalu buat dan daftar SA
awadm config clusters login --name demo --username admin --url https://192.168.1.10/v2
awadm service-accounts create --name sa-demo --org-uid 00000000-0000-0000-0000-000000000000
awadm service-accounts5. Output dan Format
- Tabel adalah default untuk daftar dan detail.
- JSON tersedia untuk beberapa perintah detail melalui
-o json.
6. Pemecahan Masalah
Unauthorized atau akses tidak valid:
- Pastikan awanconfig berisi access-key dan access-secret yang valid untuk konteks terpilih.
- Verifikasi URL
serverbenar dan dapat diakses.
TLS/Sertifikat:
- Jika memakai sertifikat self-signed, pastikan sertifikat tepercaya pada OS Anda. Konfigurasi aman sangat disarankan.
Gagal login:
- Pastikan kredensial dashboard benar.
- Pengguna harus menjadi anggota organisasi "root" untuk membuat service account.
Field kosong pada tabel:
- CLI mengantisipasi field yang hilang (mis. Status, Organization, Backend Storage) dan menampilkan
-bila tidak tersedia.
- CLI mengantisipasi field yang hilang (mis. Status, Organization, Backend Storage) dan menampilkan
7. Catatan Keamanan
- Simpan dan bagikan awanconfig dengan hati-hati; berisi kredensial API.
- Gunakan prinsip least-privilege untuk service account.
8. Versi dan Bantuan
- Tampilkan versi:
awadm --version
- Bantuan perintah:
awadm --helpatauawadm <command> --help