Oct 162013
 

IaaS软件的安装和学习,最头痛的是对硬件条件的要求,很多时候因为对硬件的要求,导致你无法去测试。在Openstack的Grizzly版本里,要求3块网卡,有时候很难满足这样的条件。还有就是网络,很有可能你的网络条件无法满足要求,也是无法测试。

那么这种情况到了H版本,已经大大改善,单网卡,网络,你可能只需要一个网段的几个IP地址,就可以装好和测试。这也很好体现了Openstack的网络功能的强悍。目前Neutron网络设置和以前的Nova network 差异很大,全部都是web搞定,非常爽。

基本条件

  1. 1台物理服务器,单网卡,机器可联网
  2. 网卡IP:10.1.199.8/24, 网关10.1.199.1
  3. 10.1.199.210 到10.1.199.220 这段IP,作为Floating IP给虚拟机使用

 

操作系统

CentOS6.4,最小化安装,只支持CentOS6.4以上的版本安装Openstack的Havana。如果你希望测试cinder存储功能,那么建议你单独一个分区,这样性能会很好多。

由于使用Puppet,需要机器设置好FQDN 名字。

# hostname -f
g134.chenshake.com

网络

cat /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=eth0
ONBOOT=yes
HWADDR=00:E0:81:D8:42:F6
TYPE=Ethernet
BOOTPROTO=static
IPADDR=10.1.199.8
NETMASK=255.255.255.0

 

确保联网正常。

LVM设置(可选)

这主要是为了给cinder-volumes单独一个分区,提高性能。

