Masuk

Halaman ini membahas cara mengakses dan mengelola workload dan resource Anda dalam Google Distributed Cloud (GDC) dengan air gap. Panduan ini menjelaskan cara melakukan autentikasi, membuat file kubeconfig untuk resource zonal dan global, serta mengelola tidak adanya aktivitas sesi. Memahami proses ini akan memastikan akses yang aman dan andal ke project dan workload Anda.

Halaman ini ditujukan bagi audiens dalam grup administrator platform (seperti admin IT) atau grup operator aplikasi (seperti developer aplikasi) yang ingin menggunakan resource GDC. Untuk mengetahui informasi selengkapnya, lihat Audiens untuk dokumentasi GDC yang terisolasi dari internet.

Anda dapat mengakses workload menggunakan konsol GDC, gdcloud CLI, atau kubectl CLI.

Mengautentikasi akun Anda untuk mendapatkan akses

Untuk login ke konsol GDC atau cluster, ikuti langkah-langkah berikut:

Konsol

Buka URL berikut di tab browser baru untuk mengakses antarmuka pengguna (UI) Distributed Cloud:

https://GDC_URL

Ganti GDC_URL dengan nama domain yang Anda gunakan untuk mengakses Distributed Cloud yang disediakan oleh Operator Infrastruktur (IO). Saat membuka URL apa pun untuk pertama kalinya, Distributed Cloud akan mengalihkan Anda ke halaman login penyedia identitas jika Operator Infrastruktur (IO) mengonfigurasi halaman tersebut.

Misalnya, image berikut login ke UI konsol untuk organisasi bernama org-1:

UI Konsol yang menampilkan layar selamat datang untuk project org-1.

CLI

Saat login ke gdcloud CLI, gunakan perintah gdcloud auth login untuk mengautentikasi principal ke gdcloud CLI. gdcloud CLI menggunakan akun utama tersebut untuk autentikasi dan otorisasi guna mengelola resource dan layanan Google Cloud .

Sebelum Anda login, pastikan Anda melakukan hal berikut:

  • Download biner gdcloud CLI dan instal di sistem Anda. Untuk mengetahui informasi selengkapnya, lihat Mendownload gdcloud CLI.
  • Siapkan dan lakukan inisialisasi konfigurasi default gdcloud CLI. Pastikan untuk menyetel URL organisasi yang benar, yang digunakan untuk mengambil endpoint konfigurasi login. Untuk mengetahui informasi selengkapnya, lihat penginstalan gdcloud CLI.
  • Instal plugin autentikasi gdcloud-k8s-auth-plugin. Untuk mengetahui informasi selengkapnya, lihat autentikasi gcloud CLI.

