Informazioni sui cookie del presente sito Per il corretto funzionamento, i nostri siti Web richiedono alcuni cookie (richiesto). Inoltre, con il suo consenso, potrebbero essere utilizzati altri cookie per l'analisi dell'utilizzo del sito, per migliorare l'esperienza utente e per scopi pubblicitari. Per ulteriori informazioni, consultare le. Visitando il nostro sito web, accettate il trattamento delle informazioni da parte nostra come descritto nelladichiarazione sulla privacy di IBM. Per consentire una corretta navigazione, le preferenze per i cookie dell'utente verranno condivise sui domini Web IBM qui elencati.
Perché si verificano errori di endpoint di trasporto non connesso quando si utilizza il componente aggiuntivo del cluster IBM Cloud Object Storage?
I passaggi seguenti si applicano solo al componente aggiuntivo del cluster IBM Cloud Object Storage. Se si utilizza il plug-in Helm, vedere Perché vedo errori di endpoint di trasporto non connesso?.
Quando si perde la connessione tra i pod del server del nodo ibm-object-csi-driver
e i pod dell'applicazione, si possono verificare errori di connessione TransportEndpoint
.
Un possibile caso di questo errore si verifica quando vengono applicati gli aggiornamenti delle patch. In questo caso, i pod delle applicazioni possono presentare errori di connessione temporanei.
Il 'ibm-object-csi-driver
supporta il recupero automatico dei volumi che hanno perso la connessione con il 's3fs
. L'autorecovery può essere ottenuto distribuendo una risorsa personalizzata fornita da 'ibm-object-csi-driver
.
Questa risorsa monitora continuamente le applicazioni e lo spazio dei nomi specificato dall'utente e riavvia automaticamente i pod delle applicazioni quando si verificano TransportEndpoint
errori.
-
Copiare il seguente yaml e salvarlo in un file chiamato '
stale.yaml
apiVersion: objectdriver.csi.ibm.com/v1alpha1 kind: RecoverStaleVolume metadata: labels: app.kubernetes.io/name: recoverstalevolume app.kubernetes.io/instance: recoverstalevolume-sample name: recoverstalevolume-sample namespace: default spec: logHistory: 200 data: - namespace: default # The namesapce where your app is deployed deployments: [<A comma separated list of all the apps you want to recover>]
-
Creare la risorsa '
RecoverStaleVolume
nel cluster.kubectl create -f stale.yaml
Output di esempio
recoverstalevolume.objectdriver.csi.ibm.com/recoverstalevolume-sample created
-
Verificare che la risorsa sia stata creata.
kubectl get recoverstalevolume
Output di esempio
NAME AGE recoverstalevolume-sample 41s
-
Se il problema persiste, contattare il supporto. Apri un caso di supporto. Nei dettagli del caso, assicurarsi di includere qualsiasi file di registro, messaggio di errore o output di comando pertinente.
Verifica del recupero attraverso la simulazione di un errore
-
Elencare le distribuzioni.
kubectl get deploy -o wide
Output di esempio
NAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTOR cos-csi-test-app 1/1 1 1 7h24m app-frontend rabbitmq app=cos-csi-test-app
-
Elencare i pod dell'applicazione.
kubectl get pods -o wide
Output di esempio
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES cos-csi-test-app-6b99bd8bf4-5lt7p 1/1 Running 0 7h24m 172.30.69.21 10.73.114.86 <none> <none>
-
Elenca i pod nello spazio dei nomi
ibm-object-csi-operator
.kubectl get pods -n ibm-object-csi-operator -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES ibm-object-csi-controller-d64df8f57-l6grj 3/3 Running 0 7h31m 172.30.69.19 10.73.114.86 <none> <none> ibm-object-csi-node-6d4x4 3/3 Running 0 7h31m 172.30.64.24 10.48.3.149 <none> <none> ibm-object-csi-node-gg5pj 3/3 Running 0 7h31m 172.30.116.13 10.93.120.14 <none> <none> ibm-object-csi-node-vk8jf 3/3 Running 0 7h31m 172.30.69.20 10.73.114.86 <none> <none> ibm-object-csi-operator-controller-manager-8544d4f798-llbf8 1/1 Running 0 7h37m 172.30.69.18 10.73.114.86 <none> <none>
-
Eliminare il pod
ibm-object-csi-node-xxx
nello spazio dei nomiibm-object-csi-operator
.kubectl delete pod ibm-object-csi-node-vk8jf -n ibm-object-csi-operator
Output di esempio
pod "ibm-object-csi-node-vk8jf" deleted
-
Elenca i pod nello spazio dei nomi
ibm-object-csi-operator
.kubectl get pods -n ibm-object-csi-operator -o wide
Output di esempio
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES ibm-object-csi-controller-d64df8f57-l6grj 3/3 Running 0 7h37m 172.30.69.19 10.73.114.86 <none> <none> ibm-object-csi-node-6d4x4 3/3 Running 0 7h37m 172.30.64.24 10.48.3.149 <none> <none> ibm-object-csi-node-gg5pj 3/3 Running 0 7h37m 172.30.116.13 10.93.120.14 <none> <none> ibm-object-csi-node-kmn94 3/3 Running 0 8s 172.30.69.23 10.73.114.86 <none> <none> ibm-object-csi-operator-controller-manager-8544d4f798-llbf8 1/1 Running 0 7h43m 172.30.69.18 10.73.114.86 <none> <none>
-
Ottenere i log del
ibm-object-csi-operator-controller-manager
per seguire il recupero dell'app pod. Si noti che l'Operatore cancella il pod dell'applicazione in modo che venga riavviato.2024-07-10T17:25:39Z INFO recoverstalevolume_controller Time to complete {"fetchVolumeStatsFromNodeServerPodLogs": 0.066584637} 2024-07-10T17:25:39Z INFO recoverstalevolume_controller Volume Stats from NodeServer Pod Logs {"Request.Namespace": "default", "Request.Name": "recoverstalevolume-sample", "volume-stas": {"pvc-9d12a2f5-09a9-4eb4-b1f5-2a727249ed2b":"transport endpoint is not connected "}} 2024-07-10T17:25:39Z INFO recoverstalevolume_controller Stale Volume Found {"Request.Namespace": "default", "Request.Name": "recoverstalevolume-sample", "volume": "pvc-9d12a2f5-09a9-4eb4-b1f5-2a727249ed2b"} 2024-07-10T17:25:39Z INFO recoverstalevolume_controller Pod using stale volume {"Request.Namespace": "default", "Request.Name": "recoverstalevolume-sample", "volume-name": "pvc-9d12a2f5-09a9-4eb4-b1f5-2a727249ed2b", "pod-name": "cos-csi-test-app-6b99bd8bf4-5lt7p"} 2024-07-10T17:25:39Z INFO recoverstalevolume_controller Pod deleted. {"Request.Namespace": "default", "Request.Name": "recoverstalevolume-sample"}