当前位置: 首页 > news >正文

小白到运维工程师自学之路 第七十五集 (Kubernetes 企业级高可用部署)2

 8、添加master节点

在k8s-master2和k8s-master3节点创建文件夹
mkdir -p /etc/kubernetes/pki/etcd在k8s-master1节点执行
从k8s-master1复制密钥和相关文件到k8s-master2和k8s-master3
scp /etc/kubernetes/admin.conf root@192.168.77.15:/etc/kubernetes 
scp /etc/kubernetes/pki/{ca.*,sa.*,front-proxy-ca.*} root@192.168.77.15:/etc/kubernetes/pki
scp /etc/kubernetes/pki/etcd/ca.* root@192.168.77.15:/etc/kubernetes/pki/etcdscp /etc/kubernetes/admin.conf root@192.168.77.16:/etc/kubernetes 
scp /etc/kubernetes/pki/{ca.*,sa.*,front-proxy-ca.*} root@192.168.77.16:/etc/kubernetes/pki
scp /etc/kubernetes/pki/etcd/ca.* root@192.168.77.16:/etc/kubernetes/pki/etcd

kubeadm token create --ttl 0 --print-join-command
kubeadm token list

将其他master节点加入集群

k8s-master2和k8s-master3都需要加入

令牌最后要加上--control-plane

kubeadm join master.k8s.io:6443 --token v1igjz.rsq683im1cbqksur     --discovery-token-ca-cert-hash sha256:c4b73babba1252778d643f80c4c6f77242a3f0aa7a670090bda682eabc12e225 --control-plane

 cni-plugins-linux-amd64-v0.8.6.tgz(需要去网上下载)

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
tar xf cni-plugins-linux-amd64-v0.8.6.tgz
cp flannel /opt/cni/bin/
docker load < flannel_v0.12.0-amd64.tar
kubectl get nodes

 9、加入Kubernetes Node

直接在node节点服务器上执行k8s-master1初始化成功后的消息即可

kubeadm join master.k8s.io:6443 --token v1igjz.rsq683im1cbqksur     --discovery-token-ca-cert-hash sha256:c4b73babba1252778d643f80c4c6f77242a3f0aa7a670090bda682eabc12e225 docker load < flannel_v0.12.0-amd64.tar

node2和node3的操作和node1一样

 查看节点状态

四、测试Kubernetes集群

所有node节点下载nginx
docker pull nginx在master1上创建一个pod
mkdir demo
cd demo
vim nginx-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deploymentlabels:app: nginx
spec:replicas: 3selector: matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginx:latestports:- containerPort: 80

kubectl create -f nginx-deployment.yaml
kubectl get pods
kubectl get pods -o wide

创建Service资源清单

在创建的 nginx-service 资源清单中,定义名称为 nginx-service 的 Service、标签选择器为 app: nginx、type 为 NodePort 指明外部流量可以访问内部容器。在 ports 中定义暴露的端口库号列表,对外暴露访问的端口是 80,容器内部的端口也是 80。

vim nginx-service.yaml
kind: Service
apiVersion: v1
metadata:name: nginx-service
spec:selector:app: nginxtype: NodePortports:- protocol: TCPport: 80
targetPort: 80

kubectl create -f nginx-service.yaml
kubectl get svc

通过虚拟IP访问浏览器

测试负载均衡

将master关机模拟服务器宕机,然后再查看

再访问web页面

可以看到web应用正常工作

去master2上查看,可以发现虚拟IP已经转移到了master2的ens33网卡上了,说明负载均衡配置成功

域名也是可以访问的但是由于还要配置windows的防火墙与dns这里就适用命令测试了

以上就是Kubernetes 企业级高可用部署

如有错误欢迎各位大佬批评指正,我们共同进步

相关文章:

小白到运维工程师自学之路 第七十五集 (Kubernetes 企业级高可用部署)2

8、添加master节点 在k8s-master2和k8s-master3节点创建文件夹 mkdir -p /etc/kubernetes/pki/etcd在k8s-master1节点执行 从k8s-master1复制密钥和相关文件到k8s-master2和k8s-master3 scp /etc/kubernetes/admin.conf root192.168.77.15:/etc/kubernetes scp /etc/kubernet…...

Educational Codeforces Round 62 (Rated for Div. 2) C. Playlist

一开始肯定要排个序&#xff0c;b相同时t大的在前边&#xff0c;不同时b大的在前面。 然后想最多只能选k个的限制&#xff0c;可以这样想&#xff0c;每次用到的b只能用已选到的最小的值&#xff0c;那可以把每个b都枚举一遍&#xff0c;然后每一次选时长最长的&#xff0c;且…...

postgresql中基础sql查询

