云計算開發(fā)服務(wù)平臺畢業(yè)設(shè)計(論文)_第1頁
云計算開發(fā)服務(wù)平臺畢業(yè)設(shè)計(論文)_第2頁
云計算開發(fā)服務(wù)平臺畢業(yè)設(shè)計(論文)_第3頁
云計算開發(fā)服務(wù)平臺畢業(yè)設(shè)計(論文)_第4頁
云計算開發(fā)服務(wù)平臺畢業(yè)設(shè)計(論文)_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、畢業(yè)設(shè)計(論文)課題名稱:云計算開發(fā)服務(wù)平臺 PAGE II目錄TOC o 1-3 h z u HYPERLINK l _Toc331821053 前言 PAGEREF _Toc331821053 h II PAGEREF _Toc331821053 h HYPERLINK l _Toc331821054 第一章系統(tǒng)概述 PAGEREF _Toc331821054 h 1 PAGEREF _Toc331821054 h HYPERLINK l _Toc331821055 1.1先電云計算平臺架構(gòu) PAGEREF _Toc331821055 h 1 PAGEREF _Toc331821055 h

2、 HYPERLINK l _Toc331821056 1.2 支撐的多種開發(fā)環(huán)境 PAGEREF _Toc331821056 h 2 PAGEREF _Toc331821056 h HYPERLINK l _Toc331821057 第二章系統(tǒng)配置 PAGEREF _Toc331821057 h 5 PAGEREF _Toc331821057 h HYPERLINK l _Toc331821058 2.1 前提條件 PAGEREF _Toc331821058 h 5 PAGEREF _Toc331821058 h HYPERLINK l _Toc331821059 第三章安裝PAAS軟件 PA

3、GEREF _Toc331821059 h 7 PAGEREF _Toc331821059 h HYPERLINK l _Toc331821060 3.1 安裝前準(zhǔn)備 PAGEREF _Toc331821060 h 7 PAGEREF _Toc331821060 h HYPERLINK l _Toc331821061 3.2 建立安裝資源庫和安裝依賴組件 PAGEREF _Toc331821061 h 7 PAGEREF _Toc331821061 h HYPERLINK l _Toc331821062 3.3 配置域名服務(wù)(DNS) PAGEREF _Toc331821062 h 8 PAG

4、EREF _Toc331821062 h HYPERLINK l _Toc331821063 3.4 安裝和配置MongoDB數(shù)據(jù)庫 PAGEREF _Toc331821063 h 9 PAGEREF _Toc331821063 h HYPERLINK l _Toc331821064 3.5 安裝和配置ActiveMQ消息管理服務(wù) PAGEREF _Toc331821064 h 9 PAGEREF _Toc331821064 h HYPERLINK l _Toc331821065 3.6 安裝Puppet MColltive Client端 PAGEREF _Toc331821065 h 10

5、 PAGEREF _Toc331821065 h HYPERLINK l _Toc331821066 3.7 安裝PaaS Broker配置身份服務(wù) PAGEREF _Toc331821066 h 11 PAGEREF _Toc331821066 h HYPERLINK l _Toc331821067 3.8 PaaS Broker Plugin的安裝 PAGEREF _Toc331821067 h 12 PAGEREF _Toc331821067 h HYPERLINK l _Toc331821068 3.9 PaaS Broker Web Console 的安裝 PAGEREF _Toc3

6、31821068 h 14 PAGEREF _Toc331821068 h HYPERLINK l _Toc331821069 3.10 安裝Node 容器節(jié)點 PAGEREF _Toc331821069 h 15 PAGEREF _Toc331821069 h HYPERLINK l _Toc331821070 3.10.1 Broker/Node All-In-One 安裝 PAGEREF _Toc331821070 h 15 PAGEREF _Toc331821070 h HYPERLINK l _Toc331821071 3.10.2 Broker/Node 分開雙結(jié)點安裝 PAGER

7、EF _Toc331821071 h 15 PAGEREF _Toc331821071 h HYPERLINK l _Toc331821072 3.11 配置多租戶 PAGEREF _Toc331821072 h 16 PAGEREF _Toc331821072 h HYPERLINK l _Toc331821073 第四章使用PAAS平臺上部署應(yīng)用 PAGEREF _Toc331821073 h 17 PAGEREF _Toc331821073 h HYPERLINK l _Toc331821074 4.1 Git 使用說明 PAGEREF _Toc331821074 h 17 PAGERE

8、F _Toc331821074 h HYPERLINK l _Toc331821075 4.1.1 Git 客戶端 PAGEREF _Toc331821075 h 17 PAGEREF _Toc331821075 h HYPERLINK l _Toc331821076 4.2 Git Server PAGEREF _Toc331821076 h 18 PAGEREF _Toc331821076 h HYPERLINK l _Toc331821077 4.2.1 本地SSH Git 庫搭建 PAGEREF _Toc331821077 h 18 PAGEREF _Toc331821077 h HY

