K8S集群实践之十:虚拟机部署阶段性总结

news2024/11/26 15:32:01

目录

1. 说明:

2. 安装准备

2.1 每个节点设置双网卡,一卡做网桥(外部访问),一卡做NAT(集群内网访问)

2.2 准备一个可用的代理服务器

3. 由于虚拟机崩溃(停电,宿主机自更),所导致的K8s集群不能启动问题处理

4. 关于KubeSphere

5. 总结几点 


1. 说明:

经过了之前的捣鼓,觉得还是有必要再写一篇总结经验,以后少走弯路。

曾经实践过的方案:

集群方案遇到的主要问题建议
香橙派+树莓派搭建集群

- 性能问题,网络稳定性问题,尤其是wifi环境下

- 软件对ARM64的支持

- 由于缺少附加原硬盘,CEPH难以安装

简单的K8S应用
基于VirtualBox7.x 虚拟机搭建的集群

- 性能问题,虚拟网卡 PING连耗时比VMWare多一个数量级

- 资源消耗大

- CEPH安装后表现极不稳定

令人失望,好处是可以导出标准化版本的虚拟机格式
基于VMWare WorkStation Pro 虚拟机搭建的集群- 只能以快照形式存在,不能导出标准化虚拟机格式性能卓越,相对稳定

2. 安装准备

2.1 每个节点设置双网卡,一卡做网桥(外部访问),一卡做NAT(集群内网访问)
Name

网桥网卡

(esp03-VirtualBox/ ens33-VMWare)

Nat 网卡

(esp04-VirtualBox /ens34-VMWare)

编辑

master0.c0.k8s.ia192.168.0.16010.0.2.10
worker0.c0.k8s.ia192.168.0.16110.0.2.11
worker1.c0.k8s.ia192.168.0.16210.0.2.12

注意使用VMWare时

- NAT网卡指定IP范围,从 10.0.2.0开始,然后在虚拟机内指定IP

# cat /etc/netplan/00-installer-config.yaml

network:
  ethernets:
    ens33:
      dhcp4: true
    ens34:
      dhcp4: false
      addresses: [10.0.2.10/24]
  version: 2

- 网桥网卡需指定桥接的物理网卡,不然启动后会拿不到具体IPV4 address,如图: 虚拟网络编辑器

2.2 准备一个可用的代理服务器
# 编辑 /etc/hosts
定义 proxy-server0

# 添加容器代理配置 (/lib/systemd/system/containerd.service)
[Service]
ExecStartPre=-/sbin/modprobe overlay
ExecStart=/usr/bin/containerd
Environment="HTTP_PROXY=http://proxy-server0:1081"
Environment="HTTPS_PROXY=http://proxy-server0:1081"
Environment="NO_PROXY=*.k8s.ia,*.aliyun.com,*.aliyuncs.com,*.huaweicloud.com,localhost,127.0.0.1,0.0.0.0,10.0.0.0/8,172.17.0.0/12,192.168.0.0/16"

# 添加当前用户代理配置 (~/.profile)
export http_proxy=http://proxy-server0:1081
export https_proxy=http://proxy-server0:1081
export no_proxy=*.k8s.ia,*.aliyun.com,*.aliyuncs.com,*.huaweicloud.com,localhost,127.0.0.1,0.0.0.0,10.0.0.0/8,172.17.0.0/12,192.168.0.0/16

重启服务,测试下 curl www.google.com

3. 由于虚拟机崩溃(停电,宿主机自更),所导致的K8s集群不能启动问题处理

出错:The connection to the server apiserver.k8s:6443 was refused - did you specify the right host or port

目前没找到合适的完全恢复方法,下面的命令只能在丢失一些etcd数据的情况下恢复kubelet服务:

