分享

使用RDO 安装OpenStack Icehouse

nettman 发表于 2014-7-18 21:52:34 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 1 28830
本帖最后由 nettman 于 2014-7-18 21:52 编辑
问题导读:
1.使用RDO 安装OpenStack Icehouse如何配置本地软件源?
2.如何执行执行RDO 安装?
3.如何查看OpenStack 的运行状态?







OpenStack 每半年发布一个版本,Icehouse 是最近的一个版本,相对于Havana 提供了更多的功能和驱动支持。本文是使用RedHat 提供的RDO 脚本进行部署的文档。
    RDO 部署方式比较快捷,但由于相关的yum 源都在国外,若直接安装,经常出现rpm 包获取失败导致的问题。故建议部署前,先把相关的软件源镜像到本地,修改DNS 指向。(注意,不能直接修改repos 库中的位置,因为在多节点部署时,RDO 会自动安装epel、forman 等repo文件,手动修改是来不及的)

    本文采用两节点方式部署,第一个节点node01 作为控制节点(身份认证、网络服务、计算调度服务、Cinder服务、镜像服务等)+计算节点;第二个节点node02 作为单纯的计算节点扩展。相关详细的概念请见OpenStack 官网,这里不再一一说明。

(阅读本文时,建议点击上方的“边栏”按钮,把边栏隐藏,否则格式可能会混乱。)

1.系统环境
两个节点:
引用
  1. node01.linuxfly.org
  2. eth0: 192.168.48.213
  3. eth1: 10.0.48.213
  4. node02.linuxfly.org
  5. eth0: 192.168.48.214
  6. eth1: 10.0.48.214
复制代码

eth0作为管理网卡和外部网络连接网卡;eth1作为gre 通道的连接网卡,也是两个节点间数据沟通的网卡。

2.配置本地软件源
使用192.168.86.37 上的本地yum 源,根据新的脚本执行情况进行修改。
安装前,需要确保rdo.fedorapeople.org 可正常解析到192.168.86.37:
引用
  1. [root@gd2-cloud-037 ~]# vi /var/named/fedorapeople.org.master.zone
  2. $TTL 1D
  3. @       IN SOA root.repos.fedorapeople.org. repos.fedorapeople.org. (
  4.                                         0       ; serial
  5.                                         1D      ; refresh
  6.                                         1H      ; retry
  7.                                         1W      ; expire
  8.                                         3H )    ; minimum
  9.         NS      repos.fedorapeople.org.
  10. repos           IN      A       192.168.86.37
  11. rdo           IN      A       192.168.86.37
复制代码




测试:
引用
  1. [root@node01 ~]# ping -c2 rdo.fedorapeople.org            
  2. PING rdo.fedorapeople.org (192.168.86.37) 56(84) bytes of data.
  3. 64 bytes from gd2-cloud-037.vclound.com (192.168.86.37): icmp_seq=1 ttl=61 time=0.331 ms
  4. 64 bytes from gd2-cloud-037.vclound.com (192.168.86.37): icmp_seq=2 ttl=61 time=0.354 ms
  5. --- rdo.fedorapeople.org ping statistics ---
  6. 2 packets transmitted, 2 received, 0% packet loss, time 1001ms
  7. rtt min/avg/max/mdev = 0.331/0.342/0.354/0.021 ms
复制代码


还要修改http 的虚拟主机配置:
引用
  1. [root@gd2-cloud-037 ~]# vi /etc/httpd/conf.d/yum_vhost.conf
  2.     ServerAdmin webmaster@vclound.com
  3.     DocumentRoot /var/www/html/root/repos.fedorapeople.org/repos
  4.     ServerName rdo.fedorapeople.org
  5.     ErrorLog logs/rdo.fedorapeople.org-error_log
  6.     CustomLog logs/rdo.fedorapeople.org-access_log common
复制代码

