在CentOS上搭建Kubernetes(k8s)环境是一个相对复杂的过程,需要按照一定的步骤进行。以下是一个详细的指南,帮助你在CentOS上安装和配置Kubernetes集群。
关闭防火墙:
systemctl stop firewalld systemctl disable firewalld 关闭SELinux:
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config setenforce 0 禁用交换分区:
swapoff -a sed -i '/swap/s/^$.*$$/#\1/g' /etc/fstab 设置主机名:
hostnamectl set-hostname k8s-master 配置静态IP: 编辑网络配置文件(例如 /etc/sysconfig/network-scripts/ifcfg-ens33),配置如下:
TYPE=ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=d90cbc3c-ba5e-4a72-8f7e-a5ae8c48158a DEVICE=ens33 ONBOOT=yes IPADDR=192.168.8.106 NETMASK=255.255.255.0 GATEWAY=192.168.8.1 DNS1=8.8.8.8 DNS2=114.114.114.114 时间同步:
yum install -y ntpdate ntpdate ntp.aliyun.com systemctl enable ntpdate systemctl start ntpdate 安装依赖包:
yum install -y yum-utils device-mapper-persistent-data lvm2 添加Docker国内源:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 更新yum包软件索引:
yum makecache fast 安装Docker:
yum install -y docker-ce docker-ce-cli containerd.io 启动Docker并设置开机启动:
systemctl start docker systemctl enable docker 验证Docker安装:
docker --version 设置Kubernetes源:
cat << EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF 安装kubelet、kubeadm、kubectl:
yum install -y kubelet kubeadm kubectl 配置kubelet: 编辑 /etc/kubernetes/kubelet.conf 文件,设置 --cgroup-driver 为 systemd(如果使用Docker作为容器运行时)。
初始化Master节点:
kubeadm init --apiserver-advertise-address 192.168.8.106 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr 10.244.0.0/16 拷贝Kubernetes认证文件:
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config 添加Worker节点: 在Master节点上获取Join命令并复制给每个Worker节点:
kubeadm token create --print-join-command 部署CNI容器网络插件(如Flannel):
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 验证集群状态:
kubectl get nodes 检查集群状态:
kubectl get nodes 查看Pod状态:
kubectl get pods --all-namespaces 检查事件日志:
kubectl get events 检查系统资源:
free -g cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l dd if=/dev/zero of=/tmp/testfile bs=4K count=512 convfdatasync oflag=direct,nonblock 查看日志文件:
journalctl -xe tail -f /var/log/messages dmesg -T tail -f /sysvol/mariadb/mariadb_data/mysql-error.log 通过以上步骤,你可以在CentOS上成功搭建和配置Kubernetes集群。如果在安装过程中遇到问题,可以参考相关的官方文档或寻求社区帮助。