二进制部署k8s集群之CoreDNS部署及多master节点负载均衡以及高可用(下)

news2024/11/16 7:23:51

目录

1.部署 CoreDNS

2.在master01节点基础上,完成master02节点部署

3.部署nginx做负载均衡器

4.部署keepalived做高可用


1.部署 CoreDNS

CoreDNS:CoreDNS 是 Kubernetes 的默认 DNS 实现。可以为 K8S 集群内的 Pod 提供 DNS 服务。
使用 CoreDNS 可以为集群中的 service 资源创建一个资源名称 与 ClusterIP 的对应关系解析,从而避免将 service 的 ClusterIP 地址硬编码到应用程序代码中。

两个node节点操作
cd /opt/k8s/
上传coredns.tar包
docker load -i coredns.tar

master01节点操作
cd /opt/k8s/
上传coredns.yaml压缩包
kubectl apply -f coredns.yaml
kubectl get pods -A

2.在master01节点基础上,完成master02节点部署

master01节点
cd /opt
scp -r etcd/ kubernetes/ master02:/opt
cd
scp -r .kube/ master02:/root
cd /usr/lib/systemd/system
scp kube-* master02:`pwd`

cd /usr/local/bin/
scp kubectl master02:/usr/local/bin/





master02节点
cd
cd .kube/
rm -rf cache/

