awctl CLI
Awanio menyediakan awctl cli untuk membantu seseorang mengatur dan mengelola Awanio Cloud Platform. Perintah ini hanya mendukung berjalan di Debian 11 di atas dan Ubuntu 20.04 di atas saat ini. Kami berencana untuk mendukung RedHat 9 pada milestone berikutnya.
Instal awctl CLI
Sebelum menjalankan operasi berikut, kita perlu mengunduh awctl CLI dari repositori publik Awanio.
curl -O https://storage.awan.io/assets/awctl-linux-amd64.tar.gz
tar -xvf awctl-linux-amd64.tar.gz
sudo chmod +x ./awctl
sudo mv ./awctl /usr/local/bin/
sudo awctl --versionPembuat File Konfigurasi Cluster
Untuk melakukan instalasi melalui CLI, Anda perlu menyiapkan file konfigurasi cluster. File ini berisi informasi yang diperlukan untuk membuat cluster baru. Untuk membuat template, jalankan perintah berikut:
sudo awctl generate-conf-fileFile baru akan dibuat. Untuk mendapatkan detail lebih lanjut tentang cara menggunakan file ini, silakan lihat halaman Skema File Konfigurasi Cluster.
Solusi Paket Semua Dalam Satu
Untuk menginstal secara langsung termasuk semua paket dan CRD yang diperlukan, gunakan perintah ini:
sudo awctl init -f cluster-config.yamlInstalasi Bertahap
Untuk menginstal Awanio secara bertahap, gunakan perintah berikut:
- Hanya menginstal paket linux yang diperlukan seperti, containerd dll. ```bash sudo awctl init -f cluster-config.yaml --package-only ```
- Memulai cluster di semua node tanpa SDN dan SDS apa pun. ```bash sudo awctl init -f cluster-config.yaml --cluster-only ```
- Flag ini akan dipasang ke cluster dasar Kubernetes. ```bash sudo awctl init -f cluster-config.yaml --sdn-only ```
- Flag ini akan menginstal SDS ke cluster dasar. ```bash sudo awctl init -f cluster-config.yaml --sds-only ```
- Menginstal semua komponen eksternal yang diperlukan. ```bash sudo awctl init -f cluster-config.yaml --module-only ```
- Menginstal semua komponen awanio. ```bash sudo awctl install -f cluster-config.yaml ```
Instalasi Antarmuka Web
Untuk melakukan instalasi melalui antarmuka web, jalankan perintah ini:
sudo awctl webui --port 8081Kemudian buka halaman web instalasi di http://IP-NODE:8081. Sesuaikan informasi IP-NODE dengan IP server yang akan digunakan untuk instalasi.
Penggabungan Node Baru ke Cluster yang Ada
- Hasilkan token gabungan di node bidang kontrol yang ada. ```bash sudo awctl join-token ```
- Gunakan token yang dihasilkan untuk menggabungkan node ke cluster. ```bash sudo awctl join \ --token=xxxxx \ --endpoint=192.168.1.10:3774 \ --role=worker \ --node-ip=192.168.1.11 ```
| Parameter | Deskripsi | Requirement |
| token | Token for join to existing cluster generated by `sudo awctl join-token` command. | required |
| endpoint | Endpoint management node existing cluster. | required |
| role | Node role in cluster. The option is: `control-plane-worker`, `control-plane` and `worker`. | required |
| node-ip | This node IP address that use to communicate with the management node. | required |
| exclude-package | Exclude OS package install if the new node already has required packages. | required |
Update Awanio
Perintah berikut akan memperbarui komponen API, cronjob, dan UI.
sudo awctl updatePeriksa Versi
Untuk memeriksa versi saat ini, jalankan:
sudo awctl versionUntuk memeriksa versi terbaru, jalankan:
sudo awctl version --allUpdate awctl Binary
Jalankan perintah berikut untuk memperbarui file binary awctl.
sudo awctl awctl self-updatePatch Cluster Issue
Jalankan perintah berikut untuk melakukan perbaikan masalah yang ada di clsuter yang disebabkan oleh awctl pada versi sebelumnya.
sudo awctl patchMenampilkan URL Cluster
Untuk menampilkan URL cluster, jalankan perintah berikut:
sudo awctl cluster-access -f cluster-config.yamlUninstall Komponen Awanio
Untuk menghapus komponen Awanio di cluster, gunakan perintah berikut:
sudo awctl uninstall -f cluster-config.yamlDestroy Existing Cluster
Untuk men-destroy cluster yang ada, jalankan perintah berikut:
sudo awctl destroy -f cluster-config.yamlSkema File Konfigurasi Cluster
File konfigurasi cluster terinspirasi dari file ClusterConfig dari eksctl.
apiVersion: awanio.io/v1alpha1
kind: ClusterConfig
metadata:
license: "GILF-ET4G-YD28-I4NK"
features: "computes,object-storage,kubernetes,support"
name: Cluster Name
spec:
rootUser:
name: Awanio
username: awanio
password: xxx-xxx-xxx
email: ask@awan.io
server:
managementFloatingIP: 172.31.31.20
ingressExternalIPs:
- 172.31.31.19
- 108.137.91.215
nics:
internal:
name: ens5
external:
name: eth1
ip: 103.179.254.253/24
mac: 16:52:f3:13:6a:25
gateway: 103.179.254.254/24
gatewayNodes: awid1
subnets:
workload: 10.0.0.0/16
workloadGateway: 10.0.0.1
service: 10.1.0.0/16
external: 103.179.255.0/24
nodes:
- name: awid1
role: control-plane-worker
user: ubuntu
sshPort: "22"
sshPrikeyFile: /home/ubuntu/.ssh/id_rsa
internalIP: 172.31.31.19/20
disk:
- /dev/nvme1n1
- name: awid3
# the option is: control-plane, worker and control-plane-worker
role: worker
# this user should sudoers and have the public ssh key in remote servers
user: ubuntu
sshPort: "22"
sshPrikeyFile: /home/ubuntu/.ssh/id_rsa
internalIP: 172.31.17.44/20
disk:
- /dev/nvme1n1Properti
| Properti | Tipe Data | Deskripsi | Nilai Default |
| apiVersion | string | awanio.io/v1alpha1 | |
| kind | string | - | ClusterConfig |
| metadata | object | - | - |
| metadata.license | string | - | - |
| metadata.features | string | - | computes,object-storage,kubernetes,support |