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

网络插件安装配置

上传镜像到私有仓库

修改配置文件并安装

验证结果

相关推荐
jason成都2 分钟前
emqx的docker部署
运维·docker·容器
谷粒.1 小时前
云原生时代的测试策略:Kubernetes环境下的测试实践
运维·网络·云原生·容器·kubernetes
java_logo1 小时前
Milvus GUI ATTU Docker 容器化部署指南
运维·数据库·docker·容器·eureka·milvus
❥ღ Komo·2 小时前
K8s Secrets:敏感数据安全存储指南
安全·容器·kubernetes
眠晚晚2 小时前
云上攻防-Docker-堡垒机安全详解
安全·web安全·网络安全·docker·容器
weixin_307779133 小时前
基于AWS安全组的两层架构访问控制设计与实现
运维·云原生·架构·云计算·aws
weixin_46683 小时前
K8S-高可用集群
java·docker·kubernetes
❥ღ Komo·3 小时前
K8s ConfigMap:配置管理的终极指南
云原生·容器·kubernetes
G皮T3 小时前
【云计算】云平台权限治理(六):企业项目的管理结构
阿里云·云计算·公有云·混合云·企业项目·vdc·虚拟数据中心
G皮T3 小时前
【云计算】云平台权限治理(五):VDC 的树形管理结构
阿里云·云计算·公有云·混合云·vdc·数据虚拟中心·云治理