#!/bin/bash
# 配置参数
NAMESPACE="default"
LIMITS_FILE="/path/to/resource_limits.yaml"
LOG_FILE="/var/log/k8s_resource_limits.log"
# 检查并创建日志文件
if [ ! -f "$LOG_FILE" ]; then
touch "$LOG_FILE"
fi
# 记录日志函数
log() {
echo "$(date +"%Y-%m-%d %H:%M:%S") - $1" >> "$LOG_FILE"
}
# 检查资源限制文件是否存在
if [ ! -f "$LIMITS_FILE" ]; then
log "Error: Resource limits file $LIMITS_FILE does not exist."
exit 1
fi
# 应用资源限制
log "Applying resource limits to namespace $NAMESPACE..."
kubectl apply -f "$LIMITS_FILE" -n "$NAMESPACE"
if [ $? -eq 0 ]; then
log "Resource limits applied successfully to namespace $NAMESPACE."
else
log "Failed to apply resource limits to namespace $NAMESPACE. Please check the logs for details."
exit 1
fi
# 检查资源限制是否生效
log "Checking resource limits status..."
kubectl describe limits -n "$NAMESPACE"
log "Resource limits setup completed successfully."