資源描述:
《基于CloudFoundry的私有云平臺》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、基于CloudFoundry的私有云平臺@王煒煜,百度運維部weibo.com/wwy16402013-7-19內(nèi)容背景與目標(biāo)實踐與改造(Part1、2)流程與標(biāo)準(zhǔn)改變運維未來計劃1.背景與目標(biāo)運維與PaaSStorageServersNetworkingO/SMiddlewareVirtualizationDataApplicationsRuntimeOP(SRE),運維PaaS(andIaaS)目標(biāo)自動化業(yè)務(wù)的生命周期管理,如變更、監(jiān)控、故障處理等資源利用率、彈性標(biāo)準(zhǔn)化流程實例標(biāo)準(zhǔn)系統(tǒng)環(huán)境、runtime、framework一體
2、化集成第三方服務(wù),如DB、Cache、log、FS等與其他系統(tǒng)平臺聯(lián)動WhyCloudFoundry?自動化標(biāo)準(zhǔn)化一體化機器管理(下游部門)自動化一體化標(biāo)準(zhǔn)化WhyCF?自動化一體化標(biāo)準(zhǔn)化2.實踐與改造(Part1)Java,baseoncf1.0JavaApps產(chǎn)品種類>100APP>200實例>2000平均單實例10G(內(nèi)存)日均總pv>10億APP的開發(fā)及測試人員>700人Tomcat5/6/7、jdk1.5/1.6、Standalone開始實施,準(zhǔn)備工作基于CentOS的相關(guān)改造獨立部署各個CF組件拆解BOSH、chef,基
3、于物理機實施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_64unzi
4、p.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)
5、,對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設(shè)計NATS使用cluster版,多NATS,心跳同步Client端緩存信息,如果網(wǎng)絡(luò)中斷,則不斷reconnect多NATS負載均衡(Client>0.5.beta.6)NATS-Server1NATS-Server2NATS-Client(cachingmessage)NATS
6、-Server1/2,Randomlist多集群冗余設(shè)計多個獨立的集群,邏輯互不影響第一層切換,修改DNSA記錄,對多個域名(CNAME到此A記錄),統(tǒng)一切到不同的集群第二層切換,修改“接入層”(其應(yīng)用層的功能,可簡單理解為nginx的反向代理)保證好APP(無狀態(tài))的容量,或快速擴容的預(yù)案,以防止流量切過來以后,出現(xiàn)過載BaiduGateWayFrontEndRouterA記錄BaiduGateWayFrontEndRouterapp1app1CNAME(正式域名)CNAME(正式域名)www.baidu.comCNAMEwww.
7、a.shifen.com.www.baidu.cnCNAMEwww.a.shifen.com.www.a.shifen.com.A119.75.218.77www.a.shifen.com.A119.75.217.56核心組件,分布Router_1NATS_1RouterNATSCCHMStagerDEAPG_DBRedis整體結(jié)構(gòu)(cf1.0)DEALoggingNameServiceMonitoringjvmStagerFilePersistenceHMRouterCCBaiduGateWay/FrontEndjvmjvmAPI
8、BridgeUAAjvmjvmjvmjvmjvmRouter(Cluster02)NATSDB新增功能支持RPC、單實例多端口單實例開啟多個端口,并提供API實時查詢IP、端口號與“名稱服務(wù)”聯(lián)動,同步動態(tài)ip端口與名稱的對應(yīng)關(guān)系RP