9、PERLINK l _Toc331821078 4.3 部署RHC 客戶端管理軟件 PAGEREF _Toc331821078 h 19 PAGEREF _Toc331821078 h HYPERLINK l _Toc331821079 4.3.1 RHC 基本環(huán)境 PAGEREF _Toc331821079 h 19 PAGEREF _Toc331821079 h HYPERLINK l _Toc331821080 4.3.2 配置RHC PAGEREF _Toc331821080 h 19 PAGEREF _Toc331821080 h HYPERLINK l _Toc331821081

10、第五章使用PAAS平臺部署應(yīng)用和開發(fā)環(huán)境 PAGEREF _Toc331821081 h 21 PAGEREF _Toc331821081 h HYPERLINK l _Toc331821082 5.1 Jenkins Server PAGEREF _Toc331821082 h 21 PAGEREF _Toc331821082 h HYPERLINK l _Toc331821083 5.2 WordPress 博客系統(tǒng) PAGEREF _Toc331821083 h 23 PAGEREF _Toc331821083 h HYPERLINK l _Toc331821084 5.3 部署Node

11、.js項目實踐:構(gòu)建可擴展的Web應(yīng)用 PAGEREF _Toc331821084 h 26 PAGEREF _Toc331821084 h HYPERLINK l _Toc331821085 總結(jié) PAGEREF _Toc331821085 h 27 PAGEREF _Toc331821085 h HYPERLINK l _Toc331821086 致謝 PAGEREF _Toc331821086 h 28 PAGEREF _Toc331821086 h HYPERLINK l _Toc331821087 參考文獻 PAGEREF _Toc331821087 h 29 PAGEREF _To

12、c331821087 h 前言云計算(cloud computing)是基于互聯(lián)網(wǎng)的相關(guān)服務(wù)的增加、使用和交付模式,通常涉及通過互聯(lián)網(wǎng)來提供動態(tài)易擴展且經(jīng)常是虛擬化的資源。云是網(wǎng)絡(luò)、互聯(lián)網(wǎng)的一種比喻說法。過去在圖中往往用云來表示電信網(wǎng),后來也用來表示互聯(lián)網(wǎng)和底層基礎(chǔ)設(shè)施的抽象。對云計算的定義有多種說法。對于到底什么是云計算,至少可以找到 100 種解釋。目前廣為接受的是中國云計算專家咨詢委員會副主任、秘書長劉鵬教授,著云臺團隊給出的定義:“云計算是通過網(wǎng)絡(luò)提供可伸縮的廉價的分布式計算能力”。云計算代表了以虛擬化技術(shù)為核心、以低成本為目標(biāo)的動態(tài)可擴展網(wǎng)絡(luò)應(yīng)用基礎(chǔ)設(shè)施,是近年來最有代表性的網(wǎng)絡(luò)計算

13、技術(shù)與模式。云計算是繼 1980 年代大型計算機到客戶端-服務(wù)器的大轉(zhuǎn)變之后的又一種巨變。云計算(Cloud Computing)是分布式計算(Distributed Computing)、并行計算(ParallelComputing)、效用計算(Utility Computing)、網(wǎng)絡(luò)存儲(Network Storage Technologies)、虛擬化(Virtualization)、負載均衡(Load Balance)等傳統(tǒng)計算機和網(wǎng)絡(luò)技術(shù)發(fā)展融合的產(chǎn)物。云計算通過使計算分布在大量的分布式計算機上,而非本地計算機或遠程服務(wù)器中,企業(yè)數(shù)據(jù)中心的運行將與互聯(lián)網(wǎng)更相似。這使得企業(yè)能夠?qū)①Y源

14、切換到需要的應(yīng)用上,根據(jù)需求訪問計算機和存儲系統(tǒng)。根據(jù) NIST 的權(quán)威定義,云計算有 SPI,即 SaaS、PaaS 和 IaaS 三大服務(wù)模式。這是目前被業(yè)界最廣泛認同的劃分。中國電子科技集團公司第 55 研究所是國家軍工骨干研究所之一。南京第五十五所技術(shù)南京第五十五所技術(shù)開發(fā)有限公司()創(chuàng)辦于 1987 年,是五十五研究所直屬全資公司,公司業(yè)務(wù)主要涉及建筑智能化、物聯(lián)網(wǎng)技術(shù)應(yīng)用、云計算技術(shù)應(yīng)用、教學(xué)儀器設(shè)備、智慧校園、智能電網(wǎng)等。公司研發(fā)推出的先電云計算技術(shù)與服務(wù)平臺采用符合國際云計算標(biāo)準(zhǔn)的、主流云計算廠商、服務(wù)商所n納的三層架構(gòu),基于統(tǒng)一的云安全框架搭建。本文主要講述先電云計算開發(fā)服務(wù)

15、平臺的構(gòu)建方法,該平臺基于基于業(yè)界領(lǐng)先的OpenShift 開源框架,安裝和維護中間件、數(shù)據(jù)庫、操作系統(tǒng)、開發(fā)環(huán)境在內(nèi)的各類型軟件資源,提供給各應(yīng)用模型和接口,支持用于 Java、Python、PHP、Perl 和 Ruby 等應(yīng)用開發(fā)的框架。采用分布式技術(shù)方案解決分布式存儲和分布式計算,包含 SQL 和 NoSQL 數(shù)據(jù)存儲,實現(xiàn)平臺即服務(wù)(PaaS)功能。OpenShift 為云計算的開發(fā)人員提供全面的功能集合。關(guān)鍵詞:云計算 PAAS VMware centos6.5 PAGE 29第一章系統(tǒng)概述1.1先電云計算平臺架構(gòu)先電云計算平臺架構(gòu)即服務(wù)(PaaS),是一個面向開發(fā)人員的開發(fā)平臺。

