[發明專利]一種基于fleet集群服務分配的服務網絡地址獲取方法有效
| 申請號: | 201610069035.X | 申請日: | 2016-01-28 |
| 公開(公告)號: | CN105681488B | 公開(公告)日: | 2019-07-23 |
| 發明(設計)人: | 劉春琿;周春寅;范聯偉;余保華 | 申請(專利權)人: | 安徽四創電子股份有限公司 |
| 主分類號: | H04L29/12 | 分類號: | H04L29/12 |
| 代理公司: | 合肥和瑞知識產權代理事務所(普通合伙) 34118 | 代理人: | 王挺 |
| 地址: | 230088 安徽省合肥*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 fleet 集群 服務 分配 網絡地址 獲取 方法 | ||
本發明屬于集群服務管理領域,特別涉及一種基于fleet集群服務分配的服務網絡地址獲取方法。本方法包括首先在集群中啟動一個全局的基礎容器服務,基礎容器服務獲取當前主機的網絡地址,基礎容器服務啟動在所有的主機上,并以各自當前主機的主機域名和所述網絡地址上報至域名解析系統,待管理的目標容器服務啟動后,啟動所述目標容器服務的伴隨服務,伴隨服務將服務名稱作為域名上報至域名解析系統,并與主機域名綁定,通過所述服務名稱即可在域名解析系統中查詢到目標容器服務所在主機的網絡地址。本發明可以直接獲取容器服務所在當前主機的網絡地址,為管理集群服務提供了極大的方便,方便用戶對網絡地址的訪問,而且提高了獲取網絡地址的效率。
技術領域
本發明屬于集群服務管理領域,特別涉及一種基于fleet集群服務分配的服務網絡地址獲取方法。
背景技術
Linux容器技術是一種操作系統層虛擬化技術,為Linux內核容器功能的一個用戶空間接口,它將應用軟件系統打包成一個軟件容器,內含應用軟件本身的代碼,以及所需要的操作系統核心和庫。在Linux內核中,提供了cgroups功能,來達成資源的區隔化,同時也提供了名稱空間區隔化的功能,使應用程序看到的操作系統環境被區隔成獨立區間。
容器利用cgroups與名稱空間的功能,提供應用軟件一個獨立的操作系統環境。Fleet是一個開源的集群級別的集群服務管理工具,用戶將要啟動的服務提交給fleet,由fleet對服務進行分配和管理,其中,服務以docker容器的形式運行。
現有技術中的服務網絡地址獲取方法不能夠直接獲取容器服務所在主機的網絡地址,只能通過主機名稱獲取容器服務所在的主機,然而集群中主機的網絡地址往往不是固定的,不方便前端用戶的訪問服務,而且獲取網絡地址效率低。
發明內容
本發明為了克服上述現有技術的不足,提供了一種基于fleet集群服務分配的服務網絡地址獲取方法,可以直接獲取容器服務所在當前主機的網絡地址,為管理集群服務提供方便,便于用戶對網絡地址的訪問。
為實現上述目的,本發明采用了以下技術措施:
一種基于fleet集群服務分配的服務網絡地址獲取方法,包括以下步驟:
S1、在集群中啟動一個全局的基礎容器服務,所述基礎容器服務獲取當前主機的網絡地址;
S2、所述基礎容器服務啟動在集群中所有的主機上,并以各自當前主機的主機名稱作為域名即為主機域名和所述網絡地址上報至域名解析系統;
S3、待管理的目標容器服務啟動后,啟動所述目標容器服務的伴隨服務;
S4、所述伴隨服務將服務名稱作為域名即為服務域名上報至域名解析系統,并與所述主機域名綁定;
S5、通過所述服務名稱即可在域名解析系統中查詢到所述目標容器服務所在主機的網絡地址。
優選的,所述基礎容器服務在啟動時設置其網絡配置為Host-Only模式。
優選的,所述基礎容器服務通過編寫基于go語言的程序獲取當前主機的網絡地址。
優選的,所述網絡地址為當前主機連接到集群中物理網卡的地址。
進一步的,所述伴隨服務啟動在所述目標容器服務所在的主機上。
進一步的,步驟S5具體包括:
S51、首先域名解析系統根據所述服務名稱自動查找CNAME鏈;
S52、通過所述CNAME鏈查詢到主機域名和網絡地址;
S53、最終由網絡地址確定當前主機的網絡地址。
本發明的有益效果在于:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安徽四創電子股份有限公司,未經安徽四創電子股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610069035.X/2.html,轉載請聲明來源鉆瓜專利網。





