关注分享主机优惠活动
国内外VPS云服务器

部署k8s集群的超详细实用步骤(k8s分布式部署)

1.部署k8s的两种方式:目前,在生产中部署Kubernetes集群主要有两种方式:

KubeadmKubeadm是一个K8s部署工具,它提供了kubeadm init和kubeadm join,用于Kubernetes集群的快速部署。

二进制包从github下载发行版的二进制包,并手动部署每个组件以形成一个Kubernetes集群。

在这个实验中,kubeadm用于构建一个集群。

2.环境准备服务器的要求:

建议最低硬件配置:2核CPU,2G RAM,20G硬盘服务器应该可以访问外网,会有从网络拉映像的需求。如果服务器不能上网,需要提前下载相应的镜像,导入到节点软件环境中:

操作系统:CentOS 7.9 _ x64(mini)Docker:20-CEK8s:1.23服务器规划:(本实验使用虚拟机)

k8s -主节点:192 . 168 . 178 . 171 k8s -节点1:192 . 168 . 178 . 172 k8s -节点2:192.168.178.173

3.初始化配置

3.1.安装环境准备:需要在所有节点上执行以下操作。#关闭防火墙系统ctl停止防火墙dsystemctl禁用防火墙d #关闭selinux sed -I ' s/enforcing/disabled/'/etc/selinux/config #永久setenforce 0 #临时#关闭swapswapoff -a #临时sed-ri's/。*互换。*/# & /' /etc/fstab # permanent #设置主机名hostname CTL set-hostname :& gt;/etc/hosts & lt;& lteof 192 . 168 . 178 . 171 k8s -master 192 . 168 . 178 . 172 k8s -node 1192 . 168 . 178 . 173 k8s -node 2 eof #将桥接的IPv4流量传送到链cat > iptables >:/etc/sysctl . d/k8s . conf & lt;& lteof net . bridge . bridge -nf-call -IP 6 tables = 1 net . bridge . bridge -nf-call -iptables = 1 eof syst l--system # effective #时间同步yum install ntpdate -yntpdate time.windows.com注意:无论虚拟机是关机还是挂起,每次重启都需要更新时间进行同步。部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

3.2.安装docker,kubeadm,kube let[所有节点]安装Docker:

wget https://mirrors . aliyun . com/docker -ce/Linux/centos/docker -ce . repo -O/etc/yum . repos . d/docker -ce . repo yum -y install docker -cesystemctl enable docker & amp;& amp系统启动停靠栏部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

配置镜像下载加速器:

vim/etc/docker/daemon . JSON { " registry -mirrors ":

添加阿里云软件来源:

cat & gt/etc/yum . repos . d/kubernetes . repo & lt;& lt文件结束

4.部署K8S-Master【主执行】

4.1.kubeadm部署(需要等待一段时间)kube ADM init \ --API server -Advertise -Address = 192 . 168 . 178 . 171 \ --image-资源库registry.aliyuncs.com/google_containers \ --kubernetes -版本v 1 . 23 . 0 \ --service -CIDR = 10 . 96 . 0 . 0/12 \ -Pod -Network -CIDR = 10 . 244 . 0 . 0/16 \ -4初始化后,将输出一个join命令,首先复制该命令。当节点加入主节点时,将使用它。

部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

4.2.复制k8s认证文件mkdir -p $ home/. kube sudocp -I/etc/kubernetes/admin . conf $ home/。kube/config sudo chwn $(ID -U):$(ID -G)$ home/。kube/config查看工作节点:

kubectl获取节点部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

注意:由于网络插件还没有部署,所以它还没有准备好。去吧。

5.配置k8s节点[节点操作]

5.1.向集群添加一个新节点,并执行kubeadm init命令部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

默认情况下,令牌在24小时内有效。当它过期时,令牌将不可用。此时,您需要重新创建令牌,这可以通过使用以下命令快速生成:

kube ADM token create --print -join -命令

6.部署容器网络(主执行)Calico是纯三层数据中心网络方案,是目前Kubernetes的主流网络方案。

下载YAML:

下载https://docs.projectcalico.org/manifests/calico.yaml, WGET后,需要修改已定义的Pod网络(CALICO_IPV4POOL_CIDR),该网络与kubeadm init的--pod-network-cidr中指定的网络相同。

修改文件后,部署它:

KUBECTL应用-F印花棉布。YAMLKUBECTL GET PODS -N KUBE -SYSTEM #在所有运行部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

当Calico Pod运行时,节点将准备就绪。

部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

注意:将来,所有yaml文件将只在主节点中执行。

安装目录:/etc/kubernetes/

组件文件目录:/etc/kubernetes/manifest/

7.部署DashboardDashboard是一个官方UI,可以用来基本管理K8s资源。

YAML下载地址:

WGET https://raw . githubusercontent . com/Kubernetes/Dashboard/v 2 . 4 . 0/AIO/deploy/recommended . YAML默认仪表盘只能在集群内部访问,服务修改为NodePort类型,对外公开:

vi推荐. yaml...kind:serviceapi version:v1 metadata:labels:k8s -app:kubernetes-dashboard名称:kubernetes-dashboard名称空间:kubernetes -dashboard规格:ports:-port:443 target port:8443 nodePort:30001选择器:k8s-app: kubernetes-dashboard类型:nodePort...kubectl apply -f推荐。YAML kubectl get pods -n kubernetes -dashboard部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

地址:https://NodeIP:30001

部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

创建服务帐户并绑定默认的cluster-admin管理员群集角色:

# create user kubectl create service account dashboard -admin -nku be-system #授权用户kubectl创建clusterrole binding dashboard -admin --cluster role = cluster -admin --service account = kube -system:dashboard -admin # Get user token kubectl describe -nku be-system $(kubecl -nku be-system Get secret | awk '/dashboard -admin/{ print $ 1 } ')部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

使用输出令牌登录仪表板。

部署k8s集群的超详细实用步骤(k8s分布式部署)-主机频道

注意:

以上是我在实际施工过程中的经验总结。

综上所述,这篇关于部署k8s集群的超详细实践的文章就介绍到这里。更多相关k8s集群搭建内容,请搜索主机频道zhujipindao的往期文章。或者继续浏览下面的相关文章。希望大家支持主机频道zhujipindao。以后多来com!

未经允许不得转载:主机频道 » 部署k8s集群的超详细实用步骤(k8s分布式部署)

评论 抢沙发

评论前必须登录!