16、支持用于 Java、Python、PHP、Perl 和 Ruby 的更多的開發(fā)框架,包括 Spring、Seam、Weld、CDI、Rails、Rack、Symfony、Zend Framework、Twisted、Django 和 Java E。它包含 SQL 和 NoSQL 數(shù)據(jù)存儲和一個分布式文件系統(tǒng)。為云計算的開發(fā)人員提供全面的功能集合。先電云計算平臺架構(gòu)讓用戶可以創(chuàng)建、部署、管理云端應(yīng)用,其云環(huán)境可以基于先電IaaS 平臺,先電 IaaS 基于磁盤空間、CPU 計算資源、內(nèi)存資源、網(wǎng)絡(luò)連接,提供虛擬主機供 PaaS 平臺使用。PaaS 的主要組件包括:系統(tǒng)的組件說明:控制節(jié)點:是所有

17、應(yīng)用管理活動的入口。它主要負責(zé)管理用戶登錄、DNS、應(yīng)用狀態(tài)以及應(yīng)用服務(wù)編排(服務(wù)分發(fā))。用戶和控制節(jié)點交互主要是通過 Web 管理控制臺、CLI 工具或者接口 REST APIs。應(yīng)用套件:應(yīng)用容器為應(yīng)用運行提供了實際所需的功能。每個應(yīng)用容器提不同的開發(fā)環(huán)境軟件包,包括服務(wù)器,比如 Tomcat、JBoos、NodeJs、Apache;同是提供運行環(huán)境支撐庫,比如 Java 、PHP、Python、Ruby、Perl,同事提供數(shù)據(jù)庫支持,包括 MySQL、MongoDB 等。應(yīng)用容器:先電 PaaS 是通過容器提供應(yīng)用運行環(huán)境和隔離。 容器:提供了給應(yīng)用套件運行的容器。一個容器可以運行一個或

18、多個應(yīng)用。容器可以為應(yīng)用套件提供按需分配的的內(nèi)存與磁盤空間。 節(jié)點:一臺物理機或虛擬機,其中包含多個容器。因為某些容器與并不都是處于運行中,所以一個節(jié)點通常會處于超配額狀態(tài),即放入了超過限額個數(shù)的容器。 區(qū)域:區(qū)域定義了一些節(jié)點,其中的容器可以方便地進行基于節(jié)點的負載均衡。系統(tǒng)的架構(gòu)圖如下:圖1.1 Paas 系統(tǒng)架構(gòu)圖1.2 支撐的多種開發(fā)環(huán)境先電 PaaS 平臺支持不同應(yīng)用類型關(guān)系數(shù)據(jù)庫、NoSQL 數(shù)據(jù)庫、Hadoop 分布式文件系統(tǒng);支持 Tomcat、JBoss、PHP Server 等應(yīng)用服務(wù)器,可以在其之上部署遠程辦公、電子商務(wù)、在線學(xué)習(xí)等各種 SaaS 應(yīng)用。此外,OpenSh

19、ift 也提供了 DNS 域名管理。圖2 .1 PAAS支持的主流的開源開發(fā)框架基于先電 PaaS 平臺,用戶可以部署包括企業(yè)應(yīng)用服務(wù)器、在線辦公、博客系統(tǒng)、電子商務(wù)、e-learning 服務(wù)、云計算工具、網(wǎng)盤服務(wù)、文檔閱讀服務(wù)、開發(fā)工具套件、郵件服務(wù)等。搭建起 SaaS 應(yīng)用服務(wù)平臺,如下:圖2.2 基于paas可以支撐搭建的軟件第二章系統(tǒng)配置2.1 前提條件先電 PaaS 平臺部署在先電 IaaS 平臺的虛擬機上,虛擬機采用 64 位的 CentOS 6.5 的操作系統(tǒng)。部署 Centos6.5 選擇最小安裝,或者最小安裝加桌面。PaaS 平臺組件包括 Broker 控制部分,包括 No

20、de 容器節(jié)點。部署的方案在用選用 Broker和 Node 安裝在一臺虛擬機之上的方案(All-In-One),或者 Broker 和 Node 分別安裝在兩臺虛擬機上。2.2 網(wǎng)絡(luò)設(shè)置安裝 PaaS 的 VM 的網(wǎng)絡(luò) IP 采用 IaaS 的外部 IP,IP 設(shè)置成靜態(tài) IP。網(wǎng)絡(luò)架構(gòu)如下:圖2.1 網(wǎng)絡(luò)架構(gòu)圖在配置完網(wǎng)絡(luò)接口之后,重啟啟動網(wǎng)絡(luò)服務(wù)使更改生效:更改主機名在/etc/hosts 文件中修改 Broker 控制節(jié)點主機名。修改 SELinux 模式為 enforcing,然后重啟。刪除/etc/yum.repos.d 路徑下的所有 repo 文件,將提供的 repo 文件拷貝到

