首页 > 编程知识 正文

K8s安装,阿里云k8s搭建

时间:2023-05-05 14:53:13 阅读:189155 作者:254

kubernetes – 01 kubernetes 安装

按照如下配置准备云主机

主机名IP地址最低配置master192.168.1.212CPU,2G内存node-0001192.168.1.312CPU,2G内存node-0002192.168.1.322CPU,2G内存node-0003192.168.1.332CPU,2G内存registry192.168.1.1001CPU,1G内存kube-master安装 1、防火墙相关配置

参考前面知识点完成禁用 selinux,禁用 swap,卸载 firewalld-*

2、配置yum仓库 [root@ecs-proxy ~]# cp -a v1.17.6/k8s-install /var/ftp/localrepo/[root@ecs-proxy ~]# cd /var/ftp/localrepo/[root@ecs-proxy localrepo]# createrepo --update . 3、安装工具软件包

安装kubeadm、kubectl、kubelet、docker-ce

[root@master ~]# yum makecache[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"], "registry-mirrors": ["https://hub-mirror.c.163.com"], "insecure-registries":["192.168.1.100:5000", "registry:5000"]}[root@master ~]# systemctl enable --now docker kubelet[root@master ~]# docker info |grep CgroupCgroup Driver: systemd[root@master ~]# vim /etc/sysctl.d/k8s.confnet.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1net.ipv4.ip_forward = 1[root@master ~]# modprobe br_netfilter[root@master ~]# sysctl --system 4、镜像导入私有仓库 # 把云盘 kubernetes/v1.17.6/base-images 中的镜像拷贝到 master[root@master ~]# cd base-images/[root@master base-image]# for i in *.tar.gz;do docker load -i ${i};done[root@master base-image]# docker images[root@master base-image]# docker images |awk '$2!="TAG"{print $1,$2}'|while read _f _v;do docker tag ${_f}:${_v} 192.168.1.100:5000/${_f##*/}:${_v}; docker push 192.168.1.100:5000/${_f##*/}:${_v}; docker rmi ${_f}:${_v}; done# 查看验证[root@master base-image]# curl http://192.168.1.100:5000/v2/_catalog 5、Tab键设置 [root@master ~]# kubectl completion bash >/etc/bash_completion.d/kubectl[root@master ~]# kubeadm completion bash >/etc/bash_completion.d/kubeadm[root@master ~]# exit 6、安装IPVS代理软件包 [root@master ~]# yum install -y ipvsadm ipset 7、系统初始化,排错

根据提示排错若干

[root@master ~]# vim /etc/hosts192.168.1.21master192.168.1.31node-0001192.168.1.32node-0002192.168.1.33node-0003192.168.1.100registry[root@master ~]# kubeadm init --dry-run 8、使用kubeadm部署

应答文件在云盘的 kubernetes/v1.17.6/config 目录下

[root@master ~]# mkdir init;cd init# 拷贝 kubeadm-init.yaml 到 master 云主机 init 目录下[root@master init]# kubeadm init --config=kubeadm-init.yaml |tee master-init.log# 根据提示执行命令[root@master init]# mkdir -p $HOME/.kube[root@master init]# sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config[root@master init]# sudo chown $(id -u):$(id -g) $HOME/.kube/config 9、验证安装结果 [root@master ~]# kubectl version[root@master ~]# kubectl get componentstatusesNAME STATUS MESSAGE ERRORcontroller-manager Healthy okscheduler Healthy oketcd-0 Healthy {"health":"true"} 计算节点安装 1、获取token # 创建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 2、node安装

拷贝云盘上 kubernetes/v1.17.6/node-install 到跳板机

[root@ecs-proxy ~]# cd node-install/[root@ecs-proxy node-install]# vim files/hosts::1 localhost localhost.localdomain localhost6 localhost6.localdomain6127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4192.168.1.21 master192.168.1.31 node-0001192.168.1.32 node-0002192.168.1.33 node-0003192.168.1.100 registry[root@ecs-proxy node-install]# vim node_install.yaml... ... vars: master: '192.168.1.21:6443' token: 'fm6kui.mp8rr3akn74a3nyn' token_hash: 'sha256:f46dd7ee29faa3c096cad189b0f9aedf59421d8a881f7623a543065fa6b0088c'... ...[root@ecs-proxy node-install]# ansible-playbook node_install.yaml 3、验证安装 [root@master ~]# kubectl get nodesNAME STATUS ROLES AGE VERSIONmaster NotReady master 130m v1.17.6node-0001 NotReady <none> 2m14s v1.17.6node-0002 NotReady <none> 2m15s v1.17.6node-0003 NotReady <none> 2m9s v1.17.6 网络插件安装配置

拷贝云盘 kubernetes/v1.17.6/flannel 目录到 master 上

1、上传镜像到私有仓库 [root@master ~]# cd flannel[root@master flannel]# docker load -i flannel.tar.gz[root@master flannel]# docker tag quay.io/coreos/flannel:v0.12.0-amd64 192.168.1.100:5000/flannel:v0.12.0-amd64[root@master flannel]# docker push 192.168.1.100:5000/flannel:v0.12.0-amd64 2、修改配置文件并安装 [root@master flannel]# vim kube-flannel.yml128: "Network": "10.244.0.0/16",172: image: 192.168.1.100:5000/flannel:v0.12.0-amd64186: image: 192.168.1.100:5000/flannel:v0.12.0-amd64227-结尾: 删除[root@master flannel]# kubectl apply -f kube-flannel.yml 3、验证结果 [root@master flannel]# kubectl get nodesNAME STATUSROLESAGEVERSIONmasterReadymaster26hv1.17.6node-0001Ready<none>151mv1.17.6node-0002Ready<none>152mv1.17.6node-0003Ready<none>153mv1.17.6

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。