云计算项目九:K8S安装

K8S安装

Kube-master安装

按照如下配置准备云主机

防火墙相关配置:禁用selinux,禁用swap,且在firewalld-*。上传kubernetes.zip 到跳板机

配置yum仓库(跳板机)

shell 复制代码
跳板机主机配置k8s软件源服务端
[root@js ~]# yum -y install vsftpd
[root@js ~]# mkdir /var/ftp/localrepo
[root@js ~]# systemctl restart vsftpd
[root@js ~]# cd project3/jumpserver/
[root@js kubernetes]# cp -a v1.17.6/k8s-install/ /var/ftp/localrepo/
[root@js kubernetes]# cd /var/ftp/localrepo/
[root@js localrepo]# createrepo . # 如果之前是做好的 可以createrepo --update . 更新
master主机更改yum配置文件
[root@master ~]# vim /etc/yum.repos.d/local.repo
[k8s]
name=k8s
baseurl=ftp://192.168.1.252/localrepo
enabled=1
gpgcheck=0
同步到node1,node2,node3
[root@master ~]# scp /etc/yum.repos.d/local.repo 192.168.1.31:/etc/yum.repos.d/
[root@master ~]# scp /etc/yum.repos.d/local.repo 192.168.1.32:/etc/yum.repos.d/
[root@master ~]# scp /etc/yum.repos.d/local.repo 192.168.1.33:/etc/yum.repos.d/
跳板机js主机配置docker的软件源服务端
[root@js localrepo]# cp /root/project3/jumpserver/docker-ce.rpm ./k8s-install/
[root@js localrepo]# createrepo --update .
安装软件包(master)
安装kubeadm、kubectl、kubelet、docker-ce
[root@master ~]# yum install -y kubeadm kubelet kubectl docker-ce
[root@master ~]# mkdir -p /etc/docker
[root@master ~]# vim /etc/docker/daemon.json
{
	"exec-opts":["native.cgroupdriver=systemd"] # 设置驱动
}
[root@master ~]# systemctl enable --now docker kubelet
[root@master ~]# docker info | grep Cgroup
Cgroup Driver:systemd
[root@master ~]# vim /etc/sysctl.d/k8s.conf # 开启路由转发

镜像导入私有仓库


测试私有仓库是否可以正常使用 node-0001 node-0002 node-0003 同样操作

Tab键设置

shell 复制代码
master主机设置tab键
[root@master ~]# kubectl completion bash > /etc/bash_completion.d/kubectl
[root@master ~]# kubeadm completion bash > /etc/bash_completion.d/kubeadm
[root@master ~]# exit 

安装IPVS代理软件包

shell 复制代码
[root@master ~]# yum install -y ipvsadm ipset

配置主机名

shell 复制代码
[root@master ~]# vim /etc/hosts
192.168.1.21 master
192.168.1.31 node-0001
192.168.1.32 node-0002
192.168.1.33 node-0003
192.168.1.100 harbor

使用kubeadm部署

应答文件在js主机的 project3/kubernetes/v1.17.6/config目录下

验证安装结果

shell 复制代码
[root@master ~]# kubectl version
[root@master ~]# kubectl get cs 

计算节点的安装

获取token

shell 复制代码
# 创建token
[root@master ~]# kubeadm token create --ttl=0 --print-join-command
[root@master ~]# kubeadm token list
# 获取token_hash
[root@master ~]# openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der | openssl dgst -sha256 -hex

node安装 在sj主机 使用ansible执行node节点安装

shell 复制代码
[root@js ~]# cd project3/kubernetes/
[root@js kubernetes]# unzip ansible.zip
[root@js kubernetes]# cd ansible/
[root@js ansible]# yum -y install ansible-2.4.2.0-2.e17.noarch.rpm
[root@js ~]# ssh-keygen
[root@js ~]# for i in 192.168.1.{31..33}; do ssh-copy-id 192.168.1.{i} ; done
[root@js ~]# cd /root/project3/kubernetes/v1.17.6/node-install/
[root@js node-install]# vim files/hosts
shell 复制代码
[root@js node-install]# vim files/daemon.json
{
	"exce-opts":["native.cgroupdriver=systemd"]
}
[root@js node-install]# vim node_install.yaml
...
	vars:
		master:"192.168.1.21:6443"
		token:"xxxx"
		token_hash:"xxxxx"
...
[root@js node-install]# ansible-playbook node_install.yaml

网络插件安装配置

上传镜像到私有仓库

修改配置文件并安装

验证结果

相关推荐
MrSYJ3 小时前
别人再问你路由表是啥,这篇文章摔它脸上
docker·云原生·kubernetes
羑悻4 小时前
穿越Docker内核迷雾:揭秘镜像分层存储的叠加态与卷挂载的多维空间穿梭技术
后端·docker·容器
吴声子夜歌5 小时前
Nginx应用与运维——Nginx在Kubernetes中的应用(一)
运维·nginx·kubernetes
for_ever_love__5 小时前
容器类型全家桶——list、tuple、dict、set 与推导式
python·容器·数据类型·大模型开发
筑梦之路5 小时前
docker-compose方式部署kafka集群(Kraft方式)——筑梦之路
docker·容器·kafka
JavaPub-rodert6 小时前
Docker 镜像地址总失效?基于 DockerHub 项目用 GitHub Actions 做一个自动检测状态页
docker·容器·github
天衍四九-6 小时前
Docker进阶实战系列(二):容器日志深度治理|驱动配置、自动切割、磁盘爆满彻底解决
docker·容器·eureka
吴声子夜歌7 小时前
Nginx应用与运维——Nginx在Kubernetes中的应用(三)
运维·nginx·kubernetes
sbjdhjd7 小时前
云安全 | Docker 容器逃逸复盘(一):从隔离边界到运行时链路,如何确认自己身处容器
网络安全·docker·云原生·容器·kubernetes·云计算·云安全
吴声子夜歌8 小时前
Nginx应用与运维——Nginx在Kubernetes中的应用(二)
运维·nginx·kubernetes