21、該目錄下。編輯各個 repo 文件,修改成從控制節(jié)點的 ftp 路徑下獲取包。修改方法:1、修改 openshift-base.repo 文件baseurl=20/openshift-base (注:ip 地址為控制節(jié)點的內(nèi)網(wǎng) ip 地址,下同)enabled=1gpgcheck=02、修改 openshift-epel.repo 文件baseurl=20/openshift-epelenabled=1gpgcheck=03、修改 openshift-origin.repo 文件baseurl=20/openshift-origin (注:未注釋的那行)enabled=1gpgcheck=04

22、、修改 openshift-origin-dependencies.repo 文件baseurl=20/openshift-origin-dependenciesenabled=1gpgcheck=0第三章安裝PAAS軟件3.1 安裝前準(zhǔn)備安裝本系統(tǒng)的執(zhí)行腳本:執(zhí)行命令 yum install paas-xiandian根據(jù)自己的網(wǎng)絡(luò)規(guī)劃和 PaaS 平臺部署設(shè)計,修改/etc/xiandian/config.ini 文件文件 config.ini 內(nèi)容:#配置 broker 節(jié)點主機名 hostA_HOST= paas#配置 node 節(jié)點主機名 hostB_HOST=node#配置域名 A

23、_DOMAIN=#配置 broker 節(jié)點 IPA_IP=30#配置 node 節(jié)點 IPB_IP=31#配置數(shù)據(jù)庫密碼A_DBPASSWORD=000000#配置 admin user 密碼ADMINPASSWORD=000000#repo_dirREPOBASE=20/#配置網(wǎng)頁登錄用戶名HTUSER=demo#配置網(wǎng)頁登錄密碼HTPASSWORD=000000修改配置文件后,執(zhí)行腳本 runbefore.sh。腳本完成相關(guān)配置(config)文件的建立根據(jù)提供的 yum 源地址配置 yum 源配置文件。3.2 建立安裝資源庫和安裝依賴組件系統(tǒng)安裝需要建立安裝源、系統(tǒng)運行需要 NTP 服務(wù)

24、、運行庫依賴 Ruby。當(dāng)使用 all-in-one 方案時,執(zhí)行腳本 paas-pre-host.sh;當(dāng)分開安裝時,Broker 節(jié)點執(zhí)行腳本 paas-pre-host.sh,Node 節(jié)點執(zhí)行 paas-pre-node.sh。然后重啟機器,以此完成 repo 的安裝、NTP 的安裝、Ruby 安裝。NTP(Network Time Protocol),是用來使計算機時間同步化的一種協(xié)議,它可以使計算機對其服務(wù)器或時鐘源(如石英鐘,GPS 等等)做同步化,它可以提供高精準(zhǔn)度的時間校正(LAN 上與標(biāo)準(zhǔn)間差小于 1 毫秒,WAN 上幾十毫秒),且可介由加密確認的方式來防止惡意的協(xié)議攻擊。

25、CentOS 系統(tǒng)需要安裝和設(shè)置 SCL Ruby193.Ruby 是 PaaS 平臺運行的依賴開發(fā)環(huán)境。paas-pre-host.sh 執(zhí)行結(jié)果:圖3.2.1成功結(jié)果3.3 配置域名服務(wù)(DNS)PaaS 的部署環(huán)境和應(yīng)用訪問,依賴 DNS 域名服務(wù)框架。確??刂乒?jié)點和計節(jié)點主機訪問,解析 PaaS 在節(jié)點容器上(Gear)部署的應(yīng)用的域名訪問。域名 DNS 需要安裝和配置 BIND來實現(xiàn)。在 all-in-one 的虛擬機或分開安裝的 Broker 節(jié)點執(zhí)行腳本.paas-pre-broker.sh成功標(biāo)志:圖3.3.1 成功標(biāo)志3.4 安裝和配置MongoDB數(shù)據(jù)庫PaaS 系統(tǒng)使用的

26、數(shù)據(jù)庫為 NoSQl 類型的數(shù)據(jù)庫 MongoDB。MongoDB 存儲用戶(user)、容器(Gear)和其他必要的信息。MongoDB 是文檔數(shù)據(jù)存儲系統(tǒng),使用 JavaScript 語法進行命令交互,使用 JSON 格式存儲信息。在 all-in-one 的虛擬機或分開安裝的 Broker 節(jié)點執(zhí)行腳本:paas-install-mongodb.sh執(zhí)行后的結(jié)果腳本完成的主要工作有 MongoDB 的安裝、創(chuàng)建 MongoDB 的用戶“Openshift”,配置后通過 Mongo 客戶端命令進行操作驗證。成功標(biāo)志:圖3.4.1 成功標(biāo)志3.5 安裝和配置ActiveMQ消息管理服務(wù)Act

