Sealos急速部署生产用k8s集群

最近一段时间部署k8s全部使用sealos了,整体使用感觉良好,基本没有什么坑。推荐给大家。

使用 Sealos,可以安装一个不包含任何组件的裸 Kubernetes 集群。

最大的好处是提供 99 年证书,用到我跑路是足够了。不用像之前kubeadm安装的每年需要记得续签。

其次增加删除节点也很方便。

最后,安装集群快啊,十来分钟一个生产可用集群就装好了。

经验教训写在前面:

  1. /根目录需要大一些,镜像很大。300G
  2. 镜像很大,安装的时间准备的长一些
  3. 使用nohup,避免中途断网

如果磁盘不是根目录,要创建软连接

mkdir -p /data/run/containerd
mkdir -p /data/var/lib/containers
mkdir -p /data/var/lib/kubelet
ln -s /data/run/containerd /run/containerd
ln -s /data/var/lib/containers /var/lib/containers
ln -s /data/var/lib/kubelet /var/lib/kubelet

下载sealos命令行工具

提前安装一下jq工具

yum install -y jq

查看当前的sealos命令行工具版本

curl --silent "https://api.github.com/repos/labring/sealos/releases" | jq -r '.[].tag_name'

选其中的稳定版

v5.0.0-beta5
v5.0.0-beta4
v4.4.0-beta3
v5.0.0-beta3
v5.0.0-beta2
v5.0.0-beta1
v4.3.7
v5.0.0-alpha2
v4.3.7-rc1
v4.3.6

我这里用最新的稳定版4.3.7

下载

wget https://github.com/labring/sealos/releases/download/v4.3.7/sealos_4.3.7_linux_amd64.tar.gz

安装

tar zxvf sealos_4.3.7_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin

配置服务器环境

服务器做免密

在其中一台master上执行sealos命令,要配置这台master到其他所有服务器的免密登录

ssh-keygen
cd .ssh
cat >> .ssh/authorized_keys << EOF master0的id_rsa.pub的内容 EOF
firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address="10.138.12.194" service name='ssh' accept"
firewall-cmd --reload
echo "sshd: master节点的ip" >> /etc/hosts.allow

关闭selinux

关闭selinux以允许容器访问宿主机的文件系统

# 查看,我的服务器交付时就已经关了,
[root@my-paas-master0 ~]# getenforce
Permissive

关闭方法:

setenforce 0 # 临时关闭
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config # 永久关闭,reboot生效

关闭swap

因为我们在oom时应该干脆的杀死应用,而不是用swap续命,引发级联故障。

# swap total是0。我的服务器交付时默认关闭了swap
[root@my-paas-master0 ~]# free -g
total used free shared buff/cache available
Mem: 7 0 6 0 0 7
Swap: 0 0 0

关闭方法:

swapoff -a
sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

启用 IPv4 数据包转发

不用做,sealos安装时会进行配置

可以看一下sealos的修改的配置:

* Applying /usr/lib/sysctl.d/00-system.conf ...
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
* Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...
kernel.yama.ptrace_scope = 0
* Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
kernel.kptr_restrict = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
* Applying /etc/sysctl.d/99-sysctl.conf ...
fs.file-max = 1048576 # sealos
net.bridge.bridge-nf-call-ip6tables = 1 # sealos
net.bridge.bridge-nf-call-iptables = 1 # sealos
net.core.somaxconn = 65535 # sealos
net.ipv4.conf.all.rp_filter = 0 # sealos
net.ipv4.ip_forward = 1 # sealos
net.ipv4.ip_local_port_range = 1024 65535 # sealos
net.ipv4.tcp_keepalive_intvl = 30 # sealos
net.ipv4.tcp_keepalive_time = 600 # sealos
net.ipv4.vs.conn_reuse_mode = 0 # sealos
net.ipv4.vs.conntrack = 1 # sealos
net.ipv6.conf.all.forwarding = 1 # sealos

配置了免密登录,不需要密码

现在有了阿里云的镜像源,速度嗖嗖快

nohup sealos run \
--masters 10.249.x.x \
--nodes 10.249.y.y,10.249.z.z \
registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.27.7 \
registry.cn-shanghai.aliyuncs.com/labring/helm:v3.9.4 \
registry.cn-shanghai.aliyuncs.com/labring/calico:v3.24.5 >sealos.log 2>&1 &

这来我装的是不使用docker的版本。如果你需要用docker,可以装这个镜像labring/kubernetes-docker:v1.27.0。

