開源的PaaS方案:在OpenStack上部署CloudFoundry (二)部署OpenStack

來源:互聯網
上載者:User

標籤:

  1. 硬體要求
  2. 安裝OpenStack
    1. 1 安裝CentOS 65系統並清空iptables防火牆規則
    2. 2 安裝系統需要的工具包包括Openstack依賴的和CloudFoundry依賴的
    3. 3 安裝EPEL repo
    4. 4 Upgrade 當前系統
    5. 5 安裝openstack repo 目前CloudFoundry最高只能支援Havana版的Openstack
    6. 6 安裝packstack
    7. 7 同步時間
    8. 8 安裝單節點openstack
  3. 配置Openstack
    1. 0 安裝後的Openstack Dashboard有個小bug使用下面命令fix
    2. 1 demo tenant的預設配額Quota不足以安裝CloudFoundry所以先要增加demo的Quota
    3. 2 擴充磁碟空間 
 

 

[python] view plaincopy  
  1.   
由於AWS和vSphere/vCloud都不是免費獲得的,本文將描述如果部署CloudFoundry到開源IaaS的Openstack上。本文的重點是如何部署CloudFoundry,所以OpenStack的部署採取最簡單的方案--單節點OpenStack,如果讀者希望瞭解如何部署一個分布式的高可用性的OpenStack,請參考網路上面的相關文章。

 

所以,筆者選擇了CentOS和Redhat的工具packstack來部署一個單節點的OpenStack。目前CloudFoundry只支援Folsom,Grizilly,和Havana三個版本的OpenStack。


0. 硬體要求CPU:x86_64架構的Intel i5 i7或者至強記憶體: 64GB以上硬碟:500G以上的剩餘空間 1. 安裝OpenStack1.1 安裝CentOS 6.5系統,並清空iptables防火牆規則 [python] view plaincopy  
  1. # iptables -F  


1.2 安裝系統需要的工具包,包括Openstack依賴的和CloudFoundry依賴的 [python] view plaincopy  
  1. <pre name="code" class="python"># yum install -y gcc python perl vim man wget ntpdate sysstat zlib-devel krb5-devel openssl-devel zlib libyaml-devel readline-devel  libyaml-devel readline-devel gcc-c++ glibc-headers  readline libxml2 libxml2-devel libxslt libxslt-devel genisoimage sqlite  sqlite-devel mysql mysql-devel postgresql postgresql-devel git  


1.3 安裝EPEL repo [python] view plaincopy  
  1. # rpm -Uvh http://ftp.sjtu.edu.cn/fedora/epel/6/i386/epel-release-6-8.noarch.rpm  

1.4. Upgrade 當前系統 [python] view plaincopy  
  1. # yum -y upgrade   


1.5 安裝openstack repo, 目前CloudFoundry最高只能支援Havana版的Openstack [python] view plaincopy  
  1. # rpm -Uvh https://repos.fedorapeople.org/repos/openstack/EOL/openstack-havana/rdo-release-havana-9.noarch.rpm   
應為現在Havana 已經歸類為老版本的openstack 路徑發生了變化 epel 的路徑錯誤nano /etc/yum.repo.d/rdo-release.repo將路徑修改為baseurl=https://repos.fedorapeople.org/repos/openstack/EOL/openstack-havana/epel-6/

1.6 安裝packstack [python] view plaincopy  
  1. # yum install -y openstack-packstack  


1.7 同步時間 [python] view plaincopy  
  1. # ntpdate -u time.asia.apple.com  


1.8 安裝單節點openstack [python] view plaincopy  
  1. # packstack —allinone  
因為HAVANA 版本的packstack 已經終止了生命週期,所以直接運行肯定會報錯,報錯之後,回事產生一個answer-file的txt 檔案,修改裡面的配置項CONFIG_USE_EPEL=n 為CONFIG_USE_EPEL=y運行packstack --answer-file=xxx.txt 便可成功安裝。  

2.配置Openstack使用packstack安裝之後的Openstack,所有的服務都安裝在了一個節點上,並且建立了一個叫demo tenant和叫demo的使用者。本文即使用demo使用者和demo tenant安裝CloudFoundry。
2.0 安裝後的Openstack Dashboard有個小bug,使用下面命令fix [python] view plaincopy  
  1. # sed -i ‘s/"Member"/"\_member\_"/‘ /etc/openstack-dashboard/local_settings  
  2. # service httpd restart  


2.1 demo tenant的預設配額(Quota)不足以安裝CloudFoundry,所以先要增加demo的Quota [python] view plaincopy  
  1. # nova quota-update --instances 30  --ram 60000 --cores 40 $(keystone tenant-list | awk ‘/ demo/ {print $2}’)  


2.2 擴充磁碟空間 

Openstack 預設分配給cinder的空間為20G, 而CloudFoundry大約需要500G的空間,需要先擴充一下cinder-volumns的大小. 如果有未分配的磁碟空間,可以直接擴充cinder-volumes這個volume group。如果沒有磁碟空間的話,這裡需要藉助一下linux的loop device。關於loop device,詳見http://en.wikipedia.org/wiki/Loop_device

[python] view plaincopy  
  1. # dd if=/dev/zero of=/var/lib/cinder/cinder-volumes1 bs=1k count=500000000  
  2. # losetup -f  (尋找一個沒有使用的loop device,筆者這裡使用/dev/oop2)  
  3. # losetup /dev/loop2 /var/lib/cinder/cinder-volumes1  
  4. # vgextend cinder-volumes /dev/loop2  


這樣,Openstack就已經設定完成,可以準備安裝CloudFoundry了

開源的PaaS方案:在OpenStack上部署CloudFoundry (二)部署OpenStack

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.