postgresql中基础sql查询 创建表插入数据创建索引删除表postgresql命令速查简单查询计算查询结果 利用查询条件过滤数据模糊查询 创建表 -- 部门信息表 CREATE TABLE departments( department_id INTEGER NOT NULL -- 部门编号&#xff0c;主键, department_name CHARACTE…...

如何做好科技文献资料的翻译!

我们知道&#xff0c;科技文献是工程技术人员的重要参考文献&#xff0c;翻译科技文献资料有助于促进国内外科技知识和技术的传播。那么&#xff0c;如何做好科技文献资料的翻译&#xff0c;专业科技文献翻译哪家好&#xff1f; 据了解&#xff0c;科技文献翻译是一种以应用为主…...

处理Selenium3+python3定位鼠标悬停才显示的元素

这篇文章主要介绍了Selenium3python3--如何定位鼠标悬停才显示的元素 &#xff0c;文中通过简单代码给大家介绍的非常详细,需要的朋友可以参考下 先给大家介绍下Selenium3python3--如何定位鼠标悬停才显示的元素 定位鼠标悬停才显示的元素&#xff0c;要引入新模块 # coding…...

python通过S7协议读取西门子200smart数据

发现网上很多关于python通过s7协议控制200smart的代码都失败&#xff0c;我猜应该是版本的问题。自己捣鼓了半天&#xff0c;终于测试成功 from snap7 import util,clientmy_plc client.Client() #建立一个客户端对象 my_plc.set_connection_type(3) #如果是200smart,必须有此…...

深入理解SSO原理,项目实践使用一个优秀开源单点登录项目(附源码)

深入理解SSO原理,项目实践使用一个优秀开源单点登录项目(附源码)。 一、简介 单点登录(Single Sign On),简称为 SSO。 它的解释是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 ❝ 所谓一次登录,处处登录。同样一处退出,处处退出。 ❞ 二…...

【云原生】K8S控制详解

目录 一、Pod控制器1.1 Pod控制器及其功用1.2 pod控制器有多种类型1.3Pod与控制器之间的关系二、Deployment 三、SatefulSet3.1从上面的应用场景可以发现&#xff0c;StatefulSet由以下几个部分组成&#xff1a;3.2为什么要有headless&#xff1f;3.3为什么要有volumeClaimTemp…...

CentOS 8 安装 oracle 23c CentOS9 Error deal

1.环境准备 软件准备 序号 软件 下载地址 1 VirtualBox https://www.virtualbox.org/wiki/Downloads2 CentOS Stream 8 https://mirrors.tuna.tsinghua.edu.cn/centos/8-stream/isos/x86_64/CentOS-Stream-8-x86_64-latest-dvd1.iso3 oracle-database-free-23c # cd ~/Down…...

sklearn-决策树

目录 决策树算法关键 特征维度&判别条件 决策树算法:选择决策条件 纯度的概念...

元宇宙之应用(05) 远程医疗手术

在科技不断进步的今天&#xff0c;元宇宙的概念正逐渐从科幻小说走入现实&#xff0c;重新定义了人类与数字世界的交互方式。其中&#xff0c;"远程手术" 这一概念引发了医疗领域的深刻思考。为什么要让元宇宙与医疗领域产生交集&#xff1f;这一切究竟是什么&#x…...

centos7在线安装 jdk1.8+tomcat+mysql8+nginx+docker

centos7 在线安装jdk1.8 yum install -y java-1.8.0-openjdk.x86_64 java默认安装路径/usr/lib/jvm/&#xff1b; 加入环境变量配置&#xff0c;在/etc/profile 配置文件中加入 java 环境变量&#xff1a; vim /etc/profile ​ #java 环境变量内容&#xff1a; ​ #java环境变量…...

Vue中实现分页

1.构造分页组件&#xff0c;并注册为全局组件 <template><div class"pagination"><button v-if"startNumAndEndNum.start>1" click"$emit(getPageNo,pageNo-1)">上一页</button><button v-if"startNumAndEn…...

vue3 + antv/x6 实现拖拽侧边栏节点到画布

前篇&#xff1a;vue3ts使用antv/x6 自定义节点 前篇&#xff1a;vue3antv x6自定义节点样式 1、创建侧边栏 用antd的menu来做侧边栏 npm i --save ant-design-vue4.x//入口文件main.js内 import Antd from ant-design-vue; import App from ./App; import ant-design-vue/…...

视频云存储/安防监控/视频汇聚EasyCVR平台新增设备经纬度选取

视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同&#xff0c;支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。音视频流媒体视频平台EasyCVR拓展性强&#xff0c;视频能力丰富&#xff0c;具体可实现视频监控直播、视频轮播、视频录像、…...

CentOS7源码安装MySQL详细教程

&#x1f60a; 作者&#xff1a; Eric &#x1f496; 主页&#xff1a; https://blog.csdn.net/weixin_47316183?typeblog &#x1f389; 主题&#xff1a;CentOS7源码安装MySQL详细教程 ⏱️ 创作时间&#xff1a; 2023年08月014日 文章目录 1、安装的四种方式2、源码安装…...

SpringBoot + Vue 微人事(十二)

职位批量删除实现 编写后端接口 PositionController DeleteMapping("/")public RespBean deletePositionByIds(Integer[] ids){if(positionsService.deletePositionsByIds(ids)ids.length){return RespBean.ok("删除成功");}return RespBean.err("删…...

上半年巴比食品增收不增利,下半年失速的团餐业务能否“复苏”?

随着生活节奏逐渐加快&#xff0c;“宅经济”和“懒人经济”快速融合&#xff0c;人们对进餐便利性的要求逐渐提高&#xff0c;更适用于居家消费的食品应运而生&#xff0c;这其中速冻面点既便于烹饪&#xff0c;又方便快捷&#xff0c;因此其率先出圈获得了消费者青睐&#xf…...

Java基础篇--内部类

在Java中&#xff0c;允许在一个类的内部定义类&#xff0c;这样的类称作内部类&#xff0c;内部类所在的类称作外部类。在实际开发中&#xff0c;根据内部类的位置、修饰符和定义方式的不同&#xff0c;内部类可分为4种&#xff0c;分别是成员内部类、局部内部类、静态内部类、…...

完全备份、增量备份、差异备份、binlog日志

Top NSD DBA DAY06 案例1&#xff1a;完全备份与恢复案例2&#xff1a;增量备份与恢复案例3&#xff1a;差异备份与恢复案例4&#xff1a;binlog日志 1 案例1&#xff1a;完全备份与恢复 1.1 问题 练习物理备份与恢复练习mysqldump备份与恢复 1.2 方案 在数据库服务器192…...

雷达目标检测与成像算法实时实现【附代码】

✨ 长期致力于阵列雷达、多输入多输出、现场可编程门阵列、目标检测定位、高分辨成像研究工作&#xff0c;擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流&#xff0c;点击《获取方式》 &#xff08;1&#xff09;相控阵和差波束目…...

多脉冲重复频率解速度模糊:原理、仿真与MATLAB实现

1. 脉冲雷达的速度模糊问题 雷达测速的基本原理大家都懂&#xff0c;就是通过多普勒效应计算目标速度。但实际操作中会遇到一个头疼的问题——速度模糊。这就像用卷尺量身高&#xff0c;如果身高超过卷尺长度&#xff0c;就得把几段卷尺接起来量&#xff0c;但接缝处容易出错。…...

C++中的封装、继承、多态理解

封装(encapsulation)&#xff1a;就是将抽象得到的数据和行为(或功能)相结合&#xff0c;形成一个有机的整体&#xff0c;也就是将数据与操作数据的源代码进行有机的结合&#xff0c;形成”类”&#xff0c;其中数据和函数都是类的成员。封装的目的是增强安全性和简化编程&…...

Motrix WebExtension:浏览器下载加速的终极解决方案

Motrix WebExtension&#xff1a;浏览器下载加速的终极解决方案 【免费下载链接】motrix-webextension A browser extension for the Motrix Download Manager and its forks 项目地址: https://gitcode.com/gh_mirrors/mo/motrix-webextension 在当今数字时代&#xff…...

从巨头并购看FPGA技术演进与国产破局之路

1. 从两起世纪并购看FPGA的宿命与价值2015年&#xff0c;英特尔以167亿美元吞下Altera&#xff1b;2022年情人节&#xff0c;AMD用全股票交易正式将赛灵思&#xff08;Xilinx&#xff09;收入囊中。这两起震动半导体行业的并购案&#xff0c;表面看是巨头在“买公司”&#xff…...

告别默认丑图表!Winform Chart控件从拖入到美化的保姆级实战(C# .NET Framework)

告别默认丑图表&#xff01;Winform Chart控件从拖入到美化的保姆级实战&#xff08;C# .NET Framework&#xff09; 刚接触Winform Chart控件的开发者&#xff0c;往往会被默认生成的图表样式震惊——拥挤的坐标轴、刺眼的网格线、毫无美感的配色&#xff0c;仿佛瞬间回到Wind…...

为什么Delorean是Python时间处理的最佳选择?

为什么Delorean是Python时间处理的最佳选择&#xff1f; 【免费下载链接】delorean Delorean: Time Travel Made Easy 项目地址: https://gitcode.com/gh_mirrors/de/delorean 在Python开发中&#xff0c;时间处理常常是一个令人头疼的问题&#xff0c;尤其是涉及到时区…...

5个核心功能:Winhance中文版如何重塑你的Windows体验

5个核心功能&#xff1a;Winhance中文版如何重塑你的Windows体验 【免费下载链接】Winhance-zh_CN A Chinese version of Winhance. C# application designed to optimize and customize your Windows experience. 项目地址: https://gitcode.com/gh_mirrors/wi/Winhance-zh_…...

如何配置表结构支持读写分离标记_在COMMENT中添加路由规则的架构级应用.txt

...

从零构建高性能内存键值存储:Memvault架构设计与实现详解

1. 项目概述&#xff1a;一个为内存数据打造的“保险箱”最近在折腾一些需要处理大量临时数据的项目&#xff0c;比如实时计算、缓存中间层&#xff0c;还有那种对延迟极其敏感的游戏服务器。这类场景下&#xff0c;Redis这类内存数据库是首选&#xff0c;但总感觉有点“杀鸡用…...