云计算项目九: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

网络插件安装配置

上传镜像到私有仓库

修改配置文件并安装

验证结果

相关推荐
虎头金猫1 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
赵文宇(温玉)1 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang1 天前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren1 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
小葱运维1 天前
命名与环境规范
运维·开源·云计算
workflower1 天前
SSH(Struts+Spring+Hibernate)
人工智能·机器学习·机器人·云计算·无人机
忆~遂愿2 天前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器
Thneonl2 天前
你的 Pod 为什么 Pending:调度器两阶段
后端·kubernetes
不吃香菜kkk、2 天前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
金融小师妹2 天前
AI金融能力评估:18个主流模型金融问题平均错误率达57%
人工智能·云计算·逻辑回归·深度优先