否则在使用RDO 安装时,可能会遇到错误:
引用
  1. 2014-05-23 18:18:07::INFO::shell::78::root:: [192.168.48.214] Executing script:
  2. (rpm -q 'rdo-release-icehouse' || yum install -y --nogpg http://rdo.fedorapeople.org/open ... ehouse-3.noarch.rpm) || true
  3. 2014-05-23 18:18:19::INFO::shell::78::root:: [192.168.48.214] Executing script:
  4. yum-config-manager --enable openstack-icehouse
  5. 2014-05-23 18:18:19::ERROR::run_setup::892::root:: Traceback (most recent call last):
  6.   File "/usr/lib/python2.6/site-packages/packstack/installer/run_setup.py", line 887, in main
  7.     _main(confFile)
  8.   File "/usr/lib/python2.6/site-packages/packstack/installer/run_setup.py", line 574, in _main
  9.     runSequences()
  10.   File "/usr/lib/python2.6/site-packages/packstack/installer/run_setup.py", line 553, in runSequences
  11.     controller.runAllSequences()
  12.   File "/usr/lib/python2.6/site-packages/packstack/installer/setup_controller.py", line 84, in runAllSequences
  13.     sequence.run(self.CONF)
  14.   File "/usr/lib/python2.6/site-packages/packstack/installer/core/sequences.py", line 96, in run
  15.     step.run(config=config)
  16.   File "/usr/lib/python2.6/site-packages/packstack/installer/core/sequences.py", line 43, in run
  17.     raise SequenceError(str(ex))
  18. SequenceError: Failed to set RDO repo on host 192.168.48.214:
  19. RPM file seems to be installed, but appropriate repo file is probably missing in /etc/yum.repos.d/
  20. 2014-05-23 18:18:19::INFO::shell::78::root:: [192.168.48.213] Executing script:
  21. rm -rf /var/tmp/packstack/0c97dceac80e41b081bc8316ae439d88
  22. 2014-05-23 18:18:19::INFO::shell::78::root:: [192.168.48.214] Executing script:
  23. rm -rf /var/tmp/packstack/20a0e6a1d0ba4ab0a0c4490ba3dc9fce
复制代码


启动防火墙:
引用
  1. [root@node01 ~]# iptables -L -n
  2. Chain INPUT (policy ACCEPT)
  3. target     prot opt source               destination         
  4. Chain FORWARD (policy ACCEPT)
  5. target     prot opt source               destination         
  6. Chain OUTPUT (policy ACCEPT)
  7. target     prot opt source               destination         
  8. [root@node01 ~]# service iptables save
  9. iptables:将防火墙规则保存到 /etc/sysconfig/iptables:     [确定]
  10. [root@node02 ~]# iptables -L -n
  11. Chain INPUT (policy ACCEPT)
  12. target     prot opt source               destination         
  13. Chain FORWARD (policy ACCEPT)
  14. target     prot opt source               destination         
  15. Chain OUTPUT (policy ACCEPT)
  16. target     prot opt source               destination         
  17. [root@node02 ~]# service iptables save
  18. iptables:将防火墙规则保存到 /etc/sysconfig/iptables:     [确定]
复制代码



如果不执行该动作,可能执行RDO 时会遇到错误:
引用
  1. ERROR : Error appeared during Puppet run: 192.168.48.214_prescript.pp
  2. Error: Could not start Service[iptables]: Execution of '/sbin/service iptables start' returned 6:
复制代码


3.安装软件
引用
  1. [root@node01 ~]# wget http://rdo.fedorapeople.org/open ... ehouse-3.noarch.rpm
  2. [root@node01 ~]# rpm -ivh rdo-release-icehouse-3.noarch.rpm
  3. [root@node01 ~]# cat /etc/yum.repos.d/rdo-release.repo
  4. [openstack-icehouse]
  5. name=OpenStack Icehouse Repository
  6. baseurl=http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/epel-6/
  7. enabled=1
  8. skip_if_unavailable=0
  9. gpgcheck=1
  10. gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Icehouse
  11. priority=98
复制代码




因为foreman 的源还没有同步到本地,把域名加入到两个节点上:
引用
  1. [root@node01 ~]# echo '208.74.145.172 yum.theforeman.org' >> /etc/hosts
复制代码

否则,会报:
引用
  1. http://yum.theforeman.org/releas ... epodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
复制代码


安装RDO 脚本:
引用
  1. [root@node01 ~]# yum install -y openstack-packstack
  2. Installed:
  3.   openstack-packstack.noarch 0:2014.1.1-0.12.dev1068.el6   
  4.   
  5. Dependency Installed:
  6.   openstack-packstack-puppet.noarch 0:2014.1.1-0.12.dev1068.el6     openstack-puppet-modules.noarch 0:2014.1-11.1.el6     ruby.x86_64 0:1.8.7.352-13.el6     ruby-irb.x86_64 0:1.8.7.352-13.el6     ruby-libs.x86_64 0:1.8.7.352-13.el6   
  7.   ruby-rdoc.x86_64 0:1.8.7.352-13.el6                               rubygem-json.x86_64 0:1.5.5-1.el6                     rubygems.noarch 0:1.3.7-5.el6     
  8. Complete!
复制代码




使用/dev/sdb 作为lvm 提供给cinder 使用:
引用
  1. [root@node01 ~]# pvcreate /dev/sdb
  2.   Physical volume "/dev/sdb" successfully created
  3. [root@node01 ~]# vgcreate cinder-volumes /dev/sdb
  4.   Volume group "cinder-volumes" successfully created
  5. [root@node01 ~]# vgdisplay
  6.   --- Volume group ---
  7.   VG Name               cinder-volumes
  8.   System ID            
  9.   Format                lvm2
  10.   Metadata Areas        1
  11.   Metadata Sequence No  1
  12.   VG Access             read/write
  13.   VG Status             resizable
  14.   MAX LV                0
  15.   Cur LV                0
  16.   Open LV               0
  17.   Max PV                0
  18.   Cur PV                1
  19.   Act PV                1
  20.   VG Size               100.00 GiB
  21.   PE Size               4.00 MiB
  22.   Total PE              25599
  23.   Alloc PE / Size       0 / 0   
  24.   Free  PE / Size       25599 / 100.00 GiB
  25.   VG UUID               YkbC1M-UJuf-WXKS-se8W-yoZx-Y8JU-cvj9fN
复制代码


生成应答文件:

[root@node01 ~]# packstack --gen-answer-file=openstack-icehouse-test-20140523.txt

修改应答文件:
确认需要安装的服务,以及相关服务的数据库密码,登陆密码等信息。
引用
  1. [root@node01 ~]# egrep -v '^$|^#' openstack-icehouse-test-20140523.txt
  2. [general]
  3. CONFIG_SSH_KEY=
  4. CONFIG_MYSQL_INSTALL=y
  5. CONFIG_GLANCE_INSTALL=y
  6. CONFIG_CINDER_INSTALL=y
  7. CONFIG_NOVA_INSTALL=y
  8. CONFIG_NEUTRON_INSTALL=y
  9. CONFIG_HORIZON_INSTALL=y
  10. CONFIG_SWIFT_INSTALL=y
  11. CONFIG_CEILOMETER_INSTALL=y
  12. CONFIG_HEAT_INSTALL=y
  13. CONFIG_CLIENT_INSTALL=y
  14. CONFIG_NTP_SERVERS=192.168.86.37
  15. CONFIG_NAGIOS_INSTALL=y
  16. EXCLUDE_SERVERS=
  17. CONFIG_DEBUG_MODE=n
  18. CONFIG_VMWARE_BACKEND=n
  19. CONFIG_VCENTER_HOST=
  20. CONFIG_VCENTER_USER=
  21. CONFIG_VCENTER_PASSWORD=
  22. CONFIG_VCENTER_CLUSTER_NAME=
  23. CONFIG_MYSQL_HOST=192.168.48.213
  24. CONFIG_MYSQL_USER=root
  25. CONFIG_MYSQL_PW=e37cb47f36294ec1
  26. CONFIG_AMQP_SERVER=rabbitmq
  27. CONFIG_AMQP_HOST=192.168.48.213
  28. CONFIG_AMQP_ENABLE_SSL=n
  29. CONFIG_AMQP_ENABLE_AUTH=n
  30. CONFIG_AMQP_NSS_CERTDB_PW=18698078ad434bb2b6d630352b8cfcb1
  31. CONFIG_AMQP_SSL_PORT=5671
  32. CONFIG_AMQP_SSL_CERT_FILE=/etc/pki/tls/certs/amqp_selfcert.pem
  33. CONFIG_AMQP_SSL_KEY_FILE=/etc/pki/tls/private/amqp_selfkey.pem
  34. CONFIG_AMQP_SSL_SELF_SIGNED=y
  35. CONFIG_AMQP_AUTH_USER=amqp_user
  36. CONFIG_AMQP_AUTH_PASSWORD=f459146266d54cfb
  37. CONFIG_KEYSTONE_HOST=192.168.48.213
  38. CONFIG_KEYSTONE_DB_PW=e6406987528f4d86
  39. CONFIG_KEYSTONE_ADMIN_TOKEN=6ee2056522fe45229463ad91cd0f9911
  40. CONFIG_KEYSTONE_ADMIN_PW=linuxfly # 管理员的密码
  41. CONFIG_KEYSTONE_DEMO_PW=demo
  42. CONFIG_KEYSTONE_TOKEN_FORMAT=PKI
  43. CONFIG_GLANCE_HOST=192.168.48.213
  44. CONFIG_GLANCE_DB_PW=4962746651af47d1
  45. CONFIG_GLANCE_KS_PW=ef3b37da000d430c
  46. CONFIG_CINDER_HOST=192.168.48.213
  47. CONFIG_CINDER_DB_PW=de717f5796ff4bbc
  48. CONFIG_CINDER_KS_PW=c7560ce891bd4c98
  49. CONFIG_CINDER_BACKEND=lvm
  50. CONFIG_CINDER_VOLUMES_CREATE=no # 因为已经创建cinder 使用的lvm,这个卷就不需要创建了
  51. CONFIG_CINDER_VOLUMES_SIZE=20G
  52. CONFIG_CINDER_GLUSTER_MOUNTS=
  53. CONFIG_CINDER_NFS_MOUNTS=
  54. CONFIG_NOVA_API_HOST=192.168.48.213
  55. CONFIG_NOVA_CERT_HOST=192.168.48.213
  56. CONFIG_NOVA_VNCPROXY_HOST=192.168.48.213
  57. CONFIG_NOVA_COMPUTE_HOSTS=192.168.48.213,192.168.48.214 # 提供计算资源的节点地址
  58. CONFIG_NOVA_CONDUCTOR_HOST=192.168.48.213
  59. CONFIG_NOVA_DB_PW=ae2a88c5486e473f
  60. CONFIG_NOVA_KS_PW=2cea90eab44e4d31
  61. CONFIG_NOVA_SCHED_HOST=192.168.48.213
  62. CONFIG_NOVA_SCHED_CPU_ALLOC_RATIO=16.0
  63. CONFIG_NOVA_SCHED_RAM_ALLOC_RATIO=1.5
  64. CONFIG_NOVA_COMPUTE_PRIVIF=eth1
  65. CONFIG_NOVA_NETWORK_HOSTS=192.168.48.213
  66. CONFIG_NOVA_NETWORK_MANAGER=nova.network.manager.FlatDHCPManager
  67. CONFIG_NOVA_NETWORK_PUBIF=eth0
  68. CONFIG_NOVA_NETWORK_PRIVIF=eth1
  69. CONFIG_NOVA_NETWORK_FIXEDRANGE=192.168.32.0/22
  70. CONFIG_NOVA_NETWORK_FLOATRANGE=10.3.4.0/22
  71. CONFIG_NOVA_NETWORK_DEFAULTFLOATINGPOOL=nova
  72. CONFIG_NOVA_NETWORK_AUTOASSIGNFLOATINGIP=n
  73. CONFIG_NOVA_NETWORK_VLAN_START=100
  74. CONFIG_NOVA_NETWORK_NUMBER=1
  75. CONFIG_NOVA_NETWORK_SIZE=255
  76. CONFIG_NEUTRON_SERVER_HOST=192.168.48.213
  77. CONFIG_NEUTRON_KS_PW=9163ba62da104edc
  78. CONFIG_NEUTRON_DB_PW=c44e1326a3ae436a
  79. CONFIG_NEUTRON_L3_HOSTS=192.168.48.213
  80. CONFIG_NEUTRON_L3_EXT_BRIDGE=br-ex
  81. CONFIG_NEUTRON_DHCP_HOSTS=192.168.48.213
  82. CONFIG_NEUTRON_LBAAS_HOSTS=
  83. #CONFIG_NEUTRON_L2_PLUGIN=openvswitch # 默认L2使用openvswitch,改为ml2
  84. CONFIG_NEUTRON_L2_PLUGIN=ml2
  85. CONFIG_NEUTRON_METADATA_HOSTS=192.168.48.213
  86. CONFIG_NEUTRON_METADATA_PW=f65edbe4677a4928
  87. #CONFIG_NEUTRON_ML2_TYPE_DRIVERS=local # 默认为local,本地模式,改为gre模式,下面还有一些相关的选项
  88. CONFIG_NEUTRON_ML2_TYPE_DRIVERS=gre
  89. #CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=local
  90. CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=gre
  91. CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch
  92. CONFIG_NEUTRON_ML2_FLAT_NETWORKS=*
  93. CONFIG_NEUTRON_ML2_VLAN_RANGES=
  94. #CONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES=
  95. CONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES=100:1000
  96. CONFIG_NEUTRON_ML2_VXLAN_GROUP=
  97. CONFIG_NEUTRON_ML2_VNI_RANGES=
  98. CONFIG_NEUTRON_L2_AGENT=openvswitch
  99. CONFIG_NEUTRON_LB_TENANT_NETWORK_TYPE=local
  100. CONFIG_NEUTRON_LB_VLAN_RANGES=
  101. CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS=
  102. #CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=local
  103. CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=gre
  104. CONFIG_NEUTRON_OVS_VLAN_RANGES=
  105. CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=
  106. CONFIG_NEUTRON_OVS_BRIDGE_IFACES=
  107. #CONFIG_NEUTRON_OVS_TUNNEL_RANGES=
  108. CONFIG_NEUTRON_OVS_TUNNEL_RANGES=100:1000
  109. CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1
  110. CONFIG_NEUTRON_OVS_VXLAN_UDP_PORT=4789
  111. CONFIG_OSCLIENT_HOST=192.168.48.213
  112. CONFIG_HORIZON_HOST=192.168.48.213
  113. CONFIG_HORIZON_SSL=n
  114. CONFIG_SSL_CERT=
  115. CONFIG_SSL_KEY=
  116. CONFIG_SWIFT_PROXY_HOSTS=192.168.48.213
  117. CONFIG_SWIFT_KS_PW=3c978e1c9d8c4706
  118. CONFIG_SWIFT_STORAGE_HOSTS=192.168.48.213
  119. CONFIG_SWIFT_STORAGE_ZONES=1
  120. CONFIG_SWIFT_STORAGE_REPLICAS=1
  121. CONFIG_SWIFT_STORAGE_FSTYPE=ext4
  122. CONFIG_SWIFT_HASH=3da3ecfbf7784ad6
  123. CONFIG_SWIFT_STORAGE_SIZE=2G
  124. CONFIG_PROVISION_DEMO=n # 不创建demo 项目
  125. CONFIG_PROVISION_TEMPEST=n
  126. CONFIG_PROVISION_DEMO_FLOATRANGE=172.24.4.224/28
  127. CONFIG_PROVISION_TEMPEST_REPO_URI=https://github.com/openstack/tempest.git
  128. CONFIG_PROVISION_TEMPEST_REPO_REVISION=master
  129. CONFIG_PROVISION_ALL_IN_ONE_OVS_BRIDGE=n
  130. CONFIG_HEAT_HOST=192.168.48.213
  131. CONFIG_HEAT_DB_PW=8358dc2482164097
  132. CONFIG_HEAT_AUTH_ENC_KEY=237cb003b0134395
  133. CONFIG_HEAT_KS_PW=fded3b8f93a5463a
  134. #CONFIG_HEAT_CLOUDWATCH_INSTALL=n
  135. CONFIG_HEAT_CLOUDWATCH_INSTALL=y
  136. #CONFIG_HEAT_CFN_INSTALL=n
  137. CONFIG_HEAT_CFN_INSTALL=y
  138. CONFIG_HEAT_CLOUDWATCH_HOST=192.168.48.213
  139. CONFIG_HEAT_CFN_HOST=192.168.48.213
  140. CONFIG_CEILOMETER_HOST=192.168.48.213
  141. CONFIG_CEILOMETER_SECRET=658f7e3e604b4bb9
  142. CONFIG_CEILOMETER_KS_PW=8a413f3ab3e748ed
  143. CONFIG_MONGODB_HOST=192.168.48.213
  144. CONFIG_NAGIOS_HOST=192.168.48.213
  145. CONFIG_NAGIOS_PW=ab42ae321e744f78
  146. CONFIG_USE_EPEL=y
  147. CONFIG_REPO=
  148. CONFIG_RH_USER=
  149. CONFIG_RH_PW=
  150. CONFIG_RH_BETA_REPO=n
  151. CONFIG_SATELLITE_URL=
  152. CONFIG_SATELLITE_USER=
  153. CONFIG_SATELLITE_PW=
  154. CONFIG_SATELLITE_AKEY=
  155. CONFIG_SATELLITE_CACERT=
  156. CONFIG_SATELLITE_PROFILE=
  157. CONFIG_SATELLITE_FLAGS=
  158. CONFIG_SATELLITE_PROXY=
  159. CONFIG_SATELLITE_PROXY_USER=
  160. CONFIG_SATELLITE_PROXY_PW=
复制代码




这里admin 用户的密码通过CONFIG_KEYSTONE_ADMIN_PW=linuxfly 设置,在安装完毕后,会在/root目录下有个环境变量的文件,可导入其中的值,进行命令行的操作(见最后的示例):
引用
  1. [root@node01 ~]# cat keystonerc_admin
  2. export OS_USERNAME=admin
  3. export OS_TENANT_NAME=admin
  4. export OS_PASSWORD=linuxfly
  5. export OS_AUTH_URL=http://192.168.48.213:5000/v2.0/
  6. export PS1='[\u@\h \W(keystone_admin)]\$ '
复制代码


执行RDO 安装:
引用
  1. [root@node01 ~]# packstack --answer-file=openstack-icehouse-test-20140523.txt
  2. Welcome to Installer setup utility
  3. Packstack changed given value  to required value /root/.ssh/id_rsa.pub
  4. Installing:
  5. Clean Up                                             [ DONE ]
  6. Setting up ssh keys                                  [ DONE ]
  7. Discovering hosts' details                           [ DONE ]
  8. Adding pre install manifest entries                  [ DONE ]
  9. Installing time synchronization via NTP              [ DONE ]
  10. Adding MySQL manifest entries                        [ DONE ]
  11. Adding AMQP manifest entries                         [ DONE ]
  12. Adding Keystone manifest entries                     [ DONE ]
  13. Adding Glance Keystone manifest entries              [ DONE ]
  14. Adding Glance manifest entries                       [ DONE ]
  15. Installing dependencies for Cinder                   [ DONE ]
  16. Adding Cinder Keystone manifest entries              [ DONE ]
  17. Adding Cinder manifest entries                       [ DONE ]
  18. Checking if the Cinder server has a cinder-volumes vg[ DONE ]
  19. Adding Nova API manifest entries                     [ DONE ]
  20. Adding Nova Keystone manifest entries                [ DONE ]
  21. Adding Nova Cert manifest entries                    [ DONE ]
  22. Adding Nova Conductor manifest entries               [ DONE ]
  23. Creating ssh keys for Nova migration                 [ DONE ]
  24. Gathering ssh host keys for Nova migration           [ DONE ]
  25. Adding Nova Compute manifest entries                 [ DONE ]
  26. Adding Nova Scheduler manifest entries               [ DONE ]
  27. Adding Nova VNC Proxy manifest entries               [ DONE ]
  28. Adding Nova Common manifest entries                  [ DONE ]
  29. Adding Openstack Network-related Nova manifest entries[ DONE ]
  30. Adding Neutron API manifest entries                  [ DONE ]
  31. Adding Neutron Keystone manifest entries             [ DONE ]
  32. Adding Neutron L3 manifest entries                   [ DONE ]
  33. Adding Neutron L2 Agent manifest entries             [ DONE ]
  34. Adding Neutron DHCP Agent manifest entries           [ DONE ]
  35. Adding Neutron LBaaS Agent manifest entries          [ DONE ]
  36. Adding Neutron Metadata Agent manifest entries       [ DONE ]
  37. Adding OpenStack Client manifest entries             [ DONE ]
  38. Adding Horizon manifest entries                      [ DONE ]
  39. Adding Swift Keystone manifest entries               [ DONE ]
  40. Adding Swift builder manifest entries                [ DONE ]
  41. Adding Swift proxy manifest entries                  [ DONE ]
  42. Adding Swift storage manifest entries                [ DONE ]
  43. Adding Swift common manifest entries                 [ DONE ]
  44. Adding Heat manifest entries                         [ DONE ]
  45. Adding Heat Keystone manifest entries                [ DONE ]
  46. Adding Heat CloudWatch API manifest entries          [ DONE ]
  47. Adding Heat CloudFormation API manifest entries      [ DONE ]
  48. Adding MongoDB manifest entries                      [ DONE ]
  49. Adding Ceilometer manifest entries                   [ DONE ]
  50. Adding Ceilometer Keystone manifest entries          [ DONE ]
  51. Adding Nagios server manifest entries                [ DONE ]
  52. Adding Nagios host manifest entries                  [ DONE ]
  53. Adding post install manifest entries                 [ DONE ]
  54. Preparing servers                                    [ DONE ]
  55. Installing Dependencies                              [ DONE ]
  56. Copying Puppet modules and manifests                 [ DONE ]
  57. Applying 192.168.48.214_prescript.pp
  58. Applying 192.168.48.213_prescript.pp
  59. 192.168.48.213_prescript.pp:                         [ DONE ]         
  60. 192.168.48.214_prescript.pp:                         [ DONE ]         
  61. Applying 192.168.48.214_ntpd.pp
  62. Applying 192.168.48.213_ntpd.pp
  63. 192.168.48.214_ntpd.pp:                              [ DONE ]     
  64. 192.168.48.213_ntpd.pp:                              [ DONE ]     
  65. Applying 192.168.48.213_mysql.pp
  66. Applying 192.168.48.213_amqp.pp
  67. 192.168.48.213_mysql.pp:                             [ DONE ]      
  68. 192.168.48.213_amqp.pp:                              [ DONE ]      
  69. Applying 192.168.48.213_keystone.pp
  70. Applying 192.168.48.213_glance.pp
  71. Applying 192.168.48.213_cinder.pp
  72. 192.168.48.213_keystone.pp:                          [ DONE ]         
  73. 192.168.48.213_glance.pp:                            [ DONE ]         
  74. 192.168.48.213_cinder.pp:                            [ DONE ]         
  75. Applying 192.168.48.213_api_nova.pp
  76. 192.168.48.213_api_nova.pp:                          [ DONE ]         
  77. Applying 192.168.48.213_nova.pp
  78. Applying 192.168.48.214_nova.pp
  79. 192.168.48.214_nova.pp:                              [ DONE ]     
  80. 192.168.48.213_nova.pp:                              [ DONE ]     
  81. Applying 192.168.48.214_neutron.pp
  82. Applying 192.168.48.213_neutron.pp
  83. 192.168.48.214_neutron.pp:                           [ DONE ]        
  84. 192.168.48.213_neutron.pp:                           [ DONE ]        
  85. Applying 192.168.48.213_osclient.pp
  86. Applying 192.168.48.213_horizon.pp
  87. 192.168.48.213_osclient.pp:                          [ DONE ]         
  88. 192.168.48.213_horizon.pp:                           [ DONE ]         
  89. Applying 192.168.48.213_ring_swift.pp
  90. 192.168.48.213_ring_swift.pp:                        [ DONE ]           
  91. Applying 192.168.48.213_swift.pp
  92. Applying 192.168.48.213_heat.pp
  93. 192.168.48.213_swift.pp:                             [ DONE ]      
  94. 192.168.48.213_heat.pp:                              [ DONE ]      
  95. Applying 192.168.48.213_heatcw.pp
  96. Applying 192.168.48.213_heatcnf.pp
  97. 192.168.48.213_heatcw.pp:                            [ DONE ]        
  98. 192.168.48.213_heatcnf.pp:                           [ DONE ]        
  99. Applying 192.168.48.213_mongodb.pp
  100. 192.168.48.213_mongodb.pp:                           [ DONE ]        
  101. Applying 192.168.48.213_ceilometer.pp
  102. Applying 192.168.48.213_nagios.pp
  103. Applying 192.168.48.214_nagios_nrpe.pp
  104. Applying 192.168.48.213_nagios_nrpe.pp
  105. 192.168.48.214_nagios_nrpe.pp:                       [ DONE ]            
  106. 192.168.48.213_ceilometer.pp:                        [ DONE ]            
  107. 192.168.48.213_nagios.pp:                            [ DONE ]            
  108. 192.168.48.213_nagios_nrpe.pp:                       [ DONE ]            
  109. Applying 192.168.48.214_postscript.pp
  110. Applying 192.168.48.213_postscript.pp
  111. 192.168.48.214_postscript.pp:                        [ DONE ]           
  112. 192.168.48.213_postscript.pp:                        [ DONE ]           
  113. Applying Puppet manifests                            [ DONE ]
  114. Finalizing                                           [ DONE ]
  115. **** Installation completed successfully ******
  116. Additional information:
  117. * File /root/keystonerc_admin has been created on OpenStack client host 192.168.48.213. To use the command line tools you need to source the file.
  118. * To access the OpenStack Dashboard browse to http://192.168.48.213/dashboard .
  119. Please, find your login credentials stored in the keystonerc_admin in your home directory.
  120. * To use Nagios, browse to http://192.168.48.213/nagios username : nagiosadmin, password : ab42ae321e744f78
  121. * The installation log file is available at: /var/tmp/packstack/20140524-002156-yBxGmU/openstack-setup.log
  122. * The generated manifests are available at: /var/tmp/packstack/20140524-002156-yBxGmU/manifests
复制代码



4.查看OpenStack 的运行状态
引用
  1. [root@node01 ~]# ovs-vsctl show
  2. c4b035f0-98e4-4868-9e14-094ca5a952f4
  3.     Bridge br-tun
  4.         Port br-tun
  5.             Interface br-tun
  6.                 type: internal
  7.         Port patch-int
  8.             Interface patch-int
  9.                 type: patch
  10.                 options: {peer=patch-tun}
  11.         Port "gre-0a0030d6"
  12.             Interface "gre-0a0030d6"
  13.                 type: gre
  14.                 options: {in_key=flow, local_ip="10.0.48.213", out_key=flow, remote_ip="10.0.48.214"}
  15.     Bridge br-int
  16.         Port br-int
  17.             Interface br-int
  18.                 type: internal
  19.         Port patch-tun
  20.             Interface patch-tun
  21.                 type: patch
  22.                 options: {peer=patch-int}
  23.     ovs_version: "1.11.0"
  24. [root@node02 ~]# ovs-vsctl show
  25. 6d99ed4b-2030-4e6f-bee0-9b782977b76e
  26.     Bridge br-tun
  27.         Port br-tun
  28.             Interface br-tun
  29.                 type: internal
  30.         Port patch-int
  31.             Interface patch-int
  32.                 type: patch
  33.                 options: {peer=patch-tun}
  34.         Port "gre-0a0030d5"
  35.             Interface "gre-0a0030d5"
  36.                 type: gre
  37.                 options: {in_key=flow, local_ip="10.0.48.214", out_key=flow, remote_ip="10.0.48.213"}
  38.     Bridge br-int
  39.         Port patch-tun
  40.             Interface patch-tun
  41.                 type: patch
  42.                 options: {peer=patch-int}
  43.         Port br-int
  44.             Interface br-int
  45.                 type: internal
  46.     ovs_version: "1.11.0"
复制代码

5.调整相关参数
1)创建外部网络使用的桥接端口
如果不创建该桥接端口,实例无法连接路由网关、外部网络以及meta-data 服务,l3-agent.log 提示:
引用
  1. 2014-05-24 01:43:42.096 3283 ERROR neutron.agent.l3_agent [req-5cbe551e-28e5-40d8-b3df-8def91cb5f81 None] The external network bridge 'br-ex' does not exist
