Sealos 云操作系统私有化部署教程
Sealos 私有云已经正式发布了,它为企业用云提供了一种革命性的新方案。Sealos 的核心优势在于,它允许企业在自己的机房中一键构建一个功能与 Sealos 公有云完全相同的私有云。这意味着企业可以在自己的控制和安全范围内,享受到公有云所提供的灵活性和扩展性。这对于需要高度数据安全和个性化服务的企业来说,具有极大的吸引力。
而且 Sealos 私有云的维护成本极低,只需要半个人力资源即可。极大地减轻了企业的运营负担,特别是对于那些没有大量 IT 支持的中小型企业来说尤为重要。
本文我们将详细介绍如何在本地环境中一键部署 Sealos 私有云。
大规模集群以及企业生产环境强烈建议使用 Sealos 私有云的企业版或者定制版。
准备工作
服务器
以下是一些基本的要求:
- 每个集群节点应该有不同的主机名。
- 所有节点的时间需要同步。
- 建议使用干净的操作系统来创建集群。不要自己装 Docker!
- 支持大多数 Linux 发行版,例如:Ubuntu、Debian、CentOS、Rocky linux。
- 系统内核版本在 5.4 及以上。
推荐使用 Ubuntu 22.04 LTS 操作系统,内核版本在 5.4 及以上,配置如下:
| 操作系统 | 内核版本 | CPU | 内存 | 存储 | Masters | Nodes |
|---|---|---|---|---|---|---|
| Ubuntu 22.04 LTS | ≥ 5.4 | 4C | 8GB | 100GB | 奇数台 | 任意 |
Kubernetes 和 Sealos Cloud 的系统组件在每个 Master 节点上大约需要 2 核心(2c)和 2GB 内存(2g),在每个 Node 节点上则需要大约 1 核心(1c)和 1GB 内存(1g),请确保集群中每个节点都有足够的计算资源以支持系统组件的运行。
网络
- 所有节点之间网络互通;
- 需要在 Kubernetes 集群的第一个 Master 节点上执行脚本,目前集群外的节点不支持集群安装;
- 所有节点之间可以互相通信。
域名
- 需要一个域名用于访问 Sealos 及相关服务;
- 如果您没有域名,可以使用
nip.io提供的免费域名服务。
证书
Sealos 需要使用证书来保证通信安全,默认在您不提供证书的情况下我们会使用 cert-manager 来自动签发证书。
如果您能提供证书,证书需要解析下列域名 (假设您提供的域名为:cloud.example.io):
*.cloud.example.iocloud.example.io
安装步骤
为了便于部署,我们提供了一个一键安装脚本。该脚本可以从零开始部署 Sealos 集群,也可以在已有的 Kubernetes 集群上部署 Sealos 集群(在已有集群上执行时请谨慎操作)。
该脚本只支持在 “使用 Sealos 安装的 Kubernetes 集群” 上部署 Sealos 集群,暂不支持其他方式部署的 Kubernetes。
关于如何使用 Sealos 部署 Kubernetes 集群,可以参考:安装 Kubernetes 集群,支持 Docker Hub 中的几乎所有 Kubernetes 版本(暂不支持 1.28 及以上版本)。
如果您的机器还没有安装过 Kubernetes,建议直接使用该脚本连同 Kubernetes 和 Sealos 集群一起安装。
根据您的域名情况,可以分为以下几种安装方式:
1、无公网域名,也不想自定义域名
如果您没有公网域名,也不需要自定义域名,可以选择直接使用 nip.io 提供的免费域名服务。nip.io 是一个免费的通配符 DNS 服务,它可以将动态分配的 IP 地址映射到一个固定的子域名上,特别适合用于本地开发环境。具体的工作原理为:
您可以使用任何 IP 地址作为 nip.io 子域名的一部分,而 nip.io 会将它解析回相应的 IP 地址。例如,如果你有一个内网 IP 地址 192.168.1.10,你可以使用 192.168.1.10.nip.io 作为域名,所有向这个域名发送的请求都会被解析到 192.168.1.10 这个 IP 地址上。这样就无需修改本地 hosts 文件,也不需要搭建内网 DNS 服务,直接通过这个域名就能访问内网服务了。
使用 nip.io 作为 Sealos 的域名非常简单,只需在第一个 Master 节点上执行以下命令,并根据提示输入参数:
$ curl -sfL https://gh-proxy.com/https://raw.githubusercontent.com/labring/sealos/main/scripts/cloud/install.sh -o /tmp/install.sh && bash /tmp/install.sh \--image-registry=registry.cn-shanghai.aliyuncs.com --zh \--proxy-prefix=https://gh-proxy.com
当需要你输入 Sealos Cloud 域名时,你需要输入这种格式的域名:[ip].nip.io,其中 [ip] 是你的 Master 节点 IP。
安装完成后,终端会输出 Sealos 访问域名以及用户名和密码,例如:
Sealos cloud login info:
Cloud Version: latest
URL: https://10.214.210.102.nip.io
admin Username: admin
admin Password: sealos2023
2、有公网域名,想公网访问
如果你有自己的公网域名,并且想通过公网访问 Sealos,那你就需要准备好公网受信任的 SSL/TLS 证书。你可以通过 acme.sh 等工具自动签发证书,也可以从域名提供商处下载免费证书或者购买商业证书。
准备好域名证书后,需要将证书放到第一个 Master 节点的某个目录中,例如 /root/certs/。
您还需要在域名服务商处添加一条该域名的 A 记录,地址解析到第一个 Master 节点的公网 IP 地址。同时还需要添加一条泛解析记录,将该域名的子域名也解析到第一个 Master 节点的公网 IP 地址。
例如 (假设你的域名是
cloud.example.io,假设你的 Master 节点内网地址是192.168.1.10):
cloud.example.io A 192.168.1.1*.cloud.example.io A 192.168.1.1
然后在第一个 Master 节点上执行以下命令,并根据提示输入参数:```bash
$ curl -sfL https://gh-proxy.com/https://raw.githubusercontent.com/labring/sealos/main/scripts/cloud/install.sh -o /tmp/install.sh && bash /tmp/install.sh \--image-registry=registry.cn-shanghai.aliyuncs.com --zh \--proxy-prefix=https://gh-proxy.com \--cloud-domain=<your_domain> \--cert-path=<your_crt> \--key-path=<your_key>
- 需要替换成你自己的公网域名。
- 需要替换成你的证书位置,通常是
.crt或.pem文件。例如:/root/certs/example.crt。 - 需要替换成你的私钥位置,通常是
.key或.pem文件。例如:/root/certs/example.key。
3、有公网域名,想内网访问
如果您有自己的公网域名,但是只有内网 IP,或者只想在内网访问 Sealos,那您只需要在域名服务商处添加一条该域名的 A 记录,地址解析到第一个 Master 节点的内网 IP 地址。同时还需要添加一条泛解析记录,将该域名的子域名也解析到第一个 Master 节点的内网 IP 地址。
例如 (假设你的域名是 cloud.example.io,假设你的 Master 节点内网地址是 192.168.1.10):
cloud.example.io A 192.168.1.1
*.cloud.example.io A 192.168.1.1
然后在第一个 Master 节点上执行以下命令,并根据提示输入参数:
$ curl -sfL https://gh-proxy.com/https://raw.githubusercontent.com/labring/sealos/main/scripts/cloud/install.sh -o /tmp/install.sh && bash /tmp/install.sh \--image-registry=registry.cn-shanghai.aliyuncs.com --zh \--proxy-prefix=https://gh-proxy.com \--cloud-domain=<your_domain>
其中 需要替换成你自己的公网域名。
安装过程中 Sealos 会使用 cert-manager 来自签名证书。
4、无公网域名,但想自定义域名
如果您没有公网域名,但是需要自定义域名,那么就需要在内网自建 DNS,然后将自定义域名解析到第一个 Master 节点的内网 IP 地址。
假设您的第一个 Master 节点的内网 IP 地址为
192.168.1.10。假设您的域名为cloud.example.io。
可以考虑使用 CoreDNS 来自建 DNS 服务,参考配置:
(global_cache) {cache {# [5, 60]success 65536 3600 300# [1, 10]denial 8192 600 60prefetch 1 60m 10%}
}.:53 {errorshealthreadyimport global_cachetemplate IN A cloud.example.io {answer "{{ .Name }} 60 IN A 192.168.1.10"fallthrough}forward . 223.5.5.5logloopreload 6s
}
这样不管您访问 cloud.example.io 还是 *.cloud.example.io 都会解析到第一个 Master 节点的内网 IP 地址。
然后在第一个 Master 节点上执行以下命令,并根据提示输入参数:
$ curl -sfL https://gh-proxy.com/https://raw.githubusercontent.com/labring/sealos/main/scripts/cloud/install.sh -o /tmp/install.sh && bash /tmp/install.sh \--image-registry=registry.cn-shanghai.aliyuncs.com --zh \--proxy-prefix=https://gh-proxy.com \--cloud-domain=<your_domain>
其中 需要替换成你自己的自定义域名。
安装过程中 Sealos 会使用 cert-manager 来自签名证书。
信任自签名证书
如果您选择了上面提供的安装方式中的 1 或 3 或 4,那么您的证书默认是不受浏览器信任的,当你访问 Sealos Cloud 时,浏览器会提示下面的信息:

即使点击继续访问,进入 Sealos Cloud 之后也无法正常显示 App 图标,无法打开 App。

我们需要导出自签名证书,并让系统信任自签名证书。步骤如下。
导出自签名证书
各个浏览器导出自签名证书的步骤略有不同。以下是在一些常用浏览器中导出自签名证书的步骤:
Chrome (以及基于 Chromium 的浏览器如新版 Edge 和 Brave)
- 在浏览器地址栏左侧点击 “不安全” 字样。
- 点击 “证书无效”,这将打开一个证书信息窗口。
- 在打开的证书窗口中,切换到 “详细信息” 标签页。
- 在 “详细信息” 标签页中,找到并点击 “导出”。
- 选择一个文件名和保存位置,然后完成导出过程。
Firefox
点击页面中的 “高级”。

然后点击 “查看证书”。

在证书页面中点击 “PEM (证书)”。

Safari
点击页面中的 “显示详细信息”。

然后点击 “查看此证书”。

在证书视图中,可以看到一个带有证书链的窗口。

拖动红框圈出来的证书到桌面或文件夹中,证书就会被导出了。
信任自签名证书
macOS
在 macOS 上信任自签名证书可以使用以下命令:
# 假设证书保存在 ~/Downloads/10.214.210.102.nip.io.cer
$ sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ~/Downloads/10.214.210.102.nip.io.cer
您也可以通过以下步骤来操作:
1、添加证书到钥匙串
- 启动钥匙串访问 (Keychain Access) 应用程序,点击左侧 “系统钥匙串” 下方的 “系统” 类别。
- 然后打开 “访达”,进入证书保存位置,双击证书文件:这通常是一个
.cer,.crt,或.pem文件。 - 输入您的用户名和密码以允许修改。
- 证书现在应该已经被添加到您的钥匙串中。
2、信任证书
- 在钥匙串访问中,从 “系统” 类别的列表中找到刚刚添加的自签名证书,并双击它。
- 在打开的窗口中,展开 “信任” 部分。
- 在 “当使用此证书时” 选项旁边,有一个下拉菜单,默认设置可能是 “使用系统默认值”。要信任证书,请改为 “始终信任”。
- 关闭证书信息窗口,系统可能会提示您验证您的用户名和密码,以确认更改。
- 现在,证书已经被标记为受信任。
自签名证书不由第三方证书颁发机构 (CA) 颁发,因此,其他设备也不会信任该证书。如果您是在公司或组织内部使用自签名证书,可能需要在每个需要信任此证书的设备上手动进行上述步骤。
Windows
- 在根证书文件点鼠标右键,选择 “安装证书”。
- 选择 “当前用户” 或者 “本地计算机”,下一步
- “将所有的证书都放入下列存储”,“浏览”,“受信任的根证书颁发机构”,“确定”,下一步。
- 完成,“是”,确定。

相关文章:
Sealos 云操作系统私有化部署教程
Sealos 私有云已经正式发布了,它为企业用云提供了一种革命性的新方案。Sealos 的核心优势在于,它允许企业在自己的机房中一键构建一个功能与 Sealos 公有云完全相同的私有云。这意味着企业可以在自己的控制和安全范围内,享受到公有云所提供的…...
信息系统的安全保护等级的五个级别
信息系统的安全保护等级分为五级:第一级为自主保护级、第二级为指导保护级、第三级为监督保护级、第四级为强制保护级、第五级为专控保护级。 法律依据:《信息安全等级保护管理办法》第四条 信息系统的安全保护等级分为以下五级: &#…...
c语言使用modbus库
Modbus是一种串行通信协议,被广泛用于连接工业电子设备。Modbus库可以提供用于实现Modbus通信的功能。 以下是一个简单的示例,展示了如何在C语言中使用Modbus库来读取一个Modbus设备中的保持寄存器。 #include <stdio.h> #include <modbus.…...
【Flask使用】全知识md文档,4大部分60页第3篇:Flask模板使用和案例
本文的主要内容:flask视图&路由、虚拟环境安装、路由各种定义、状态保持、cookie、session、模板基本使用、过滤器&自定义过滤器、模板代码复用:宏、继承/包含、模板中特有变量和函数、Flask-WTF 表单、CSRF、数据库操作、ORM、Flask-SQLAlchemy…...
芯片的测试方法
半导体的生产流程包括晶圆制造和封装测试,在这两个环节中分别需要完成晶圆检测(CP, Circuit Probing)和成品测试(FT, Final Test)。无论哪个环节,要测试芯片的各项功能指标均须完成两个步骤:一是将芯片的引脚与测试机的功能模块连接起来&…...
网络安全等级保护2.0国家标准
等级保护2.0标准体系主要标准如下:1.网络安全等级保护条例2.计算机信息系统安全保护等级划分准则3.网络安全等级保护实施指南4.网络安全等级保护定级指南5.网络安全等级保护基本要求6.网络安全等级保护设计技术要求7.网络安全等级保护测评要求8.网络安全等级保护测评…...
从根到叶:随机森林模型的深入探索
一、说明 在本综合指南中,我们将超越基础知识。当您盯着随机森林模型的文档时,您将不再对“节点杂质”、“加权分数”或“成本复杂性修剪”等术语感到不知所措。相反,我们将剖析每个参数,阐明其作用和影响。通过理论和 Python 实践…...
python数据结构与算法-15_堆与堆排序
堆(heap) 前面我们讲了两种使用分治和递归解决排序问题的归并排序和快速排序,中间又穿插了一把树和二叉树, 本章我们开始介绍另一种有用的数据结构堆(heap), 以及借助堆来实现的堆排序,相比前两种排序算法要稍难实现一些。 最后我…...
vscode提交代码到Gitee(保姆教程)
Visual Studio Code(VSCode) 提交代码到Gitee(保姆教程) 1 环境配置1.1 git本地安装1.2 Vscode安装1.3 配置注册gitee账号 2 Vscode代码提交到Gitee2.1 新建仓库2.2 Vscode提交代码 1 环境配置 电脑需要已经安装好的Vscode已经配…...
【洛谷算法题】P5714-肥胖问题【入门2分支结构】
👨💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5714-肥胖问题【入门2分支结构】🌏题目描述🌏输入格式&a…...
促进材料基因工程基础理论、前沿技术和关键装备的发展和应用,第七届材料基因工程高层论坛将于12月重庆举办,龙讯旷腾出席会议
为了进一步促进材料基因工程基础理论、前沿技术和关键装备的发展和应用,加强国际交流,加速我国新材料的研发和应用,由中国材料研究学会、西部科学城重庆高新区管理委员会主办,重庆大学、北京科技大学、北京云智材料大数据研究院等…...
Cypress-浏览器操作篇
Cypress-浏览器操作篇 页面的前进与后退 后退 cy.go(back); cy.go(-1);前进 cy.go(forward); cy.go(1);页面刷新 cy.reload() cy.reload(forceReload) cy.reload(options) cy.reload(forceReload, options)**options:**只有 timeout 和 log forceReload 是否…...
短视频矩阵系统源码搭建部署分享
一、 短视频矩阵系统源码搭建部署分享 目录 一、 短视频矩阵系统源码搭建部署分享 二、短视频矩阵系统搭建功能设计 三、 抖音矩阵号矩阵系统功能设计原则 四、 短视频矩阵开发部分源码展示 很高兴能够帮助您,以下是短视频矩阵系统源码搭建部署分享:…...
科技赋能,创新发展!英码科技受邀参加2023中国创新创业成果交易会
11月17日至19日,2023中国创新创业成果交易会(简称:创交会)在广州市广交会展馆圆满举行。英码科技受邀参加本届创交会,并在会场展示了创新性的AIoT产品、深元AI引擎和行业热门解决方案。 据介绍,本届创交会由…...
Talk | UCSB博士生宋珍巧:基于人工智能的功能性蛋白质设计
本期为TechBeat人工智能社区第549期线上Talk。 北京时间11月22日(周三)20:00,UC Santa Barbara博士生—宋珍巧的Talk已准时在TechBeat人工智能社区开播! 她与大家分享的主题是: “基于人工智能的功能性蛋白质设计”,介绍了如何利用机器学习算…...
C++基础从0到1入门编程(四)类和对象
系统学习C 方便自己日后复习,错误的地方希望积极指正 往期文章: C基础从0到1入门编程(一) C基础从0到1入门编程(二) C基础从0到1入门编程(三) 参考视频: 1.黑马程序员匠心…...
如何有效解决UDP协议传输问题实现快速安全的文件传输
随着互联网技术的不断发展,UDP协议作为一种快速、简单的传输协议被广泛应用于文件传输领域。然而,UDP协议传输过程中也存在着一些问题,如传输速度不稳定、数据丢失等,这些问题会影响到文件传输的效率和安全性。本文将介绍UDP协议传…...
Mac下载的软件显示文件已损坏,如何解决文件已损坏问题,让文件可以正常运行
Mac下载的软件显示文件已损坏,如何解决文件已损坏问题,让文件可以正常运行 设备/引擎:Mac(11.6)/Mac Mini 开发工具:终端 开发需求:让显示已损坏的文件顺利安装到电脑 大家肯定都遇到过下载…...
实战 - 在Linux上部署各类软件
前言 为什么学习各类软件在Linux上的部署 在前面,我们学习了许多的Linux命令和高级技巧,这些知识点比较零散,同学们跟随着课程的内容进行练习虽然可以基础掌握这些命令和技巧的使用,但是并没有一些具体的实操能够串联起来这些知…...
Jenkins扩展篇-流水线脚本语法
JenkinsFile可以通过两种语法来声明流水线结构,一种是声明式语法,另一种是脚本式语法。 脚本式语法以Groovy语言为基础,语法结构同Groovy相同。 由于Groovy学习不适合所有初学者,所以Jenkins团队为编写Jenkins流水线提供一种更简…...
如何快速掌握Balena Etcher:专业高效的镜像烧录工具完全指南
如何快速掌握Balena Etcher:专业高效的镜像烧录工具完全指南 【免费下载链接】etcher Flash OS images to SD cards & USB drives, safely and easily. 项目地址: https://gitcode.com/GitHub_Trending/et/etcher Balena Etcher是一款革命性的开源镜像烧…...
终极GCP CLI实战指南:从GitHub到云端的一键部署
终极GCP CLI实战指南:从GitHub到云端的一键部署 【免费下载链接】dockerfiles Various Dockerfiles I use on the desktop and on servers. 项目地址: https://gitcode.com/gh_mirrors/do/dockerfiles GCP CLI(Google Cloud Platform命令行工具&a…...
避坑指南:在树莓派Ubuntu22.04上配置MCP2515 CAN接口时,为什么你的can0接口出不来?
树莓派Ubuntu22.04配置MCP2515 CAN接口疑难解析:从设备树到内核模块的深度排错 当你兴奋地将MCP2515模块连接到树莓派4B的SPI接口,按照网上教程一步步操作,却在最后发现ifconfig -a里根本看不到期待的can0接口时,那种挫败感我深有…...
实战解析:在华为云Stack(HCS 6.5)中如何为Oracle RAC规划BMS裸金属与高性能云硬盘
华为云Stack 6.5环境下Oracle RAC的裸金属与存储架构设计指南 当企业将Oracle RAC这类关键数据库迁移到私有云环境时,基础设施的规划直接决定了业务系统的稳定性和性能表现。华为云Stack 6.5(HCS)作为成熟的私有云解决方案,其BMS裸…...
AzurLaneAutoScript:碧蓝航线全自动脚本,让你的游戏时间更高效
AzurLaneAutoScript:碧蓝航线全自动脚本,让你的游戏时间更高效 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoSc…...
论文阅读:ICLR 2026 A Guardrail for Safety Preservation: When Safety-Sensitive Subspace Meets Harmful-Res
总目录 大模型安全研究论文整理 2026年版:https://blog.csdn.net/WhiffeYF/article/details/159047894 https://openreview.net/forum?id887vde4ZAW https://openreview.net/pdf?id887vde4ZAW A Guardrail for Safety Preservation: When Safety-Sensitive Sub…...
别再手动改Word了!用docxtemplater的{{#each}}和{{#if}}语法,5分钟搞定批量合同生成
告别低效办公:用docxtemplater实现合同批量生成的终极指南 每次月底都要加班处理上百份员工合同?手动复制粘贴到眼花缭乱还总出错?作为经历过这种痛苦的企业HR,我发现了一个彻底改变工作方式的工具——docxtemplater。它不仅仅是一…...
如何用SQL快速获取上个月的对比数据_LAG函数应用
LAG函数无法直接获取上月数据,因其按行序而非自然月偏移;需先用generate_series或递归CTE补全连续月份,再对归一化月字段开窗计算。LAG 函数为什么拿不到上个月数据直接用 LAG 按行偏移,不等于按「自然月」偏移。它只看当前结果集…...
C/C++中组合详解及其作用介绍
组合 (Composition) 指在一个类中另一类的对象作为数据成员. 案例 在平面上两点连成一条直线, 求直线的长度和直线中点的坐标. 要求: 基类: Dot派生类: Line (同时组合)派生类 Line 从基类 Dot 继承的 Dot 数据, 存放直线的中点坐标Line 类再增加两个 Dot 对象, 分别存放两个…...
工业虚拟仿真系统有哪些?
近年来,国家持续加码数字工业建设,多项重磅政策推动虚拟现实、数字孪生、虚拟仿真技术与制造业深度融合。《“十四五”数字经济发展规划》《虚拟现实与行业应用融合发展行动计划(2022—2026年)》等文件明确指出,要加速虚拟仿真技术在工业研发…...
