centos7单机安装docker和k8s

在CentOS 7上单机安装Docker和Kubernetes(K8s)涉及一系列步骤,包括环境准备、安装Docker、配置Kubernetes的yum源、安装Kubernetes组件以及初始化Kubernetes集群。以下是详细的步骤和代码示例:

一、环境准备

更新系统:

bash 复制代码
sudo yum update -y

这一步是为了确保系统是最新的,并且安装了所有必要的补丁和安全更新。

关闭防火墙(可选,但推荐在测试环境中进行):

bash 复制代码
sudo systemctl disable firewalld  
sudo systemctl stop firewalld

注意:在生产环境中,应该谨慎处理防火墙设置,以确保系统安全。

关闭和禁用交换空间(Kubernetes不推荐在启用交换空间的情况下运行):

bash 复制代码
sudo swapoff -a  
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

二、安装Docker

安装必要的软件包:

bash 复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

设置Docker的yum源:

你可以选择使用Docker的官方源或国内的镜像源(如阿里云)来加速下载。这里以Docker官方源为例:

bash 复制代码
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
bash 复制代码
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装Docker CE:

bash 复制代码
sudo yum install docker-ce -y

启动Docker服务并设置为开机启动:

bash 复制代码
sudo systemctl enable docker  
sudo systemctl start docker

三、配置Kubernetes的yum源

创建Kubernetes的yum仓库文件:

bash 复制代码
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo  
[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  
EOF

四、安装Kubernetes组件

安装kubelet、kubeadm和kubectl:

bash 复制代码
sudo yum install -y kubelet kubeadm kubectl

启动kubelet服务并设置为开机启动:

bash 复制代码
sudo systemctl enable kubelet  
sudo systemctl start kubelet

五、初始化Kubernetes集群

使用kubeadm初始化集群:

bash 复制代码
sudo kubeadm init --pod-network-cidr=10.244.0.0/16

注意:--pod-network-cidr参数指定了Pod网络的CIDR范围,这是安装网络插件时必需的。

配置kubectl以访问集群:

初始化完成后,按照kubeadm输出的提示,执行以下命令来配置kubectl:

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

六、安装网络插件

Kubernetes需要网络插件来实现Pod之间的通信。这里以Calico为例:

bash 复制代码
sudo kubectl apply -f https://docs.projectcalico.org/v3.x/manifests/calico.yaml

注意:请确保替换v3.x为实际的Calico版本号。

至此,你已经在CentOS 7上成功安装了Docker和Kubernetes,并初始化了Kubernetes集群。现在,你可以使用kubectl命令来管理你的集群了。

以上步骤和代码示例基于当前可用的信息和最佳实践编写,但请注意,由于软件和系统不断更新,具体的步骤和参数可能会有所变化。因此,建议在执行上述步骤之前,先查看官方文档和社区资源以获取最新的信息。

相关推荐
阿尔帕兹1 小时前
构建 HTTP 服务端与 Docker 镜像:从开发到测试
网络协议·http·docker
ZHOU西口3 小时前
微服务实战系列之玩转Docker(十八)
分布式·docker·云原生·架构·数据安全·etcd·rbac
景天科技苑5 小时前
【云原生开发】K8S多集群资源管理平台架构设计
云原生·容器·kubernetes·k8s·云原生开发·k8s管理系统
wclass-zhengge6 小时前
K8S篇(基本介绍)
云原生·容器·kubernetes
颜淡慕潇6 小时前
【K8S问题系列 |1 】Kubernetes 中 NodePort 类型的 Service 无法访问【已解决】
后端·云原生·容器·kubernetes·问题解决
川石课堂软件测试8 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
昌sit!14 小时前
K8S node节点没有相应的pod镜像运行故障处理办法
云原生·容器·kubernetes
追风林15 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
A ?Charis17 小时前
Gitlab-runner running on Kubernetes - hostAliases
容器·kubernetes·gitlab
城南vision17 小时前
Docker学习—Docker核心概念总结
java·学习·docker