k8s主节点环境巡检脚本,针对于k8s的主节点!巡检!各个服务状态等等!还有系统版本,是不是与外网进行互通

#!/bin/bash 
 
# 定义检查函数 
check_status() {
  component="$1"
  status_code="$2"
 
  if [ "$status_code" -ne 0 ]; then 
    echo "[$(date)] $component is not working properly. Exit code: $status_code"
    exit 1 
  fi 
}
 
# 检查API服务器 
echo "Checking Kubernetes API server..."
kubectl get componentstatuses --field-selector status=healthy -o json > /dev/null 2>&1 
check_status "Kubernetes API server" "$?"
 
# 检查etcd集群 
echo "Checking etcd cluster..."
ETCDCTL_API=3 etcdctl --endpoints=https://[ETCD_ENDPOINTS] --cacert=/path/to/etcd/ca.crt --cert=/path/to/etcd/client.crt --key=/path/to/etcd/client.key endpoint health --timeout=3s > /dev/null 2>&1 
check_status "etcd cluster" "$?"
 
# 检查控制器管理器 
echo "Checking Kubernetes controller manager..."
kubectl get pods --namespace=kube-system --selector="k8s-app=kube-controller-manager" --output=json > /dev/null 2>&1 
check_status "Kubernetes controller manager" "$?"
 
# 检查调度器 
echo "Checking Kubernetes scheduler..."
kubectl get pods --namespace=kube-system --selector="k8s-app=kube-scheduler" --output=json > /dev/null 2>&1 
check_status "Kubernetes scheduler" "$?"
 
# 检查DNS服务 
echo "Checking Kubernetes DNS service..."
kubectl get services --namespace=kube-system --selector="k8s-app=kube-dns" --output=json > /dev/null 2>&1 
check_status "Kubernetes DNS service" "$?"
 
# 检查系统版本 
echo "Checking system version..."
cat /etc/os-release | grep PRETTY_NAME | cut -d= -f2 > /dev/null 2>&1 
check_status "system version" "$?"
 
# 检查网络连接 
echo "Checking network connection..."
ping -c 1 google.com > /dev/null 2>&1 
check_status "network connection" "$?"
 
echo "All components are healthy, and the system is connected to the internet."

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值