版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
基于CloudFoundry的私有云平臺內(nèi)容背景與目標實踐與改造(Part
1、2)流程與標準改變運維未來計劃1.背景與目標運維與PaaSStorageServersNetworkingO/SMiddlewareVirtualizationDataApplicationsRuntimeOP(SRE),運維PaaS
(and
IaaS)目標自動化業(yè)務的生命周期管理,如變更、監(jiān)控、故障處理等資源利用率、彈性標準化流程實例標準系統(tǒng)環(huán)境、runtime、framework一體化集成第三方服務,如DB、Cache、log、FS等與其他系統(tǒng)平臺聯(lián)動WhyCloudFoundry?自動化標準化一體化機器管理(下游部門)自動化一體化標準化WhyCF?自動化一體化標準化2.實踐與改造(Part1)Java,base
on
cf
1.0Java
Apps產(chǎn)品種類>100APP
>200實例>2000平均單實例10G(內(nèi)存)日均總pv>
10億APP的開發(fā)及測試人員>
700人Tomcat5/6/7、jdk1.5/1.6、Standalone
開始實施,準備工作基于CentOS的相關改造獨立部署各個CF組件拆解BOSH、chef,基于物理機實施OS環(huán)境初始化apt-get改為yumUbuntu-cmdtoCentOSDEA(v1.0),agent.rb、secure.rbyuminstall-ymakegccgcc-c++kernel-devel.x86_64openssl-devel.x86_64libxml2.x86_64libxml2-devel.x86_64libxslt.x86_64libxslt-devel.x86_64git.x86_64sqlite.x86_64ruby-sqlite3.x86_64sqlite-devel.x86_64unzip.x86_64zip.x86_64ruby-devel.x86_64ruby-mysql.x86_64mysql-devel.x86_64curl-devel.x86_64postgresql-libs.x86_64postgresql-devel.x86_64zlib-devel.x86_64readline-devel.x86_64ImageMagick.x86_64ImageMagick-devel.x86_64php-magickwand.x86_64集群容量評估實例數(shù)量,NATS容量評估單臺DEA承載的實例數(shù)(<100),對NATS-Server壓力影響不大單NATS-Server,保守估計可承受330臺DEA,單臺實例數(shù)5~30個多NATS-Server,可擴展延時(ms)DEA臺數(shù)(10
~
340臺)單DEA實例數(shù)(5
~
30個)臨界線330臺DEA集群內(nèi),組件冗余、LB設計NATS使用cluster版,多NATS,心跳同步Client端緩存信息,如果網(wǎng)絡中斷,則不斷reconnect多NATS負載均衡(Client>
0.5.beta.6)NATS-Server1NATS-Server2NATS-Client(cachingmessage)NATS-Server1/2,Randomlist多集群冗余設計多個獨立的集群,邏輯互不影響第一層切換,修改DNS
A記錄,對多個域名(CNAME到此A記錄),統(tǒng)一切到不同的集群第二層切換,修改“接入層”(其應用層的功能,可簡單理解為nginx的反向代理)保證好APP(無狀態(tài))的容量,或快速擴容的預案,以防止流量切過來以后,出現(xiàn)過載Baidu
GateWayFront
EndRouterA記錄Baidu
GateWayFront
EndRouterapp1app1CNAME(正式域名)CNAME(正式域名)
CNAME
.
www.
CNAME
.
.
A
7
.
A
6核心組件,分布Router_1NATS_1RouterNATSCCHMStagerDEAPG_DBRedis整體結(jié)構(gòu)(cf1.0)DEALoggingName
ServiceMonitoringjvmStagerFilePersistenceHMRouterCCBaidu
GateWay/Front
EndjvmjvmAPI
BridgeUAAjvmjvmjvmjvmjvmRouter(Cluster02)NATSDB新增功能支持RPC、單實例多端口單實例開啟多個端口,并提供API實時查詢IP、端口號與“名稱服務”聯(lián)動,同步動態(tài)ip端口與名稱的對應關系RPC調(diào)用方,根據(jù)名稱直連實例DEA
server支持RPC、單實例多端口Instance01:portInstance02:portAPI
Bridge
NS
serverTXT記錄ip:portip:portRPC調(diào)用方NS
clientDomain
ip:port
ip:portip_local_port_range10000~
60000Port池(分配后,有凍結(jié)期)61000~
65000新增功能支持JMXAPI實時查詢ip與Jconsole端口號,實現(xiàn)JMX數(shù)據(jù)實時采集DEA支持JMX
Instance01:
Jconsole端口Instance02:
Jconsole端口{"instances":[{"index":0,"state":"RUNNING","since":438249600,"jconsole_ip":"","jconsole_port":61111},{"index":1,"state":"RUNNING","since":438249600,"jconsole_ip":"","jconsole_port":62222}MonitoringMetricsCpuUseRateDaemonThreadCountMemPool_OldGen_UseRateNonHeapMemoryUsage_usedTotalCompilationTimeTotalPeakThreadCountTotalStartedThreadCountUnloadedClassCountGC_Major_FrequencyGC_Major_Time……Stager:java
\-Dcom.sun.management.jmxremote.port={VCAP_JCONSOLE_PORT}-Dcom.sun.management.jmxremote.authenticate=false-Dcom.sun.management.jmxremote.ssl=false新增功能加強健康檢查七層檢測文件句柄數(shù)檢測DEA
ServerDEA
agent.rbHealthMangerinstancehttp可用性instanceCPUMEMDISK……report加強健康檢查
句柄DEA(v1.0),邏輯改進端口管理問題描述單DEA多實例,并行的端口分配與啟動,沒有臨界區(qū),有端口競爭的問題解決方案借鑒了DEA(v2.0)的邏輯(注:即DEA_NG,與CF1.0不兼容)設定ip_local_port_range為10000~61000,作為動態(tài)端口的范圍將61001~65000,作為DEA的調(diào)度分配端口對分配的端口,增加“[釋放時間、端口號]”的數(shù)據(jù)結(jié)構(gòu)通過延時釋放端口,解決了端口競爭的問題備注CF2.0中,已解決此問題,方法同上DEA(v1.0),邏輯改進實例資源信息管理問題描述du命令算實例磁盤空間,時間較長,隨后執(zhí)行其他計算命令,信息已不一致CPU計算的方法,沒有考慮主機核數(shù)解決方案調(diào)整相關命令的順序CPU利用率計算時,除以核數(shù)備注CF2.0中,已解決此問題新增功能(與外圍系統(tǒng)聯(lián)動)文件持久化使用MFS(MooseFileSystem)DEA部署MFS-Client,并mount
/mfs/path,供實例使用MFS服務端提供HTTP接口,獲取數(shù)據(jù)基于URI的路由,區(qū)分APPf/app1
app1.foo./app2
app2.監(jiān)控聯(lián)動APP的生命周期,與外部監(jiān)控系統(tǒng)的API交互,實現(xiàn)監(jiān)控項的自動增刪改開發(fā)者工具包自動化發(fā)布(封裝vmc)文件查看主要改造點匯總(cf
v1.0)基于CentOS的相關改造使用NATS-Cluster、NATS-Client重試與緩存支持RPC、單實例多端口支持動態(tài)JMX、Jconsole加強健康檢查端口管理實例資源信息管理外圍組件:文件持久化、監(jiān)控聯(lián)動、URI路由、開發(fā)者工具包2.實踐與改造(Part2)C/C++,base
on
cf
2.0C/C++
Apps,幾大核心問題Container的運行環(huán)境與資源隔離Kernel/GNU資源隔離快照,Core
Dump單實例多進程健康檢查進程運行順序?qū)嵗齼?nèi),進程間通信多端口多實例的同構(gòu)性C/C++
Apps,幾大核心問題大實例實例個數(shù)多(10萬)數(shù)據(jù)量大(單實例,2TB)內(nèi)存占用高(單實例,100G)啟動時間長(30分鐘)流量大(單實例,日總PV2億)漂移時,防止資源不足APP通信網(wǎng)絡層通信,權(quán)限、流量控制輸出文件,需要外部抓取輸入文件,需要外部推送RPC,非HTTP協(xié)議,不包含PATH信息,無法路由實例的OS-Level環(huán)境準備Container的運行環(huán)境Kernel與宿主機一致訂制Container的文件環(huán)境warden/warden/root/linux/rootfs/setup.shifgrep-q-icentos/etc/issuethen
exec$(dirname$0)/centos.sh$@fiContainer與宿主機的關系WardenNetworking,Bridge/NAT/Firewall/FlowControlDEAinit─┬─xxx├─xxx─xxx├─xxxmountrusr/lib/etc/mountrwxxx/networkinterface(subnet)Cgroup–CPU/MEMNamespaceinit─┬─xxx├─xxx─xxx├─xxxmountrusr/lib/etc/mountrwxxx/networkinterface(subnet)Cgroup–CPU/MEMNamespace包管理BuildpackAPIdetect
,檢查complie,環(huán)境準備目錄結(jié)構(gòu)程序文件,及相關配套程序啟動腳本,保證進程的啟動順序,等等監(jiān)控腳本,可以周期性執(zhí)行,檢測整個實例的健康程度release,發(fā)布信息Procfile,參數(shù)傳遞(如端口號).profile.d,環(huán)境變量健康檢查,改造點自定義監(jiān)控腳本自定義監(jiān)控腳本,隨實例一起發(fā)布,周期性改寫stat_file文件內(nèi)容DEA定期檢查stat_file文件實例stat_filemonitor.shprocess-1process-2DEAHMAPP的改造針對RPC,支持NS
Client動態(tài)配置文件,代替路由端口管理,凍結(jié)時間輸入輸出文件輸入文件,主動抓取輸出文件,推到中轉(zhuǎn)處(如云存儲),或基于NS服務多進程的管理,啟動腳本多進程,啟動順序控制進程控制文件持久化遠程日志使用云存儲整體結(jié)構(gòu)(CF2.0)DEALoggingName
ServiceMonitoringFilePersistenceHMgorouter(RPC,不適用)CCBaidu
GateWay/Front
EndAPI
BridgeUAA(Cluster02)NATSContainerprocess-1process-2WardenNSClientContainerprocess-1process-2Containerprocess-1process-2DB主要改造點匯總(cf
v2.0)基于CentOS的相關改造Container環(huán)境的訂制Buildpack的訂制支持RPC、單實例多端口加強健康檢查外圍組件:文件持久化、監(jiān)控聯(lián)動、URI路由、開發(fā)者工具包3.流程與標準工作流程,簡述評審標準容量SLA接入組織關系名稱信息運維信息流程審批權(quán)限申請名稱申請發(fā)布操作發(fā)布更新預發(fā)布灰度回滾故障處理可用性安全問題管理標準與容量,舉例標準信息采集App相關名稱、相關接口人(R&D、QA、運維、相關經(jīng)理,等)Runtime與容器版本無狀態(tài)、RPC、URI路由動靜態(tài)文件分離文件持久化容量信息采集PV、QPS單實例CPU、內(nèi)存、磁盤、帶寬、重啟時間實例數(shù)量SLA,舉例服務對象Java應用(以下簡稱“APP”)符合標準的APP服務時間24×365全年無休溝通方式Mail、Tel、接口人信息穩(wěn)定性相關指標核心組件,可用性>99.99%(每月),MTTR<20分鐘,MTBF>5天控制服務,可用性>99.95%(全年)APP自身SLA,不因平臺本身,造成負面影響
注:APP自身問題,不在此SLA范圍內(nèi),如:
程序bug、容量預估錯誤、外部系統(tǒng)故障(如DB、Cache)等組織關系,層級產(chǎn)品線(Org)模塊(Space)分組(APP)版本(APP-*)
產(chǎn)品線-2產(chǎn)品線-1
(Org)模塊-2模塊-1(Space)分組-1(A)分組-2(B)實例,版本-1(APP-1-1)實例,版本-2(APP-1-2)實例,版本-1(APP-2-1)實例,版本-2(APP-2-2)實例,版本-1(A-1)實例,版本-2(A-2)實例,版本-1(B-1)實例,版本-2(B-2)虛線內(nèi),相當于一個APP,且有多個實例對CC進一步封裝產(chǎn)品線(Org) OrgName 模塊(Space) OrgName_SpaceName模塊分組
OrgName_SpaceName_GroupTag模塊版本
OrgName_SpaceName_GroupTag_VersionTag實例(id唯一)
OrgName_SpaceName_GroupTag_VersionTag_IndexGroupTag、VersionTagGroupTag可以區(qū)分:配置文件、機房、機架等維度的不同VersionTag可以區(qū)分:程序、數(shù)據(jù)、配置文件等包含:四位版本號、時間戳實例完整名稱,例子Org_Space_GroupA_1-1-1-1-438249600_1Org_Space_GroupB_1-1-1-1-438249600_1審批與發(fā)布發(fā)審批單APP信息(程序版本、容量信息、相關說明,等等)審批人(相關經(jīng)理、需知曉的人)操作者、操作時間監(jiān)控信息(監(jiān)控策略、接口人等)開始發(fā)布操作,并添加監(jiān)控發(fā)布前,對應審批流必須通過操作人、程序版本、MD5、時間等信息,必須與審批流一致都一致,且流程通過,則可以開始發(fā)布發(fā)布成功后,添加監(jiān)控發(fā)單審批發(fā)布APP監(jiān)控添加預發(fā)布、發(fā)布、回滾app_v1instance01app_v1.app_v1instance02app_v2instance01app_v2instance02app_v3instance01app_v3instance02app_v3.app.泛域名、map/unmap、app的多版本并存前進,發(fā)布后退,回滾預發(fā)布,線下內(nèi)網(wǎng)觀察基本的灰度發(fā)布app_v1instance01app_v1.app_v1instance02app_v2instance01app_v2instance02app_v3instance01app_v3instance02app.1、將一個正式域名,同時指向多個app2、調(diào)整多個app的實例數(shù)比例,即調(diào)整了流量的比例app.app_v2instance03通過調(diào)整app實例的數(shù)量,灰度流量的分配比例“布道之道”,平臺的推廣軍功章,有誰的一半?APP的支持新服務,需遵守PaaS的相關標準、思想老服務,需R&D改造,QA需回歸測試外圍的支持DB、Cache、存儲、接入、安全、監(jiān)控,等等明確收益,建立共贏的生態(tài)圈交付更快、資源更省、事情變得簡單一站式的一體化服務,攜手推廣一些方法給用戶(APP開發(fā)人員),尊貴的帝王般的享受對重點的APP,有針對性的重點服務對重要
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年山東大學齊魯?shù)诙t(yī)院護理人員(非事業(yè)編制)招聘(60人)筆試備考題庫及答案解析
- 2026上半年貴州事業(yè)單位聯(lián)考貴州省民政廳招聘10人考試備考題庫及答案解析
- 2026年度霍邱縣事業(yè)單位公開招聘工作人員44名筆試模擬試題及答案解析
- 2026年安徽汽車職業(yè)技術(shù)學院招聘派遣制任務型教師30名(第一批)筆試參考題庫及答案解析
- 2026湖北恩施州順鑫達勞務有限責任公司短期招聘2人筆試參考題庫及答案解析
- 2026年薪酬體系設計優(yōu)化培訓
- 2026江西裕民銀行誠聘英才筆試備考試題及答案解析
- 北京十一晉元中學招聘筆試備考題庫及答案解析
- 2026年投資房地產(chǎn)的地理經(jīng)濟分析
- 2026年房地產(chǎn)開發(fā)成本與政策調(diào)控的關聯(lián)性
- DB34-T 4877-2024 智慧檢驗檢測實驗室建設指南
- 體溫單模板完整版本
- 武漢市2024屆高中畢業(yè)生二月調(diào)研考試(二調(diào))英語試卷(含答案)
- 天然美肌無添加的護膚品
- 《正常人體形態(tài)學》考試復習題庫大全(含答案)
- 湖南省長沙市外國語學校 2021-2022學年高一數(shù)學文模擬試卷含解析
- 3D車載蓋板玻璃項目商業(yè)計劃書
- 阿米巴經(jīng)營管理培訓課件
- 我國的宗教政策-(共38張)專題培訓課件
- 鋁材廠煲模作業(yè)指導書
- 【行測題庫】圖形推理題庫
評論
0/150
提交評論