k8s+docker一键安装过程

博客提及运行环境,包括k8s 1.20、docker 20.10以及centos7.9系统,聚焦于信息技术领域的容器相关环境配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境: k8s 1.20 docker 20.10 centos7.9

#docker安装
yum install -y epel-release
yum install -y yum-utils
yum-config-manager     --add-repo     https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce-20.10.6 docker-ce-cli-20.10.6 containerd.io
systemctl start docker
cat >>/etc/docker/daemon.json <<EOF
{
	"registry-mirrors":["https://reg-mirror.qiniu.com"]
	
}
EOF
systemctl daemon-reload
systemctl restart docker
#k8s安装
hostnamectl set-hostname name
cat >>/etc/hosts<<EOF 
192.168.118.190 k8s-master 
192.168.118.191 k8s-node1
192.168.118.192 k8s-node2 
EOF

cat >>etc/sysctl.d/k8s.conf<<EOF
net.bridge.bridge-nf-call-ip6tables = 1 
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1 
vm.swappiness = 0
EOF

sysctl -p /etc/sysctl.d/k8s.conf

cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash 
/etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4
swapoff -a
sed -i '/swap/ s/^/#/' /etc/fstab

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=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg 
https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF


yum install -y kubelet-1.20.6 kubeadm-1.20.6 kubectl-1.20.6

systemctl enable kubelet

kubeadm init --kubernetes-version=1.20.6 \
--apiserver-advertise-address=192.168.118.190 \
--image-repository registry.aliyuncs.com/google_containers \
--service-cidr=10.1.0.0/16 \
--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

wget http://docs.projectcalico.org/v3.8/manifests/calico.yaml


sed -i 's/192.168.0.0/10.244.0.0/g' calico.yaml

kubectl apply -f calico.yaml



### 关于一键安装 KubernetesDocker 的说明 目前并没有官方支持的一键命令可以直接在 Docker 中部署完整的 Kubernetes 集群。通常情况下,KubernetesDocker 是两个独立但紧密合作的技术栈: - **Docker** 主要用于构建、打包和运行容器化应用; - **Kubernetes (k8s)** 则是用来管理和编排这些容器集群的平台。 对于希望简化 Kubernetes 安装过程的需求,社区提供了多种解决方案,其中最流行的是 Minikube 或者 Kind(Kubernetes IN Docker)。这两个工具允许用户快速搭建单节点或多节点的本地 Kubernetes 测试环境。 #### 使用 `kind` 创建 Kubernetes 集群 Kind 提供了一种简单的方法来创建轻量级的 Kubernetes 环境,非常适合开发测试用途。以下是通过 kind 设置 Kubernetes 集群的例子: ```bash # 下载并安装 kind 工具 curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.17.0/kind-linux-amd64 chmod +x ./kind mv ./kind /usr/local/bin/ # 初始化一个新的 Kubernetes 集群 kind create cluster --name my-k8s-cluster ``` 上述脚本会基于默认配置自动拉取必要的镜像,并建立一个名为 `my-k8s-cluster` 的 Kubernetes 实例[^1]。 为了更进一步集成 Docker 作为容器运行时引擎,在某些特定场景下可能还需要额外配置 kubelet 来识别宿主机上的 Docker Socket 文件路径 `/var/run/docker.sock`[^2]。 需要注意的是,虽然可以借助类似 kind 这样的项目实现相对便捷的操作体验,但这并不意味着真正意义上实现了所谓“一键”完成从零到拥有功能完备 K8S 平台的过程;实际生产环境中往往涉及更多复杂考量因素以及安全策略设置等问题[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值