3 Managing Containers and Kubernetes Flashcards
Como se obtienen los recursos y sus nombres cortos
oc api-resources
Cuales son las 3 opciones de “oc api-resources” de formato
oc api-resources –namespaced=true –api-group apps –sort-by name
Como se puede describir el campo spec de un pod usando explain
oc explain pod.spec
Describe los acrónimos de los recursos:
pod
svc
rs
pv
pvc
cm
deploy
bc
dc
pod => pods
svc => services
rs => replica set
pv => persistent volume
pvc => persistent volume claim
cm => config map
deploy => deployment
bc => build config
dc => deployment config
Como usar selector para obtener los pods de label group developers
oc get pod –selector group=developers
Como se obtiene el detalle largo de la opción oc get pods
oc get pods -o wide
Como se obtiene el output en formato yaml
oc get pods -o file.yaml
Como se obtiene el podIP de oc get pods -o yaml usando el tool yd
oc get pods -o yaml | yq r - ‘items[0].status.podIP’
Como se obtienen los pods con output json
oc get pods -o json
Como se puede formatear la columna para json con jsonpath
oc get pods \
-o jsonpath=’{range .items[]}{“Pod Name: “}{.metadata.name}
{“Container Names:”}{.spec.containers[].name}
{“Phase: “}{.status.phase}
{“IP: “}{.status.podIP}
{“Ports: “}{.spec.containers[].ports[].containerPort}
{“Pod Start Time: “}{.status.startTime}{“\n”}{end}’
Pod Name: myapp-77fb5cd997-xplhz
Container Names:myapp
Phase: Running
Como formatear por columnas la salida de un comando en openshift usando oc get pods => custom_columns
Salida
PodName ContainerName Phase IP Ports
myapp-77fb5cd997-xplhz myapp Running 10.8.0.60 <none></none>
oc get pods \
-o custom-columns=PodName:”.metadata.name”,\
ContainerName:”spec.containers[].name”,\
Phase:”status.phase”,\
IP:”status.podIP”,\
Ports:”spec.containers[].ports[].containerPort”
Como seleccionar el proyecto cli-resources
oc project cli-resources
como obtener api resources group de apps
oc api-resources –api-group apps
Como se muestra el grupo de configuración de openshift
oc api-resources –api-group config.openshift.io
Como se obtienen los pods del operador etcd
oc get pods -n openshift-etcd
cuales son las dos formas de obtener json de “oc get pods”
oc get pods -o json
oc get pods -o=jsonpath=’{.status.conditions}{“\n”}’
Como se obtiene en yaml la salida de oc get pods -n open shift-monitoring prometheus-k8s-0
-o yaml
Como se filtra con el comando yq oc get pods -n open shift-monitoring prometheus-k8s-0 status.conditions
oc get pods -n open shift-monitoring prometheus-k8s-0 -o yaml|yq -r - ‘status.conditions’
Como se usa custom columns en oc get pods PodName name, containername spec.containers[].name Phase: status.phase IP: status.podIP Ports: spec.containers[].ports[].containerPort
oc get pods -n openshift-storage \
-o custom-columns=PodName:”.metadata.name”,\
ContainerName:”spec.containers[].name”,\
Phase:”status.phase”,\
IP:”status.podIP”,\
Ports:”spec.containers[].ports[].containerPort”
Como se obtienen los cluster operators
oc get clusteroperators
Como se obtienen los Operators Lifecycle Manager (OLM) Operators
oc get operators
Como se obtienen los eventos del cluster
oc get events -n openshift-image-registry
como se obtienen los logs del contenedor alertmanager-main-0
oc logs alertmanager-main-0 -n
como se obtienen los logs de un nodo
oc adm node logs
Como se firma a un nodo
oc debug node/nodename
Como se verifica el servicio de kubelet y crio del nodo
chroot /host
systemctl is-active crio
systemctl is-active kubelet
Como obtener los logs de un contenedor de un pod
oc logs pod-name -c container-name
Como ejecutar sesión debug ssh como usuario no root
oc debug job/test –as-user=1000000
Como se obtiene información para un caso de openshift
oc adm must-gather –dest-dir /home/student/must-gather
tar cvaf must-gather
Como se obtiene información de diagnostico usando inspect sobre los operadores de apiserver de Kubernetes y openshift
oc adm inspect clusteroperator/openshift-apiserver \
clusteroperator/kube-apiserver –dest-dir /mypath
Como se obtienen los datos de diagnostico de los últimos 10min
oc adm inspect clusteroperator/openshift-apiserver –since 10m
Como se obtienen los operadores
oc get operators
Como se obtienen los operadores de cluster
oc get clusteroperators
Como se describe el cluster operator openshift-apiserver?
oc get clusteroperators openshift-apiserver
Como se obtiene el pod openshift-apiserver-operator-7ddc8958fb-7m2kr con json y el campo status
oc get pod -n openshift-apiserver-operator
Como se obtiene la suma de consumo de los recursos y eventos de los clusters
oc adm top pods -A –sum
Como se muestran los labels de los pods del proyecto openshift-etcd
oc get pods -n openshift-etcd –show-labels
Como se obtienen los recursos usados de los containers del pod etcd-master01
oc adm top pods etcd-master01 \
-n openshift-etcd –containers
Como obtener todos los recursos por tipo, status y otros proyecto openshift-monitoring
oc get all -n openshift-monitoring –show-kind
Como obtener el log del pod alertmanager-main-0 en el proyecto openshift-monitoring
oc logs alertmanager-main-0 -n openshift-monitoring
Como obtener los eventos del namespace openshift-image-registry
oc get events -n openshift-image-registry
Como se obtienen los recursos ocupados por los nodos
oc adm top node
Como obtener el nodo master01 en json
status.allocatable.cpu
status.capacity.cpu
oc get node master01 -o jsonpath=\
‘Allocatable: {.status.allocatable.cpu}{“\n”}’\
‘Capacity: {.status.capacity.cpu}{“\n”}’
Como se obtiene cuantos pods pueden alojarse en el nodo master01
oc get node master01 -o jsonpath=\
‘{.status.allocatable.pods}{“\n”}’
Como ver los logs del nodo master01 del servicio crio sin entrar al nodo
oc adm node-logs master01 -u crio –tail 1
Como ver los logs del nodo master01 del servicio kubelet sin entrar al nodo
oc adm node-logs master01 -u kubelet –tail 1
Como ver los logs del nodo master01 del servicio crio y kubelet entrando al nodo
oc debug node/master01
systemctl status kubelet
systemctl status crio
Como se obtienen los recursos del core api
oc api-resources –api-group ‘’