[root@node08 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda5             628G  979M  596G   1% /
tmpfs                 1.9G     0  1.9G   0% /dev/shm
/dev/sda1             194M   32M  153M  18% /boot
/dev/sda2             193G  188M  183G   1% /cinder-volume
[root@node08 ~]# umount /dev/sda2
[root@node08 ~]# pvcreate /dev/sda2
  Physical volume "/dev/sda2" successfully created
[root@node08 ~]# vgcreate cinder-volumes /dev/sda2
  Volume group "cinder-volumes" successfully created

 

修改/etc/fstab 去掉cinder-volume的开机挂载,不然会导致你无法重启

sed -i '/cinder-volume/s/^/#/' /etc/fstab

设置源

cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
yum list

 

Packstack

Packstack,你可以理解成Redhat用Puppet写的一套脚本

使用RDO源

yum install -y http://rdo.fedorapeople.org/openstack/openstack-havana/rdo-release-havana.rpm

 

安装packstack

yum install -y openstack-packstack

进行更新

yum -y update

系统会更新内核和组件。

重启机器,一定要重启。

安装Openstack

直接运行下面命令就可以

packstack  --allinone --provision-demo=n

如果你设置了一个单独的分区给Cinder使用,那么你就运行下面命令

packstack  --allinone --provision-demo=n CONFIG_CINDER_VOLUMES_CREATE=n

如果希望安装Heat

packstack  --allinone --provision-demo=n CONFIG_CINDER_VOLUMES_CREATE=n \
--os-heat-install=y --os-heat-cfn-install=y

如果你已经有epel源,例如我内网有epel源,已经设置好,那么你可以使用

packstack  --allinone --provision-demo=n CONFIG_CINDER_VOLUMES_CREATE=n --use-epel=n

重启机器

设置网络

这是重点,参考是这篇文档http://openstack.redhat.com/Neutron_with_existing_external_network

我们需要把 /etc/sysconfig/network-scripts/ifcfg-eth0/etc/sysconfig/network-scripts/ifcfg-br-ex 两个文件进行修改。ifcfg-br-ex是安装Openstack的过程中创建的。

源文件

 cat /etc/sysconfig/network-scripts/ifcfg-br-ex 
DEVICE=br-ex
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=
NETMASK=

 

修改后

# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=eth0
ONBOOT=yes
HWADDR=00:E0:81:D8:43:BE
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=br-ex

 

ifcfg-br-ex 是一个openvswitch 的连接外网的bridge。

# cat /etc/sysconfig/network-scripts/ifcfg-br-ex 
DEVICE=br-ex
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=10.1.199.8
NETMASK=255.255.255.0
ONBOOT=yes

 

重启网络

/etc/init.d/network restart

 

Openstack的安装,就已经装完,剩下的是进入Dashboard进行设置。

 

Dashboard

管理员登陆

密码

# cat /root/keystonerc_admin 
export OS_USERNAME=admin
export OS_TENANT_NAME=admin
export OS_PASSWORD=c22a03c7fb7145fa
export OS_AUTH_URL=http://10.1.199.8:35357/v2.0/
export PS1='[\u@\h \W(keystone_admin)]\$ '

 

通过 http://10.1.199.8  user:admin 密码看上面,随机生成的。

下面就是用最快的步骤来实现创建一个虚拟机,并且访问外网。

镜像

上传一个ubuntu12.04镜像,

http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.img

Snap4

创建网络

Snap5

创建完成后,进入网络的详细页面

Snap6

添加子网,这是重点

Snap7

子网详情,设置你使用的IP地址范围

Snap8

创建完毕

创建用户

你可以使用当前的管理员去创建虚拟机,不过为了更加深入了解,我这里创建一个项目test,用户chenshake来演示

Snap10

创建用户

Snap11

注意选择test项目和Member角色

用户登录

使用创建的账号 chenshake登录

创建网络和设置

Snap12

虚拟机使用的Fix IP,这个你可以随意设置

Snap13

子网详情,就不需要设置,默认就可以,点击创建。

注意:这里面其实你需要到子网详情里设置dns,这是虚拟机获得的dns。

创建路由器和设置

创建一个名字为“ 路由器1”

Snap15

 

设置路由器的网关

Snap16

选择管理员创建的外网网络

Snap17

进入路由器详细页面,添加接口

Snap18

就是把路由器和用户自己的网络连接起来

Snap19

 

查看网络拓扑图

Snap20

设置安全组

打开安全组的22和允许ping

Snap21

22端口

Snap22

查看全部规则

Snap25

创建秘钥

Snap26

秘钥会下载到本地

创建虚拟机

Snap27

云主机类型,不能选择tiny,会导致创建失败,因为不满足镜像的要求。

Snap28

这里不需要设置,我刚才创建的秘钥的名称是:chenshake

Snap29

在可用网络里把网络添加上,点击 “运行”

分配Floating IP

Snap30

点击+ 号,申请Floating IP

Snap31

关联

Snap32

看看结果

Snap33

访问虚拟机

ping虚拟机

Snap34

ssh虚拟机

Ubuntu虚拟机默认的用户名是ubuntu,只能采用秘钥登陆,无法采用密码登陆,设置SecureCRT(如果使用putty,秘钥需要转换,自己研究)

Snap35

Snap36

Snap37

登陆结果

Snap38

  121 Responses to “CentOS6.4 Openstack Havana 单网卡 All in One 安装”

  1. 添加用户时候默认配额得自己写
    只有添加了内网,再在网络设置处,才有选择外网的选项
    服务器会多出来一个virbr0 IP地址192.168.122.1不知道什么时候出来的,我没设置过这个地址啊

    • quota要自己填,是一个bug,目前已经修复,你过两天测试,就应该好了。网络设置,你就按照我的文章顺序就可以。vibr0的ip,是kvm自带的,不用管。

      • 嗯,按照配置已经正常搭建起来了,然后继续慢慢摸索,还是感谢了。

        • 看来文档没有太多错误。目前版本至少有2个bug,1:你碰到的quota,2; 测试boot from volume的时候,会出错错误。正式版本都已经修复。

      • virbr0是libvirt创建default network的bridge.而不是kvm的…

  2. 您的这个系统安装好后如何继续添加计算节点?

    十分感谢

  3. 陈老师好 前些天我也做了和你一样的配置,安装完毕后。由于一些原因,我更改了安装时候的ip地址,导致了 dashboard不能访问,不知道该做些什么更改,望指教

    • 改IP,需要改的东西很多,尤其是keystone里的endpoint,你是很难全部都修改的

      • 嗯 发现了…….谢谢

      • 我该过 ,首先配置文件里ip的都要改,然后keystone的 token表和endpoint表里的ip也要改,用mysql里的replace 函数替换,很方便的。

        目前用openstack-status看状态都是正常的,不知道有没有潜在问题

  4. 陈老师,请问您有过部署Cell的经历吗?可否分享一下,谢谢。

    • 难得,有人关注Cell,受制于硬件,一直都没测试过。

      • 谢谢陈老师,我也是最近才开始看Cell,不知您有没有关于Cell大规模部署比较详细资料可以分享,谢谢。

  5. 陈老师,啥时候给出个ubuntu安装h版本的啊?

  6. 陈老师:
    (1)我的虚拟机的状态一直是Scheduling(BUILD), 很长时间都没有反应。

    (2)我在分配FLOATING IP端口时没有任何选项。

    谢谢您的回答

    • 你对着文档来操作就有了。这个网络环境,应该任何人都是具备的。

      • 我想可能是电脑直接连在交换机上了,所以从交换机出来的地址是:131开头这样的地址,所以我就没法分派FLOATING IP了。

        如果电脑直接连在路由器上,是否就可以了?(这样就可以通过路由器来给虚拟机分配IP地址了)

        谢谢您的回答。

      • 陈大,我遇到和linan0828 一样的问题。创建实例的时候任务总是显示Scheduling,我开始以为是我本机配置的问题,结果我用cirros的镜像还是一样。查了log都没有error信息。

        • 我的问题是因为网络没有设置对,所以一直是SCHEDULING到状态,看来网络这方面得好好再看看。

    • 问题找到了,使用nova-manage service list,发现是nova-compute服务没有启动成功,service start一下就好了。

      • 我的第一个镜像是ubuntu12.04的没问题,但是运行第二台windows server 2012的时候,关联IP时候,端口下拉框里面也是只显示ubuntu的端口,不知道怎么解决,你的是怎么解决的啊 #nova-compute start ?

  7. 陈老师:
    我的虚拟路由器在接外网时总是在down状态, 不知您有何建议。

    麻烦了。

    • 你看一下别的功能是否正常,我也发现这个问题,好像显示是down,但是功能是正常的。

  8. 陈大的安装指南总是最早出

  9. 陈老师,安装时出现以下错误,重新安装也是这样
    ERROR : Error appeared during Puppet run: 192.168.3.111_mysql.pp
    Error: mysqladmin -u root password ‘2ab02187cc984a2c’ returned 1 instead of one of [0]

    数据库不能修改密码

    • 这个问题解决了么?我也和你一样的错误???

    • 可能是你安装中断了一回,所以后续就错误了。
      解决方法:

      1. 清除数据库原有密码和删除所有数据库。

      # Ensure there is a root user and that we know the password
      service mysql stop
      cat > /tmp/set_mysql_root_pwd << EOF
      UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
      FLUSH PRIVILEGES;
      EOF

      # mysql cleanup
      /usr/bin/mysqld_safe –init-file=/tmp/set_mysql_root_pwd &
      rm /tmp/set_mysql_root_pwd
      mysql -uroot -pMyNewPass -e "drop database nova; drop database cinder; drop database keystone; drop database glance;"
      service mysql restart

      2. 更改root 目录里面的配置文件的密码,然后数据库密码更改为 刚刚设置好的MyNewPass 运行以下命令。肯定可以成功。

      packstack –answer-file packstack-answers-20131013-xxxxxx.txt

      Johnny

      • 没错,其实packstack脚本是支持重复运行,但是all in one的安装,每次生成一个配置文件,导致可能出错,当第二次运行packstack,就需要指定配置文件就可以。

      • 2. 更改root 目录里面的配置文件的密码,然后数据库密码更改为 刚刚设置好的MyNewPass 运行以下命令。肯定可以成功。

        在这里您提到了更改root 目录里面的配置文件的密码,具体怎么修改啊~比如
        export OS_USERNAME=admin
        export OS_TENANT_NAME=admin
        export OS_PASSWORD=2f3a1066cbec4646
        export OS_AUTH_URL=http://10.1.41.212:35357/v2.0/
        export PS1='[\u@\h \W(keystone_admin)]\$ ‘

        • 我找错地方了,修改 packstack-answers-20131013-xxxxxx.txt文件里面的相关密码~最后安装成功了~

          • 我也是这个问题啊!到底是怎么修改的啊!!!!求帮助!

    • 老师,这个问题该怎么解决啊?各自说法不一

  10. 陈老师,安装后选择启动云主机出现
    错误:Instance type’s disk is too small for requested image. (HTTP 400) (Request-ID: req-2577ac5f-55aa-4f47-a55e-1fd9f98fc4c1)
    错误:无法启动云主机 名字 “VM 1”.
    这个问题是出在什么步骤没设置好?/srv/node/device1磁盘空间默认才1G,如何增大?

    • 是你选择的flavor太小,换一个flavor就可以了。

      • 求教,关联IP时无法选择待连接的端口,这是啥原因?

        • 自己查看日志已找到原因,是云主机状态是error(BIOS 的VT没开启导致)
          但是现在有个问题,上传了一个2K3镜像,建立云主机后读不到启动盘
          NO bootable device
          请问陈老师,这个在哪设置?

          • 你是用iso安装操作系统,你需要修改flavor,让那个临时磁盘改成不为零,改成10G,就可以安装。

      • 按你说的修改flavor,把临时磁盘设为10G,但是启动后还是显示NO bootable device,是要用VNC连接按F12进去PXE吗?

  11. 陈老师你好,按照你的步骤配置的时候,在上传一个ubuntu12.04镜像时没办法继续下去,没有反应了,我的internet需要经过proxy,请问该如何查看问题出在哪里?

    http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.img

    • 你可以下载回来本地,再上传,支持本地上传。

      • 陈老师,传到本地后终于可以了,其他步骤也过了,但是在起instance的时候,网络老是ping不通,从/var/log/neutron/dhcp-agent.log 看到有错,“ ERROR neutron.agent.dhcp_agent Unable to enable dhcp”
        Instance的console口也看到
        2013-11-05 05:42:54,044 – url_helper.py[WARNING]: Calling ‘http://169.254.169.254/2009-04-04/meta-data/instance-id’fail Network is unreachable] 的错误,google找不到什么有用的答案。请问这是什么问题呀?

        • 把host机器重启后,居然就好了。总算体验一把,但对于penstack感觉还没有入门,谢谢陈老师的文章。继续向你学习

  12. 陈老师,为什么我用我建立的密钥和ubuntu用户登陆不了虚机呢?

    • 难道是我把镜像下载到本地再上传的原因吗?

      • 已经登陆进去了,哈哈,密钥对选错了。

        • 总算有人装成功,说明文档没有误人子弟。

          • 当然不会了。这个文档很好。谢谢。不过我发现用你给的那个镜像一直是saving,很久也不会active,后来我自己下载了该镜像,自己上传上去就快很多了。很快就active了。O(∩_∩)O~。非常感谢。

  13. 陈老师你好,按照你的步骤配置的时候,修改HWADDR重启网络后提示” Device eth0 has MAC address E4:1F:13:E1:3E:80, instead of configured address E4:1F:13:E1:3F:48. Ignoring.”, 无法继续, 请教HWADDR设置有何规则?,如何解决?

  14. 请问按您这个配了之后,从openstack的服务器ping不通虚拟机是什么情况?他说是unreachable……网络社都是按教程走的……

    • 我也是刚解决这个问题。https://github.com/marafa/openstack/blob/master/openstack-outside.sh 或者参考一下 http://openstack.redhat.com/Neutron_with_existing_external_network 简单点说,你需要创建一个 ifcfg-br-ex,把eth0的ip移到上面。

      • 我原来那样他是自己生成了ifcfg-br-ex那个文件的,然后我改的和那个网页里说的差不多。但是还是没法访问。。导致装的ubuntu只有个login的界面却无法访问。。

      • 我也遇到了这个问题,重新部署了好几次,还是同样的网络无法互通,在openstack部署的主机上无法ping通私有网络里的ip,里面也没办法ping通外边,分配的floating ip在外边和里面都无法ping通

        • 我也遇到有类似的问题。更甚, 不能确认“里面也没办法ping通外边” 和 “分配的floating ip在里面都无法ping通”, 因为我都登陆不进虚拟机。Web上的虚拟机控制台不能’正常‘工作

      • 我已经创建了fcfg-br-ex,ping虚拟机会出现ICMP重定向,openstack安装在ESXi的,是因为这个原因吗

  15. 陈老师您好,我在安装Packstack的时候提示:http://yum.theforeman.org/releases/1.3/el6/i386/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 – “The requested URL returned error: 404 Not Found”
    Trying other mirror.
    Error: Cannot retrieve repository metadata (repomd.xml) for repository: foreman. Please verify its path and try again
    貌似这个链接没用呀

  16. 陈老师,我也出现这个错误了。

    [ ERROR ]

    ERROR : Error appeared during Puppet run: 10.175.148.8_mysql.pp
    Error: mysqladmin -u root password ‘bb0e1bfd686a4081’ returned 1 instead of one of [0]

    怎么解决啊?

  17. 根据您的这个教程,我确实成功安装好了,非常感谢!!!不过中间也遇到了一些问题。
    1、一开始我安装的是32位的centos6.4,执行yum install -y openstack-packstack这一步时,提示foreman.repo中提供的链接not found,我看了下是因为http://yum.theforeman.org/releases/1.3/el6/下面只有x86_64,而没有i386的。
    2、改安装64位的centos6.4,因为我不是minimal安装,而是desktop。导致执行packstack –allinone –provision-demo=n后,出现错误:Error :Could not find package nrpe。根据http://openstack.redhat.com/forum/discussion/comment/168 的case2,他说错误原因是别的repo库中也包含了nrpe包造成的冲突,但我把yum list | grep nrpe中,除了执行yum install -y http://rdo.fedorapeople.org/openstack/openstack-havana/rdo-release-havana.rpm产生的repo外,其他的repo全部删掉,还是会报错。最后发现原因是安装“centos中挂载ntfs分区” 这个功能时(我装的是双系统),已经使用rpmforge.repo的源安装了nrpe,且版本和epel.repo中的版本不一致。卸载nagios-nrpe-2.14-1.el6.rf.x86_64,重新安装openstack,就通过了,并且在局域网内的其他机器上可以ping通和ssh上。

  18. “Ubuntu虚拟机默认的用户名是ubuntu,只能采用秘钥登陆,无法采用密码登陆,”
    其实是可以设置密码登陆的,
    在创建主机时,最后一栏导入数据那:
    #!/bin/sh
    passwd ubuntu<<EOF
    ubuntu
    ubuntu
    EOF

    • 人才。也是一个版本。我一直希望测试一下用sed修改ssh,运行root登陆,不过一直没测试,就是通过你刚才说的那个tab,让开机运行sed。

      • 是在“创建云主机”,“创建后”tab,“自定义脚本”里面写入这个shell吗?

  19. 陈老师您好,按照您文档的配置,ping floating IP中的10.1.199.210可以通,但ping分配给虚拟机的10.1.199.211却ping不同。安全组中的ICMP规则已经添加。请问这可能是什么原因造成的?

  20. 请问陈老师, 使用了选项CONFIG_CINDER_VOLUMES_CREATE=n 安装完成后,cinder-volumes需要做什么配置吗?

  21. 我数据库是mariadb-server
    老是报错Notice: Compiled catalog for master.chenwh.com in environment production in 0.34 seconds
    Error: Could not find package mysql
    Error: /Stage[main]//Package[mysql]/ensure: change from absent to present failed: Could not find package mysql

    问题是我已经把/usr/lib/python2.6/site-packages/packstack/puppet/modules/mysql/manifests/params.pp
    修改为mariadb 和mariadb-server

  22. 陈老师你好,我创建虚拟机后虚拟机无法获取到IP地址,提示如下:
    no instance data found in start-local
    cloud-init-nonet waiting 120 seconds for a network device.
    cloud-init-nonet gave up waiting for a network device.
    ci-info: lo : 1 127.0.0.1 255.0.0.0 .
    ci-info: eth0 : 1 . . fa:16:3e:fd:c8:33
    route_info failed

    但是我在dashboard上看个端口都是ACTIVE的,不知道您有没有碰到过。

  23. 陈老师,试过resize的操作吗?
    我这里选择某个实例,选择resize 到另一个flavor后,页面提示成功,但再看实例并没有改变的。(等待一段时间后也是一样)
    用nova resize –poll 也是提示完成的,但也是没有改变哦。

  24. 陈老师您好,我装了RDO的allinone模式,我本身的工作ip段是10.1.128段的,我在openstack里面创建了两个网络,外网是10.1.128段,内部网是192.168.0段,创建了路由,路由网关是外网,添加了内网接口,也按照你日志上说的开发了22端口.在上面这种情况下,我创建虚拟机win2008,虚机能运行,但是在我本地无论是ping还是远程连接都连接不到虚拟机上,设置了floatingIP后,也连接不上,不知道是什么原因呢?

    • all in one,我以前测试是没问题,不过我估计会类似的问题。你可以参考一下http://www.chenshake.com/how-node-installation-centos-6-4-openstack-havana-ovsgre/#i-4

  25. 陈老师您好,我参考您这篇文章,能安装运行起来,麻烦请教个问题。我网络模式可不可以直接分配Floating IP,不设置内网ip和网段,我启动虚拟机的时候可以直接选择我的外网网络,但是机器ping不同,能提示个思路不。非常感谢

    • 你的需求,其实是要使用flat模式,就是租户没有网络,管理员创建一个外部网络,所有人都把虚拟机放到这个网络里。我没测试过,应该是没问题。

    • allinone 方式安装的是local 类型的网络,这是不能配置flat 网络类型的,你需要修改为vlan 的网络类型,然后再配置为flat 的网络。

  26. 陈老师您好 我按照上面的步骤搭建起了服务器,外部网络是10段,内部网络是192段,我通过Floating IP可以使用10段的IP来连接虚拟机,但是同时我又想用192段的IP直接连虚拟机,不知道可不可以?需要怎么设置呢?

  27. 陈老师您好, 我根据这个帖子安装现在成功了。
    但是发现一个问题。 默认的/etc/reslov.conf 文件指的nameserver 都是10.10.9.3
    我的私网段是10.10.9.0/24的。
    我不修改nameserver,我的实例就出不了网
    能指点一下么?

  28. 陈老师,您好,请教个问题,我在ubuntu12.04手动安装了个openstak havana,可以创建虚拟机和绑定浮动IP,但是无法ping通虚拟机的浮动IP:
    笔记本,在vmware虚拟机上安装ubuntu12.04+ openstack havana版本.
    虚拟机桥接模式接入笔记本物理网卡。
    外网地址段192.168.2.0, openstack创建的虚拟机地址段20.20.20.0,
    笔记本IP192.168.2.100,ubuntu主机ip 192.168.2.107,虚拟机cirros 浮动IP192.168.2.23
    使用namespace方式可以ping通创建的虚拟机:
    root@controller:~# ip netns exec qdhcp-80804505-2368-4cd1-bed1-6c653ebe8903 ping 192.168.2.23
    PING 192.168.2.23 (192.168.2.23) 56(84) bytes of data.
    64 bytes from 192.168.2.23: icmp_req=1 ttl=63 time=3.45 ms
    64 bytes from 192.168.2.23: icmp_req=2 ttl=63 time=0.579 ms
    64 bytes from 192.168.2.23: icmp_req=3 ttl=63 time=0.734 ms
    去掉namespace方式则不能ping通创建的虚拟机
    root@controller:~# ping 192.168.2.23
    PING 192.168.2.23 (192.168.2.23) 56(84) bytes of data.
    From 192.168.2.107 icmp_seq=1 Destination Host Unreachable
    From 192.168.2.107 icmp_seq=2 Destination Host Unreachable
    From 192.168.2.107 icmp_seq=3 Destination Host Unreachable

    ovs_neutron_plugin.ini里的租户网络类型:
    tenant_network_type = local

    root@controller:/etc/neutron/plugins/openvswitch# ovs-vsctl show
    ba560c94-7510-40d8-91a5-06ecc7ebd972
    Bridge br-int
    Port “qvo15a1a496-8e”
    tag: 1
    Interface “qvo15a1a496-8e”
    Port “qvo5a00abb3-3f”
    tag: 1
    Interface “qvo5a00abb3-3f”
    Port “qr-8255bd87-03”
    tag: 1
    Interface “qr-8255bd87-03”
    type: internal
    Port “tapc04180c4-a7”
    tag: 2
    Interface “tapc04180c4-a7”
    type: internal
    Port br-int
    Interface br-int
    type: internal
    Port “tapf1b9f597-8f”
    tag: 1
    Interface “tapf1b9f597-8f”
    type: internal
    Bridge br-ex
    Port “qg-0ec34f29-6e”
    Interface “qg-0ec34f29-6e”
    type: internal
    Port br-ex
    Interface br-ex
    type: internal
    Port “eth0”
    Interface “eth0”
    ovs_version: “1.10.2”

    root@controller:~# nova list
    +————————————–+——–+——–+————+————-+—————————–+
    | ID | Name | Status | Task State | Power State | Networks |
    +————————————–+——–+——–+————+————-+—————————–+
    | 4ecaa633-9e62-407f-bc1d-42f7b5b4c72a | cirros | ACTIVE | None | Running | 鍐呯綉=20.20.20.2, 192.168.2.23 |
    +————————————–+——–+——–+————+————-+—————————–+

  29. 您好,

    我装完之后,死活ping不通floating ip 请问有什么思路排查问题?

  30. neutron all-in-one的时候,metadata 正常么?我这一直取不到数据。

  31. 分配给instance的dns不能用

  32. 陈老师你好,
    我根据您的这篇文档安装到“安装openstack”这步时(用的是packstack –allinone –provision-demo=n),在Applying xxxx.xxxx.xxx.xx_nova.pp时,出现Error: Command exceeded timeout错误,始终没找到原因,请问是何原因呢?

    • 这个问题我也遇到过,而且重复安装了N次才成功!自己找的资料,其实是puppet的一个bug,也不算bug吧!获取资源比较慢而已。可以在安装之前设置一下:
      #vi /usr/lib/python2.6/site-packages/packstack/puppet/modules/packstack/manifests/netns.pp
      修改timeout=>900改成timeout => 3600 祝你好运!

      • 感谢陈老师,的确是超时导致的,我是通过添加openstack.repo(baseurl=http://rdo.fedorapeople.org/openstack/openstack-grizzly/epel-6)源的方式解决的,十分感谢您的回答,谢谢

  33. 按照你这篇文章安装完后,我想测试heat功能,在编配/栈中创建模板是失败,安装你的文档做完后是否还需要额外的配置?

  34. 在线安装RDO源,死活装不了,后来采用离线包安装之后,执行yum install -y openstack-packstack 依然报错。有没有人遇到啊?

    • 把源下载回来本来,然后修改/etc/hosts文件指向本地的web服务器进行安装。

  35. 陈老师,你好!我在centos6.4的服务器上安装openstack,安装时间有点长,很大程度上取决于网络因素,中间遇到错误就很崩溃,我只能重新安装centos系统。好不容易一次安装成功,在登陆dashboard的时候怎么也进步去,用户名user没错的,密码是在/root/keystonerc_admin里password取得,结果还是不行,求救啊!

  36. 按照您的文档,我在为子网填写分配地址池时遇到一个比较恼人的问题:
    allocation_pools: Invalid IP address (…)

    我是按着您的填法填的,如下:
    192.168.200.55, 192.168.200.57

    也试了下面得填法:
    start=192.168.200.55, end=192.168.200.57

    都是同样比较奇怪的错误

    请问可能是什么问题?

  37. 陈老师,你好~

    我做openstack F版,给VM实例分配的IP和openstack是一个网段就能ping通和ssh通
    但是不在一个网段就ping不同,也ssh不了。
    这是怎么回事? 我看网上很多教程里 很多不在一个网段的也能ping通,并ssh

  38. 陈老师,我按照你的文档反复做了好几次,每次都在网络这个地方调不通。按道理步骤都没错,但是网络配置完后,始终看不到网络拓扑,再往下建虚拟机也是网络不通。不知道如何排查啊。。。

  39. 陈老师,我按照你的步骤安装,grizzly、havana版本的openstack都不能创建项目。启动镜像的时候也一直在加载界面不动。我用的vmware workstation,都支持虚拟化的。all in one 和多台机器的都不行。

    • 我按照bug的修复方法试了下,可以,这个是keystone的角色列表和dashboard中的默认用户不一致导致的,/etc/openstack-dashboard/local_settings这个里面的OPENSTACK_KEYSTONE_DEFAULT_ROLE的值改为’_member_’,其实就是要确认你改后的这个值是在keystone的角色列表中就好,然后重启下相关服务,我是重启了dashboard和keystone,就好了

  40. 陈老师您好!按照您的博客安装一切正常,唯一一点问题就是创建项目的时候出错,在Dashboard页面的右上角会弹出红色错误信息,不知道是怎么回事?

  41. yum install -y openstack-packstack
    这一步好几次都是因为太慢走不下去,请问有什么解决办法吗?

  42. 陈老师,你好,看了很多openstack的文档,一直有个疑惑,就是关于网卡的说明上。

    大部分文档都没有把需要连外网的网卡分出来说明,这个对我造成了很大的困扰。

    就以你这个教程为例,你说你的网卡ip是10.1.199.8。那么这个ip是可以直接连到外网的ip么?还是说只是你openstack环境里的外网ip。

    就我来说,我公司给服务器配的ip是172.22.18.2。这个ip通过公司外网可以连到internet上。但是我用packstack allinone安装后,他自动给我的br-ex的ip是172.24.4.224/28网段的,另外为自己建了openstackde的内网是10.10.10.1/24,然后新建的instance绑定的浮动ip就类似172.24.4.230这样了。然后在openstack网络内部可以ping通:root@172.22.18.2#ping 172.22.24.230, 这个是可以ping通的。但是如果我从公司的另外一台服务器,比如172.22.18.3,又该怎么访问我建的instance呢?请不吝赐教,万分感激

  43. 陈老师,你好,我这边也搭了一个类似的环境,虚拟机实例用来做DNS集群的,现在遇到问题是虚拟机自己设置resolve nameserver 127.0.0.1 可以,虚拟机有内网私有IP 和 一个浮动IP,现在外网设置这个浮动IP为nameserver(比如 nameserver 192.168.1.121)无法dig通,浮动IP 到 私有IP 的转换该如何配置,是只要配置安全组规则吗?我尝试配置了可是不行额。

  44. 陈老师:我在搭建openstack是遇到个问题,寻求您的帮助!

    openstack nova 创建运行虚拟机error
    /var/log/nova/compute.log

    2014-05-08 03:25:29 ERROR nova.compute.manager [] [instance: b06a2df4-d93b-400b-83bd-b3f64c23d6f3] Instance failed to spawn
    2014-05-08 03:25:29 3333 TRACE nova.compute.manager [instance: b06a2df4-d93b-400b-83bd-b3f64c23d6f3] ProcessExecutionError: Unexpected error while running command.
    2014-05-08 03:25:31 ERROR nova.compute.manager [] [instance: b06a2df4-d93b-400b-83bd-b3f64c23d6f3] Build error:
    [‘Traceback (most recent call last):\n’, ‘
    File ……]
    2014-05-08 03:25:31 3333 ERROR nova.openstack.common.rpc.amqp [-] Exception during message handling

  45. 陈老师,我的网络拓扑图和你一样的,为什么我一开虚拟机,虚拟机在网络拓扑的中间开启不会连接到外网上面去

  46. 192.168.1.2_amqp.pp: [ ERROR ]
    Applying Puppet manifests [ ERROR ]

    ERROR : Error appeared during Puppet run: 192.168.1.2_amqp.pp
    Error: Could not start Service[rabbitmq-server]: Execution of ‘/sbin/service rab bitmq-server start’ returned 1: Starting rabbitmq-server: FAILED – check /var/lo g/rabbitmq/startup_{log, _err}
    You will find full trace in log /var/tmp/packstack/20140606-232637-cTqGDA/manife sts/192.168.1.2_amqp.pp.log
    Please check log file /var/tmp/packstack/20140606-232637-cTqGDA/openstack-setup. log for more information
    老大,安装是出的这个问题解决不呀!也看了日志看不出来,要怎么解决么

  47. 博主好!
    我在使用文中的方法安装Icehouse版本。
    当puppet执行到
    Applying Puppet manifests时,出现了一个错误:
    Error: mariadb-galera-server conflicts with mysql-server-5.1.73-3.el6_5.x86_64
    You could try using –skip-broken to work around the problem
    You could try running: rpm -Va –nofiles –nodigest
    博主能帮我找下原因么?

  48. 陈老师,我用packstack安装成功了OpenStack,但是总是不能launch an instance ( cirros-0.3.2-x86_64),1分钟后spawn就失败了,请您帮我分析一下。

    Dashboard界面上报错“Error: Failed to launch instance “vm01”: Please try again later [Error: No valid host was found. ].”

    /var/log/nova/compute.log中, 总报下面的错误:

    2014-07-27 20:45:11.464 3677 WARNING nova.virt.disk.vfs.guestfs [req-aa1d9876-5b31-46b7-b495-ad24c6ea94f6 2f253a73494b4c9080c0d14c82759f00 84e1dcc9e16545f18e20e6f251997e98] Failed to close augeas aug_close: do_aug_close: you must call ‘aug-init’ first to initialize Augeas
    2014-07-27 20:45:14.959 3677 ERROR nova.compute.manager [req-aa1d9876-5b31-46b7-b495-ad24c6ea94f6 2f253a73494b4c9080c0d14c82759f00 84e1dcc9e16545f18e20e6f251997e98] [instance: c7013b8a-49ce-433b-a425-0e1be674257b] Instance failed to spawn
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] Traceback (most recent call last):
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] File “/usr/lib/python2.6/site-packages/nova/compute/manager.py”, line 1714, in _spawn
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] block_device_info)
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] File “/usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py”, line 2262, in spawn
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] write_to_disk=True)
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] File “/usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py”, line 3443, in to_xml
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] disk_info, rescue, block_device_info)
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] File “/usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py”, line 3259, in get_guest_config
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] flavor)
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] File “/usr/lib/python2.6/site-packages/nova/virt/libvirt/vif.py”, line 384, in get_config
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] _(“Unexpected vif_type=%s”) % vif_type)
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b] NovaException: Unexpected vif_type=binding_failed
    2014-07-27 20:45:14.959 3677 TRACE nova.compute.manager [instance: c7013b8a-49ce-433b-a425-0e1be674257b]
    2014-07-27 20:45:15.388 3677 AUDIT nova.compute.manager [req-aa1d9876-5b31-46b7-b495-ad24c6ea94f6 2f253a73494b4c9080c0d14c82759f00 84e1dcc9e16545f18e20e6f251997e98] [instance: c7013b8a-49ce-433b-a425-0e1be674257b] Terminating instance

  49. 陈老师 :

    我在虚拟机(单网卡)centos6.5 上安装rdo Havana all in one, 在按照要求修改完 ifcfg-br-ex和ifcfg-eth0两个配置文件之后,虚拟机网络就访问不了外网,试过多次,您还知道什么原因?

  50. 我用centos7安装juno的时候,创建实例的时候一直显示compute会down掉,Nova-conductor.log只显示
    2015-03-31 17:55:40.586 17143 INFO oslo.messaging._drivers.impl_rabbit [-] Connecting to AMQP server on controller:5672
    2015-03-31 17:55:40.599 17143 INFO oslo.messaging._drivers.impl_rabbit [-] Connected to AMQP server on controller:5672
    不知道哪里有问题

  51. 如何让实例、云硬盘使用cinder-volumes呢?
    不知道如何确定或者如何让云主机、云硬盘使用cinder-volumes。

 Leave a Reply

(required)

(required)