就是这么快,安装完成

6c762bb0d3fde4c549171bd9dc7f1083.jpeg

image-20240507181817158[root@k8s-master0 ~]# kubectl get node
NAME STATUS ROLES AGE VERSION
k8s-master0 Ready control-plane 14m v1.27.7
k8s-node0 Ready <none> 14m v1.27.7
k8s-node1 Ready <none> 14m v1.27.7

如果有报错,先清理再重新安装

sealos reset

起个nginx测试一下

kubectl run ng --image=harbor-test.xxx.net/base/nginx:1.25.2
kubectl expose pod ng --port=80 --target-port=80 --type=NodePort

e053e5de8e6312a4e5a137315a068616.jpeg



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

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

相关文章

【6D位姿估计】FoundationPose 支持6D位姿估计和跟踪 CVPR 2024

前言 本文介绍6D位姿估计的方法FoundationPose&#xff0c;是CVPR 2024的满分论文&#xff0c;支持6D位姿估计和跟踪。 通过大规模的合成数据训练&#xff0c;具有强大的泛化能力&#xff0c;在测试新物体时&#xff0c;无需进行微调。 论文地址&#xff1a;FoundationPose:…

1688数据分析实操技巧||1688商品数据采集接口 数据分析

今天&#xff0c;聊一聊B2B平台的数据分析&#xff0c;以1688国内站为例。 1688平台数据接口 1688也属于阿里巴巴的体系&#xff0c;跟淘宝天猫运营很像&#xff0c;因此很多淘宝天猫的玩法调整后也适用于1688。数据分析也是如此。 在1688搞数据分析&#xff0c;搞数据化运营可…

绘唐3 零基础系列教程

绘唐3 团长董事长,即可下载工具 第一讲:安装注册 日期:2024-04-01 17:50:10 录制文件:查看 第二讲:SD,MJ出图配置演示出图 日期:2024-04-01 18:06:46 录制文件:查看

【笔试训练】day22

1.添加字符 求最少不相等的位数&#xff0c;可以先求最多相等的位数。 在添加字符之前&#xff0c;A和B最多相等的位数是多少&#xff1f;由于A后面可以添加字符&#xff0c;也就使得A字符可以在B的任意一个位置开始比较。遍历一遍这个比较的起点&#xff0c;从这个起点开始跟…

Linux中的简单操作 ls/tar/pwd/cd/mkdir/touch 等

目录 前言 安装和卸载软件包 ls 查看指定路径下的文件和文件夹 tar 解压缩/压缩命令 pwd 查看当前路径 cd 改变目录 mkdir 创建目录 递归创建 rm rmdir 删除文件或目录 touch 创建文件 ll、echo、重定向符&#xff08;>,>>&#xff09; ll echo 重定向符…

SQL查询语句(四)模糊查询

前文介绍的查询语句&#xff0c;无论是利用常规的数学运算符&#xff0c;还是IN&#xff0c;BETWEEN和EXISTS等范围查询关键字&#xff0c;本质上都属于精确查询的范围&#xff0c;也就是说&#xff0c;我们在条件中写明了完全限定死的条件。而有些场景&#xff0c;我们的条件并…

安全继电器的使用和作用

目录 一、什么是安全继电器 二、安全继电器的接线方式 三、注意事项 四、总结 一、什么是安全继电器 安全继电器是由多个继电器与硬件电路组合而成的一种模块&#xff0c;是一种电路组成单元&#xff0c;其目的是要提高安全因素。完整点说&#xff0c;应该叫成安全继电器模…

【JavaEE网络】HTTP响应详解:状态码、报头与正文的全面解析

目录 HTTP响应&#xff08;Response&#xff09;认识 "状态码" (status code)认识响应 “报头”&#xff08;header&#xff09;认识响应 “正文”&#xff08;body&#xff09; HTTP响应&#xff08;Response&#xff09; 响应&#xff1a; 首行响应头空行正文 认…

【线性代数】俗说矩阵听课笔记

基础解系的概念 31线性相关&#xff0c;线性无关&#xff0c;拓展与证明 n个m维向量在n<m时可能线性相关也可能线性无关&#xff0c;线性无关时可以构成某个m维空间的一组基。m不小于n时&#xff0c;秩小于n则线性相关。 n个m维向量在n>m时可一定线性相关。低维向量一定…

第八届大数据与物联网国际会议(BDIOT 2024)即将召开!