cd /opt/kubernetes/
rm -f logs/*

master02节点
cd /opt/kubernetes/cfg/
vim kube-apiserver
修改为本机ip

systemctl enable --now kube-apiserver.service kube-controller-manager.service kube-scheduler.service 
systemctl status kube-apiserver.service kube-controller-manager.service kube-scheduler.service

查看验证master02节点
kubectl get nodes
kubectl get pods -A
kubectl get svc



3.部署nginx做负载均衡器

192.168.9.114、192.168.9.115两台服务器做负载均衡
初始化操作
systemctl disable --now firewalld
setenforce 0

两台服务器安装nginx
cd /etc/yum.repos.d/
上传nginx.repo包
yum install -y nginx
192.168.9.114服务器
cd /etc/nginx/
vim nginx.conf 
#10行添加     use epoll;
#14行开始添加
stream {
      upstream k8s-apiservers {
         server 192.168.9.112:6443;
         server 192.168.9.116:6443;
      }
      server {
         listen 6443;
         proxy_pass k8s-apiservers;
      }
  }


nginx -t
systemctl enable --now nginx
netstat -lntp | grep nginx

scp nginx.conf 192.168.9.115:`pwd`


192.168.9.115服务器
systemctl enable --now nginx
netstat -lntp | grep nginx

4.部署keepalived做高可用

192.168.9.114、192.168.9.115两台服务器做高可用
yum install -y keepalived

192.168.9.114服务器
cd /etc/keepalived/
cp keepalived.conf keepalived.conf.bak
touch nginx_check.sh
vim nginx_check.sh
#!/bin/bash

if ! killall -0 nginx &> /dev/null
    then
    systemctl stop keepalived
fi

chmod +x nginx_check.sh



vim keepalived.conf
#10行修改
smtp_server 127.0.0.1
#12行修改
router_id NGINX_01
删除原本13-16行

#15行添加
vrrp_script nginx_check {
     script "/etc/keepalived/nginx_check.sh"
     weight 2
     interval 2
}

#23行修改为本机网卡
interface ens33
#32行修改为指定vip         
192.168.9.100
#34行添加
track_script {
         nginx_check
}


scp keepalived.conf nginx_check.sh 192.168.9.115:`pwd`



192.168.9.115服务器
cd /etc/keepalived/
vim keepalived.conf
#12行修改
router_id NGINX_02
#22行修改
state BACKUP
#25行修改
priority 90

两台keepalived服务器开启服务
systemctl enable --now keepalived.service

验证keepalived高可用

192.168.9.114服务器操作

192.168.9.115服务器查看vip

将vip漂移至原节点使用

systemctl start nginx keepalived.service ,于192.168.9.114节点操作即可恢复

//修改两个node节点上的bootstrap.kubeconfig,kubelet.kubeconfig配置文件为VIP
cd /opt/kubernetes/cfg/
vim bootstrap.kubeconfig 
server: https://192.168.9.100:6443
                      
vim kubelet.kubeconfig
server: https://192.168.9.100:6443
                        
vim kube-proxy.kubeconfig
server: https://192.168.9.100:6443

//重启kubelet和kube-proxy服务
systemctl restart kubelet.service 
systemctl restart kube-proxy.service

netstat -natp | grep nginx

若客户端工具也想通过vip链接,可对两个master节点进行以下修改

cd
vim .kube/config
server: https://192.168.9.100:6443


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1964161.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++BFS】1162. 地图分析

本文涉及知识点 CBFS算法 LeetCode1162. 地图分析 你现在手里有一份大小为 n x n 的 网格 grid,上面的每个 单元格 都用 0 和 1 标记好了。其中 0 代表海洋,1 代表陆地。 请你找出一个海洋单元格,这个海洋单元格到离它最近的陆地单元格的距…

67.利用FreeLibrary函数实现无痕注入的核心代码

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于:易道云信息技术研究院 上一个内容:66.FreeLibrary隐藏模块 以 65.破坏特征码防止内存定位查杀 它的代码为基础进行修改 效…

前端实现文本超出指定行数显示”展开”和”收起”效果

目录 效果演示步骤一&#xff1a;实现整体框架步骤二&#xff1a;实现样式步骤三&#xff1a;js实现元素控制完整代码 效果演示 本文方法是利用js原生进行实现的&#xff0c;可根据相关vue或react语法进行相关的改写&#xff0c;并实现效果 步骤一&#xff1a;实现整体框架 <…

今天分享分享缓冲器小故事

在一个繁华都市的角落&#xff0c;有一家小小的修理铺。铺子里堆满了各种老旧的机械零件和工具&#xff0c;而铺子的主人是一位名叫老陈的工匠。 老陈手艺精湛&#xff0c;尤其擅长修理那些复杂而精密的机械。但他的铺子生意却一直不温不火&#xff0c;因为在这个快节奏的时代…

⌈ 传知代码 ⌋ 使用稀疏查询进行3D目标检测

&#x1f49b;前情提要&#x1f49b; 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间&#xff0c;对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…

Linux基础知识之Shell命令行及终端中的快捷键

1.察看历史命令快捷键 按键 操作 ctrl p 返回上一次输入命令字符 ctrl n 返回下一次输入命令字符 ctrl r 输入单词甚至词组搜索匹配历史命令 alt p 输入字符查找与字符相接近的历史命令 alt . 向之前执行的命令的最后一个参数轮循, 并将之添加到当前光标之后…

WPF数据绑定对象Binding中的辅助属性

以下案例使用的统一的数据源&#xff1a; public class Data{public string Value { get; set; } "123";public int IntValue { get; set; } 100;public float FloatValue { get; set; } 0.114f;public DateTime DateTimeValue { get; set; } DateTime.Now;publi…

《品牌与观察》深度剖析:格行如何成为随身WiFi行业标杆?如何成为排名第一名随身WiFi?央视推荐的随身WiFi!官方认证的随身WiFi!

在随身WiFi行业乱象频发的背景下&#xff0c;格行以一股清流之姿&#xff0c;毅然决然地选择了一条“难而正确”的道路——大力发展线下门店&#xff0c;发展续航技术以品质和服务重塑市场格局。格行现已宣布其线下合作门店已突破万家&#xff0c;并且续航技术已经遥遥领先于其…

计算机毕业设计选题推荐-医疗废物管理系统-Java/Python项目实战

✨作者主页&#xff1a;IT研究室✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

思科认证有哪些?有什么区别?选哪个比较好?考试多少钱?

思科认证体系庞大且全面&#xff0c;涵盖了从基础到高级的多个方向和等级。那么&#xff0c;思科认证究竟有哪些?有什么区别?选哪个比较好?考试多少钱&#xff1f;下面将为您一一揭晓。 思科认证有哪些? 思科认证体系丰富多样&#xff0c;涵盖了从基础到高级的多个层次和…

AI助力工艺|利用机器学习实现泡沫浮选工艺优化

浮选是一种矿物处理过程&#xff0c;它利用矿物颗粒的自然疏水性或通过添加化学试剂使其变得疏水&#xff0c;从而使它们能够附着在空气泡上&#xff0c;从矿浆中分离出来。在处理铁矿石时&#xff0c;浮选过程特别重要&#xff0c;因为它可以帮助减少二氧化硅&#xff08;SiO2…

【数据结构】——堆的实现与算法

目录 一、堆的实现 1.1堆数据的插入 1.2堆数据的删除 二、建堆算法 2.1向上调整建堆 2.2向下调整建堆 三、堆的应用 3.1堆排序 3.2Top—K问题 一、堆的实现 1.1堆数据的插入 插入一个数据后不再是小堆需要将新数据调整到合适的位置&#xff0c;所以堆的插入就是在数组…

永结无间Ⅷ--释放机器学习“百万专家组合”的力量

介绍 随着人们对特定领域模型和小型语言模型的兴趣日益浓厚&#xff0c;对于能够利用专门数据有效处理特定领域中大量专门任务请求的模型的需求比以往任何时候都更加迫切。 传统模型往往难以实现可扩展性和适应性&#xff0c;因此研究人员开始探索新的创新方法。DeepMind的“…

【课程系列10】某乎AI大模型全栈工程师-第5期

网盘链接 链接&#xff1a;https://pan.baidu.com/s/1ZC-fOC_QQjNM6wyVjQcYOg --来自百度网盘超级会员v6的分享 课程目标 ✅学大模型来干什么&#xff1f;&#xff1a; &#x1f449;想提升薪资&#xff0c;提升效率 &#x1f449;想私有化部署垂直领域大模型 &#x1f449…

误删文件怎么恢复?电脑误删文件恢复,5个方法深度解析(超实用)

在日常使用电脑的过程中&#xff0c;相信很多小伙伴们都曾经遇到过一个普遍又棘手的问题——误删文件。无论是因为手快便捷还是不慎操作&#xff0c;误删文件似乎总是那么糟心&#xff0c;让人十分困扰。然而&#xff0c;当我们面对这一问题时&#xff0c;我们并不必过分担心。…

mysql+php+html实现学生管理系统

mysqlphphtml实现学生管理系统 前言 本文使用Mysqlphphtml实现一个简单的学生管理系统&#xff0c;实现了登陆&#xff0c;注册&#xff0c;总览学生信息&#xff0c;添加学生&#xff0c;查询特定的学生&#xff0c;删除指定的学生等功能。并且本文仅用来学习就够了&#xf…

大数据——Hive原理

摘要 Apache Hive 是一个基于 Hadoop 分布式文件系统 (HDFS) 的数据仓库软件项目&#xff0c;专为存储和处理大规模数据集而设计。它提供类似 SQL 的查询语言 HiveQL&#xff0c;使用户能够轻松编写复杂的查询和分析任务&#xff0c;而无需深入了解 Hadoop 的底层实现。 Hive…

【pikachu】文件上传漏洞 第三关getimagesize

思路&#xff1a;上传图片马&#xff0c;利用同服务器下的文件包含漏洞解析图片马 对文件后缀名进行白名单检验 对上传包进行修改&#xff1a; 图片后缀图片MIMEGIF89a一句话木马 上传成功 但是图片无法当作php解析 来到文件包含漏洞页面&#xff0c;尝试将刚才上传的图片马…

32--新建工程

一、keil编译完成之后&#xff0c;下载时弹出unknown target connected错误提示 调一下下面&#xff1a; 二、点亮 1&#xff1a;配置RCC&#xff0c;使能&#xff0c;时钟 2&#xff1a;GPIOC高寄存器 3&#xff1a;给端口数据 三、ST-LINK USB communication error 非常有…