Untuk login ke server Management API atau cluster Kubernetes, selesaikan langkah-langkah berikut:

  • Server Management API:
  1. Ekspor jalur tempat Anda ingin menyimpan file kubeconfig server Management API:

    export KUBECONFIG=MANAGEMENT_API_SERVER
    

    Ganti MANAGEMENT_API_SERVER dengan jalur ke direktori tempat menyimpan file kubeconfig.

  2. Lakukan autentikasi instance gdcloud CLI Anda untuk login. Ada dua cara untuk melakukan autentikasi:

    • Login browser standar: Gunakan alur autentikasi ini saat login dari browser.

      gdcloud auth login
      
    • Login perangkat sekunder: Gunakan alur autentikasi ini jika perangkat utama Anda tidak memiliki browser. Alur ini memulai login di perangkat utama tanpa akses browser dan melanjutkan login dengan perangkat sekunder yang memiliki akses browser.

      Mulai login di perangkat utama Anda tanpa browser:

      gdcloud auth login --no-browser
      

      Variabel lingkungan KUBECONFIG diperbarui dengan file kubeconfig untuk semua server dan cluster API di organisasi. Jika variabel KUBECONFIG tidak ditetapkan, kubectl CLI akan menggunakan file kubeconfig default yang disimpan di $HOME/.kube/config.

      Untuk melewati pengeditan file kubeconfig, tambahkan flag --skip-kubeconfig-update ke perintah Anda. Contoh:

      gdcloud auth login --no-browser --skip-kubeconfig-update
      

      Salin output perintah gdcloud CLI yang dicetak, lalu jalankan di mesin dengan akses browser.

  3. Ikuti petunjuk di halaman web untuk menyelesaikan proses login.

    Setelah login berhasil diselesaikan, browser akan menampilkan pesan Authentication successful. Tutup jendela ini.

  4. Ikuti petunjuk di terminal. Setelah berhasil login, terminal akan menampilkan pesan: You are now logged in.

  • Cluster Kubernetes:
  1. Lakukan autentikasi instance gdcloud CLI Anda untuk login. Ada dua cara untuk melakukan autentikasi:

    • Login browser standar: Gunakan alur autentikasi ini saat login dari browser.

      gdcloud auth login
      
    • Login perangkat sekunder: Gunakan alur autentikasi ini jika perangkat utama Anda tidak memiliki browser. Alur ini memulai login di perangkat utama tanpa akses browser dan melanjutkan login dengan perangkat sekunder yang memiliki akses browser.

      1. Mulai login di perangkat utama Anda tanpa browser:

        gdcloud auth login --no-browser
        

        Perintah di perangkat utama mencetak perintah gdcloud lain yang harus Anda jalankan di perangkat sekunder pada langkah c.

      2. Ulangi langkah 1 untuk mendownload sertifikat di perangkat sekunder.

      3. Selesaikan login di perangkat sekunder dengan memasukkan perintah yang dicetak di perangkat utama pada langkah a.

    Tindakan ini akan membuka browser untuk login ke penyedia identitas (IdP) yang dikonfigurasi. Berikan pengguna dan sandi yang Anda tetapkan selama penyiapan awal gdcloud CLI untuk login.

  2. Ekspor file kubeconfig identitas pengguna Anda sebagai variabel:

    export KUBECONFIG=/tmp/admin-kubeconfig-with-user-identity.yaml
    
  3. Buat file kubeconfig dengan identitas pengguna Anda:

    gdcloud clusters get-credentials CLUSTER_NAME --zone ZONE
    

    Ganti ZONE dengan nama zona.

    File kubeconfig dibuat dengan identitas pengguna Anda. File YAML berikut menunjukkan contoh:

    apiVersion: v1
    clusters:
    - cluster:
      certificate-authority-data: <REDACTED>
      server: https://10.200.0.32:443
    name: cluster-name
    contexts:
    - context:
      cluster: cluster-name
      user: cluster-name-anthos-default-user
    name: cluster-name-cluster-name-anthos-default-user
    current-context: cluster-name-cluster-name-anthos-default-user
    kind: Config
    preferences: {}
    users:
    - name: cluster-name-anthos-default-user
    user:
      exec:
        apiVersion: client.authentication.k8s.io/v1
        args:
        - --audience=root-admin
        command: gdcloud-k8s-auth-plugin
        env: null
        installHint: Run 'gdcloud components install gdcloud-k8s-auth-plugin' to use plugin
        interactiveMode: Never
        provideClusterInfo: false
    
  4. Untuk memverifikasi bahwa Anda dapat mengakses cluster, login dengan file kubeconfig yang dibuat dengan identitas pengguna:

    kubectl --kubeconfig /tmp/admin-kubeconfig-with-user-identity.yaml version
    

Logout

Untuk logout dari konsol GDC, lakukan hal berikut:

Konsol

Klik Logout di panel menu.

CLI

Logout dari CLI:

gdcloud auth revoke

Membuat file kubeconfig secara manual

Jika Anda mengelola resource dengan kubectl CLI dengan memanggil KRM API secara langsung, Anda harus membuat file kubeconfig untuk cluster atau server API yang menghosting resource Anda, bergantung pada jenis resource yang Anda kelola.

Anda juga harus mengetahui konfigurasi semesta GDC untuk menentukan zona tempat Anda ingin men-deploy resource zonal, atau server API global untuk resource global. Untuk mengetahui informasi selengkapnya, lihat Server API global dan zonal.

Tentukan apakah resource yang Anda manipulasi adalah resource global atau zonal. Buka dokumentasi khusus resource untuk mendapatkan bantuan jika Anda tidak yakin.

Selesaikan penyiapan yang berlaku berdasarkan jenis resource Anda.

Resource server Zonal Management API

