网站域名和密码,seo优化工作内容,成都武侯区建设局门户网站,如何给自家网站做关键词优化文章目录 coreDNS概念部署croeDNS测试 kubernetes多master集群结构master节点部署 负载均衡配置部署nginx做四层反向代理安装高可用 keepalivednginx监控脚本修改k8s中组件的配置文件 coreDNS
概念 coreDNS是kubernetes的默认DNS实现。可以为集群中的service资源创建一个资源名… 文章目录 coreDNS概念部署croeDNS测试 kubernetes多master集群结构master节点部署 负载均衡配置部署nginx做四层反向代理安装高可用 keepalivednginx监控脚本修改k8s中组件的配置文件 coreDNS
概念 coreDNS是kubernetes的默认DNS实现。可以为集群中的service资源创建一个资源名称与clusterIP的对应关系解析 kubernetes可以选择使用DNS来避免将服务器的集群IP地址硬编码到您的引用程序中 K8S的DNS实现 coreDNS根据xervice资源的名称解析出clusterip根据statfulset控制器创建的pod资源名称解析出pod IP
部署croeDNS
##在所有的 node 节点上
#上传文件 coredns.tar 到 /opt/k8s#加载 coredns的镜像
docker load -i coredns.tar##在master01节点
##上传 coredns.yaml 到 /opt/k8s
##安装 coredns
kubectl apply -f coredns.yaml###查看所有命名空间下的pod资源
kubectl get pods -A测试
###master01节点
###创建pods资源
kubectl create deployment ggl --imagenginx:latest --port80###查看pods
kubectl get pods -o wide##授权给kubectl绑定默认cluster-admin管理源集群角色授权集群操作权限
kubectl create clusterrolebinding cluster-system-anonymous --clusterrolecluster-admin --usersystem:anonymous##查看deployment
kubectl get deployment##创建service资源
kubectl expose deployment ggl --port80 --name myapp-ggl --target-port80##查看service资源
kubectl get service###进入到pods中
kubectl exec -it pod名称 bash##在pods中配置DNS域名解析
cat /etc/resolv.conf##获取域名后缀
default.svc.cluster.local##查看指定 service 绑定
nslookup myapp-ggl.default.svc.cluster.localCoreDNS 是 K8S 的默认 DNS 实现 根据 service 资源名称 解析出 Cluster IP根据 statefulset 控制器创建的 Pod 资源名称 解析出 Pod IP
#DNS 解析测试
kubectl run -it --rm dns-test --imagebusybox:1.28.4 shIf you dont see a command prompt, try pressing enter.
/ # nslookup kubernetes
Server: 10.0.0.2
Address 1: 10.0.0.2 kube-dns.kube-system.svc.cluster.localName: kubernetes
Address 1: 10.0.0.1 kubernetes.default.svc.cluster.localkubernetes多master集群结构
###master02192.168.242.69##使用同样的方式进行初始化操作
##要修改主机名master节点部署
##从 master01 节点上拷贝证书文件、各master组件的配置文件和服务管理文件到 master02 节点
scp -r /opt/etcd/ root192.168.242.69:/opt/
scp -r /opt/kubernetes/ root192.168.242.69:/opt
scp /usr/lib/systemd/system/{kube-apiserver,kube-controller-manager,kube-scheduler}.service root192.168.242.69:/usr/lib/systemd/system/
scp -r /root/.kube root192.168.242.69:/root###master02
##修改配置文件cd /opt/kubernetes/cfgvim kube-scheduler.kubeconfig
vim kube-controller-manager.kubeconfig
vim /root/.kube/config
修改为 server: https://192.168.242.69:6443vim kube-apiserver
修改 --bind-address192.168.242.69 \--secure-port6443 \--advertise-address192.168.242.69 \##依次启动服务
systemctl enable --now kube-apiserver.service
systemctl enable --now kube-controller-manager.service
systemctl enable --now kube-scheduler.service##为可执行文件创建软连接到系统目录中
ln -s /opt/kubernetes/bin/* /usr/local/bin/###在 master02中也能够使用 kubectl 客户端
kubectl get pods负载均衡配置
###利用 nginx keepalived 做负载均衡
192.168.242.70
192.168.242.71##关闭防火墙
systemctl disable --now firewalld
setenforce 0
vim /etc/selinx/config部署nginx做四层反向代理
###nginx 的 yum 源[nginx-stable]
namenginx stable repo
baseurlhttp://nginx.org/packages/centos/7/$basearch/
gpgcheck0
enabled1##安装nginx
yum -y install nginx##修改配置文件
cd /etc/nginx/
vim nginx.confuse epoll;stream {upstream k8s {server 192.168.242.66:6443;server 192.168.242.69:6443;}server {listen 6443;proxy_pass k8s;}
}##启动nginx
nginx -t
systemctl enable --now nginxnetstat -lntp | grep nginx安装高可用 keepalived
##安装 keepalivedyum -y install keepalived###修改配置文件cd /etc/keepalived
cp keepalived.conf{,.bak}
vim keepalived.confglobal_defs {smtp_server 127.0.0.1router_id Nginx_01
}vrrp_script chk_nginx {###指定监控脚本的路径script /etc/keepalived/nginx_check.sh###检测的间隔时间interval 2###权重weight 2
}vrrp_script chk_nginx {script /etc/keepalived/nginx_check.shinterval 2weight 2
}vrrp_instance VI_1 {state MASTERinterface ens32virtual_router_id 51 priority 100advert_int 1 authentication { auth_type PASSauth_pass 1111}virtual_ipaddress {192.168.242.100}track_script { ###加载追踪模块chk_nginx}
}nginx监控脚本
###创建监控脚本
vim /etc/keepalived/nginx_check.sh###检测nginx是否启动的脚本
#!/bin/bash
if ! killall -0 nginx /dev/null
thensystemctl stop keepalived
fivim nginx_check.sh
###给脚本添加执行权限
chmod x nginx_check.sh###启动 keepalivedsystemctl enable --now keepalived###查看VIP地址
ip a 修改k8s中组件的配置文件
###修改node节点的配置文件cd /opt/kubernetes/cfg/vim bootstrap.kubeconfig
vim kubelet.kubeconfig
vim kube-proxy.kubeconfig修改为 server: https://192.168.242.100:6443###重启服务
systemctl restart kubelet.service kube-proxy.service###在负载均衡器中查看端口信息netstat -natp | grep nginx###修改 kubectl 配置文件vim /root/.kube/config
修改为 server: https://192.168.242.100:6443