49 lines
1.6 KiB
Bash
Executable file
49 lines
1.6 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
HOME=$( cd "$(dirname "$0")" && pwd )
|
|
source $HOME/config
|
|
|
|
export KUBECONFIG=$ADMIN_KUBECONFIG
|
|
export HELM_CACHE_HOME=~/.cache/helm
|
|
export HELM_CONFIG_HOME=~/.config/helm
|
|
export HELM_DATA_HOME=~/.local/share/helm
|
|
|
|
kubectl cluster-info
|
|
|
|
printf "\n [ etcd cluster health: ]\n"
|
|
/usr/local/bin/etcdctl --endpoints="https://${ETCD_1_IP}:2379,https://${ETCD_2_IP}:2379,https://${ETCD_3_IP}:2379" --cert ${CA_DIR}/etcd.crt --key ${CA_DIR}/etcd.key --cacert ${CA_DIR}/etcd-ca.crt endpoint status
|
|
|
|
printf "\n [ kubernetes components health: ]\n"
|
|
/usr/local/bin/kubectl get componentstatuses
|
|
|
|
printf "\n [ kubernetes nodes: ]\n"
|
|
kubectl get nodes -o wide
|
|
|
|
printf "\n [ helm releases: ]\n"
|
|
helm ls --all-namespaces
|
|
|
|
if [ "$1" = "all" ]; then
|
|
printf "\n [ kubernetes deployments: ]\n"
|
|
/usr/local/bin/kubectl get deployments --all-namespaces
|
|
printf "\n [ kubernetes services: ]\n"
|
|
/usr/local/bin/kubectl get services --all-namespaces -o wide
|
|
printf "\n [ kubernetes ingresses: ]\n"
|
|
/usr/local/bin/kubectl get ingresses.v1.networking.k8s.io --all-namespaces
|
|
printf "\n [ kubernates storage claims: ]\n"
|
|
/usr/local/bin/kubectl get pvc --all-namespaces
|
|
printf "\n [ kubernetes pods: ]\n"
|
|
/usr/local/bin/kubectl get pods --all-namespaces -o wide
|
|
fi
|
|
|
|
if [ "$1" = "ceph" ];
|
|
then
|
|
printf "\n [ ceph status: ]\n"
|
|
/usr/local/bin/kubectl -n rook-ceph exec -it rook-ceph-tools -- ceph osd status
|
|
/usr/local/bin/kubectl -n rook-ceph exec -it rook-ceph-tools -- ceph df
|
|
/usr/local/bin/kubectl -n rook-ceph exec -it rook-ceph-tools -- ceph status
|
|
fi
|
|
|
|
if [ ! -z "$1" ]; then
|
|
printf "\n [ $1 status: ]\n"
|
|
/usr/local/bin/kubectl get $1 --all-namespaces -o wide
|
|
fi
|