引言

Kubernetes(简称K8s)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。K8s 1.8 版本引入了许多新特性和改进,使得集群的安装与配置更加便捷。本文将为您提供一个详细的指南,帮助新手轻松上手 K8s 1.8 集群的安装与配置。

环境准备

在开始之前,请确保以下环境已经准备就绪:

  1. 操作系统:推荐使用 CentOS 7.6 或更高版本。
  2. 虚拟机:可以使用 VMware 或 VirtualBox 创建虚拟机。
  3. Docker:确保 Docker 版本在 1.12.6 或更高。
  4. 网络:确保虚拟机之间的网络可以正常通信。

安装与配置步骤

1. 替换 yum 源

将默认的 yum 源更换成阿里云的 yum 源,以提高软件包的下载速度。

mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/.repo /etc/yum.repos.d/bak
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum clean all
sudo yum makecache

2. 关闭 Selinux

关闭 Selinux 以避免与 Kubernetes 冲突。

sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

3. 关闭防火墙

关闭防火墙以允许容器之间通信。

sudo systemctl stop firewalld
sudo systemctl disable firewalld

4. 关闭 Swap

关闭 Swap 以避免与 Kubernetes 冲突。

sudo swapoff -a
sudo sed -i '/ swap / s/^/#/' /etc/fstab

5. 修改主机名

为每台虚拟机设置一个主机名,以便于管理。

hostnamectl set-hostname k8smaster

6. 时间同步

设置系统时间与网络时间同步。

sudo yum install -y ntp
sudo systemctl start ntpd
sudo systemctl enable ntpd
sudo timedatectl set-ntp true

7. 安装 Docker

安装 Docker 并启动服务。

sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker

8. 设置 K8s yum 源

设置 K8s yum 源,以便于安装 K8s 组件。

cat << EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_/
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

sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubelet
sudo systemctl start kubelet
sudo systemctl enable kubelet

9. 初始化 Master 节点

在 Master 节点上执行以下命令,初始化集群。

sudo kubeadm init --pod-network-cidr=10.244.0.0/16

初始化成功后,将配置文件保存到本地。

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

10. 安装网络插件

安装 Calico 网络插件。

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

11. 安装 Node 节点

在 Node 节点上执行以下命令,将节点加入到集群。

sudo kubeadm join 192.168.5.10:43 --token <token> --discovery-token-ca-cert-hash sha256:<hash>

其中,<token><hash> 需要根据实际情况替换。

12. 验证集群

验证集群是否正常运行。

kubectl get nodes

如果所有节点都处于 Ready 状态,说明集群安装成功。

总结

通过以上步骤,您已经成功安装和配置了 K8s 1.8 集群。接下来,您可以开始使用 Kubernetes 管理您的容器化应用程序了。希望本文能帮助您轻松上手 K8s 1.8!