隨着京東雲業務的飛速發展,其須要管理的物理機、虛機以及各種容器已經達到了數十萬之巨,在如此數量如此龐大資源機如何管理的課題面前,京東雲意識到必須開發本身的高效、安全、穩定的資源機管理系統,爲京東雲乃至整個京東集團各項業務的發展提供堅實可靠的後盾,「門神」系統在這種狀況下應運而生,並在通過屢次京東61八、11.11等諸多重大活動的檢驗後,變得愈發成熟穩定。
「門神」顧名思義,就是守護整個京東資源機雲安全的守護神,是京東雲平臺自主研發的一套基於服務樹角色受權的線上機器運維平臺,該平臺支持認證登陸、系統運維和安全審計,能夠對京東雲平臺全部的主機進行統一的訪問控制、操做歷史記錄等,是符合4A的專業運維審計系統,構建統1、高效、安全運維通道,保障雲端運維工做遵循法律法規要求、下降人爲安全風險,提升運維效率。前端
爲了適應京東雲業務快速發展、所需管理的物理機、虛機和容器數量指數級增長的現狀,知足公司安全認證、高效運維、操做審計、職權管控的要求,門神設計初期就制定了以下目標:shell
門神系統涉及諸多技術,其中核心技術點包括:數據庫
從門神整體架構圖能夠看出,門神的數據源是京東雲自研的核心數據模塊(服務樹模塊),全部用戶和資源機信息都是從服務樹模塊獲取並保存到數據庫和kerberos中的,並經過腳本實時同步服務樹中變化的數據,從而保證數據會實時的同步到門神系統。門神主要模塊包括relay、kerberos、relay-server、doorgod-api和須要安裝到資源機的客戶端dg-client,下文介紹結合核心模塊的設計和實現。api
門神用戶操做界面通過開發團隊反覆打磨,簡單易用,人機交互天然流暢,主界面爲受權給用戶的資源機信息,右邊部分展現快捷鍵信息和登陸歷史信息,下方是用戶輸入區,用戶能夠經過以下方式登陸資源機:安全
a、輸入主界面index number選擇資源機登陸;網絡
b、直接輸入ip登陸;架構
c、輸入應用名稱或者ip進行模糊匹配,選擇具體資源機登陸;併發
d、輸入右側歷史記錄的index number登陸(以「!」開始)。運維
recorder進行tty劫持,從而實現錄屏功能,用戶全部的操做都會被記錄下來,經過syslog發送到kafka集羣,最終被ES集羣消費和存儲,做爲用戶提供操做審計查詢的數據源。ssh
經過雲翼能夠按照目的ip、操做類型、關鍵字(支持精確匹配和模糊匹配)、時間進行查詢操做日誌,從而實現用戶操做全程審計;門神還支持用戶操做回放功能,能更加清楚的對用戶操做進行審計。
門神系統爲京東雲軟件開發、測試、運維人員提供了統一的運維入口,只須要記住一個密碼就能登陸全部受權主機,並自由的在受權主機之間穿梭,這極大的減輕了軟件工程師們的工做負擔,提高了工做效率。同時,又爲運維安全提供了技術實現方面的保障,將審計工做貫徹到整個運維流程全過程當中,切實保證了線上機器的運維安全。
當前,門神已經成爲京東雲線上機器運維的主要平臺,成功爲京東61八、11.11等諸多重大活動提供運維支持保障,成爲助力京東雲快速、高質量發展的重要力量之一。門神團隊正在開發門神系統的控制檯產品-堡壘機,該產品將以開源版本和商業版本兩種方式發佈,請各位讀者朋友多提寶貴意見。
點擊「閱讀」瞭解京東雲翼產品!
歡迎點擊「京東雲」瞭解更多精彩內容