Requirement:
curl -sg 'http://prom-server:prom-port/api/v1/metadata' | jq -r '.data'
Requirement:
curl -sg 'http://prom-server:prom-port/api/v1/metadata' | jq -r '.data'
Requirements
promtool - see installation steps here
Command
promtool query instant '' '' | jq
# Get all control-plane nodes
kubectl get nodes -o json | jq -r '.items[] | select(.metadata.labels."node-role.kubernetes.io/control-plane"=="true").metadata.name'
# Get all worker nodes
kubectl get nodes -o json | jq -r '.items[] | select(.metadata.labels."node-role.kubernetes.io/control-plane"!="true").metadata.name'
k get pods -A -o json | jq -r '["NAMESPACE", "POD_NAME", "NODE_NAME", "RESTART_COUNT"], (.items[] | select(.status.containerStatuses[].restartCount > 0) | [.metadata.namespace, .metadata.name, .spec.nodeName, .status.containerStatuses[].restartCount]) | @tsv' | sort -k1,1 | column -t -s $'\t'
k get pods -A -o json | jq -r '(.items[] | select(.status.containerStatuses[].restartCount > 0) | [.metadata.namespace, .metadata.name]) | @tsv' | sort -k1,1 | column -t -s $'\t'
# List all deleted pods | |
kubectl get pods -o json | jq -r '.items[] | select(.metadata.deletionTimestamp != null)' |
# Search by key | |
kubectl get nodes -o json | jq -r '.items[] | select(.spec.taints[]? | select(.key == "foo/bar")) | .metadata.name' | |
# Search by key and value | |
kubectl get nodes -o json | jq -r '.items[] | select(.spec.taints[]? | select(.key=="foo/bar" and .value=="baz")) | .metadata.name' |
kubectl get nodes -o json | jq -r '.items | map({name: (.metadata.name + ""), type: (if (.metadata.labels | has("node-role.kubernetes.io/control-plane")) then "control-plane" else "worker" end), status: (.status.conditions[] | select(.type=="Ready") | if .status == "True" then "Ready" else "NotReady" end)}) | group_by(.type) | (["NODE_NAME", "NODE_TYPE", "NODE_STATUS"] | (., map(length*"-"))), (.[][] | [.name,.type,.status]) | @tsv' | column -ts $'\t' |
apiVersion: apps/v1 | |
kind: Deployment | |
metadata: | |
name: netshoot | |
labels: | |
app: netshoot | |
spec: | |
replicas: 1 | |
selector: | |
matchLabels: |