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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

畢業(yè)設計(論文)課題名稱:云計算開發(fā)服務平臺PAGEPAGEII目錄前言 II第一章系統(tǒng)概述 11.1先電云計算平臺架構 11.2支撐的多種開發(fā)環(huán)境 2第二章系統(tǒng)配置 52.1前提條件 5第三章安裝PAAS軟件 73.1安裝前準備 73.2建立安裝資源庫和安裝依賴組件 73.3配置域名服務(DNS) 83.4安裝和配置MongoDB數據庫 93.5安裝和配置ActiveMQ消息管理服務 93.6安裝PuppetMColltiveClient端 103.7安裝PaaSBroker配置身份服務 113.8PaaSBrokerPlugin的安裝 123.9PaaSBrokerWebConsole的安裝 143.10安裝Node容器節(jié)點 153.10.1Broker/NodeAll-In-One安裝 153.10.2Broker/Node分開雙結點安裝 153.11配置多租戶 16第四章使用PAAS平臺上部署應用 174.1Git使用說明 174.1.1Git客戶端 174.2GitServer 184.2.1本地SSHGit庫搭建 184.3部署RHC客戶端管理軟件 194.3.1RHC基本環(huán)境 194.3.2配置RHC 19第五章使用PAAS平臺部署應用和開發(fā)環(huán)境 215.1JenkinsServer 215.2WordPress博客系統(tǒng) 235.3部署Node.js項目實踐:構建可擴展的Web應用 26總結 27致謝 28參考文獻 29前言秘書長劉鵬教授,著云臺團隊給出的定義:“云計算是通過網絡提供可伸縮的廉價的分布式計算能力”。云計算代表了以虛擬化技術為核心、以低成本為目標的動態(tài)可擴展網絡應用基礎設施,是近年來最有代表性的網絡計算技術與模式。云計算是繼1980年代大型計算機到客戶端-服務器的大轉變之后的又一種巨變。云計算(CloudComputing)是分布式計算(DistributedComputing)、并行計算(ParallelComputing)、效用計算(UtilityComputing)、網絡存儲(NetworkStorageTechnologies)、虛擬化(Virtualization)、負載均衡(LoadBalance)等傳統(tǒng)計算機和網絡技術發(fā)展融合的產物。云計算通過使計算分布在大量的分布式計算機上,而非本地計算機或遠程服務器中,企業(yè)數據中心的運行將與互聯(lián)網更相似。這使得企業(yè)能夠將資源切換到需要的應用上,根據需求訪問計算機和存儲系統(tǒng)。根據NIST的權威定義,云計算有SPI,即SaaS、PaaS和IaaS三大服務模式。這是目前被業(yè)界最廣泛認同的劃分。中國電子科技集團公司第55研究所是國家軍工骨干研究所之一。南京第五十五所技術南京第五十五所技術開發(fā)有限公司()創(chuàng)辦于1987年,是五十五研究所直屬全資公司,公司業(yè)務主要涉及建筑智能化、物聯(lián)網技術應用、云計算技術應用、教學儀器設備、智慧校園、智能電網等。公司研發(fā)推出的先電?云計算技術與服務平臺采用符合國際云計算標準的、主流云計算廠商、服務商所n納的三層架構,基于統(tǒng)一的云安全框架搭建。本文主要講述先電?云計算開發(fā)服務平臺的構建方法,該平臺基于基于業(yè)界領先的OpenShift開源框架,安裝和維護中間件、數據庫、操作系統(tǒng)、開發(fā)環(huán)境在內的各類型軟件資源,提供給各應用模型和接口,支持用于Java、Python、PHP、Perl和Ruby等應用開發(fā)的框架。采用分布式技術方案解決分布式存儲和分布式計算,包含SQL和NoSQL數據存儲,實現平臺即服務(PaaS)功能。OpenShift為云計算的開發(fā)人員提供全面的功能集合。關鍵詞:云計算PAASVMwarecentos6.5PAGEPAGE30第一章系統(tǒng)概述1.1先電云計算平臺架構先電云計算平臺架構即服務(PaaS),是一個面向開發(fā)人員的開發(fā)平臺。支持用于Java、Python、PHP、Perl和Ruby的更多的開發(fā)框架,包括Spring、Seam、Weld、CDI、Rails、Rack、Symfony、ZendFramework、Twisted、Django和JavaE。它包含SQL和NoSQL數據存儲和一個分布式文件系統(tǒng)。為云計算的開發(fā)人員提供全面的功能集合。先電云計算平臺架構讓用戶可以創(chuàng)建、部署、管理云端應用,其云環(huán)境可以基于先電IaaS平臺,先電IaaS基于磁盤空間、CPU計算資源、內存資源、網絡連接,提供虛擬主機供PaaS平臺使用。PaaS的主要組件包括:系統(tǒng)的組件說明:控制節(jié)點:是所有應用管理活動的入口。它主要負責管理用戶登錄、DNS、應用狀態(tài)以及應用服務編排(服務分發(fā))。用戶和控制節(jié)點交互主要是通過Web管理控制臺、CLI工具或者接口RESTAPIs。應用套件:應用容器為應用運行提供了實際所需的功能。每個應用容器提不同的開發(fā)環(huán)境軟件包,包括服務器,比如Tomcat、JBoos、NodeJs、Apache;同是提供運行環(huán)境支撐庫,比如Java、PHP、Python、Ruby、Perl,同事提供數據庫支持,包括MySQL、MongoDB等。應用容器:先電PaaS是通過容器提供應用運行環(huán)境和隔離。容器:提供了給應用套件運行的容器。一個容器可以運行一個或多個應用。容器可以為應用套件提供按需分配的的內存與磁盤空間。節(jié)點:一臺物理機或虛擬機,其中包含多個容器。因為某些容器與并不都是處于運行中,所以一個節(jié)點通常會處于超配額狀態(tài),即放入了超過限額個數的容器。區(qū)域:區(qū)域定義了一些節(jié)點,其中的容器可以方便地進行基于節(jié)點的負載均衡。系統(tǒng)的架構圖如下:圖1.1Paas系統(tǒng)架構圖1.2支撐的多種開發(fā)環(huán)境先電PaaS平臺支持不同應用類型關系數據庫、NoSQL數據庫、Hadoop分布式文件系統(tǒng);支持Tomcat、JBoss、PHPServer等應用服務器,可以在其之上部署遠程辦公、電子商務、在線學習等各種SaaS應用。此外,OpenShift也提供了DNS域名管理。圖2.1PAAS支持的主流的開源開發(fā)框架基于先電PaaS平臺,用戶可以部署包括企業(yè)應用服務器、在線辦公、博客系統(tǒng)、電子商務、e-learning服務、云計算工具、網盤服務、文檔閱讀服務、開發(fā)工具套件、郵件服務等。搭建起SaaS應用服務平臺,如下:圖2.2基于paas可以支撐搭建的軟件第二章系統(tǒng)配置2.1前提條件先電PaaS平臺部署在先電IaaS平臺的虛擬機上,虛擬機采用64位的CentOS6.5的操作系統(tǒng)。部署Centos6.5選擇最小安裝,或者最小安裝加桌面。PaaS平臺組件包括Broker控制部分,包括Node容器節(jié)點。部署的方案在用選用Broker和Node安裝在一臺虛擬機之上的方案(All-In-One),或者Broker和Node分別安裝在兩臺虛擬機上。2.2網絡設置安裝PaaS的VM的網絡IP采用IaaS的外部IP,IP設置成靜態(tài)IP。網絡架構如下:圖2.1網絡架構圖在配置完網絡接口之后,重啟啟動網絡服務使更改生效:更改主機名在/etc/hosts文件中修改Broker控制節(jié)點主機名。修改SELinux模式為enforcing,然后重啟。刪除/etc/yum.repos.d路徑下的所有repo文件,將提供的repo文件拷貝到該目錄下。編輯各個repo文件,修改成從控制節(jié)點的ftp路徑下獲取包。修改方法:1、修改openshift-base.repo文件baseurl=20/openshift-base(注:ip地址為控制節(jié)點的內網ip地址,下同)enabled=1gpgcheck=02、修改openshift-epel.repo文件baseurl=20/openshift-epelenabled=1gpgcheck=03、修改openshift-origin.repo文件baseurl=20/openshift-origin(注:未注釋的那行)enabled=1gpgcheck=04、修改openshift-origin-dependencies.repo文件baseurl=20/openshift-origin-dependenciesenabled=1gpgcheck=0第三章安裝PAAS軟件3.1安裝前準備安裝本系統(tǒng)的執(zhí)行腳本:執(zhí)行命令yuminstallpaas-xiandian根據自己的網絡規(guī)劃和PaaS平臺部署設計,修改/etc/xiandian/config.ini文件文件config.ini內容:#配置broker節(jié)點主機名hostA_HOST=paas#配置node節(jié)點主機名hostB_HOST=node#配置域名A_DOMAIN=#配置broker節(jié)點IPA_IP=30#配置node節(jié)點IPB_IP=31#配置數據庫密碼A_DBPASSWORD=000000#配置adminuser密碼ADMINPASSWORD=000000#repo_dirREPOBASE=20/#配置網頁登錄用戶名HTUSER=demo#配置網頁登錄密碼HTPASSWORD=000000修改配置文件后,執(zhí)行腳本runbefore.sh。腳本完成相關配置(config)文件的建立根據提供的yum源地址配置yum源配置文件。3.2建立安裝資源庫和安裝依賴組件系統(tǒng)安裝需要建立安裝源、系統(tǒng)運行需要NTP服務、運行庫依賴Ruby。當使用all-in-one方案時,執(zhí)行腳本paas-pre-host.sh;當分開安裝時,Broker節(jié)點執(zhí)行腳本paas-pre-host.sh,Node節(jié)點執(zhí)行paas-pre-node.sh。然后重啟機器,以此完成repo的安裝、NTP的安裝、Ruby安裝。NTP(NetworkTimeProtocol),是用來使計算機時間同步化的一種協(xié)議,它可以使計算機對其服務器或時鐘源(如石英鐘,GPS等等)做同步化,它可以提供高精準度的時間校正(LAN上與標準間差小于1毫秒,WAN上幾十毫秒),且可介由加密確認的方式來防止惡意的協(xié)議攻擊。CentOS系統(tǒng)需要安裝和設置SCLRuby193.Ruby是PaaS平臺運行的依賴開發(fā)環(huán)境。paas-pre-host.sh執(zhí)行結果:圖3.2.1成功結果3.3配置域名服務(DNS)PaaS的部署環(huán)境和應用訪問,依賴DNS域名服務框架。確保控制節(jié)點和計節(jié)點主機訪問,解析PaaS在節(jié)點容器上(Gear)部署的應用的域名訪問。域名DNS需要安裝和配置BIND來實現。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本.paas-pre-broker.sh成功標志:圖3.3.1成功標志3.4安裝和配置MongoDB數據庫PaaS系統(tǒng)使用的數據庫為NoSQl類型的數據庫MongoDB。MongoDB存儲用戶(user)、容器(Gear)和其他必要的信息。MongoDB是文檔數據存儲系統(tǒng),使用JavaScript語法進行命令交互,使用JSON格式存儲信息。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本:paas-install-mongodb.sh執(zhí)行后的結果腳本完成的主要工作有MongoDB的安裝、創(chuàng)建MongoDB的用戶“Openshift”,配置后通過Mongo客戶端命令進行操作驗證。成功標志:圖3.4.1成功標志3.5安裝和配置ActiveMQ消息管理服務ActiveMQ消息服務管理器,存儲各個消息客戶端發(fā)送來和派發(fā)出去的消息,不限制客戶端應用的實現方式,實現不同編程語言的程序直接的通訊,PaaS使用ActiveMQ完成控制節(jié)點(Broker)和資源節(jié)點(Node)直接的通訊。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本:paas-install-activemq.sh該腳本完成ActiveMQ、ActiveMQClient的安裝,ActiveMQ運行依賴JettyWeb應用服務器。成功標志:圖3.5.1成功標志安裝完成后,登錄ActiveMQ。http://IP:8161需要修改jetty.xml其中的為圖3.5.2驗證成功標志3.6安裝PuppetMColltiveClient端在控制Broker、容器Node使用MCollective作為消息客戶端同消息服務器ActiveMQ進行消息通訊,MCollective實現Node節(jié)點向Broker中ActiveMQ消息服務器的消息發(fā)送和接受。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本:paas-install-mcollective.sh成功標志:圖3.6.1成功標志3.7安裝PaaSBroker配置身份服務PaaSBroker是PaaS控制系統(tǒng),管理所有的容器節(jié)點(Node)、應用部署、應用,同時提供了通過WebConsole進行控制的Web界面。PaaSNode是PaaS的容器節(jié)點,內部是內容的應用套件,這些應用套件通過PaaSBroker部署和啟動,提供給最終用戶使用。二者之間通過MCollective和ActiveMQ實現消息傳遞和調用。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本:paas-install-broker.sh在腳本執(zhí)行過程中,要求輸入key加密隨機數,重復輸入2次回車,等待腳本執(zhí)行完成。圖3.8.1成功標志該腳本完成PaaS認證、消息、域名等功能模塊,安裝后配置http服務,部署PaaSamdin和PaaSConsoleWeb應用。成功標志:圖3.7.1成功標志3.8PaaSBrokerPlugin的安裝PaaSBroker使用插件(Plugin)連接系統(tǒng)安裝的服務和Broker的對應服務,對應的插件分別是DNS、Authentication、消息插件。安裝插件后,同時進行正確配置。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本:paas-install-broker-plugins.sh執(zhí)行腳本后啟動Broker服務。通過訪問Broker的APIjson服務進行驗證是否安裝正確:執(zhí)行命令:Curl-uroot:123456http://localhost:8080/broker/rest/api.json成功標志:執(zhí)行后返回APIs的JSON描述:{"api_version":1.6,"data":{"API":{"href":"http://localhost:8080/broker/rest/api","method":"GET","optional_params":[],"rel":"APIentrypoint","required_params":[]},"GET_ENVIRONMENT":{"href":"http://localhost:8080/broker/rest/environment","method":"GET","optional_params":[],"rel":"Getenvironmentinformation","required_params":[]},"GET_USER":{"href":"http://localhost:8080/broker/rest/user","method":"GET","optional_params":[],"rel":"Getuserinformation","required_params":[]},"ADD_DOMAIN":{"href":"http://localhost:8080/broker/rest/domains","method":"POST","optional_params":[{"default_value":null,"description":"Alistofgearsizesthatareallowedtobecreatedonthisdomain","name":"allowed_gear_sizes","type":"array","valid_options":["small","medium"]}],"rel":"Createnewdomain","required_params":[{"description":"Nameofthedomain","invalid_options":[],"name":"name","type":"string","valid_option80/broker/rest/domains","method":"GET","optional_params":[],"rel":"Listalldomainsyouhaveaccessto","required_params":[]},"LIST_DOMAINS_BY_OWNER":{"href":"http://localhost:8080/broker/rest/domains","method":"GET","optional_params":[],"rel":"Listdomains","required_params":[{"description":"Returnonlythedomainsownedbythespecifieduseridoridentity.Use@selftorefertothecurrentuser.","invalid_options":[],"name":"owner","type":"string","valid_options":["@self","*"]}]},"SHOW_DOMAIN":{"href":"http://localhost:8080/broker/rest/domain/:name","method":"GET","optional_params":[],"rel":"Retrieveadomainbyitsname","required_params":[{"description":"Uniquenameofthedomain","invalid_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":"Retrieveanapplicationbyitsnameanddomain","required_params":[{"description":"Uniquenameofthedomain","invalid_options":[],"name":":domain_name","type":"string","valid_options":[]},{"description":"Nameoftheapplication","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:8080/broker/rest/applications","method":"GET","optional_params":[],"rel":"Listapplication","required_params":[]},"SHOW_APPLICATION":{"href":application/:id/edit\nGranteditaccesstoasingleapplication.Validforabout1month.\n*application/:id/admin\nGrantfulladministrativeaccesstoasingleapplication.Validforabout1month.","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":"Adescriptiontoremindyouwhatthisauthorizationisfor.","name":"note","type":"string","valid_options":[]},{"default_value":-1,"description":"Thenumberofsecondsbeforethisauthorizationexpires.Outofrangevalueswillbesettothemaximumallowedtime.","name":"expires_in","type":"integer","valid_options":[]},{"default_value":false,"description":"Attempttolocateandreuseanauthorizationthatmatchesthescopeandnoteandhasnotyetexpired.","name":"reuse","type":"boolean","valid_options":[true,false]}],"rel":"Addnewauthorization","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/rest/quickstart/:id","method":"GET","optional_params":[],"rel":"Retrievequickstartwith:id","required_params":[{"description":"Uniqueidentifierofthequickstart","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.9PaaSBrokerWebConsole的安裝PaaSBroker的WebConsole是PaaS系統(tǒng)管理員使用的交互Web應用。通過Console可以創(chuàng)建應用、部署應用、更新密碼等。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本:paas-install-webconsole.s執(zhí)行腳本后啟動Broker服務。通過訪問Broker的APIjson服務進行驗證是否安裝正確:成功標志:安裝完成后登錄:查看網頁是否正確圖3.9.1成功標志3.10安裝Node容器節(jié)點截止到以上步驟,PaaSBroker控制節(jié)點安裝完成。以下進入容器節(jié)點的安裝,通過容器節(jié)點的安裝實現應用套件(Cartridge)的準備,安裝完成后,即可部署應用或中間件。Node節(jié)點的安裝分多種方式,可以選擇Broker和Node安裝在一個機器內部(All-In-One)的方式;也可以分開(分布式)部署,一個Broker節(jié)點,多個Node節(jié)點。以下介紹All-In-One和雙節(jié)點部分的部署。3.10.1Broker/NodeAll-In-One安裝Broker控制節(jié)點和Node容器節(jié)點安裝在一起,構建一個測試PaaS運行環(huán)境。在all-in-one的虛擬機或分開安裝的Broker節(jié)點執(zhí)行腳本:paas-node-install-allinone.sh執(zhí)行腳本執(zhí)行成功后,啟動后即可通過瀏覽器訪問。成功標志:圖3.10.1成功標志3.10.2Broker/Node分開雙結點安裝Broker控制節(jié)點和Node容器節(jié)點安裝在2個機器中,構建一個分布部署的PaaS運行環(huán)境。Broker節(jié)點執(zhí)行腳本:paas-node-install-controller.shnode節(jié)點執(zhí)行腳本:paas-node-install-node.sh安裝完成后登錄:查看網頁是否正確。3.11配置多租戶一個容器節(jié)點可以部署多個中間件或應用,每個應用或中間件的訪問通過域名訪問,通過域名前綴(二級域名)進行隔離。執(zhí)行多租戶的配置,完成整合PaaS平臺的安裝。在all-in-one的主節(jié)點或分開安裝的node節(jié)點執(zhí)行腳本:paas-config-multi-tenancy.sh成功標志:執(zhí)行完本步驟,完成整合PaaS平臺的安裝,即可進行應用或中間件的部署。重新啟動服務器,執(zhí)行命令#rebootPssS軟件安裝完成。第四章使用PAAS平臺上部署應用PaaS提供了開發(fā)語言、中間件、應用系統(tǒng)。開發(fā)的代碼通過配置代碼庫(GitServer庫)進行下載和更新。4.1Git使用說明Git是版本控制系統(tǒng),類似CVS,Subversion版本管理軟件。Git目前應用廣泛,特別是Github在線管理代碼服務在全球的影響,使得Git版本管理方式成為主流。目前先電PaaS的部分應用通過GitHub下載程序的代碼;在沒有互聯(lián)網的情況可以通過搭建本地Git代碼庫進行下載。以下介紹Git和Git本地庫的搭建過程。4.1.1Git客戶端安裝git工具后,可以通過命令行使用git。常用的命令如下:(1)gitclone從現有倉庫克隆Gitclone下載項目歷史的所有數據到本地。例如:$gitclonegit:///schacon/grit.gitGit支持許多數據傳輸協(xié)議。包括Git、https、Https、SSH。(2)gitstatus檢查當前文件狀態(tài)當項目有文件增、刪、修改時,通過gitstatus查看狀態(tài)。例如:$gitstatusOnbranchmasternothingtocommit,workingdirectoryclean(3)gitadd增加新文件使用命令gitadd開始跟蹤一個新文件。比如要增加一個README文件,命令如下:$gitaddREADME(4)gitcommit提交更新本地項目文件修改好,變化提交運行命令gitcommit,提交變化給遠程服務器。$gitcommit(5)gitfetch/gitpull從遠程庫取代碼gitfetch抓取從上次克隆以來別人上傳到此遠程倉庫中的所有更新。但fetch命令只是將遠端的數據拉到本地倉庫,并不自動合并到當前工作分支??梢酝ㄟ^gitpull命令自動抓取數據下來,然后將遠端分支自動合并到本地倉庫中當前分支。(6)gitpush項目進行到一個階段,要同別人分享目前的成果,可以將本地倉庫中的數據推送到遠程倉庫。Git命令的順序示意圖具體請參考:Git的詳細使用說明/book/zh。圖4.1.1GIT命令的順序示意圖4.2GitServer目前PaaSGit支持SSH、Git、HTTP協(xié)議下載源碼。搭建過程首先選擇與服務器通訊的協(xié)議,其次創(chuàng)建一個裸倉庫(barerepository),最后把原始庫添加本地的GitServer中。下面介紹通過SSH協(xié)議搭建本地GitServer過程。4.2.1本地SSHGit庫搭建(1).部署一臺新的VM搭建GitServer源,部署好虛擬機后安裝git。yuminstallgit(2).配置PaaSNodeSSH無密碼登錄GitServer虛擬機。GitServer允許PaasNode機器能夠ssh無密碼登錄。PaaSNode產生新的SSH公鑰:ssh-keygenscpid_rsa.pubroot@03:/root/.ssh/authorized_keys(03)為(gitServer地址)(3).Git本地代碼源在GitServer上配置應用Git代碼源;在root下面新建一個目錄(如gitlocal),應用案例的代碼源gz文件從光盤中復制至/root/gitlocal/目錄下解壓,只有并執(zhí)行以下命令創(chuàng)建裸庫和復制原始代碼。gitclone--barewordpress-examplewordpress-example.git完成后,在PaaSNode通過命令gitclone行驗證。gitcloneroot@03:/root/gitlocal/wordpress-example.git應用部署成功,即驗證GitServer庫搭建成功。圖4.2.1添加GIT源4.3部署RHC客戶端管理軟件4.3.1RHC基本環(huán)境(1)RHC基本簡介OpenShiftEnterprise2.0ClientTools簡稱RHC,它是OpenShift上應用管理的工具,下面簡單介紹其安裝過程和使用。(2)部署RHC工具到Gitserver配置Gitserver的DNS為先電開發(fā)服務平臺(PaaS平臺)的域名解析地址,在/etc/hosts添加先電開發(fā)服務平臺的主機域名對應的解析地址,如下所示:比如openshift安裝主機的IP=4,域名=修改hosts。vi/etc/host/添加44.3.2配置RHC(1)安裝Gem工具RHC是通過gem工具安裝的,先安裝Gem工具。#yuminstallrubygems–y(2)安裝RHC工具RHC的Gem安裝包在提供的PAAS光盤的rhc目錄內,拷貝目錄內全部內容到系統(tǒng)中,例如拷貝的目錄為/tmp/rhc。#geminstall--local/tmp/rhc/rhc-1.32.2.gem(3)配置RHC安裝完成后執(zhí)行以下命令完成相關操作。注:為先電開發(fā)服務平臺的域名,本次操作須在PaaS平臺安裝完成之后進行。#rhcsetup--server=(4)檢測RHC工具在PaaS平臺部署完成之后可以通過相關命令查詢應用的部署情況圖RHC驗證創(chuàng)建圖第五章使用PAAS平臺部署應用和開發(fā)環(huán)境PaaS平臺搭建后,即可部署開發(fā)語言環(huán)境或者應用系統(tǒng),開發(fā)語言包括Python、PHP、Ruby、JavaScript(Node.js)??梢圆渴饝冒ǎ篔ava開源持續(xù)集成工具JenkinServer,博客WordPress、內容管理系統(tǒng)Druple、PHP開發(fā)框架CakePHP等。以下搭建所需要的軟件包在提供的PAAS光盤的paas-xiandian目錄內。5.1JenkinsServerJenkins是Java開源的持續(xù)集成框架。部署過程如下:登錄PaaSConsoleWeb界面,登錄后,點擊新建應用。圖5.1.1創(chuàng)建應用(2)選擇JenkinsServer,Jenkins不需要git源的中間件安裝。(3)部署成功后,點擊下面的鏈接,注意保存好戶名和密碼,登錄的時候使用,就可以進入應用了。圖5.1.2創(chuàng)建Jenkins模塊(6)登錄系統(tǒng)后,可以進行創(chuàng)建新任務進行測試和使用具體請參考:Jenkins的官網/。圖5.1.3Jenkins應用創(chuàng)建成功5.2WordPress博客系統(tǒng)搭建開源的WordPress博客系統(tǒng)同前述Drupal相同。搭建成功效果如下。搭建成功后可以創(chuàng)建WordPress系統(tǒng)的用戶、賬號、密碼,定制自己的Blog的網站名稱、配色等。完成后可使用博客系統(tǒng)發(fā)布博客文章。WordPress的的安裝包準備WordPress套件Cartridge的安裝,需要聯(lián)網下載WordPress安裝包/wordpress-3.9.1.tar.gz和對應的Md5文件wordpress-3.9.1.tar.gz.md5進行驗證。不聯(lián)網的情況下,需要搭建一個Apachehttp服務器??梢圆渴鹨慌_新的虛擬機也可以使用本地GitServer虛擬機進行搭建。a.安裝ApachehttpServer。yuminstallhttpdb.安裝后把wordpress-3.9.1.tar.gz和wordpress-3.9.1.tar.gz.md5復制到http的安裝目錄的http內容根目錄。c.修訂wordpress-example.git源的安裝腳本。Git的使用說明參加4.1Git使用說明。本地gitclonewordpress-example.git后,找到wordpress-example\.openshift\action_hooks\build文件。修改下載地址/為本地的apachehttp服務器的地址03/。保存后用gitcommit-a提交更新,用gitpush推送修改。選擇開源內容管理系統(tǒng)WordPress進行部署,如下圖:圖5.2.1:選擇WordPressInstantApp進行部署。(3)由于WordPress需要git源,聯(lián)網可以使用公網Github源。不聯(lián)網的情況下,使用前面搭建的本地GitServer,源代碼URL填寫本地源,如下圖:WordPress需要下載安裝包wordpress-3.9.1.tar.gz,和wordpress-3.9.1.tar.gz.md5進行校驗。(4)創(chuàng)建成功后,將提示一次數據庫的賬號和密碼,注意保存。登錄頁面后即可進行WordPress的初始化,定制和發(fā)布自己的博客系統(tǒng)。如下圖:具體請參考:wordpress的中文網站/和官方網站。圖5.2.2wordpress搭建成功圖5.3部署Node.js項目實踐:構建可擴展的Web應用Node.js是一個可以快速構建網絡服務及應用的平臺。是基于Chrome'sJavaScriptruntime(GoogleV8引擎),V8引擎執(zhí)行Javascript的速度非常快,性能非常好。Node對一些特殊用例進行了優(yōu)化,提供了替代的API,使得V8在非瀏覽器環(huán)境下運行得更好。使用的語言是JavaScript。Node.js部署支持Node.js0.10和Node.js0.6的部署。部署后可以開發(fā)Javascript的案例進行測試和運行。具體請參考:Node.js的官網/。總結云計算旨在通過網絡把多個成本相對較低的計算實體整合成一個具有強大計算能力的完美系統(tǒng),并借助SaaS、PaaS、IaaS等先進的商業(yè)模式把這強大的計算能力分布到終端用戶手中。云計算的一個核心理念就是通過不斷提高“云”的處理能力,進而減少用戶終端的處理負擔,最終使用戶終端簡化成一個單純的輸入輸出設備,并能按需享受“云”的強大計算處理能力!云計算的優(yōu)點是可以節(jié)省企業(yè)大量的人力物力不用自己建設數據中心。就像電力設施從個人取暖到集中供暖一樣節(jié)省了大量的金錢,人力物力。云計算提供了最可靠、最安全的數據存儲中心,用戶不用擔心數據丟失、病毒入侵等麻煩;云計算對用戶端的設備要求最低,使用起來也最方便;云計算可以輕松實現不同設備間的數據與應用共享;云計算為我們使用網絡提供了幾乎無限多的可能。本文主要是基于paas平臺搭建和創(chuàng)建用戶服務從而實現云計算的平臺即服務。把服務器平臺作為一種服務提供的商業(yè)模式。通過網絡進行程序提供的服務稱之為SaaS(SoftwareasaService),而云計算時代相應的服務器平臺或者開發(fā)環(huán)境作為服務進行提供就成為了PaaS(PlatformasaService),PaaS能將現有各種業(yè)務能力進行整合,具體可以歸類為應用服務器、業(yè)務能力接入、業(yè)務引擎、業(yè)務開放平臺,向下根據業(yè)務能力需要測算基礎服務能力,通過IaaS提供的API調用硬件資源,向上提供業(yè)務調度中心服務,實時監(jiān)控平臺的各種資源,并將這些資源通過API開放給SaaS用戶。PaaS主要具備以下三個特點:(1)平臺即服務:PaaS所提供的服務與其他的服務最根本的區(qū)別是PaaS提供的是一個基礎平臺,而不是某種應用。在傳統(tǒng)的觀念中,平臺是向外提供服務的基礎。一般來說,平臺作為應用系統(tǒng)部署的基礎,是由應用服務提供商搭建和維護的,而PaaS顛覆了這種概念,由專門的平臺服務提供商搭建和運營該基礎平臺,并將該平臺以服務的方式提供給應用系統(tǒng)運營商;(2)平臺及服務:PaaS運營商所需提供的服務,不僅僅是單純的基礎平臺,而且包括針對該平臺的技術支持服務,甚至針對該平臺而進行的應用系統(tǒng)開發(fā)、優(yōu)化等服務。PaaS的運營商最了解他們所運營的基礎平臺,所以由PaaS運營商所提出的對應用系統(tǒng)優(yōu)化和改進的建議也非常重要。而在新應用系統(tǒng)的開發(fā)過程中,PaaS運營商的技術咨詢和支持團隊的介入,也是保證應用系統(tǒng)在以后的運營中得以長期、穩(wěn)定運行的重要因素;(3)平臺及服務:PaaS運營商對外提供的服務不同于其他的服務,這種服務的背后是強大而穩(wěn)定的基礎運營平臺,以及專業(yè)的技術支持隊伍。這種“平臺級”服務能夠保證支撐SaaS或其他軟件服務提供商各種應用系統(tǒng)長時間、穩(wěn)定的運行。PaaS的實質是將互聯(lián)網的資源服務化為可編程接口,為第三方開發(fā)者提供有商業(yè)價值的資源和服務平臺。有了PaaS平臺的支撐,云計算[1]的開發(fā)者就獲得了大量的可編程元素,這些可編程元素有具體的業(yè)務邏輯,這就為開發(fā)帶來了極大的方便,不但提高了開發(fā)效率,還節(jié)約了開發(fā)成本。有了PaaS平臺的支持,WEB應用的開發(fā)變得更加敏捷,能夠快速響應用戶需求的開發(fā)能力,也為最終用戶帶來了實實在在的利益致謝時光匆匆流逝,很是不舍。安工商的老師們見證了我們走向高等學府的成人禮,見證了我們初來乍到的青澀與懵懂,見證了我們的喜怒哀樂,見證了我們不懈努力的汗水,見證了我們從稚嫩走向成熟的蛻變。這些蛻變與我們的老師的辛勤付出是分不開的。是老師在我們情緒低落的時候,給予我們內心最大的鼓勵與支持,從老師身上,我感受到了了嚴謹的治學態(tài)度,精益求精的工作作風,誨人不倦的高尚師德,嚴以律己、寬以待人的崇高風范,樸實無華、平易近人的人格魅力。在此我想對各位老師說上一句:老師,你們辛苦啦!衷心感謝各位老師大學三年中在理論知識方面的培養(yǎng)和做人做事方面的熏陶。本文在茹興旺老師的悉心指導和嚴格要求下完成,從文章構思到具體編寫無不凝聚著老師的關心。在大學三年的學習和生活期間,也始終感受著老師的指導和關心,我受益匪淺。在此,我向老師表示深深的謝意和崇高的敬意?!兄x恩師。今天,伴隨著設計答辯的結束,我們完成了從大學走向社會的成人禮,同學們即將奔赴各自新的崗位,去實現自身的價值。我的母校,我的老師們,我們必將腳踏實地,不斷進取,以不辜負母校和老師對我們的期望!感謝我的大學,感謝我的恩師,感謝我的朋友、我的家人,感謝所有關心以及幫助過我的人參考文獻[1]南京第五十五所技術開發(fā)有限公司,先電Cloud-paas-v1.22015.3.7[2]WWW.51CTO.COM云計算PAAS平臺服務搭建2014.10[3]CentOSLinux服務器技術與技能大賽實戰(zhàn)丁傳煒人民出版社2015.9.1[4]先電云計算開發(fā)服務平臺手冊PAAS部分2015.3.7[5]PaaS程序設計[美]卡爾森,潘黎萍,余水清2015.1.1[6]云計算:概念、技術與架構作者:(美)埃爾等著,龔奕利2015.7.3[7]Node.js項目實踐:構建可擴展的Web應用AzatMardan(阿扎.馬爾丹)著,奇舞團譯2015.6[8]wordpress的中文網站/和官方網站2014.9[9]Jenkins的官網/。2015.3.7[10]GIT服務搭建配置盧濤李穎譯2014.2.5[11]ArcGIS云計算:開發(fā)與應用修文群2015.1.1[12]《計算機網絡安全與應用技術》.袁家政,清華大學出版社,2002[13]VMware虛擬化與云計算應用案例詳解王春海中國鐵道出版社2015.11.5[14]云計算技術架構與實踐李天目2014.1.1[15]云計算安全:技術與應用中國電信網絡安全實驗室電子工業(yè)出版社2012.2.8基于C8051F單片機直流電動機反饋控制系統(tǒng)的設計與研究基于單片機的嵌入式Web服務器的研究MOTOROLA單片機MC68HC(8)05PV8/A內嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機溫度控制系統(tǒng)的研制基于MCS-51系列單片機的通用控制模塊的研究基于單片機實現的供暖系統(tǒng)最佳啟停自校正(STR)調節(jié)器單片機控制的二級倒立擺系統(tǒng)的研究基于增強型51系列單片機的TCP/IP協(xié)議棧的實現基于單片機的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機系統(tǒng)的圖像采集與處理技術的研究基于單片機的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機的交流伺服電機運動控制系統(tǒng)研究與開發(fā)基于單片機的泵管內壁硬度測試儀的研制基于單片機的自動找平控制系統(tǒng)研究基于C8051F040單片機的嵌入式系統(tǒng)開發(fā)基于單片機的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機實現一種基于單片機的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機沖床數控系統(tǒng)的研究基于CYGNAL單片機的在線間歇式濁度儀的研制基于單片機的噴油泵試驗臺控制器的研制基于單片機的軟起動器的研究和設計基于單片機控制的高速快走絲電火花線切割機床短循環(huán)走絲方式研究基于單片機的機電產品控制系統(tǒng)開發(fā)基于PIC單片機的智能手機充電器基于單片機的實時內核設計及其應用研究基于單片機的遠程抄表系統(tǒng)的設計與研究基于單片機的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機系統(tǒng)單片機系統(tǒng)軟件構件開發(fā)的技術研究基于單片機的液體點滴速度自動檢測儀的研制基于單片機系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機的電能采集終端的設計和應用基于單片機的光纖光柵解調儀的研制氣壓式線性摩擦焊機單片機控制系統(tǒng)的研制基于單片機的數字磁通門傳感器基于單片機的旋轉變壓器-數字轉換器的研究基于單片機的光纖Bragg光柵解調系統(tǒng)的研究單片機控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機的多生理信號檢測儀基于單片機的電機運動控制系統(tǒng)設計Pico專用單片機核的可測性設計研究基于MCS-51單片機的熱量計基于雙單片機的智能遙測微型氣象站MCS-51單片機構建機器人的實踐研究基于單片機的輪軌力檢測基于單片機的GPS定位儀的研究與實現基于單片機的電液伺服控制系統(tǒng)用于單片機系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機的時控和計數系統(tǒng)性能優(yōu)化的研究基于單片機和CPLD的粗光柵位移測量系統(tǒng)研究單片機控制的后備式方波UPS提升高職學生單片機應用能力的探究基于單片機控制的自動低頻減載裝置研究基于單片機控制的水下焊接電源的研究基于單片機的多通道數據采集系統(tǒng)基于uPSD3234單片機的氚表面污染測量儀的研制基于單片機的紅外測油儀的研究96系列單片機仿真器研究與設計基于單片機的單晶金剛石刀具刃磨設備的數控改造基于單片機的溫度智能控制系統(tǒng)的設計與實現基于MSP430單片機的電梯門機控制器的研制基于單片機的氣體測漏儀的研究基于三菱M16C/6N系列單片機的CAN/USB協(xié)議轉換器基于單片機和DSP的變壓器油色譜在線監(jiān)測技術研究基于單片機的膛壁溫度報警系統(tǒng)設計基于AVR單片機的低壓無功補償控制器的設計基于單片機船舶電力推進電機監(jiān)測系統(tǒng)基于單片機網絡的振動信號的采集系統(tǒng)基于單片機的大容量數據存儲技術的應用研究基于單片機的疊圖機研究與教學方法實踐基于單片機嵌入式Web服務器技術的研究及實現基于AT89S52單片機的通用數據采集系統(tǒng)基于單片機的多道脈沖幅度分析儀研究機器人旋轉電弧傳感角焊縫跟蹤單片機控制系統(tǒng)基于單片機的控制系統(tǒng)在PLC虛擬教學實驗中的

溫馨提示

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

評論

0/150

提交評論