Selesaikan langkah-langkah berikut untuk membuat file kubeconfig Anda untuk server API Pengelolaan zonal:

  1. Melihat semua zona yang tersedia:

    gdcloud zones list
    

    Catat nama zona yang menghosting resource kustom Anda.

  2. Tetapkan variabel lingkungan ZONE ke zona yang menghosting resource zonal Anda:

    export ZONE="ZONE"
    

    Ganti ZONE dengan nama zona.

  3. Tetapkan variabel lingkungan MANAGEMENT_API_SERVER:

    export MANAGEMENT_API_SERVER="ORG_NAME-admin"
    

    Ganti ORG_NAME dengan nama organisasi Anda, seperti org-1.

  4. Buat file kubeconfig server Management API untuk zona target, dan validasi kredensial:

    export KUBECONFIG=${HOME}/${MANAGEMENT_API_SERVER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${MANAGEMENT_API_SERVER:?} --zone ${ZONE:?}
    [[ $(kubectl config current-context) == *${MANAGEMENT_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    Perintah rm ${KUBECONFIG:?} menghapus file kubeconfig yang ada di direktori beranda. Saat Anda membuat file kubeconfig baru, file tersebut akan menggantikan file yang ada. Jika Anda tidak ingin menimpa atau menghapus file yang ada, buat cadangannya di lokasi aman lain.

Resource cluster Kubernetes zonal

Selesaikan langkah-langkah berikut untuk membuat file kubeconfig Anda untuk cluster Kubernetes zonal:

  1. Melihat semua zona yang tersedia:

    gdcloud zones list
    

    Catat nama zona yang menghosting resource kustom Anda.

  2. Tetapkan variabel lingkungan ZONE ke zona yang menghosting cluster Kubernetes Anda:

    export ZONE="ZONE"
    

    Ganti ZONE dengan nama zona.

  3. Tetapkan variabel lingkungan KUBERNETES_CLUSTER:

    export KUBERNETES_CLUSTER="KUBERNETES_CLUSTER_NAME"
    

    Ganti KUBERNETES_CLUSTER_NAME dengan nama cluster Kubernetes Anda.

  4. Buat file kubeconfig cluster Kubernetes untuk variabel zona target, dan validasi kredensial:

    export KUBECONFIG=${HOME}/${KUBERNETES_CLUSTER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${KUBERNETES_CLUSTER:?} --zone ${ZONE:?}
    [[ $(kubectl config current-context) == *${KUBERNETES_CLUSTER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    Perintah rm ${KUBECONFIG:?} menghapus file kubeconfig yang ada di direktori beranda. Saat Anda membuat file kubeconfig baru, file tersebut akan menggantikan file yang ada. Jika Anda tidak ingin menimpa atau menghapus file yang ada, buat cadangannya di lokasi aman lain.

Resource server API global

Selesaikan langkah-langkah berikut untuk membuat file kubeconfig Anda untuk server API global:

  1. Tetapkan variabel lingkungan GLOBAL_API_SERVER:

    export GLOBAL_API_SERVER="global-api"
    
  2. Buat file kubeconfig server API global, dan validasi kredensial:

    export KUBECONFIG=${HOME}/${GLOBAL_API_SERVER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${GLOBAL_API_SERVER:?}
    [[ $(kubectl config current-context) == *${GLOBAL_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    Perintah rm ${KUBECONFIG:?} menghapus file kubeconfig yang ada di direktori beranda. Saat Anda membuat file kubeconfig baru, file tersebut akan menggantikan file yang ada. Jika Anda tidak ingin menimpa atau menghapus file yang ada, buat cadangannya di lokasi aman lain.

Logout karena tidak ada aktivitas sesi

Setelah tidak ada aktivitas selama lima belas menit atau lebih dalam sesi, konsol GDC dan gdcloud CLI akan mengeluarkan Anda. Distributed Cloud menganggap tidak adanya aktivitas sesi sebagai periode selama sesi terbuka tanpa engagement aktif dari Anda, seperti tidak ada pergerakan kursor atau keyboard. Sesi aktif berlangsung hingga dua belas jam dengan aktivitas pengguna.

Konsol

Jika tidak ada aktivitas sesi, konsol GDC akan membuat Anda logout. Dua menit sebelum konsol GDC mengeluarkan Anda karena tidak ada aktivitas, Anda akan menerima dialog yang memperingatkan Anda tentang logout:

UI Konsol yang menampilkan dialog dengan timer 99 detik sebelum mengeluarkan pengguna karena tidak aktif.

Setelah logout karena tidak ada aktivitas, Anda akan melihat layar berikut:

UI Konsol menampilkan layar login dengan banner yang berisi teks tentang logout sesi: &#39;Anda telah logout dari sistem karena sesi Anda tidak aktif terlalu lama. Harap login lagi atau hubungi administrator Anda untuk mendapatkan bantuan.&#39;

Untuk login kembali ke konsol GDC, pilih penyedia identitas Anda dan tambahkan kredensial login Anda. Jika Anda menggunakan layanan, seperti dasbor pemantauan, dan konsol GDC mengeluarkan Anda karena tidak ada aktivitas, login kembali untuk mendapatkan akses.

gdcloud

Untuk sesi tidak aktif, gdcloud CLI akan membuat Anda logout. Setelah gdcloud CLI mengeluarkan Anda, dan Anda mencoba menjalankan perintah, Anda akan menerima error otorisasi:

Error: error when creating kube client: unable to create k8sclient: Unauthorized

Untuk login kembali ke GDC, ikuti langkah-langkah CLI di Login.

Jika Anda login kembali ke GDC melalui server Management API, file kubeconfig Anda akan otomatis diperbarui. Untuk menghindari pembaruan file kubeconfig, gunakan flag --skip-kubeconfig-update dalam perintah gdcloud auth login.

kubectl

gdcloud CLI akan menghentikan masa berlaku file kubeconfig Anda setelah sesi tidak aktif. Jika Anda mencoba menjalankan perintah kubectl setelah tidak ada aktivitas, Anda akan menerima error otorisasi:

error: You must be logged in to the server (Unauthorized)

Untuk login kembali dan menggunakan file kubeconfig, ikuti langkah-langkah CLI di bagian Login. Untuk setiap waktu tunggu sesi, Anda harus membuat ulang file kubeconfig.

Memantau aktivitas login dan pengguna baru

Aktivitas seperti login diekspor sebagai log audit. Untuk mengetahui informasi selengkapnya tentang cara melihat log audit, lihat Log audit.