admin部署k8s

网友投稿 286 2022-09-12

admin部署k8s

实验机器以及部署准备

MASTER01:192.168.11.10 node01:192.168.11.11 node02:192.168.11.12 harbor:192.168.11.13 1、在所有节点上安装Docker和kubeadm 2、部署Kubernetes Master 3、部署容器网络插件 4、部署 Kubernetes Node,将节点加入Kubernetes集群中 5、部署 Dashboard Web 页面,可视化查看Kubernetes资源 6、部署 Harbor 私有仓库,存放镜像资源

==master以及node节点机器,必须要达到2核4G的内存,才可以进行部署,不然可能会报错==

环境准备

//所有节点,关闭防火墙规则,关闭selinux,关闭swap交换 systemctl stop firewalld systemctl disable firewalld setenforce 0 iptables -F && iptables -t nat -F && iptables -t mangle -F && iptables -X swapoff -a #交换分区必须要关闭 sed -ri 's/.*swap.*/#&/' /etc/fstab #永久关闭swap分区,&符号在sed命令中代表上次匹配的结果 #加载 ip_vs 模块 for i in $(ls /usr/lib/modules/$(uname -r)/kernel/net/netfilter/ipvs|grep -o "^[^.]*");do echo $i; /sbin/modinfo -F filename $i >/dev/null 2>&1 && /sbin/modprobe $i;done //修改主机名 hostnamectl set-hostname master01 hostnamectl set-hostname node01 hostnamectl set-hostname node02 //所有节点修改hosts文件 vim /etc/hosts 192.168.11.10 master 192.168.11.11 node01 192.168.11.12 node02 //调整内核参数 cat > /etc/sysctl.d/kubernetes.conf << EOF #开启网桥模式,可将网桥的流量传递给iptables链 net.bridge.bridge-nf-call-ip6tables=1 net.bridge.bridge-nf-call-iptables=1 #关闭ipv6协议 net.ipv6.conf.all.disable_ipv6=1 net.ipv4.ip_forward=1 EOF //生效参数 sysctl --system

所有节点安装docker

yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo yum install -y docker-ce docker-ce-cli containerd.io mkdir /etc/docker cat > /etc/docker/daemon.json <

所有节点安装kubeadm,kubelet和kubectl

//定义kubernetes源 cat > /etc/yum.repos.d/kubernetes.repo << EOF [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF yum install -y kubelet-1.15.1 kubeadm-1.15.1 kubectl-1.15.1 //开机自启kubelet systemctl enable kubelet.service #K8S通过kubeadm安装出来以后都是以Pod方式存在,即底层是以容器方式运行,所以kubelet必须设置开机自启

//查看初始化需要的镜像 kubeadm config images list //在 master 节点上传 kubeadm-basic.images.tar.gz 压缩包至 /opt 目录 cd /opt tar zxvf kubeadm-basic.images.tar.gz for i in $(ls /opt/kubeadm-basic.images/*.tar); do docker load -i $i; done //复制镜像和脚本到 node 节点,并在 node 节点上执行脚本 bash /opt/load-images.sh scp -r kubeadm-basic.images root@node01:/opt scp -r kubeadm-basic.images root@node02:/opt //初始化kubeadm 方法一: kubeadm config print init-defaults > /opt/kubeadm-config.yaml cd /opt/ vim kubeadm-config.yaml ...... 11 localAPIEndpoint: 12 advertiseAddress: 192.168.80.10 #指定master节点的IP地址 13 bindPort: 6443 ...... 34 kubernetesVersion: v1.15.1 #指定kubernetes版本号 35 networking: 36 dnsDomain: cluster.local 37 podSubnet: "10.244.0.0/16" #指定pod网段,10.244.0.0/16用于匹配flannel默认网段 38 serviceSubnet: 10.96.0.0/16 #指定service网段 39 scheduler: {} #末尾再添加以下内容 --- apiVersion: kubeproxy.config.k8s.io/v1alpha1 kind: KubeProxyConfiguration mode: ipvs #把默认的kube-proxy调度方式改为ipvs模式 kubeadm init --config=kubeadm-config.yaml --experimental-upload-certs | tee kubeadm-init.log #--experimental-upload-certs 参数可以在后续执行加入节点时自动分发证书文件,k8sV1.16版本开始替换为 --upload-certs #tee kubeadm-init.log 用以输出日志 //查看 kubeadm-init 日志 less kubeadm-init.log //kubernetes配置文件目录 ls /etc/kubernetes/ //存放ca等证书和密码的目录 ls /etc/kubernetes/pki

所有节点部署网络插件flannel

所有节点部署网络插件flannel 方法一: //所有节点上传flannel镜像 flannel.tar 到 /opt 目录,master节点上传 kube-flannel.yml 文件 cd /opt docker load < flannel.tar //在 master 节点创建 flannel 资源 kubectl apply -f kube-flannel.yml //在master节点查看节点状态(需要等几分钟) //测试 pod 资源创建 kubectl create deployment nginx --image=nginx //暴露端口提供服务 kubectl expose deployment nginx --port=80 --type=NodePort //测试访问

/所有节点安装dashboard 方法一: //所有节点上传dashboard镜像 dashboard.tar 到 /opt 目录,master节点上传kubernetes-dashboard.yaml文件 cd /opt/ docker load < dashboard.tar kubectl apply -f kubernetes-dashboard.yaml /使用火狐或者360浏览器访问 //创建service account并绑定默认cluster-admin管理员集群角色 kubectl create serviceaccount dashboard-admin -n kube-syste //获取令牌密钥 kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin //复制token令牌直接登录网站

安装Harbor私有仓库

//修改主机名 hostnamectl set-hostname hub.kgc.com //所有节点加上主机名映射 echo '192.168.11.13 hub.kgc.com' >> /etc/hosts //安装 docker //所有 node 节点都修改 docker 配置文件,加上私有仓库配置 cat > /etc/docker/daemon.json <

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:知乎:“知+”引爆内容营销新时代!
下一篇:Kubeadm 搭建k8s
相关文章

 发表评论

暂时没有评论,来抢沙发吧~