部署k8s集群
K8s最基本的硬件要求CPU:双核MEm:2G3台dockerhost 时间必须同步kubeadm工具三台全部操作:1.命名:[root@docker01 ~]# hostnamectl set-hostname master[root@docker02 ~]# hostnamectl set-hostname node02[root@docker03 ~]# hostnamectl set-hostname node031.3台都验证docker:(版本必须一样)2.[root@master ~]# docker -vDocker version 18.09.0, build 4d60db41.3台docker禁用swap.2.
[root@master ~]# swapoff -a ##临时禁用 [root@master ~]# free -h total used free shared buff/cache available Mem: 1.8G 521M 193M 18M 1.1G 1.0G Swap: 0B 0B 0B
[root@master ~]# vim /etc/fstab 11行:#/dev/mapper/cl-swap swap
添加域名解析:[root@master ~]# vim /etc/hosts192.168.1.10 master192.168.1.20 node02192.168.1.30 node03master:免密登录:[root@master ~]# ssh-keygen -t rsa[root@master ~]# ssh-copy-id node02[root@master ~]# ssh-copy-id node03[root@master ~]# vim /etc/sysctl.d/k8s.conf ###打开iptables桥接功能net.bridge.bridge-nf-call-iptables = 1net.bridge.bridge-nf-call-ip6tables = 1路由转发:[root@master ~]# echo net.ipv4.ip_forward = 1 >> /etc/sysctl.conf [root@master ~]# sysctl -p[root@master ~]# sysctl -p /etc/sysctl.d/k8s.conf没成功输入下面的条件:[root@master ~]# modprobe br_netfilter[root@master ~]# scp /etc/sysctl.d/k8s.conf node02:/etc/sysctl.d/[root@master ~]# scp /etc/sysctl.d/k8s.conf node03:/etc/sysctl.d/[root@master ~]# scp /etc/sysctl.conf node02:/etc/[root@master ~]# scp /etc/sysctl.conf node03:/etc/三台都弄:添加yum源cat < /etc/yum.repos.d/kubernetes.repo[kubernetes]name=Kubernetesbaseurl=~]# yum repolist [root@master ~]# yum makecache fast安装依赖包:master:[root@master ~]# yum -y install kubeadm-1.15.0-0 kubelet-1.15.0-0 kubectl-1.15.0-0node02:[root@node02 ~]# yum -y install kubeadm-1.15.0-0 kubelet-1.15.0-0 node03:[root@node03 ~]# yum -y install kubeadm-1.15.0-0 kubelet-1.15.0-0 报错为网络原因或安装:[root@node03 ~]# yum -y install cri-tools-1.13.0-0.x86_64三台:[root@master ~]# systemctl enable kubeletmaster:基础镜像全部导入:coredns-1-3-1.taretcd-3-3-10.tarkube-apiserver-1-15.tarkube-controller-1-15.tarkube-proxy-1-15.tarkube-scheduler-1-15.tarmyflannel-11-0.tarpause-3-1.tar[root@master ~]# vim image.sh #!/bin/bashfor i in /root/*dodocker load < $idone[root@master ~]# kubeadm init --kubernetes-version=v1.15.0 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap重置,如果节点出现错误:[root@master ~]# kubeadm reset[root@master ~]# mkdir -p $HOME/.kube[root@master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config[root@master ~]# chown $(id -u):$(id -g) $HOME/.kube/configkubeadm join 192.168.1.10:6443 --token d8vpkc.4brscvprfhu87ohj \ --discovery-token-ca-cert-hash sha256:79e58944d84941ce4d2d42ab84aa3772e7db0af50f1f724d4f1da84a4be528a3 查看节点信息:[root@master ~]# kubectl get node解决网络问题:[root@master ~]# kubectl apply -f ~]# kubectl get nodeNAME STATUS ROLES AGE VERSIONmaster Ready master 20m v1.15.0node2和node3:[root@node02 ~]# mkdir images[root@node02 ~]# cd images/[root@node02 images]# rz[root@node02 images]# lskube-proxy-1-15.tar myflannel-11-0.tar pause-3-1.tar[root@node02 images]# docker load < kube-proxy-1-15.tar && docker load < myflannel-11-0.tar && docker load < pause-3-1.tar [root@node02 images]# kubeadm join 192.168.1.10:6443 --token d8vpkc.4brscvprfhu87ohj --discovery-token-ca-cert-hash sha256:79e58944d84941ce4d2d42ab84aa3772e7db0af50f1f724d4f1da84a4be528a3 master:[root@master ~]# kubectl get nodeNAME STATUS ROLES AGE VERSIONmaster Ready master 24m v1.15.0node02 Ready 32s v1.15.0node03 Ready 32s v1.15.0导入:kube-flannel.yml[root@master ~]# cat .vimrcset tabstop=2[root@master ~]# source .vimrc [root@master ~]# source /usr/share/bash-completion/bash_completion [root@master ~]# source <(kubectl completion bash)[root@master ~]# echo "source <(kubectl completion bash)" >> ~/.bashrc
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~