27、iveMQ 消息服務(wù)管理器,存儲各個消息客戶端發(fā)送來和派發(fā)出去的消息,不限制客戶端應(yīng)用的實現(xiàn)方式,實現(xiàn)不同編程語言的程序直接的通訊, PaaS 使用 ActiveMQ 完成控制節(jié)點(Broker)和資源節(jié)點(Node)直接的通訊。在 all-in-one 的虛擬機或分開安裝的 Broker 節(jié)點執(zhí)行腳本:paas-install-activemq.sh該腳本完成 ActiveMQ、ActiveMQ Client 的安裝,ActiveMQ 運行依賴 Jetty Web 應(yīng)用服務(wù)器。成功標(biāo)志:圖3.5.1 成功標(biāo)志安裝完成后,登錄 ActiveMQ。http:/IP:8161 需要修改 jetty

28、.xml 其中的 為 圖3.5.2 驗證成功標(biāo)志3.6 安裝Puppet MColltive Client端在控制 Broker、容器 Node 使用 MCollective 作為消息客戶端同消息服務(wù)器 ActiveMQ 進行消息通訊, MCollective 實現(xiàn) Node 節(jié)點向 Broker 中 ActiveMQ 消息服務(wù)器的消息發(fā)送和接受。在 all-in-one 的虛擬機或分開安裝的 Broker 節(jié)點執(zhí)行腳本:paas-install-mcollective.sh成功標(biāo)志:圖3.6.1 成功標(biāo)志3.7 安裝PaaS Broker配置身份服務(wù)PaaS Broker 是 PaaS 控制

29、系統(tǒng),管理所有的容器節(jié)點(Node)、應(yīng)用部署、應(yīng)用,同時提供了通過 Web Console 進行控制的 Web 界面。PaaS Node 是 PaaS 的容器節(jié)點,內(nèi)部是內(nèi)容的應(yīng)用套件,這些應(yīng)用套件通過PaaS Broker部署和啟動,提供給最終用戶使用。二者之間通過 MCollective 和 ActiveMQ 實現(xiàn)消息傳遞和調(diào)用。在 all-in-one 的虛擬機或分開安裝的 Broker 節(jié)點執(zhí)行腳本:paas-install-broker.sh在腳本執(zhí)行過程中,要求輸入 key 加密隨機數(shù),重復(fù)輸入 2 次回車,等待腳本執(zhí)行完成。圖3.8.1 成功標(biāo)志該腳本完成 PaaS 認證、消息

30、、域名等功能模塊,安裝后配置 http 服務(wù),部署 PaaS amdin和 PaaS Console Web 應(yīng)用。成功標(biāo)志:圖3.7.1 成功標(biāo)志3.8 PaaS Broker Plugin的安裝PaaS Broker 使用插件(Plugin)連接系統(tǒng)安裝的服務(wù)和 Broker 的對應(yīng)服務(wù),對應(yīng)的插件分別是 DNS、Authentication、消息插件。安裝插件后,同時進行正確配置。在 all-in-one 的虛擬機或分開安裝的 Broker 節(jié)點執(zhí)行腳本:paas-install-broker-plugins.sh執(zhí)行腳本后啟動 Broker服務(wù)。通過訪問Broker的API json服

31、務(wù)進行驗證是否安裝正確:執(zhí)行命令:Curl -u root:123456 HYPERLINK http:/localhost:8080/broker/rest/api.json http:/localhost:8080/broker/rest/api.json成功標(biāo)志:執(zhí)行后返回 APIs 的 JSON 描述:api_version:1.6,data:API:href:http:/localhost:8080/broker/rest/api,method:GET,optional_params:,rel:API entrypoint,required_params:,GET_ENVIRONME

32、NT:href:http:/localhost:8080/broker/rest/environment,method:GET,optional_params:,rel:Get environmentinformation,required_params:,GET_USER:href:localhost:8080/broker/rest/user,method:GET,optional_params:,rel:Get userinformation,required_params:,ADD_DOMAIN:href:http:/localhost:8080/broker/rest/domains

33、,method:POST,optional_params:default_value:null,description:A list of gearsizes that are allowed to be created on thisdomain,name:allowed_gear_sizes,type:array,valid_options:small,medium,rel:Create newdomain,required_params:description:Name of thedomain,invalid_options:,name:name,type:string,valid_o

34、ption80/broker/rest/domains,method:GET,optional_params:,rel:List all domains you have accessto,required_params:,LIST_DOMAINS_BY_OWNER:href:http:/localhost:8080/broker/rest/domains,method:GET,optional_params:,rel:Listdomains,required_params:description:Return only thedomains owned by the specified us

35、er id or identity. Use self torefer to the currentuser.,invalid_options:,name:owner,type:string,valid_options:self,*,SHOW_DOMAIN:href:http:/localhost:8080/broker/rest/domain/:name,method:GET,optional_params:,rel:Retrieve a domain by itsname,required_params:description:Unique name of thedomain,invali

36、d_options:,name:name,type:string,valid_options:,SHOW_APPLICATION_BY_DOMAIN:href:http:/localhost:8080/broker/rest/domain/:domain_name/application/:name,method:GET,optional_params:,rel:Retrieve anapplication by its name anddomain,required_params:description:Unique name of thedomain,invalid_options:,na

37、me:domain_name,type:string,valid_options:,description:Name of theapplication,invalid_options:,name:name,type:string,valid_options:,LIST_CARTRIDGES:href:http:/localhost:8080/broker/rest/cartridges,method:GET,optional_params:,rel:Listcartridges,required_params:,LIST_APPLICATIONS:href:http:/localhost:8

