Depuración de métricas de Block Storage for VPC
Cuando intenta ver las métricas de Block Storage for VPC en el panel de control de supervisión, las métricas no se rellenan.
Es posible que las métricas no se rellenen en el panel de control por una de las razones siguientes:
- Es posible que el PVC que desea supervisar no esté montado. Las métricas solo se rellenan para los PVC que se montan en un pod.
- Podría haber un problema relacionado con la consola, que puede verificarse consultando manualmente las métricas de almacenamiento en la CLI.
Compruebe que el PVC esté montado. Si el problema persiste, visualice manualmente las métricas en la CLI para determinar si la causa está relacionada con problemas con la consola.
-
Describa el PVC. Si la fila Utilizado por de la salida se rellena con el nombre de un pod, el PVC está montado.
oc describe pvc <pvc_name>Salida de ejemplo
Name: my-pvc Namespace: default StorageClass: ibmc-vpc-block-5iops-tier Status: Bound Volume: pvc-a11a11a1-111a-111a-a1a1-aaa111aa1a1a Labels: <none> Annotations: pv.kubernetes.io/bind-completed: yes pv.kubernetes.io/bound-by-controller: yes volume.beta.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io Finalizers: [kubernetes.io/pvc-protection] Capacity: 10Gi Access Modes: RWO VolumeMode: Filesystem Used By: my-pod-11a1a1a1a1-1a11a Events: <none> -
Si el PVC no está montado en un pod, revise los pasos para configurar Block Storage for VPC y monte el PVC en un pod. A continuación, intente volver a ver las métricas.
-
Si la PVC está montada, siga los pasos para verificar manualmente las métricas de Block Storage for VPC y, a continuación, [abra un problema de soporte](/docs/openshift?topic=openshift-get-help. Los pasos de verificación manual en la CLI permiten ver las métricas, pero no son una solución para las métricas que no se rellenan en la consola. Sin embargo, si puede verificar manualmente las métricas, esto indica que hay un problema de consola para el que debe abrir un problema.
Visualización manual de métricas de almacenamiento en la CLI
Si las métricas de almacenamiento no están visibles en el panel de control de supervisión, puede verlas manualmente en la CLI. Tenga en cuenta que la verificación manual de las métricas de almacenamiento es una solución temporal y no una solución de supervisión permanente para la visualización de métricas. Una vez completados los siguientes pasos, si puede ver manualmente las métricas en la CLI y no en el panel de control, esto indica que existe un problema en la consola para el que debe [abrir una incidencia de soporte] (/docs/openshift?topic=openshift-get-help.
Después de realizar estos pasos, asegúrese de eliminar los recursos que ha creado durante la depuración.
-
Cree y despliegue una configuración de
clusterRolepersonalizada. En este ejemplo,clusterRolese denominatest-metrics-reader.apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: test-metrics-reader rules: - nonResourceURLs: - "/metrics" verbs: - get - apiGroups: - "" resources: - nodes/metrics verbs: - getoc apply -f <file_name> -
Cree una cuenta de servicio. En este ejemplo, la cuenta de servicio se denomina
test-sa.oc create sa test-sa -
Añada un
clusterRoleBindingalclusterRole.oc create clusterrolebinding test-metrics-reader --clusterrole test-metrics-reader --serviceaccount=default:test-sa -
Liste los nodos y anote el nombre y la IP del nodo para el que desea recopilar métricas.
oc get nodesSalida de ejemplo
NAME STATUS ROLES AGE VERSION 10.111.1.11 Ready <none> 1d v1.35+IKS -
Cree un archivo yaml para desplegar un pod en el nodo. Asegúrese de especificar la cuenta de servicio que ha creado y la dirección IP del nodo.
apiVersion: v1 kind: Pod metadata: name: testpod spec: nodeName: 10.111.1.111 containers: - image: nginx name: nginx serviceAccountName: test-saoc apply -f <file_name> -
Recupere la señal de cuenta de servicio desde dentro del pod.
-
Inicie sesión en el pod.
kubectl exec testpod -it -- bash -
Ejecute el mandato siguiente para obtener la señal. Tenga en cuenta que no hay salida.
token=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
-
-
Mientras todavía está conectado al pod, ejecute el mandato para ver las métricas de almacenamiento. Asegúrese de especificar la dirección IP del nodo.
curl -k -H "authorization: bearer <token> https://<node_IP>:10250/metrics | grep kubelet_volume_stats -
Vea las métricas en la salida del terminal. Es posible que tenga que esperar varios minutos hasta que se muestren las métricas. Si todavía no puede ver las métricas, [abra un problema de soporte](/docs/openshift?topic=openshift-get-help.
-
Cuando haya terminado de ver las métricas y haya determinado si el problema está relacionado con el panel de control o el agente de métricas, suprima las configuraciones y los recursos que ha creado en los pasos anteriores.
No omita este paso.
- Salga del pod.
exit - Suprima el pod.
oc delete pod testpod - Suprima el
clusterRoleBinding.oc delete clusterrolebinding test-metrics-reader - Suprima la cuenta del servicio.
oc delete sa test-sa - Suprima el rol de clúster.
oc delete clusterrole test-metrics-reader