1. 引言
Kubernetes(简称K8s)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用。本文将详细介绍如何安装Kubernetes 1.12版本,帮助您轻松上手并告别复杂的部署过程。
2. 安装前的准备工作
在开始安装之前,请确保您的系统满足以下要求:
- 操作系统:Ubuntu 16.04 或 CentOS 7
- CPU:位
- 内存:至少2GB
- 磁盘:至少1GB(用于Kubernetes存储)
3. 安装步骤
3.1 准备主机
- 设置主机名
为您的服务器设置主机名,以便于后续操作。例如,将主机名设置为 k8s-master
。
hostnamectl set-hostname k8s-master
- 禁用Swap
在安装Kubernetes之前,需要禁用Swap。执行以下命令:
sudo swapoff -a
- 更新系统
更新系统软件包,确保所有依赖项都是最新的。
sudo apt-get update
sudo apt-get upgrade
3.2 安装Docker
- 安装Docker
sudo apt-get install docker.io
- 启动Docker服务
sudo systemctl start docker
sudo systemctl enable docker
3.3 安装Kubernetes组件
- 安装kubeadm、kubelet和kubectl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
- 启动kubelet服务
sudo systemctl start kubelet
sudo systemctl enable kubelet
3.4 初始化集群
- 初始化master节点
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
- 将worker节点加入到集群
将worker节点加入到集群,需要执行以下命令(在master节点上执行):
sudo kubectl config set-context --current --cluster k8s-master --namespace default --host <master-node-ip>:43
其中 <master-node-ip>
为master节点的IP地址。
- 安装网络插件
安装Flannel网络插件,以实现跨节点通信。
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
4. 验证安装
- 检查集群状态
kubectl get nodes
应该看到所有节点都已正常加入集群。
- 部署一个示例应用
kubectl apply -f https://k8s.io/examples/application/deployment.yaml
- 查看应用状态
kubectl get pods
应该看到应用已成功部署。
5. 总结
通过本文的教程,您已经成功安装了Kubernetes 1.12版本,并掌握了基本的集群管理操作。希望这篇教程能帮助您轻松上手Kubernetes,并开启您的容器化之旅。