38、080/broker/rest/applications,method:GET,optional_params:,rel:Listapplication,required_params:,SHOW_APPLICATION:href:application/:id/editn Grant edit access to a single application.Valid for about 1 month.n* application/:id/adminn Grant fulladministrative access to a single application. Valid for abo

39、ut 1month.,name:scope,type:string,valid_options:session,read,userinfo,domain/:id/view,domain/:id/edit,domain/:id/admin,application/:id/view,application/:id/edit,application/:id/admin,default_value:null,description:A description to remind you what this authorization isfor.,name:note,type:string,valid

40、_options:,default_value:-1,description:The number of seconds before thisauthorization expires. Out of range values will be set to themaximum allowedtime.,name:expires_in,type:integer,valid_options:,default_value:false,description:Attempt to locate andreuse an authorization that matches the scope and

41、 note and has notyetexpired.,name:reuse,type:boolean,valid_options:true,false,rel:Add newauthorization,required_params:,LIST_QUICKSTARTS:href:http:/localhost:8080/broker/rest/quickstarts,method:GET,optional_params:,rel:Listquickstarts,required_params:,SHOW_QUICKSTART:href:http:/localhost:8080/broker

42、/rest/quickstart/:id,method:GET,optional_params:,rel:Retrieve quickstartwith :id,required_params:description:Unique identifierof thequickstart,invalid_options:,name:id,type:string,valid_options:,messages:,status:ok,supported_api_versions:1.0,1.1,1.2,1.3,1.4,1.5,1.6,type:links,version:3.9 PaaS Broker

43、 Web Console 的安裝PaaS Broker 的Web Console 是PaaS 系統(tǒng)管理員使用的交互Web 應(yīng)用。通過Console 可以創(chuàng)建應(yīng)用、部署應(yīng)用、更新密碼等。在all-in-one 的虛擬機或分開安裝的Broker 節(jié)點執(zhí)行腳本:paas-install-webconsole.s執(zhí)行腳本后啟動Broker 服務(wù)。通過訪問Broker 的API json 服務(wù)進行驗證是否安裝正確:成功標(biāo)志:安裝完成后登錄: 查看網(wǎng)頁是否正確圖3.9.1 成功標(biāo)志3.10 安裝Node 容器節(jié)點截止到以上步驟,PaaS Broker 控制節(jié)點安裝完成。以下進入容器節(jié)點的安裝,通過容器節(jié)點

44、的安裝實現(xiàn)應(yīng)用套件(Cartridge)的準(zhǔn)備,安裝完成后,即可部署應(yīng)用或中間件。Node 節(jié)點的安裝分多種方式,可以選擇Broker 和Node 安裝在一個機器內(nèi)部(All-In-One)的方式;也可以分開(分布式)部署,一個Broker 節(jié)點,多個Node 節(jié)點。以下介紹All-In-One和雙節(jié)點部分的部署。3.10.1 Broker/Node All-In-One 安裝Broker 控制節(jié)點和Node 容器節(jié)點安裝在一起,構(gòu)建一個測試PaaS 運行環(huán)境。在all-in-one 的虛擬機或分開安裝的Broker 節(jié)點執(zhí)行腳本:paas-node-install-allinone.sh執(zhí)行

45、腳本執(zhí)行成功后,啟動后即可通過瀏覽器訪問。成功標(biāo)志:圖3.10.1 成功標(biāo)志3.10.2 Broker/Node 分開雙結(jié)點安裝Broker 控制節(jié)點和Node 容器節(jié)點安裝在2 個機器中,構(gòu)建一個分布部署的PaaS 運行環(huán)境。Broker 節(jié)點執(zhí)行腳本:paas-node-install-controller.shnode 節(jié)點執(zhí)行腳本:paas-node-install-node.sh安裝完成后登錄: 查看網(wǎng)頁是否正確。3.11 配置多租戶一個容器節(jié)點可以部署多個中間件或應(yīng)用,每個應(yīng)用或中間件的訪問通過域名訪問,通過域名前綴(二級域名)進行隔離。執(zhí)行多租戶的配置,完成整合PaaS 平臺的安

46、裝。在all-in-one 的主節(jié)點或分開安裝的node 節(jié)點執(zhí)行腳本:paas-config-multi-tenancy.sh成功標(biāo)志:執(zhí)行完本步驟,完成整合PaaS 平臺的安裝,即可進行應(yīng)用或中間件的部署。重新啟動服務(wù)器,執(zhí)行命令#rebootPssS 軟件安裝完成。第四章使用PAAS平臺上部署應(yīng)用PaaS 提供了開發(fā)語言、中間件、應(yīng)用系統(tǒng)。開發(fā)的代碼通過配置代碼庫(Git Server 庫)進行下載和更新。4.1 Git 使用說明Git 是版本控制系統(tǒng),類似CVS,Subversion 版本管理軟件。Git 目前應(yīng)用廣泛,特別是Github 在線管理代碼服務(wù)在全球的影響,使得Git 版本

