您好,登錄后才能下訂單哦!
【技術沙龍002期】數據中臺:宜信敏捷數據中臺建設實踐|宜信技術沙龍 將于5月23日晚8點線上直播,點擊報名
LAIN是宜信公司大數據創新中心開發的開源PaaS平臺。在金融的場景下,LAIN 是為解放各個團隊和業務線的生產力而設計的一個云平臺。LAIN 為宜信大數據創新中心各個團隊提供了統一的測試和生產環境,簡化了服務的部署與上線流程,也降低了運維人員對系統管理的復雜度。
LAIN 規范了一個應用的開發、測試、上線工作流,提供了為應用做的容器編排、權限控制、SDN、流量管理、監控報警、備份、日志等 devops 問題的整體解決方案。
在 LAIN 上,應用是一個基本的概念,某個應用的開發者只需要定義一個 lain.yaml 即可定義應用的編譯和運行方式,對應用代碼侵入性很低。LAIN 基于容器技術,面向多樣化的技術棧,并且天然隔離系統和應用的依賴。
當 LAIN 用戶創建一個應用(服務)時,可以到 LAIN 上注冊該應用,當前的用戶自動成為了該應用的維護者,擁有了進一步操作該應用的權限。構建應用的環境需要 docker 和 lain 命令行工具,為了方便,我們創建了一個 vagrant box 即 lain-box. 在構建應用時,除了工程代碼外,還需要一個 Docker 鏡像作為基礎鏡像,即編譯的環境。如果是二進制的工程,如 golang,則可以在運行時換掉一個底,否則會使用 build 鏡像為 release 鏡像。準備好鏡像和編譯/運行的腳本后,就可以編輯 lain.yaml 了。
具體來說,LAIN 解決了以下四個問題:
常見問題
Lain是怎么做的
常見問題
Lain是怎么做的
常見問題
Lain是怎么做的
在應用的層面上,LAIN 還有以下特征:
1、基于配置文件定義應用
2、SDN網絡安全隔離
3、基于容器技術支持多樣化的技術棧
4、應用在線擴容縮容
5、節點在線擴容縮容
6、服務自動維持和災難恢復
7、內部服務依賴和發現機制
8、統一認證
9、虛ip和負載均衡器統一管理
10、web load balancer的自動配置
11、集群體系化的日志收集
12、私有docker registry以及認證機制
13、應用配置加密存儲
14、本地化開發環境
15、應用部署運維API以及相應的CLI客戶端
16、集群管理CLI
17、規范化的開發workflow
18、可選的集群體系化的備份和恢復(backupd + moosefs)
19、可選的集群日志查詢組件(kafka + elasticsearch + kibana)
20、可選的系列預置應用
從物理層面看,每一個 lain 集群是由一個或多個網絡互通的節點(Node)構成的。
每個節點可以被賦予不同的 label ,供容器調度時進行節點選擇使用。
目前的實現中,需要所有節點位于同一個路由器后。
從邏輯層面看,一個 lain 集群是由多個應用組成,應用和應用之間網絡相互隔離(通過SDN技術)。
每一個應用是由多個 Docker 容器組成,每個容器都可能運行在不同的節點上。
應用開發者可以在一個應用中定義多種容器(稱為 proc),每個 proc 可以指定為在集群上運行多份,每份即為一個容器,被稱為 proc instance 。Lain 集群會盡可能保證有指定份數的容器在運行,如果有容器 crash 或者節點 fail 的情況發生,集群會試圖重啟容器或者在節點間遷移容器。
目標是做成一層一層可以深入的架構圖
總圖
節點
GitHub地址:https://github.com/laincloud
白皮書:https://laincloud.gitbooks.io/white-paper/content/
來源宜信技術學院
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。