Bagikan melalui


Mengakses Dasbor Kubernetes di Azure Stack Hub

Catatan

Hanya gunakan item Kuber Azure Stack Marketplace untuk menyebarkan kluster sebagai bukti-konsep. Untuk kluster Kubernetes yang didukung di Azure Stack, gunakan mesin AKS.

Kubernetes menyertakan dasbor web yang dapat Anda gunakan untuk operasi manajemen dasar. Dasbor ini memungkinkan Anda menampilkan status kesehatan dasar dan metrik untuk aplikasi Anda, membuat dan menyebarkan layanan, dan mengedit aplikasi yang ada. Artikel ini menunjukkan cara menyiapkan dasbor Kubernetes di Azure Stack Hub.

Prasyarat untuk Dasbor Kubernetes

  • Kluster Kubernetes Azure Stack Hub

    Anda harus menyebarkan kluster Kubernetes ke Azure Stack Hub. Untuk informasi selengkapnya, lihat Menyebarkan Kubernetes.

  • Klien SSH

    Anda memerlukan klien SSH untuk tersambung secara aman ke node sarana kontrol di kluster. Jika menggunakan Windows, Anda dapat menggunakan Putty. Anda akan membutuhkan kunci privat yang digunakan saat menyebarkan kluster Kubernetes.

  • FTP (PSCP)

    Anda mungkin juga memerlukan klien FTP yang mendukung SSH dan Protokol Transfer File SSH untuk mentransfer sertifikat dari node sarana kontrol ke komputer manajemen Azure Stack Hub. Anda dapat menggunakan FileZilla. Anda akan membutuhkan kunci privat yang digunakan saat menyebarkan kluster Kubernetes.

Gambaran umum langkah-langkah untuk mengaktifkan dasbor

  1. Ekspor sertifikat Kubernetes dari node sarana kontrol di kluster.
  2. Impor sertifikat ke mesin manajemen Azure Stack Hub Anda.
  3. Buka dasbor web Kubernetes.

Mengekspor sertifikat dari master

Anda dapat mengambil URL untuk dasbor dari node sarana kontrol di kluster Anda.

  1. Dapatkan alamat IP publik dan nama pengguna untuk master kluster Anda dari dasbor Azure Stack Hub. Untuk mendapatkan informasi ini:

    • Masuk ke https://portal.local.azurestack.external/ portal Azure Stack Hub.
    • Pilih Semua layanan>Semua sumber daya. Temukan master di grup sumber daya kluster Anda. Masternya bernama k8s-master-<sequence-of-numbers>.
  2. Buka node sarana kontrol di portal. Salin alamat IP publik. Klik Sambungkan untuk mendapatkan nama pengguna Anda di kotak Masuk menggunakan akun lokal VM. Ini adalah nama pengguna yang sama dengan yang Anda tetapkan saat membuat kluster. Gunakan alamat IP publik alih-alih alamat IP privat yang tercantum di bilah sambungkan.

  3. Buka klien SSH untuk tersambung ke master. Jika Anda sedang mengerjakan Windows, Anda dapat menggunakan Putty untuk membuat koneksi. Anda akan menggunakan alamat IP publik untuk node sarana kontrol, nama pengguna, dan menambahkan kunci privat yang Anda gunakan saat membuat kluster.

  4. Saat terminal tersambung, ketik kubectl untuk membuka klien baris perintah Kubernetes.

  5. Jalankan perintah berikut:

    kubectl cluster-info 
    

    Temukan URL untuk dasbor. Misalnya: https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  6. Ekstrak sertifikat yang ditandatangani sendiri dan konversi ke format PFX. Jalankan perintah berikut:

    sudo su 
    openssl pkcs12 -export -out /etc/kubernetes/certs/client.pfx -inkey /etc/kubernetes/certs/client.key  -in /etc/kubernetes/certs/client.crt -certfile /etc/kubernetes/certs/ca.crt 
    
  7. Dapatkan daftar rahasia di namespace kube-system. Jalankan perintah berikut:

    kubectl -n kube-system get secrets
    

    Catat nilai kubernetes-dashboard-token-<XXXXX>.

  8. Dapatkan token dan simpan. Perbarui kubernetes-dashboard-token-<####> dengan nilai rahasia dari langkah sebelumnya.

    kubectl -n kube-system describe secret kubernetes-dashboard-token-<####>| awk '$1=="token:"{print $2}' 
    

Mengimpor sertifikat

  1. Buka Filezilla dan sambungkan ke node sarana kontrol. Anda akan membutuhkan:

    • IP publik node sarana kontrol
    • nama pengguna
    • rahasia privat
    • Gunakan SFTP - Protokol Transfer File SSH
  2. Salin /etc/kubernetes/certs/client.pfx dan /etc/kubernetes/certs/ca.crt ke mesin manajemen Azure Stack Hub Anda.

  3. Catat lokasi file. Perbarui skrip dengan lokasi, lalu buka PowerShell dengan permintaan yang ditinggikan. Jalankan skrip yang diperbarui:

    Import-Certificate -Filepath "ca.crt" -CertStoreLocation cert:\LocalMachine\Root 
    $pfxpwd = Get-Credential -UserName 'Enter password below' -Message 'Enter password below' 
    Import-PfxCertificate -Filepath "client.pfx" -CertStoreLocation cert:\CurrentUser\My -Password $pfxpwd.Password 
    

Membuka dasbor Kubernetes

  1. Nonaktifkan pemblokir pop-up di browser Web Anda.

  2. Arahkan browser Anda ke URL yang dicatat saat Anda menjalankan perintah kubectl cluster-info. Misalnya: https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  3. Pilih sertifikat klien.

  4. Masukkan token.

  5. Sambungkan kembali ke baris perintah bash di node sarana kontrol dan berikan izin ke kubernetes-dashboard. Jalankan perintah berikut:

    kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard 
    

    Skrip memberikan kubernetes-dashboard hak istimewa administrator Cloud. Untuk informasi selengkapnya, lihat Untuk kluster yang mendukung RBAC.

Anda dapat menggunakan dasbor. Untuk informasi lebih lanjut tentang dasbor Kubernetes, lihat Dasbor Antarmuka Pengguna Web Kubernetes

Dasbor Kubernetes Azure Stack Hub

Pemecahan Masalah

Virtual Network Kustom

Jika Anda menghadapi masalah konektivitas saat mengakses dasbor Kubernetes setelah menyebarkan Kubernetes ke virtual network kustom, pastikan subnet target ditautkan ke tabel rute dan sumber daya kelompok keamanan jaringan yang dibuat oleh mesin AKS.

Pastikan bahwa aturan kelompok keamanan jaringan mengizinkan komunikasi antara node sarana kontrol dan IP pod dasbor Kubernetes. Hal ini dapat dipastikan dengan menggunakan perintah ping dari node sarana kontrol.

Langkah berikutnya

Menyebarkan Kubernetes ke Azure Stack Hub

Menambahkan kluster Kubernetes ke Marketplace (untuk operator Azure Stack Hub)

Kubernetes di Azure