47、管理方式成為主流。目前先電PaaS 的部分應(yīng)用通過GitHub 下載程序的代碼;在沒有互聯(lián)網(wǎng)的情況可以通過搭建本地Git 代碼庫進行下載。以下介紹Git 和Git 本地庫的搭建過程。4.1.1 Git 客戶端安裝git 工具后,可以通過命令行使用git。常用的命令如下:(1) git clone 從現(xiàn)有倉庫克隆Git clone 下載項目歷史的所有數(shù)據(jù)到本地。例如:$ git clone git:/schacon/grit.gitGit 支持許多數(shù)據(jù)傳輸協(xié)議。包括Git、https、Https、SSH。(2) git status 檢查當(dāng)前文件狀態(tài)當(dāng)項目有文件增、刪、修改時,通過git sta

48、tus 查看狀態(tài)。例如:$ git statusOn branch masternothing to commit, working directory clean(3) git add 增加新文件使用命令git add 開始跟蹤一個新文件。比如要增加一個README 文件,命令如下:$ git add README(4) git commit 提交更新本地項目文件修改好,變化提交運行命令git commit,提交變化給遠程服務(wù)器。$ git commit(5) git fetch/git pull 從遠程庫取代碼git fetch 抓取從上次克隆以來別人上傳到此遠程倉庫中的所有更新。但fet

49、ch 命令只是將遠端的數(shù)據(jù)拉到本地倉庫,并不自動合并到當(dāng)前工作分支??梢酝ㄟ^git pull 命令自動抓取數(shù)據(jù)下來,然后將遠端分支自動合并到本地倉庫中當(dāng)前分支。(6) git push項目進行到一個階段,要同別人分享目前的成果,可以將本地倉庫中的數(shù)據(jù)推送到遠程倉庫。Git 命令的順序示意圖具體請參考:Git 的詳細使用說明 HYPERLINK /book/zh /book/zh。圖4.1.1 GIT命令的順序示意圖4.2 Git Server目前PaaS Git 支持SSH、Git、HTTP 協(xié)議下載源碼。搭建過程首先選擇與服務(wù)器通訊的協(xié)議,其次創(chuàng)建一個裸倉庫(bare repository)

50、,最后把原始庫添加本地的Git Server 中。下面介紹通過SSH 協(xié)議搭建本地GitServer 過程。4.2.1 本地SSH Git 庫搭建(1). 部署一臺新的VM 搭建Git Server 源,部署好虛擬機后安裝git。yum install git(2). 配置PaaS Node SSH 無密碼登錄Git Server 虛擬機。Git Server 允許Paas Node 機器能夠ssh 無密碼登錄。PaaS Node 產(chǎn)生新的SSH 公鑰:ssh-keygenscp id_rsa.pub root03:/root/.ssh/authorized_keys(03)為(git Ser

51、ver 地址)(3). Git 本地代碼源在Git Server 上配置應(yīng)用Git 代碼源;在root 下面新建一個目錄(如gitlocal),應(yīng)用案例的代碼源gz 文件從光盤中復(fù)制至/root/gitlocal/目錄下解壓,只有并執(zhí)行以下命令創(chuàng)建裸庫和復(fù)制原始代碼。git clone -bare wordpress-example wordpress-example.git完成后,在PaaS Node 通過命令git clone 行驗證。git clone HYPERLINK mailto:root03:/root/gitlocal/wordpress-example.git root03:

52、/root/gitlocal/wordpress-example.git應(yīng)用部署成功,即驗證GitServer 庫搭建成功。圖4.2.1 添加GIT源4.3 部署RHC 客戶端管理軟件4.3.1 RHC 基本環(huán)境(1)RHC 基本簡介OpenShift Enterprise 2.0 Client Tools 簡稱RHC,它是OpenShift 上應(yīng)用管理的工具,下面簡單介紹其安裝過程和使用。(2)部署RHC 工具到Gitserver配置Gitserver 的DNS 為先電開發(fā)服務(wù)平臺(PaaS 平臺)的域名解析地址,在/etc/hosts 添加先電開發(fā)服務(wù)平臺的主機域名對應(yīng)的解析地址,如下所示

53、:比如openshift 安裝主機的IP=4,域名=修改hosts。vi /etc/host/添加4 4.3.2 配置RHC(1)安裝Gem 工具RHC 是通過gem 工具安裝的,先安裝Gem 工具。# yum install rubygems y(2)安裝RHC 工具RHC 的Gem 安裝包在提供的PAAS 光盤的rhc 目錄內(nèi),拷貝目錄內(nèi)全部內(nèi)容到系統(tǒng)中,例如拷貝的目錄為/tmp/rhc。# gem install -local /tmp/rhc/rhc-1.32.2.gem(3)配置RHC安裝完成后執(zhí)行以下命令完成相關(guān)操作。注: 為先電開發(fā)服務(wù)平臺的域名,本次操作須在PaaS 平臺安裝完

54、成之后進行。# rhc setup -server=(4)檢測RHC 工具在PaaS 平臺部署完成之后可以通過相關(guān)命令查詢應(yīng)用的部署情況圖 RHC驗證創(chuàng)建圖第五章使用PAAS平臺部署應(yīng)用和開發(fā)環(huán)境PaaS 平臺搭建后,即可部署開發(fā)語言環(huán)境或者應(yīng)用系統(tǒng),開發(fā)語言包括Python、PHP、Ruby、JavaScript( Node.js)。可以部署應(yīng)用包括:Java 開源持續(xù)集成工具Jenkin Server,博客WordPress 、內(nèi)容管理系統(tǒng)Druple、PHP 開發(fā)框架CakePHP 等。以下搭建所需要的軟件包在提供的PAAS 光盤的paas-xiandian 目錄內(nèi)。5.1 Jenkin

