研發運維雙管齊下!Seal AppManager的正確開啟方式
新一代應用統一部署管理平臺 Seal AppManager 採用平臺工程的理念,透過降低基礎設施操作的複雜度為研發和運維團隊提供易用、一致的應用管理和部署體驗。Seal AppManager 幫助研發和運維團隊實現關注點分離,即運維工程師負責基礎建設,研發可以在零基礎設施知識的情況下實現應用部署管理。
本文以運維和研發兩個視角,介紹如何透過Seal AppManager 從原始碼構建一個 Java Web 服務並部署到 Kubernetes 中。
運維視角
李維是 Alpha 公司的 DevOps,他需要搭建一個自服務平臺提供給不瞭解容器和 Kubernetes 的研發團隊使用。他做了以下準備工作:
- 資源不少於4CPU,8Gi記憶體的 Linux 伺服器。
- 至少 50GB 的空餘磁碟空間。
-
安裝 Docker,詳細指引參Docker官方文件
-
伺服器開放80和443埠。
-
前往官網申請請產品試用映象。
- 安裝一個 Kubernetes 叢集,獲取到 Kubeconfig 檔案。
部署
執行以下命令啟動 Seal 服務:
sudo docker run -d --privileged --restart=always -p 80:80 -p 443:443 <seal-container-image>
訪問
透過以下 訪問Seal的UI。
第一次登陸時根據UI提示,在伺服器上執行以下指令獲取初始的管理員密碼。
sudo docker logs <your-container-id> 2>&1 | grep "Bootstrap Admin Password"
以 admin 使用者名稱以及初始管理員密碼登陸 Seal,並根據UI提示設定新的密碼以及 Seal 的訪問地址。
配置映象倉庫認證金鑰
配置提供給研發使用的映象倉庫測試賬號:
- 訪問【運維中心】-【全域性金鑰】選單,點選【新建金鑰】按鈕。
-
在【名稱】中填入
REGISTRY_USERNAME
,在【內容】中填入映象倉庫認證的使用者名稱,點選【儲存】按鈕。 -
再次點選【新建金鑰】按鈕。
4 在【名稱】中填入REGISTRY_PASSWORD
,在【內容】中填入映象倉庫認證的密碼,點選【儲存】按鈕。
配置 Kubernetes 與環境
新增 Kubernetes 叢集作為應用的部署目標:
- 訪問 【運維中心】-【聯結器】選單,點選【新建聯結器】按鈕。
-
在名稱中填入
test-k8s
,在Kubeconfig
中填入準備的叢集Kubeconfig
檔案,點選儲存按鈕。 - 訪問【運維中心】-【環境】選單,點選【新建環境】按鈕。
-
在【名稱】中填入
development
。 -
點選【新增聯結器】按鈕,選擇
test-k8s
聯結器,點選【儲存】按鈕。
注:
- 聯結器是對接任意基礎設施和服務的抽象物件,例如 Kubernetes,公有/私有云,虛擬機器,版本控制系統等等。
- 環境是應用部署目標,環境中可以關聯若干聯結器。
李維已經完成了基建工作!後續他可以在 Seal 平臺接入更多不同的基礎設施,新增更多沉澱了組織內 DevOps 最佳化實踐的應用模組,提供給研發團隊使用。對於本文的工作,使用 Seal 內建的模組即可完成。
研發視角
張研是 Alpha 公司的研發,他不熟悉 Kubernetes,他想在不需要提工單給運維的情況下快速搭建開發測試環境(所謂自服務)。
專案程式碼倉庫放置在
建立應用
張研登入Seal平臺執行以下操作:
- 訪 問【應用管理】-【應用】選單,點選【新建應用】按鈕。
-
在【名稱】中填入
myapp
,點選模組配置中的【+】按鈕。 -
在模組名稱中填入
s2i
,模組列表中選擇build-container-image
,在Git URL中填入 入 -
點選【Build】標籤頁,在
image
中填入映象名稱registry.alpha.org/myproject/myimage:latest
(注:這是張研所在Alpha公司的倉庫地址,您需要換成您所用的映象倉庫地址)。 -
勾選【Registry Authentication】,在【Username】和【Password】中分別填入
${secret.REGISTRY_USERNAME}
和${secret.REGISTRY_PASSWORD}
。Seal的UI會引導填寫對已配置金鑰的引用。點選【確定】儲存構建映象模組的配置。 - 點選【模組配置】中的【+】按鈕。
-
在模組名稱中填入
web
,確認模組列表中選擇webservice
,在【Image Name】中填入${module.s2i.image}
,Seal的UI會引導填寫對其它模組輸出的引用。 -
修改
Ports
為 8888 埠(這是張研所用程式碼監聽的埠)。點選【確定】儲存web服務模組的配置。 -
點選【儲存】按鈕儲存應用配置。
部署應用
現在張研可 以在Seal上一鍵部署測試環境了:
-
進入
myapp
應用詳情頁。 - 點選應用資訊右側的【+】號新增例項按鈕。
-
在名稱中填入
dev1
,選擇運維團隊(李維)提供的development
環境。點選【確定】按鈕建立應用例項。
4 等待部署完成,並在UI上出現該應用例項的訪問地址。
TADA!張研現在可以訪問他的服務測試環境了!後續他可以將該應用共享給其它的開發測試成員,建立多個應用例項。
總結
本文透過兩種角色視角的職責劃分,展示了 Seal 如何實現研發和運維關注點分離;透過從原始碼到 Kubernetes deployment 的部署,展示了Seal 的應用模型抽象。當然不止於此,一個應用模組可以是構建邏輯、雲原生工作負載,也可以是傳統部署負載或是其它的資源抽象。
歡迎來探索更多功能!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026925/viewspace-2945880/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- WikiPedia 的正確開啟方式
- 雲遊戲的正確開啟方式遊戲
- Java學習的正確開啟方式Java
- “布”道AI的正確開啟方式AI
- React之setState的正確開啟方式React
- 翻譯 | let 的正確開啟方式
- Python log 的正確開啟方式Python
- OnlineJudge的正確開啟方式
- Redis 分散式鎖的正確開啟方式Redis分散式
- 物聯網安全的正確開啟方式
- 逐向雙碳:綠色計算的誤區與正確開啟方式
- IT部門資訊化正確開啟方式
- 軟體開發正確開啟方式:低程式碼+微服務微服務
- 雲開發 VSCode 外掛 Cloudbase Toolkit 的正確開啟方式VSCodeCloud
- [譯]響應式 Iframe - 正確的開啟方式
- 分散式鎖實現的正確開啟方式分散式
- vue3+ts開啟echarts的正確方式VueEcharts
- Android底部彈窗的正確開啟方式Android
- 基於Redis分散式鎖的正確開啟方式Redis分散式
- [譯] 論 Android 中 Span 的正確開啟方式Android
- Vue_watch深度監聽的正確開啟方式Vue
- 這才是分散式事務的正確開啟方式!分散式
- TensorFlow中RNN實現的正確開啟方式RNN
- 記錄Android Studio正確開啟方式Android
- Python——視覺化神器pyecharts的正確開啟方式Python視覺化Echarts
- 【前端除錯】- 斷點除錯的正確開啟方式前端除錯斷點
- iOS開發-獲取rootViewController的正確方式iOSViewController
- 等保2.0|這才是實施指南正確的開啟方式
- 乾貨!這才是學習Python的正確開啟方式!Python
- 這才是開啟風變程式設計的正確操作方式程式設計
- 【LBTC區塊鏈進階】分叉幣的正確開啟方式區塊鏈
- 【天行健】六西格瑪解決方案的正確開啟方式
- Linux系統學習視窗的正確開啟方式Linux
- 小程式才是電商的正確開啟方式!你還不知道?
- 智慧|跟著美的集團學習VMI正確的開啟方式
- offset新探索:雙管齊下,加速大資料量查詢大資料
- 雙管齊下演算法分析-----FTP搜尋利器3.0演算法FTP
- 開啟Git的正確姿勢Git