第八届大数据与物联网国际会议(BDIOT 2024)将于2024年9月14-16日在澳门圣若瑟大学举行。数聚未来&#xff0c;物联世界&#xff01;BDIOT 2024旨在搭建为各位与会代表展示自己研究成果、分享经验、建立联系和开展合作的平台&#xff0c;共同探讨大数据与物联网领域的未来发展方…

贪心算法(活动选择、分数背包问题)

一、贪心算法 贪心算法是指&#xff1a;在对问题求解时&#xff0c;总是做出在当前看来是最好的选择&#xff0c;而不从整体最优考虑&#xff0c;做出的仅是在某种意义上的局部最优解。 …

Dockerfile实践java项目

目的&#xff1a;用java项目测试dockerfil部署&#xff08;前提是安装好了docker&#xff09; 部署准备文件如下 1. java项目 java项目demo地址 https://gitee.com/xiaoqu_12/dockerfileDemo.git 或者百度网盘直接下载打包好的jar包 链接&#xff1a;https://pan.baidu.com/s/…

解决windows中的WS Llinux子系统(unbantu2204)访问网络失败问题?

一、问题描述 unbantu先前可以正常访问网络&#xff0c;后面用着用着发现上不了网了&#xff0c; 出现如下异常 Hmm. We’re having trouble finding that site.We can’t connect to the server at www.iqiyi.com.If you entered the right address, you can:Try again late…

C#winfrom三层架构实现简单课程管理系统管理系统,三层架构实现增删改查

1. 项目展示 1.1登录展示 1.2添加课程信息展示 1.3课程信息管理-查询-修改-删除 1.4修改登录密码 2.项目功能介绍&#xff08;图&#xff09; 3.数据库设计 3.1 教师表设计 3.2 课程分类表 3.3 课程信息表 4. 创建样式界面 winfrom 超详细UI创建过程 实现双色球选号器UI界面…

【算法】滑动窗口——将x减到0的最小操作数

本节博客主要是讲的我解“将x减到0的最小操作数”这道题的思路历程&#xff0c;从最开始的想法到代码提交的详细记录&#xff0c;有需要借鉴即可。 目录 1.题目2.代码示例3.细节3.1left越界3.2特殊情况 4.总结 1.题目 题目链接&#xff1a;LINK 看题目意思是就是给你一个数X&…

MySQL LRU算法(冷热数据分离)

背景 MySQL中使用的InnoDB存储引擎采用了一种特别的最近最少使用&#xff08;LRU, Least Recently Used&#xff09;算法来管理其Buffer Pool中的页&#xff08;包括数据页和索引页&#xff09;。Buffer Pool是InnoDB用来缓存数据&#xff0c;以减少磁盘I/O操作的内存区域。正…

初识C语言——第十一天

操作符&#xff1a; 1. 算数操作符&#xff1a; - * / % 2. 移位操作符&#xff1a; >> &#xff08;右移&#xff09; << &#xff08;左移&#xff09; 移动的是二进制位 例如&#xff1a; int ba<<1; 3. 位操作符&#xff1a; & 按位与 | 按位…

活动预告 | 5月16日 Streaming Lakehouse Meetup · Online 与你相约!

随着 Apache Flink 技术社区的不断成熟和发展&#xff0c;越来越多企业开始利用 Flink 进行流式数据处理&#xff0c;从而提升数据时效性价值&#xff0c;获取业务实时化效果。与此同时&#xff0c;在大数据领域数据湖架构也日益成为新的技术趋势&#xff0c;越来越多企业开始采…

NERF++:Analyzing and Improving Neural Radiance Fields神经辐射场的分析与改进

ABSTRACT 神经辐射场(NeRF)可以实现各种捕获设置的令人印象深刻的视图合成结果&#xff0c;包括360度捕获有界场景和前向捕获有界和无界场景。NeRF 将代表视图不变不透明度和视图相关颜色体积的多层感知器(MLPs)匹配到一组训练图像中&#xff0c;并基于立体渲染技术对新视图进…

nestjs版若依全栈管理后台完全开源!

hello&#xff0c;大家好&#xff0c;我是徐小夕。之前和大家分享了很多可视化&#xff0c;零代码和前端工程化的最佳实践&#xff0c;今天继续和大家分享一下我们小伙伴开源的基于 nestjs 的若依全栈管理系统。 相信前端小伙伴对若依管理系统并不陌生&#xff0c;它的后端采用…