55、s ServerJenkins 是Java 開源的持續(xù)集成框架。部署過程如下:登錄PaaS Console Web 界面,登錄后,點擊新建應(yīng)用。圖5.1.1 創(chuàng)建應(yīng)用(2)選擇Jenkins Server,Jenkins 不需要git 源的中間件安裝。(3)部署成功后,點擊下面的鏈接,注意保存好戶名和密碼,登錄的時候使用,就可以進入應(yīng)用了。圖5.1.2 創(chuàng)建Jenkins模塊(6)登錄系統(tǒng)后,可以進行創(chuàng)建新任務(wù)進行測試和使用具體請參考:Jenkins 的官網(wǎng) HYPERLINK / /。圖5.1.3 Jenkins 應(yīng)用創(chuàng)建成功5.2 WordPress 博客系統(tǒng)搭建開源的WordPress

56、博客系統(tǒng)同前述Drupal 相同。搭建成功效果如下。搭建成功后可以創(chuàng)建WordPress 系統(tǒng)的用戶、賬號、密碼,定制自己的Blog 的網(wǎng)站名稱、配色等。完成后可使用博客系統(tǒng)發(fā)布博客文章。WordPress 的的安裝包準(zhǔn)備WordPress 套件Cartridge 的安裝,需要聯(lián)網(wǎng)下載WordPress 安裝包/wordpress-3.9.1.tar.gz 和對應(yīng)的Md5 文件wordpress-3.9.1.tar.gz.md5 進行驗證。不聯(lián)網(wǎng)的情況下,需要搭建一個Apache http 服務(wù)器??梢圆渴鹨慌_新的虛擬機也可以使用本地Git Server 虛擬機進行搭建。a. 安裝Apache

57、 http Server。yum install httpdb. 安裝后把wordpress-3.9.1.tar.gz 和wordpress-3.9.1.tar.gz.md5 復(fù)制到http 的安裝目錄的http 內(nèi)容根目錄。c. 修訂wordpress-example.git 源的安裝腳本。Git 的使用說明參加4.1 Git 使用說明。本地git clone wordpress-example.git 后,找到wordpress-example.openshiftaction_hooksbuild 文件。修改下載地址/ 為本地的apache http 服務(wù)器的地址03/。保存后用git c

58、ommit -a 提交更新,用git push 推送修改。選擇開源內(nèi)容管理系統(tǒng)WordPress 進行部署,如下圖:圖5.2.1:選擇WordPress Instant App 進行部署。(3) 由于WordPress 需要git 源,聯(lián)網(wǎng)可以使用公網(wǎng)Github 源。不聯(lián)網(wǎng)的情況下,使用前面搭建的本地Git Server,源代碼URL 填寫本地源,如下圖:WordPress 需要下載安裝包wordpress-3.9.1.tar.gz,和wordpress-3.9.1.tar.gz.md5 進行校驗。(4) 創(chuàng)建成功后,將提示一次數(shù)據(jù)庫的賬號和密碼,注意保存。登錄頁面后即可進行WordPres

59、s 的初始化,定制和發(fā)布自己的博客系統(tǒng)。如下圖:具體請參考:wordpress 的中文網(wǎng)站/和官方網(wǎng)站 HYPERLINK 。圖5.2.2 wordpress搭建成功圖5.3 部署Node.js項目實踐:構(gòu)建可擴展的Web應(yīng)用Node.js 是一個可以快速構(gòu)建網(wǎng)絡(luò)服務(wù)及應(yīng)用的平臺。是基于Chromes JavaScript runtime(Google V8 引擎),V8 引擎執(zhí)行Javascript 的速度非???,性能非常好。Node 對一些特殊用例進行了優(yōu)化,提供了替代的API,使得V8 在非瀏覽器環(huán)境下運行得更好。使用的語言是JavaScript。Node.js 部署支持Node.js

60、0.10 和Node.js 0.6 的部署。部署后可以開發(fā)Javascript 的案例進行測試和運行。具體請參考:Node.js 的官網(wǎng) HYPERLINK / /??偨Y(jié)云計算旨在通過網(wǎng)絡(luò)把多個成本相對較低的計算實體整合成一個具有強大計算能力的完美系統(tǒng),并借助SaaS、PaaS、IaaS等先進的商業(yè)模式把這強大的計算能力分布到終端用戶手中。云計算的一個核心理念就是通過不斷提高“云”的處理能力,進而減少用戶終端的處理負擔(dān),最終使用戶終端簡化成一個單純的輸入輸出設(shè)備,并能按需享受“云”的強大計算處理能力!云計算的優(yōu)點是可以節(jié)省企業(yè)大量的人力物力不用自己建設(shè)數(shù)據(jù)中心。就像電力設(shè)施從個人取暖到集中供暖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論