Google memantau dan memelihara hardware Google Distributed Cloud terhubung dari jarak jauh. Untuk tujuan ini, engineer Google memiliki akses Secure Shell (SSH) ke hardware Distributed Cloud yang terhubung. Jika Google mendeteksi masalah, seorang engineer Google akan menghubungi Anda untuk memecahkan dan menyelesaikannya. Jika Anda telah mengidentifikasi masalah sendiri, segera hubungi Dukungan Google untuk mendiagnosis dan menyelesaikannya.
Konektivitas mesin Distributed Cloud terhubung
Bagian ini menjelaskan cara memeriksa konektivitas internet dan Google Cloud untuk mesin yang terhubung ke Distributed Cloud menggunakan fitur Metrics Explorer di Cloud Monitoring.
Prosedur ini menggunakan metrik Pemantauan berikut:
Mesin Terhubung (
/machine/connected): menunjukkan apakah mesin terhubung ke Google Cloud.Network Connectivity (
/machine/network/connectivity): menunjukkan apakah antarmuka jaringan utama mesin memiliki konektivitas internet.
Untuk menyelesaikan langkah-langkah di bagian ini, Anda harus memenuhi prasyarat berikut:
- Akses ke konsol Google Cloud dan project yang terhubung ke Distributed Cloud Google Cloud Anda.
- Peran IAM Monitoring Viewer, yang memungkinkan Anda melihat metrik Monitoring.
- (Opsional) Nilai
machine_iddari target mesin yang terhubung ke Distributed Cloud untuk memfilter hasil yang ditampilkan.
Menggunakan Metrics Explorer untuk memvalidasi konektivitas mesin
Buka Metrics Explorer:
Di konsol Google Cloud , buka bagian Monitoring.
Di hierarki navigasi sebelah kiri, klik Metrics Explorer.
Pilih jenis resource target:
Di halaman Metrics Explorer, buka halaman Queries.
Gunakan kotak penelusuran untuk menelusuri jenis resource Machine. Anda juga dapat menggunakan ID resource lengkap
edgecontainer.googleapis.com/Machine.Di hasil yang ditampilkan, klik jenis resource Machine.
Validasi koneksi komputer ke Google Cloud:
Di bagian Metrik, telusuri nilai
connected.Pilih metrik Mesin Terhubung. Jalur lengkapnya adalah
edgecontainer.googleapis.com/machine/connected.(Opsional) Filter menurut nilai target
machine_idmenggunakan bagian Filter.Pada diagram waktu yang muncul, pastikan garis Healthy tetap 100% secara berurutan. Jika pada titik mana pun nilai ini adalah 0% atau Tidak Sehat, berarti mesin telah kehilangan konektivitas dengan Google Cloud pada waktu yang ditunjukkan.
Validasi konektivitas internet mesin:
Di bagian Metrik, telusuri nilai
connectivity.Pilih metrik Network Connectivity. Jalur lengkapnya adalah
edgecontainer.googleapis.com/machine/network/connectivity.(Opsional) Filter menurut nilai target
machine_idmenggunakan bagian Filter.Pada diagram waktu yang muncul, pastikan garis Healthy tetap 100% secara berurutan. Jika pada suatu saat nilai ini adalah 0% Tidak Sehat, berarti mesin kehilangan konektivitas internet pada waktu yang ditunjukkan.
Memahami hasil validasi
Tabel berikut menjelaskan hasil yang ditampilkan oleh Metrics Explorer.
| Status mesin | Diagnosis | Resolusi |
|---|---|---|
| Sehat Nilai metrik "Machine Connected" adalah 1Nilai metrik "Network Connectivity" adalah 1 |
Operasi normal. | Tidak ada. |
| Terputus Nilai metrik "Machine Connected" adalah 0Nilai metrik "Network Connectivity" adalah 1 |
Komputer memiliki konektivitas internet, tetapi tidak dapat terhubung ke Google Cloud. | Periksa [aturan firewall](distributed-cloud/connected/1.11.0/docs/requirements#connected_management_and_monitoring_traffic) untuk layanan Google dan endpoint API. Pastikan agen yang terhubung Distributed Cloud berjalan di mesin. |
| Terisolasi Nilai metrik "Machine Connected" adalah 0Nilai metrik "Network Connectivity" adalah 0 |
Mesin tidak memiliki konektivitas internet. | Periksa kabel daya dan jaringan, konfigurasi jaringan lokal, status LED mesin. Verifikasi konfigurasi VLAN dan perutean Anda. |
| Terputus-putus Nilai metrik "Machine Connected" berganti-ganti antara 0 dan 1Nilai metrik "Network Connectivity" berganti-ganti antara 0 dan 1 |
Koneksi jaringan tidak stabil, kehilangan paket, atau latensi berlebihan. | Periksa jaringan lokal Anda untuk mengetahui apakah ada kemacetan dan hardware yang rusak. |
Jika Anda melihat nilai 0 yang berkelanjutan untuk salah satu metrik, ikuti langkah-langkah pemecahan masalah yang dijelaskan dalam tabel untuk mengatasinya. Jika masalah berlanjut, hubungi Dukungan Google
dengan menyertakan nilai machine_id komputer yang terpengaruh dan stempel waktu gangguan.
Sesi BGP yang rusak di resource Cloud Router yang digunakan oleh koneksi VPN
Koneksi Distributed Cloud VPN mengandalkan sesi BGP yang dibuat dan dikelola oleh resource Cloud Router yang sesuai untuk mengiklankan rute antara cluster yang terhubung ke Distributed Cloud dan Google Cloud. Jika Anda mengubah konfigurasi resource Cloud Router yang terkait dengan koneksi VPN Distributed Cloud, koneksi tersebut dapat berhenti berfungsi.
Untuk memulihkan konfigurasi sesi BGP yang rusak di Cloud Router yang terpengaruh, selesaikan langkah-langkah berikut:
Di konsol Google Cloud , dapatkan nama sesi BGP yang rusak. Contoh:
INTERFACE=anthos-mcc-34987234Dapatkan alamat IP BGP peer dan BGP Cloud Router untuk sesi BGP yang rusak, serta ASN peer yang digunakan oleh koneksi Distributed Cloud VPN yang terpengaruh. Contoh:
GDCE_BGP_IP=168.254.208.74 CLOUD_ROUTER_BGP_IP=168.254.208.73 PEER_ASN=65506Jika Anda menghapus sesi BGP, dapatkan informasi ini dari cluster yang terhubung Distributed Cloud:
Dapatkan kredensial cluster:
gcloud edge-cloud container clusters get-credentials CLUSTER_ID \ --location REGION \ --project PROJECT_ID
Ganti kode berikut:
CLUSTER_ID: nama cluster target.REGION: region Google Cloud tempat cluster target dibuat.PROJECT_ID: ID project Google Cloud target.
Dapatkan konfigurasi resource
MultiClusterConnectivityConfig:kubectl get multiclusterconnectivityconfig -A
Perintah ini akan menampilkan output yang mirip dengan berikut ini:
NAMESPACE NAME LOCAL ASN PEER ASN kube-system MultiClusterConfig1 65505 65506 ```Dapatkan alamat IP BGP peer, alamat IP Cloud Router, dan ASN sesi BGP:
kubectl describe multiclusterconnectivityconfig -n kube-system MCC_CONFIG_NAME
Ganti
MCC_CONFIG_NAMEdengan namaMultiClusterConfigResourceyang Anda dapatkan di langkah sebelumnya.Perintah ini akan menampilkan output yang mirip dengan berikut ini:
Spec: Asns: Peer: 65505 Self: 65506 # GDCE ASN Tunnels: Ike Key: Name: MCC_CONFIG_NAME-0 Namespace: kube-system Peer: Bgp IP: 169.254.208.73 # Cloud Router BGP IP Private IP: 34.157.98.148 Public IP: 34.157.98.148 Self: Bgp IP: 169.254.208.74 # GDCE BGP IP Private IP: 10.100.29.49 Public IP: 208.117.254.68 ```
Di konsol Google Cloud , dapatkan nama, region, dan nama projectGoogle Cloud untuk tunnel VPN yang rusak. Contoh:
VPN_TUNNEL=VPNTunnel1 REGION=US-East1 VPC_PROJECT_ID=VPC-Project-1Hapus sesi BGP yang rusak dari konfigurasi Cloud Router.
Buat antarmuka Cloud Router baru:
gcloud compute routers add-interface --interface-name=INTERFACE_NAME \ --vpn-tunnel=TUNNEL_NAME \ --ip-address=ROUTER_BGP_IP \ --project=VPC_PROJECT_ID \ --region=REGION \ --mask-length=30
Ganti kode berikut:
INTERFACE_NAME: nama deskriptif yang secara unik mengidentifikasi antarmuka ini.TUNNEL_NAME: nama tunnel VPN yang Anda dapatkan di langkah sebelumnya.ROUTER_BGP_IP: alamat IP BGP Cloud Router yang Anda peroleh sebelumnya dalam prosedur ini.VPC_PROJECT_ID: ID project VPC Google Cloud target.REGION: Google Cloud region tempat project VPC target Google Cloud dibuat.
Buat peer BGP:
gcloud compute routers add-bgp-peer --interface=INTERFACE_NAME \ --peer-name=TUNNEL_NAME \ --region REGION \ --project=VPC_PROJECT_ID \ --peer-ip-address=GDCE_BGP_IP \ --peer-asn=GDCE_BGP_ASN \ --advertised-route-priority=100 \ --advertisement-mode=DEFAULT
Ganti kode berikut:
INTERFACE_NAME: nama antarmuka yang Anda buat di langkah sebelumnya.TUNNEL_NAME: nama tunnel VPN yang Anda gunakan untuk membuat antarmuka di langkah sebelumnya.REGION: Google Cloud region tempat project VPC target Google Cloud dibuat.VPC_PROJECT_ID: ID project VPC Google Cloud target.GDCE_BGP_IP: alamat IP BGP peer Distributed Cloud yang Anda peroleh sebelumnya dalam prosedur ini.GDCE_BGP_ASN: ASN BGP peer Distributed Cloud yang Anda dapatkan sebelumnya dalam prosedur ini.
Pada tahap ini, sesi BGP sudah aktif dan beroperasi kembali.
Mesin virtual macet dalam status Pending
Beban kerja mesin virtual dapat terhenti dalam status Pending dan gagal dijadwalkan pada node jika salah satu hal berikut terjadi:
- Distributed Cloud yang terhubung tidak dapat mengalokasikan resource yang diminta, seperti waktu CPU, memori, atau ruang disk, ke virtual machine.
- Ada kesalahan dalam konfigurasi virtual machine.
- Ada kesalahan pada penyimpanan mesin virtual.
- Node target tercemar.
Untuk mengatasi masalah ini, lakukan langkah berikut:
Dapatkan kredensial cluster seperti yang dijelaskan dalam Mendapatkan kredensial untuk cluster.
Dapatkan informasi tentang mesin virtual yang terpengaruh:
kubectl describe virtualmachine VM_NAME -n NAMESPACE
Ganti kode berikut:
VM_NAME: Nama mesin virtual target.NAMESPACE: Namespace mesin virtual target.
Perintah ini akan menampilkan output yang mirip dengan berikut ini:
Status: ... State: Pending ... Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal SuccessfulCreate 15m virtualmachine-controller Created virtual machine my-stuck-vm Warning DiskProvisioningFailed 14m virtualmachine-controller Failed to provision disk: DataVolume my-stuck-vm-data-disk not ready Warning PVCNotBound 14m virtualmachine-controller PersistentVolumeClaim my-stuck-vm-data-disk is in phase Pending Warning VMINotCreated 10m virtualmachine-controller VirtualMachineInstance cannot be created: dependencies not readyOutput perintah berisi pesan yang mungkin menunjukkan batasan resource, kegagalan penjadwalan, kesalahan penyimpanan, dan masalah lainnya.
Periksa output untuk menentukan penyebab kegagalan penjadwalan seperti yang dijelaskan di bagian berikutnya.
Resource tidak cukup
Anda mungkin melihat pesan yang menunjukkan resource yang tidak mencukupi, seperti CPU, memori, atau ruang disk. Contoh:
5/8 nodes are available: 3 Insufficient memory, 3 Insufficient CPU.
Untuk mengatasi masalah ini, periksa resource yang dialokasikan ke virtual machine yang terpengaruh dan beban kerja lain yang dijadwalkan di node, lalu lakukan hal berikut bergantung pada kebutuhan bisnis Anda:
- Menurunkan skala workload lain yang dijadwalkan di node,
- Kurangi jumlah resource yang dialokasikan ke virtual machine yang terpengaruh,
- Tambahkan lebih banyak mesin ke cluster yang terpengaruh.
Node yang tercemar
Anda mungkin melihat pesan yang menunjukkan bahwa node target tercemar. Contoh:
5/8 nodes are available: 3 node(s) had taint {<taint-key>:<taint-value>}, that the pod didn't tolerate.
Untuk mengatasi masalah ini, lakukan langkah-langkah berikut:
Gunakan perintah berikut untuk memeriksa taint pada node:
kubectl get nodes -o custom-columns=NAME:.metadata.name,TAINTS:.spec.taints
Perintah ini akan menampilkan output yang mirip dengan berikut ini:
NAME TAINTS node-name-1 [map[effect:PreferNoSchedule key:node-role.kubernetes.io/master] map[effect:PreferNoSchedule key:node-role.kubernetes.io/control-plane]] node-name-2 <none>Lakukan salah satu hal berikut:
- Untuk taint yang tidak terduga, hapus taint tersebut seperti yang dijelaskan dalam Taint dan Toleransi.
- Untuk taint yang diharapkan, tambahkan toleransi yang sesuai ke konfigurasi virtual machine, seperti yang dijelaskan dalam Taint dan Toleransi.
Kesalahan penyimpanan
Anda mungkin melihat pesan yang menunjukkan adanya kesalahan pada penyimpanan mesin virtual. Contoh:
5/8 nodes are available: 3 node(s) had volume node affinity conflict, 3 node(s) had unbound immediate PersistentVolumeClaims.
Pesan ini mungkin menunjukkan bahwa volume persisten yang sesuai gagal di-mount di node target.
Untuk mengatasi masalah ini, lakukan langkah-langkah berikut:
Gunakan perintah berikut untuk mendapatkan status klaim volume persisten (PVC) di namespace virtual machine yang terpengaruh:
kubectl get pvc -n NAMESPACE
Ganti
NAMESPACEdengan nama namespace target.Perintah ini akan menampilkan output yang mirip dengan berikut ini:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE windows-robin-disk-0 Bound pvc-b1a1d264-84bf-4e58-857d-f37f629d5082 25Gi RWX robin-block-immediate 30h windows-robin-disk-1 Bound pvc-0130b9a8-7fed-4df0-8226-d79273792a16 25Gi RWX robin-block-immediate 30h windows-robin-vm-0-restored-windows-robin-disk-0 Pending gce-pd-gkebackup-in 26mVerifikasi bahwa PVC yang sesuai memiliki status
Bound; jika statusnyaPending, berarti subsistem penyimpanan gagal menyediakan volume. Dalam kasus tersebut, Anda harus memecahkan masalah konfigurasi subsistem penyimpanan dan memastikanStorageClassyang sesuai tersedia.