复制代码




创建步骤:
引用
  1. [root@node01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
  2. DEVICE=eth0
  3. BOOTPROTO=none
  4. IPV6INIT=no
  5. MTU=1500
  6. ONBOOT=yes
  7. HWADDR=00:50:56:81:9a:e1
  8. USERCTL=no
  9. [root@node01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br-ex
  10. DEVICE=br-ex
  11. BOOTPROTO=none
  12. IPV6INIT=no
  13. MTU=1500
  14. NM_CONTROLLED=no
  15. ONBOOT=yes
  16. IPADDR=192.168.48.213
  17. NETMASK=255.255.255.0
  18. GATEWAY=192.168.48.1
  19. DNS1=192.168.86.37
  20. USERCTL=no
  21. [root@node01 ~]# ovs-vsctl add-br br-ex; ovs-vsctl add-port br-ex eth0; service network restart
  22. 重启neutron-l3-agent 服务。
  23. [root@node01 ~]# /etc/init.d/neutron-l3-agent restart
  24. 停止 neutron-l3-agent:                                    [确定]
  25. 正在启动 neutron-l3-agent:                                [确定]
复制代码

2)使用Memcache 作为token 的后端服务
引用
  1. [root@node01 ~]# vi /etc/keystone/keystone.conf
  2. # Controls the token construction, validation, and revocation
  3. # operations. Core providers are
  4. # "keystone.token.providers.[pki|uuid].Provider". (string
  5. # value)
  6. #provider=
  7. #provider=keystone.token.providers.pki.Provider
  8. provider=keystone.token.providers.uuid.Provider
  9. # Keystone Token persistence backend driver. (string value)
  10. #driver=keystone.token.backends.sql.Token
  11. #driver=keystone.token.backends.sql.Token
  12. driver=keystone.token.backends.memcache.Token
复制代码


重启memcached 服务:
引用
  1. [root@node01 ~]# /etc/init.d/memcached restart
  2. 停止 memcached:                                           [确定]
  3. 正在启动 memcached:                                       [确定]
复制代码


重启相关服务:
引用
  1. [root@node01 ~]# for i in `chkconfig --list|grep '3:启用'|egrep 'neutron|openstack'|grep -v neutron-ovs-cleanup|awk '{print $1}'`; do service $i restart; done         
  2. 停止 neutron-dhcp-agent:                                  [确定]
  3. 正在启动 neutron-dhcp-agent:                              [确定]
  4. 停止 neutron-l3-agent:                                    [确定]
  5. 正在启动 neutron-l3-agent:                                [确定]
  6. 停止 neutron-metadata-agent:                              [确定]
  7. 正在启动 neutron-metadata-agent:                          [确定]
  8. 停止 neutron-openvswitch-agent:                           [确定]
  9. 正在启动 neutron-openvswitch-agent:                       [确定]
  10. 停止 neutron:                                             [确定]
  11. 正在启动 neutron:                                         [确定]
  12. 停止 openstack-ceilometer-alarm-evaluator:                [确定]
  13. 正在启动 openstack-ceilometer-alarm-evaluator:            [确定]
  14. 停止 openstack-ceilometer-alarm-notifier:                 [确定]
  15. 正在启动 openstack-ceilometer-alarm-notifier:             [确定]
  16. 停止 openstack-ceilometer-api:                            [确定]
  17. 正在启动 openstack-ceilometer-api:                        [确定]
  18. 停止 openstack-ceilometer-central:                        [确定]
  19. 正在启动 openstack-ceilometer-central:                    [确定]
  20. 停止 openstack-ceilometer-collector:                      [确定]
  21. 正在启动 openstack-ceilometer-collector:                  [确定]
  22. 停止 openstack-ceilometer-compute:                        [确定]
  23. 正在启动 openstack-ceilometer-compute:                    [确定]
  24. 停止 openstack-cinder-api:                                [确定]
  25. 正在启动 openstack-cinder-api:                            [确定]
  26. 停止 openstack-cinder-backup:                             [确定]
  27. 正在启动 openstack-cinder-backup:                         [确定]
  28. 停止 openstack-cinder-scheduler:                          [确定]
  29. 正在启动 openstack-cinder-scheduler:                      [确定]
  30. 停止 openstack-cinder-volume:                             [确定]
  31. 正在启动 openstack-cinder-volume:                         [确定]
  32. 停止 openstack-glance-api:                                [确定]
  33. 正在启动 openstack-glance-api:                            [确定]
  34. 停止 openstack-glance-registry:                           [确定]
  35. 正在启动 openstack-glance-registry:                       [确定]
  36. 停止 openstack-heat-api:                                  [确定]
  37. 正在启动 openstack-heat-api:                              [确定]
  38. 停止 openstack-heat-api-cfn:                              [确定]
  39. 正在启动 openstack-heat-api-cfn:                          [确定]
  40. 停止 openstack-heat-api-cloudwatch:                       [确定]
  41. 正在启动 openstack-heat-api-cloudwatch:                   [确定]
  42. 停止 openstack-heat-engine:                               [确定]
  43. 正在启动 openstack-heat-engine:                           [确定]
  44. 停止 keystone:                                            [确定]
  45. 正在启动 keystone:                                        [确定]
  46. 停止 openstack-nova-api:                                  [确定]
  47. 正在启动 openstack-nova-api:                              [确定]
  48. 停止 openstack-nova-cert:                                 [确定]
  49. 正在启动 openstack-nova-cert:                             [确定]
  50. 停止 openstack-nova-compute:                              [确定]
  51. 正在启动 openstack-nova-compute:                          [确定]
  52. 停止 openstack-nova-conductor:                            [确定]
  53. 正在启动 openstack-nova-conductor:                        [确定]
  54. 停止 openstack-nova-consoleauth:                          [确定]
  55. 正在启动 openstack-nova-consoleauth:                      [确定]
  56. 停止 openstack-nova-novncproxy:                           [确定]
  57. 正在启动 openstack-nova-novncproxy:                       [确定]
  58. 停止 openstack-nova-scheduler:                            [确定]
  59. 正在启动 openstack-nova-scheduler:                        [确定]
  60. Stopping openstack-swift-account:                          [确定]
  61. Starting openstack-swift-account:                          [确定]
  62. Stopping openstack-swift-account-auditor:                  [确定]
  63. Starting openstack-swift-account-auditor:                  [确定]
  64. Stopping openstack-swift-account-reaper:                   [确定]
  65. Starting openstack-swift-account-reaper:                   [确定]
  66. Stopping openstack-swift-account-replicator:               [确定]
  67. Starting openstack-swift-account-replicator:               [确定]
  68. Stopping openstack-swift-container:                        [确定]
  69. Starting openstack-swift-container:                        [确定]
  70. Stopping openstack-swift-container-auditor:                [确定]
  71. Starting openstack-swift-container-auditor:                [确定]
  72. Stopping openstack-swift-container-replicator:             [确定]
  73. Starting openstack-swift-container-replicator:             [确定]
  74. Stopping openstack-swift-container-updater:                [确定]
  75. Starting openstack-swift-container-updater:                [确定]
  76. Stopping openstack-swift-object:                           [确定]
  77. Starting openstack-swift-object:                           [确定]
  78. Stopping openstack-swift-object-auditor:                   [确定]
  79. Starting openstack-swift-object-auditor:                   [确定]
  80. Stopping openstack-swift-object-replicator:                [确定]
  81. Starting openstack-swift-object-replicator:                [确定]
  82. Stopping openstack-swift-object-updater:                   [确定]
  83. Starting openstack-swift-object-updater:                   [确定]
  84. Stopping openstack-swift-proxy:                            [确定]
  85. Starting openstack-swift-proxy:                            [确定]
复制代码


关闭crontab 的定时任务:
引用
  1. [root@node01 ~]# crontab -u keystone -e
  2. # HEADER: This file was autogenerated at Sat May 24 00:28:13 +0800 2014 by puppet.
  3. # HEADER: While it can still be managed manually, it is definitely not recommended.
  4. # HEADER: Note particularly that the comments starting with 'Puppet Name' should
  5. # HEADER: not be deleted, as doing so could cause duplicate cron jobs.
  6. # Puppet Name: token-flush
  7. #*/1 * * * * /usr/bin/keystone-manage token_flush >/dev/null 2>&1
复制代码





因为keystone-manage token_flush 是针对SQL 保存token的情况实现的,如果不关闭,执行会报错:
引用
  1. 2014-05-26 11:07:01.847 7258 CRITICAL keystone [-] NotImplemented: The action you have requested has not been implemented.
  2. 2014-05-26 11:07:01.847 7258 TRACE keystone Traceback (most recent call last):
  3. 2014-05-26 11:07:01.847 7258 TRACE keystone   File "/usr/bin/keystone-manage", line 51, in
  4. 2014-05-26 11:07:01.847 7258 TRACE keystone     cli.main(argv=sys.argv, config_files=config_files)
  5. 2014-05-26 11:07:01.847 7258 TRACE keystone   File "/usr/lib/python2.6/site-packages/keystone/cli.py", line 190, in main
  6. 2014-05-26 11:07:01.847 7258 TRACE keystone     CONF.command.cmd_class.main()
  7. 2014-05-26 11:07:01.847 7258 TRACE keystone   File "/usr/lib/python2.6/site-packages/keystone/cli.py", line 154, in main
  8. 2014-05-26 11:07:01.847 7258 TRACE keystone     token_manager.driver.flush_expired_tokens()
  9. 2014-05-26 11:07:01.847 7258 TRACE keystone   File "/usr/lib/python2.6/site-packages/keystone/token/backends/kvs.py", line 355, in flush_expired_tokens
  10. 2014-05-26 11:07:01.847 7258 TRACE keystone     raise exception.NotImplemented()
  11. 2014-05-26 11:07:01.847 7258 TRACE keystone NotImplemented: The action you have requested has not been implemented.
  12. 2014-05-26 11:07:01.847 7258 TRACE keystone
复制代码


简单验证:
引用
  1. [root@node01 ~]# source keystonerc_admin
  2. [root@node01 ~(keystone_admin)]# nova service-list
  3. +------------------+---------------------+----------+---------+-------+----------------------------+-----------------+
  4. | Binary           | Host                | Zone     | Status  | State | Updated_at                 | Disabled Reason |
  5. +------------------+---------------------+----------+---------+-------+----------------------------+-----------------+
  6. | nova-consoleauth | node01.linuxfly.org | internal | enabled | up    | 2014-05-26T03:08:08.000000 | -               |
  7. | nova-conductor   | node01.linuxfly.org | internal | enabled | up    | 2014-05-26T03:08:06.000000 | -               |
  8. | nova-scheduler   | node01.linuxfly.org | internal | enabled | up    | 2014-05-26T03:08:08.000000 | -               |
  9. | nova-compute     | node01.linuxfly.org | nova     | enabled | up    | 2014-05-26T03:08:09.000000 | -               |
  10. | nova-compute     | node02.linuxfly.org | nova     | enabled | up    | 2014-05-26T03:08:08.000000 | -               |
  11. | nova-cert        | node01.linuxfly.org | internal | enabled | up    | 2014-05-26T03:08:06.000000 | -               |
  12. +------------------+---------------------+----------+---------+-------+----------------------------+-----------------+
  13. [root@node01 ~(keystone_admin)]# neutron agent-list
  14. +--------------------------------------+--------------------+---------------------+-------+----------------+
  15. | id                                   | agent_type         | host                | alive | admin_state_up |
  16. +--------------------------------------+--------------------+---------------------+-------+----------------+
  17. | 04990a48-4b83-4999-ae29-1fbc33e9de3a | Metadata agent     | node01.linuxfly.org | :-)   | True           |
  18. | 1d5758ca-73fa-4729-bd95-6a4bf8066c5f | L3 agent           | node01.linuxfly.org | :-)   | True           |
  19. | 3babec70-d4bd-4135-8bd6-097ab7e22a54 | Open vSwitch agent | node02.linuxfly.org | :-)   | True           |
  20. | 431d2a91-2bc8-4f95-b574-9f6dc94cb49d | DHCP agent         | node01.linuxfly.org | :-)   | True           |
  21. | c706de15-50fb-495b-868b-bb7a228d64d1 | Open vSwitch agent | node01.linuxfly.org | :-)   | True           |
  22. +--------------------------------------+--------------------+---------------------+-------+----------------+
复制代码




安装完成。

应答文件:openstack-icehouse-test-20140523.tgz

下载:
链接:http://pan.baidu.com/s/1o69I6c6 密码:kk32

加微信w3aboutyun,可拉入技术爱好者群

已有(1)人评论

跳转到指定楼层
halomap 发表于 2014-7-27 10:29:20
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条