CentOS 7安装k8s

代码与诗歌 2024-07-04 ⋅ 27 阅读

介绍

Kubernetes(简称k8s)是一种开源的容器编排和管理平台,用于自动化部署、扩展和管理容器化应用程序。在CentOS 7上安装Kubernetes可以轻松地构建和管理多个容器,提供高可用性和弹性。

环境准备

  • 操作系统: CentOS 7
  • 硬件资源:至少2台虚拟机,推荐使用4台以上虚拟机以实现高可用配置
  • 网络连接:确保所有虚拟机相互之间能够互相通信,并且能够访问互联网

安装准备

  1. 更新系统和软件包:
sudo yum update -y
sudo reboot
  1. 禁用swap:
sudo swapoff -a
sudo sed -i '/ swap / s/^/#/' /etc/fstab
  1. 配置SELinux:
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
sudo setenforce 0

安装Docker

  1. 安装Docker:
sudo yum install docker -y
  1. 启动Docker服务并设置开机自启:
sudo systemctl start docker
sudo systemctl enable docker

配置Kubernetes的yum源

  1. 创建kubernetes.repo文件:
sudo vi /etc/yum.repos.d/kubernetes.repo
  1. 添加如下内容:
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
  1. 保存文件并退出编辑器。

安装Kubernetes Master节点

  1. 安装kubelet、kubeadm和kubectl:
sudo yum install kubelet kubeadm kubectl -y
  1. 启动kubelet服务并设置开机自启:
sudo systemctl enable kubelet
sudo systemctl start kubelet
  1. 初始化Kubernetes Master节点:
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
  1. 记下输出中的kubeadm join命令,此命令将用于将Worker节点加入到Kubernetes集群。

  2. 设置当前用户的Kubernetes配置:

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
  1. 安装网络插件(这里以Flannel为例):
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

安装Kubernetes Worker节点

  1. 在各个Worker节点上执行第4步中输出的kubeadm join命令。

  2. 在Master节点上运行以下命令,将每个节点标记为Ready状态:

kubectl get nodes
kubectl label node <worker-node-name> node-role.kubernetes.io/worker=worker 

测试集群安装

  1. 运行以下命令,确认Master节点和Worker节点都已经启动:
kubectl get nodes
  1. 运行以下命令,确认所有的Pod都处于Running状态:
kubectl get pods --all-namespaces
  1. 运行以下命令,确认Kubernetes集群已经安装成功:
kubectl run nginx --image=nginx --port=80
kubectl expose deployment nginx --port=80
kubectl get svc

结论

现在你已经成功地在CentOS 7上安装了Kubernetes集群。通过Kubernetes的强大功能,您可以轻松地管理和扩展您的容器化应用程序,提高应用程序的可用性和弹性。


全部评论: 0

    我有话说: