Sealos 云操作系統私有化部署教程

Sealos 私有云已經正式發布了,它為企業用云提供了一種革命性的新方案。Sealos 的核心優勢在于,它允許企業在自己的機房中一鍵構建一個功能與 Sealos 公有云完全相同的私有云。這意味著企業可以在自己的控制和安全范圍內,享受到公有云所提供的靈活性和擴展性。這對于需要高度數據安全和個性化服務的企業來說,具有極大的吸引力。

而且 Sealos 私有云的維護成本極低,只需要半個人力資源即可。極大地減輕了企業的運營負擔,特別是對于那些沒有大量 IT 支持的中小型企業來說尤為重要。

本文我們將詳細介紹如何在本地環境中一鍵部署 Sealos 私有云。

大規模集群以及企業生產環境強烈建議使用 Sealos 私有云的企業版或者定制版。

準備工作

服務器

以下是一些基本的要求:

  • 每個集群節點應該有不同的主機名。
  • 所有節點的時間需要同步。
  • 建議使用干凈的操作系統來創建集群。不要自己裝 Docker!
  • 支持大多數 Linux 發行版,例如:Ubuntu、Debian、CentOS、Rocky linux。
  • 系統內核版本在 5.4 及以上

推薦使用 Ubuntu 22.04 LTS 操作系統,內核版本在 5.4 及以上,配置如下:

操作系統內核版本CPU內存存儲MastersNodes
Ubuntu 22.04 LTS≥ 5.44C8GB100GB奇數臺任意

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.io
  • cloud.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)
  1. 在瀏覽器地址欄左側點擊 “不安全” 字樣。
  2. 點擊 “證書無效”,這將打開一個證書信息窗口。
  3. 在打開的證書窗口中,切換到 “詳細信息” 標簽頁。
  4. 在 “詳細信息” 標簽頁中,找到并點擊 “導出”。
  5. 選擇一個文件名和保存位置,然后完成導出過程。
Firefox
  1. 點擊頁面中的 “高級”。

  2. 然后點擊 “查看證書”。

  3. 在證書頁面中點擊 “PEM (證書)”。

Safari
  1. 點擊頁面中的 “顯示詳細信息”。

  2. 然后點擊 “查看此證書”。

  3. 在證書視圖中,可以看到一個帶有證書鏈的窗口。

  4. 拖動紅框圈出來的證書到桌面或文件夾中,證書就會被導出了。

信任自簽名證書

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、添加證書到鑰匙串
  1. 啟動鑰匙串訪問 (Keychain Access) 應用程序,點擊左側 “系統鑰匙串” 下方的 “系統” 類別。
  2. 然后打開 “訪達”,進入證書保存位置,雙擊證書文件:這通常是一個 .cer.crt,或 .pem 文件。
  3. 輸入您的用戶名和密碼以允許修改。
  4. 證書現在應該已經被添加到您的鑰匙串中。
2、信任證書
  1. 在鑰匙串訪問中,從 “系統” 類別的列表中找到剛剛添加的自簽名證書,并雙擊它。
  2. 在打開的窗口中,展開 “信任” 部分。
  3. 在 “當使用此證書時” 選項旁邊,有一個下拉菜單,默認設置可能是 “使用系統默認值”。要信任證書,請改為 “始終信任”。
  4. 關閉證書信息窗口,系統可能會提示您驗證您的用戶名和密碼,以確認更改。
  5. 現在,證書已經被標記為受信任。

自簽名證書不由第三方證書頒發機構 (CA) 頒發,因此,其他設備也不會信任該證書。如果您是在公司或組織內部使用自簽名證書,可能需要在每個需要信任此證書的設備上手動進行上述步驟。

Windows
  1. 在根證書文件點鼠標右鍵,選擇 “安裝證書”。
  2. 選擇 “當前用戶” 或者 “本地計算機”,下一步
  3. “將所有的證書都放入下列存儲”,“瀏覽”,“受信任的根證書頒發機構”,“確定”,下一步。
  4. 完成,“是”,確定。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/162602.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/162602.shtml
英文地址,請注明出處:http://en.pswp.cn/news/162602.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

OTP語音芯片WTN6xxx-8S與Flash語音芯片WT588F02B-8S的區別與應用選擇

隨著科技的快速發展&#xff0c;語音芯片已經成為了電子產品中不可或缺的一部分。唯創知音作為知名的語音芯片制造商&#xff0c;推出了OTP語音芯片WTN6xxx-8S和Flash語音芯片WT588F02B-8S兩款產品。本文將對比這兩款芯片的區別&#xff0c;以幫助讀者更好地選擇適合的語音芯片…

高通OTA升級方案介紹

高通OTA升級方案介紹 1. 高通LE OTA1.1 背景1.2 Recovery系統 2. SDX12 OTA方案3 OTA包的加密 3UK Penetration Test對于OTA升級也有嚴格的安全要求&#xff0c;下面是幾條用例要求&#xff1a; Firmware: A sufficiently strong signing key MUST be in use. Signing keys MUS…

了解消息隊列的五大痛點

文章字數&#xff1a;400字&#xff0c;建議閱讀時間&#xff1a;3分鐘&#xff0c;閱讀難度&#xff1a;中等。 解決消息隊列的五大痛點 在分布式系統中&#xff0c;消息隊列&#xff08;MQ&#xff09;是一種重要的組件&#xff0c;它能夠幫助我們處理并發和異步的問題。然…

visionOS空間計算實戰開發教程Day 6 拖拽和點擊

在之前的學習中我們在空間中添加了3D模型&#xff0c;但在初始擺放后就無法再對其進行移動或做出修改。本節我們在??Day 5??顯示和隱藏的基礎上讓我們模型可以實現拖拽效果&#xff0c;同時對純色的立方體實現點擊隨機換色的功能。 首先是入口文件&#xff0c;無需做出改變…

Linux反彈SHell與檢測思路

免責聲明 文章僅做經驗分享用途,利用本文章所提供的信息而造成的任何直接或者間接的后果及損失,均由使用者本人負責,作者不為此承擔任何責任,一旦造成后果請自行承擔!!! 反彈shell payload在線生成 https://www.chinabaiker.com/Hack-Tools/ Online - Reverse Shell G…

Talk | UCSB博士生宋珍巧:基于人工智能的功能性蛋白質設計

本期為TechBeat人工智能社區第549期線上Talk。 北京時間11月22日(周三)20:00&#xff0c;UC Santa Barbara博士生—宋珍巧的Talk已準時在TechBeat人工智能社區開播&#xff01; 她與大家分享的主題是: “基于人工智能的功能性蛋白質設計”&#xff0c;介紹了如何利用機器學習算…

linux下文件夾上有個鎖或者x 如何去除

發現linux下文件夾上有個鎖或者x 如何去除 原因 權限問題 解決方法 sudo chmod 777 filename 去除當前文件夾以及所有子文件夾 sudo chmod -R 777 filename

itext - PDF模板套打

項目需求&#xff1a;獲取列表數據之后直接將數據生成一個pdf。因此需要使用到 itext 對pdf進行直接操作。 環境配置 需要為pdf添加文字域&#xff0c;因此需要安裝Adobe Acrobat 準備一個空的PDF文件&#xff0c;如果有現成的模板更好 依賴配置&#xff0c;我們使用itext的7版…

python數據結構與算法-14_樹與二叉樹

樹和二叉樹 前面我們講了兩種使用分治和遞歸解決排序問題的歸并排序和快速排序&#xff0c;堆排序先就此打住&#xff0c;因為涉及到樹的概念&#xff0c;所以我們先來講講樹。 講完了樹之后后面我們開始介紹一種有用的數據結構堆(heap)&#xff0c; 以及借助堆來實現的堆排序…

python命令行 引導用戶填寫ssh登錄信息

字多不看&#xff0c;直接體驗&#xff1a; 待補充 演示代碼 # -*- coding:UTF-8 -*- """ author: dyy contact: douyaoyuan126.com time: 2023/11/23 9:20 file: 引導用戶填寫ssh接口信息.py desc: xxxxxx """# region 引入必要的依賴 impor…

【圖像分類】基于深度學習的垃圾分類系統的設計與實現(ResNet網絡,附代碼和數據集)

寫在前面: 首先感謝兄弟們的關注和訂閱,讓我有創作的動力,在創作過程我會盡最大能力,保證作品的質量,如果有問題,可以私信我,讓我們攜手共進,共創輝煌。(專欄訂閱用戶訂閱專欄后免費提供數據集和源碼一份,超級VIP用戶不在服務范圍之內,不想訂閱專欄的兄弟們可以私信…

LORA 教程

1 什么是LoRa 2 LoRa調制解調技術 3 什么是loraWAN 4 LoRa和LoRaWAN詳細介紹 5 LoRaWAN 物理層&#xff08;PHY&#xff09;詳解 6 LoRaWAN MAC幀格式詳解 7 LoraWAN MAC控制命令詳解 8 LoRaWAN 設備入網流程詳解&#xff08;OTAA和ABP&#xff09; 9 LoRaWAN 自適…

el-table表格排序(需要后端判別),el-table導出功能(向后端發送請求)

&#xff08;1&#xff09;表格排序 &#xff08;2&#xff09;簡單的table導出功能&#xff08;需要后臺支撐&#xff09;必須要有iframe &#xff08;3&#xff09;頁面所有代碼&#xff1a; <template><div class"mainContainer"><el-form:model&…

golang學習筆記——將 channel 用作通信機制

文章目錄 將 channel 用作通信機制Channel 語法無緩沖 channel緩沖 channelschannel 與 goroutine緩沖 channels 示例多路復用 將 channel 用作通信機制 golang學習筆記——將 channel 用作通信機制 golang學習筆記——并發計算斐波納契數 Go 中的 channel 是 goroutine 之間…

使用Pytorch從零開始構建DCGAN

在本文中&#xff0c;我們將深入研究生成建模的世界&#xff0c;并使用流行的 PyTorch 框架探索 DCGAN&#xff08;生成對抗網絡 (GAN) 的一種變體&#xff09;的實現。具體來說&#xff0c;我們將使用 CelebA 數據集&#xff08;名人面部圖像的集合&#xff09;來生成逼真的合…

網絡安全等級保護收費標準?

不同省份價格會略有不同&#xff0c;二級等保一般不低于5萬元;三級等保不低于9萬元&#xff0c;個別省份也可能7萬也能辦理&#xff0c;根據企業實際情況和省市選定的代理機構確定。 等級保護二級? 第二級等保是指信息系統受到破壞后&#xff0c;會對公民、法人和其他組織的合…

刷到一個很騷氣的 Go 錯誤處理新提案

在比較一段長的時間里&#xff0c;Go 的錯誤處理已經沒有什么特別的進展和新改進了。看著已經到了瓶頸期。 今天在 GitHub 上學習時&#xff0c;看到 Go 社區里有人提了個錯誤處理的優化提案《proposal: Go 2: Error-Handling Paradigm with !err Grammar Sugar》&#xff0c;…

《YOLOv8創新改進》專欄指導書冊 手把手創新教程

&#x1f680;&#x1f680;&#x1f680;YOLOv8改進專欄&#xff1a;http://t.csdnimg.cn/hGhVK 學姐帶你學習YOLOv8&#xff0c;從入門到創新&#xff0c;輕輕松松搞定科研&#xff1b; 本專欄為訂閱者提供答疑服務&#xff0c;每一篇提供源代碼和詳細的每一個步驟改進地方。…

Navicat 技術指引 | 適用于 GaussDB 的模型功能

Navicat Premium&#xff08;16.2.8 Windows版或以上&#xff09; 已支持對 GaussDB 主備版的管理和開發功能。它不僅具備輕松、便捷的可視化數據查看和編輯功能&#xff0c;還提供強大的高階功能&#xff08;如模型、結構同步、協同合作、數據遷移等&#xff09;&#xff0c;這…

工業交換機具備哪些功能?

在工業網絡中&#xff0c;工業交換機起著至關重要的作用&#xff0c;具備多樣功能和廣泛的應用。 1、工業交換機的作用是實現不同網絡設備之間的互聯。它能夠連接各種不同類型的設備&#xff0c;如計算機、服務器、傳感器和監控設備&#xff0c;實現設備間的相互通信和數據傳輸…