mv /var/lib/etcd/member/* /opt

systemctl restart kubelet

4. 关于KubeSphere

安装方式评论
All in one 一键式安装不靠谱,错误很多
基于已装好的K8S集群上安装靠谱

- 解决Error: failed calling webhook "users.iam.kubesphere.io"

set ks-controller-manage hostNetwork: true

kubectl delete validatingwebhookconfigurations.admissionregistration.k8s.io users.iam.kubesphere.io 

5. 总结几点 

- K8s的集群鲁棒性相对比较脆弱,断电或不正常重启都极可能造成集群服务不能启动(6443 api不能访问之类的),所以ceph等要求安稳性高的服务就尽量不要部署在上面了,另需做好快照准备,以便及时恢复。

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

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

相关文章

谁拿了最多奖学金——NOIP 2005 提高组

输入样例&#xff1a; 4 YaoLin 87 82 Y N 0 ChenRuiyi 88 78 N Y 1 LiXin 92 88 N N 0 ZhangQin 83 87 Y N 1 输出样例&#xff1a; ChenRuiyi 9000 28700 这道题用结构体做对吧 #include <bits/stdc.h> using namespace std; class student{public:string name;int FG…

微信小程序框架阐述

目录 一、框架 响应的数据绑定 页面管理 基础组件 丰富的 API 二、逻辑层 App Service 小程序的生命周期 注册页面 使用 Page 构造器注册页面 在页面中使用 behaviors 使用 Component 构造器构造页面 页面的生命周期 页面路由 页面栈 路由方式 注意事项 模块化…

Java的异常体系

一、体系简介 java中的Exception类的子类不仅仅只是像上图所示只包含IOException和RuntimeException这两大类&#xff0c;事实上Exception的子类很多很多&#xff0c;主要可概括为&#xff1a;运行时异常与非运行时异常。 在上述体系中&#xff0c;Error表示严重的系统错误&am…

C++面向对象程序设计-北京大学-郭炜【课程笔记(二)】

C面向对象程序设计-北京大学-郭炜【课程笔记&#xff08;二&#xff09;】 1、结构化程序设计结构化程序设计的不足 2、面向对象的程序设计2.1、面向对象的程序设计2.2、从客观事物抽象出类2.3、对象的内存分配2.4、对象之间的运算2.5、使用类的成员变量和成员函数用法1&#x…

optee UTA加载

流程 动态TA按照存储位置的不同分为REE filesystem TA&#xff1a;存放在REE侧文件系统里的TA&#xff1b; Early TA&#xff1a;被嵌入到optee os里的在supplicant启动之前就可用了。 这里我们讲的是常规的存放在REE侧文件系统里的TA。 通过GP标准调用的与TA通信的命令(opens…

C语言学习day14:数组定义和使用

定义变量&#xff1a; 数据类型 变量 值 数组定义&#xff1a; 数据类型 数组名[元素个数]{值1,值2,值3} 代码&#xff1a; int main() {//定义变量//数据类型 变量 值//数组定义//数据类型 数组名[元素个数]{值1,值2,值3}//数组下标 数组名[小标]//数组下标是…

Java学习第十五节之回顾方法的调用

方法的调用 package oop;public class Demo03 {public static void main(String[] args) {//实际参数和形式参数的类型要对应&#xff01;int add Demo03.add(1,2);System.out.println(add);}public static int add(int a,int b){return ab;}}package oop;//值传递 public cl…

列表推导式与生成表达式的区别

列表推导式与生成式表达式的区别&#xff1a; 列表推导式 res[i for i in range(6)] print(res) 结果&#xff1a; [0, 1, 2, 3, 4, 5] 生成表达式&#xff1a; res(i for i in range(6)) print(res) 结果&#xff1a; <generator object <genexpr> at 0x0000013EAD0…

mathtype公式

Mathtype 手写板 Win11手写板按钮灰色问题解决&#xff1a;在C:\Program Files\Common Files\microsoft shared\ink目录下粘贴mip.exe&#xff0c;C:\Program Files\Common Files\microsoft shared\ink\en-US目录下添加mip.exe.mui提取码y04v 公式识别 配合免费图片公式识别…

【MySQL】:DQL查询

&#x1f3a5; 屿小夏 &#xff1a; 个人主页 &#x1f525;个人专栏 &#xff1a; MySQL从入门到进阶 &#x1f304; 莫道桑榆晚&#xff0c;为霞尚满天&#xff01; 文章目录 &#x1f4d1;前言一. DQL1.1 基本语法1.2 基础查询1.3 条件查询1.3 聚合函数 &#x1f324;️ 全篇…

IO流---字节输入输出流,字符输入输出流

IO流概述 IO流&#xff0c;即输入输出流&#xff08;Input Output Stream&#xff09;&#xff0c;是一种抽象概念&#xff0c;用来处理设备之间的数据传输问题&#xff0c;例如文件复制、文件上传、文件下载等。在Java中&#xff0c;对数据的操作通常是通过流的方式进行的&…

qml中解决Page控件头部元素Margin不生效的问题

0、想要的效果 1、问题描述 经测试&#xff1a;Page的头部无法完美的进行左右边距设置&#xff0c;leftMargin可以&#xff0c;rightMargin不可以。。。。 Page {// ...header: Frame {id: headerheight: 70// 必须首先锚定位&#xff0c;然后设置边距才生效padding: 0anchor…

轻松掌握Jenkins执行远程window的Jmeter接口脚本

Windows环境&#xff1a;10.1.2.78 新建与配置节点 【系统管理】—【管理节点】—【新建节点】输入节点名称&#xff0c;勾选“dumb slave”&#xff0c;点击ok 按如上配置&#xff1a; 说明&#xff1a; Name&#xff1a;定义slave的唯一名称标识&#xff0c;可以是任意字…

【动态规划】【记忆化搜索】【状态压缩】1681. 最小不兼容性

作者推荐 【数位dp】【动态规划】【状态压缩】【推荐】1012. 至少有 1 位重复的数字 本文涉及知识点 动态规划汇总 状态压缩 记忆化搜索 1681. 最小不兼容性 给你一个整数数组 nums​​​ 和一个整数 k 。你需要将这个数组划分到 k 个相同大小的子集中&#xff0c;使得同一…

函数式编程的技巧

14.1.2 科里化 给出科里化的理论定义之前&#xff0c;让我们先来看一个例子。应用程序通常都会有国际化的需求将一套单位转换到另一套单位是经常碰到的问题。 单位转换通常都会涉及转换因子以及基线调整因子的问题。比如&#xff0c;将摄氏度转换到华氏度的公式是CtoF(x)x*9/…

(2024|ICLR,SVD,软加权正则化,推理时文本嵌入优化)文本到图像扩散模型的图像内容抑制

Get What You Want, Not What You Dont- Image Content Suppression for Text-to-Image Diffusion Models 公和众和号&#xff1a;EDPJ&#xff08;进 Q 交流群&#xff1a;922230617 或加 VX&#xff1a;CV_EDPJ 进 V 交流群&#xff09; 目录 0. 摘要 2. 相关工作 3. 方…

IIC--集成电路总线

目录 一、IIC基础知识 1、设计IIC电路的原因&#xff1a; 2、上拉电阻阻值怎么确定 3、IIC分类 4、IIC协议 二、单片机使用IIC读写数据 1、 IIC发送一个字节数据&#xff1a; 2、IIC读取一个字节数据&#xff1a; 一、IIC基础知识 1、设计IIC电路的原因&#xff1a; (…

【JavaEE】_Fiddler抓包HTTP请求与响应

目录 1. Fiddler简介 2. Fiddler安装步骤 3. 抓包结果举例&#xff08;sogou.com&#xff09; 1. Fiddler简介 1. 要查看HTTP的请求和响应&#xff0c;需要使用抓包工具进行抓包&#xff1b; 抓包即获取网卡上经过的数据并显示出来&#xff0c;常用的抓包工具有wireshark和…

Linux第57步_“linux系统镜像”和“根文件系统”重新打包小结

实时总结是很重要的&#xff0c;时间久了&#xff0c;可能会遗忘。下面是“linux系统镜像”和“根文件系统”重新打包小结。 1、linux系统镜像重新打包 在第1次完成linux系统镜像打包后&#xff0c;再重新打包就很容易了 将“bootfs”重新打包 准备打包文件: 输入“cd /ho…

专业140+总分400+华中科技大学824信号与系统考研经验华科华中大电子信息与通信工程,真题,大纲,参考书。

今年考研落下帷幕&#xff0c;看到有人落寞&#xff0c;有人金榜题名&#xff0c;心里体会五谷杂陈&#xff0c;自己很幸运通过努力上岸华科&#xff0c;初试专业课824信号与系统140&#xff0c;数一130&#xff0c;总分400&#xff0c;对于这个成绩稍微有点超出自己预期&#…