本贴转自http://www.vpsee.com
OpenStack 是由 Rackspace 和 NASA 共同开发的云计算平台,帮助服务商和企业内部实现类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure as a Service, IaaS)。OpenStack 包含两个主要模块:Nova 和 Swift,前者是 NASA 开发的虚拟服务器部署和业务计算模块;后者是 Rackspack 开发的分布式云存储模块,两者可以一起用,也可以分开单独用。OpenStack 是开源项目,除了有 Rackspace 和 NASA 的大力支持外,后面还有包括 Dell, Citrix, Cisco, Canonical 这些重量级公司的贡献和支持,发展速度非常快,有取代另一个业界领先开源云平台 Eucalyptus 的态势。
OpenStack 是 Python 2.6 写的,CentOS 5.6 上默认的是 Python 2.4 的环境并且还有很多依赖关系不容易升级到 2.6,所以在 Ubuntu 上安装会简单一些,而且 Ubuntu 是 OpenStack 的官方首选系统,文档都是按 Ubuntu 写的,所以这里 VPSee 采用最新的 Ubuntu 11.04 Server 64bit 版本来安装和配置 OpenStack Nova. 使用 CentOS 的朋友可以看看:在 CentOS 上安装和配置 OpenStack Nova;如果对其他类似的开源云计算平台感兴趣的话可以看看:在 CentOS 上安装和配置 OpenNebula.
配置网络
在安装完基本的 Ubuntu 11.04 Server 系统后升级和更新整个系统,安装完 bridge-utils 包后重启系统:
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install bridge-utils
$ sudo reboot
配置网桥:
$ sudo vi /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.16.39.111
netmask 255.255.254.0
gateway 172.16.38.1
auto br100
iface br100 inet static
bridge_ports eth1
bridge_stp off
bridge_maxwait 0
bridge_fd 0
address 192.168.0.1
netmask 255.255.0.0
broadcast 192.168.255.255
关于 FlatManager 网络配置可参考:OpenStack Nova 安装后的 FlatManager 网络配置。
安装 NTP 服务
OpenStack Nova 需要 NTP 服务器来保持所有节点服务器(Cloud Compute)的时间同步,所以需要在前端控制服务器(Cloud Controller)上安装 NTP 服务器,然后在节点服务器上安装 NTP 客户端保持与前端的同步:
$ sudo apt-get install ntp
$ sudo vi /etc/ntp.conf
server 127.127.1.0
fudge 127.127.1.0 stratum 10
$ sudo /etc/init.d/ntp restart
安装和配置 MySQL 数据库
OpenStack Nova 需要数据库的支持,这里选用 MySQL(当然也可以用其他的数据库,比如 PostgreSQL 等):
$ sudo apt-get install mysql-server
修改 MySQL 绑定地址,以便其他的节点服务器也能访问这个数据库:
$ sudo vi /etc/mysql/my.cnf
...
#bind-address = 127.0.0.1
bind-address = 0.0.0.0
...
$ sudo /etc/init.d/mysql restart
创建一个名为 nova 的数据库,并设置 root 从任何 IP 访问的权限和密码:
$ sudo mysql -uroot -ppassword -e 'CREATE DATABASE nova;'
$ sudo mysql -uroot -ppassword -e "GRANT ALL PRIVILEGES ON *.* TO \
'root'@'%' WITH GRANT OPTION;"
$ sudo mysql -uroot -ppassword -e "SET PASSWORD FOR \
'root'@'%' = PASSWORD('password');"
安装 Glance 镜像服务
Glance 是个镜像服务器,用来给 OpenStack Nova 提供操作系统镜像(image)服务,提供可选择的操作系统模版(镜像)。
$ sudo apt-get install glance
安装 OpenStack Nova
OpenStack Nova 已经进入 Ubuntu 11.04 源,所以直接安装就可以了,不必源码安装:
$ sudo apt-get install rabbitmq-server nova-common nova-doc python-nova
nova-api nova-network nova-volume nova-objectstore nova-scheduler nova-compute
$ sudo apt-get install -y euca2ools
$ sudo apt-get install -y unzip
配置 Nova:
$ sudo vi /etc/nova/nova.conf
--dhcpbridge_flagfile=/etc/nova/nova.conf
--dhcpbridge=/usr/bin/nova-dhcpbridge
--logdir=/var/log/nova
--state_path=/var/lib/nova
--lock_path=/var/lock/nova
--verbose
--s3_host=172.16.39.111
--rabbit_host=192.168.0.1
--cc_host=192.168.0.1
--ec2_url=http://172.16.39.111:8773/services/Cloud
--fixed_range=192.168.0.0/16
--network_size=8
--FAKE_subdomain=ec2
--routing_source_ip=192.168.0.1
--sql_connection=mysql://root:[email protected]/nova
--glance_host=192.168.0.1
--image_service=nova.image.glance.GlanceImageService
重启 nova 相关服务以便设置生效:
$ sudo restart libvirt-bin; sudo restart nova-network;
sudo restart nova-compute; sudo restart nova-api;
sudo restart nova-objectstore; sudo restart nova-scheduler;
sudo restart nova-volume; sudo restart glance-api; sudo restart glance-registry
使用 Nova
开始使用 Nova 前需要创建 nova 数据库表、创建网络、创建管理员帐号、创建云并联到刚才创建的管理员上:
$ sudo nova-manage db sync
$ sudo nova-manage network create 192.168.0.0/24 1 255
$ sudo nova-manage floating create 10.10.10.2 10.10.10.224/27
$ sudo nova-manage user admin vpsee
$ sudo nova-manage project create mycloud vpsee
因为多个管理员可以创建多个不同的云,所以某个云的管理员需要特定的权限才能访问和管理自己的 Nova 云,创建权限信息,并解压到自己的目录里,需要注意的是每次使用 nova 管理云的时候都需要读取 novarc 里面的配置信息:
$ mkdir /home/vpsee/creds
$ sudo nova-manage project zipfile mycloud vpsee /home/vpsee/creds/novacreds.zip
$ cd /home/vpsee/creds
$ unzip novacreds.zip
$ sudo chown -R vpsee:vpsee /home/vpsee/creds/
$ source /home/vpsee/creds/novarc
每次用 nova 的时候都要用到 novarc 里面的环境变量,每次 source novarc 很麻烦,所以最好加到 .bashrc 里面:
$ cat /home/vpsee/creds/novarc >> /home/vpsee/.bashrc
$ source /home/vpsee/.bashrc
再次重启 nova 相关的所有服务:
$ sudo restart libvirt-bin; sudo restart nova-network;
sudo restart nova-compute; sudo restart nova-api;
sudo restart nova-objectstore; sudo restart nova-scheduler;
sudo restart nova-volume; sudo restart glance-api; sudo restart glance-registry
如果一切正常的话,应该可以打印出如下的类似信息:
$ euca-describe-availability-zones verbose
AVAILABILITYZONE nova available
AVAILABILITYZONE |- node00
AVAILABILITYZONE | |- nova-scheduler enabled :-) 2011-05-22 10:32:31
AVAILABILITYZONE | |- nova-network enabled :-) 2011-05-22 10:32:32
AVAILABILITYZONE | |- nova-compute enabled :-) 2011-05-22 10:32:24
启动第一个实例
启动实例之前需要先上传一个系统模版,我们称之为镜像(image),自己制作操作系统镜像有点麻烦(请看:为 OpenStack Nova 制作 Ubuntu 镜像 和 为 OpenStack Nova 制作 Windows 镜像。),这里直接使用一个已经做好的 Ubuntu 10.10 版本镜像,下载已经做好的镜像文件并上传到镜像服务器(这里镜像服务器和前端服务器在同一台物理服务器上):
$ wget http://c0179148.cdn1.cloudfiles.rackspacecloud.com/ubuntu1010-UEC-localuser-image.tar.gz
$ uec-publish-tarball ubuntu1010-UEC-localuser-image.tar.gz ubuntu1010-bucket x86_64
列出云里现有的可以加载的镜像,并以某个镜像(比如编号为 ami-00000003)为模版启动一个实例(操作系统):
$ euca-describe-images
IMAGE aki-00000001 ubuntu1010-bucket/vmlinuz-2.6.32-28-server.manifest.xml available public x86_64 kernel
IMAGE ari-00000002 ubuntu1010-bucket/initrd.img-2.6.32-28-server.manifest.xmavailable public x86_64 ramdisk
IMAGE ami-00000003 ubuntu1010-bucket/maverick-server-uec-amd64.img.manifest.xml available public x86_64 machine aki-00000001 ari-00000002
$ euca-add-keypair mykey > mykey.priv
$ euca-run-instances -k mykey -t m1.tiny ami-00000003
检查一下实例是否成功启动和运行:
$ virsh list
Id Name State
----------------------------------
1 instance-00000001 running
访问实例
启动实例后怎么访问呢?和访问 VPS 一样,需要 IP 地址然后 ssh 访问,还记得上面的网络配置么,新创建的系统将按照 192.168.0.x 的形式分配 IP,所以 192.168.0.3 就是刚刚 euca-run-instances 创建的实例的 IP 地址:
$ ssh [email protected]
Troubleshooting
解决 DataSourceEc2.py[WARNING]: ‘http://169.254.169.254′ failed: url error 问题。
删除 OpenStack Nova Volume 时遇到的 error_deleting 问题
赞!辛苦~
请问一下VPSEE大神 有没有办法使用非官方源升级到XEN4.1?
我看非官方源那个网站。说是必须修改KERNEL的一个配置。 怎么修改呢?
给一点简单的帮助吧
@小宇日志
看这篇:在 CentOS 5.5 上升级 Xen 到 Xen 3.4.3,可以找到 Xen 4.1 的源。
大牛,想问一下,在装操作系统的时候,是选择Ubuntu Enterprise Cloud,还是普通安装然后在后面配置选项以勾选virtual machine host??
问一下,我按照你的做了 到最后ping 虚拟机的ip地址ping不通怎么回事啊
@mioe
选择 “普通安装“ 就可以,不用选 virtual machine host,后面会用 apt-get install 安装的。
我最后也是ping不通啊
@vpsee
IP SAN存储,用于xen环境,您建议买何种接口的硬盘?
sata、sas还是scsi?
@alfie
不好给建议,主要看你要做什么、期待什么样的效果以及你的预算。
当我使用命令:uec-publish-tarball ubunt… mybucket i386
的时候
出现一下信息:Unable to run euca-describe-images. Is euca2ools environment set up?请问这是怎么回事?
我确定我的euca2ools 都装上了
按照你以前的步骤都一步一步的做了
请问下,碰到这种情况该怎么解决呢?
# euca-describe-images
UnknownError: An unknown error has occurred. Please try your request again.
nova-scheduler.log:
TRACE: ProgrammingError: (ProgrammingError) (1146, “Table ‘nova.services’ doesn’t exist”) ‘SELECT services.created_at AS services_created_at, services.updated_at AS services_updated_at, services.delet
ed_at AS services_deleted_at, services.deleted AS services_deleted, services.id AS services_id, services.host AS services_host, services.`binary` AS services_binary, services.topic AS services_topic, services
.report_count AS services_report_count, services.disabled AS services_disabled, services.availability_zone AS services_availability_zone \nFROM services \nWHERE services.host = %s AND services.`binary` = %s A
ND services.deleted = %s \n LIMIT 0, 1′ (‘cgtcloud3′, ‘nova-scheduler’, False)
@likang
使用前需要加载环境变量:
$ source /home/vpsee/creds/novarc
@Alice
检查一下 nova 的众多服务都启动了么、都正常在运行么?
@vpsee
请问下,我安装了一个控制节点和一个计算节点,但是在计算节点上启动instance的时候不能使用ping和ssh,在控制节点上启动instance时可以正常使用ping和ssh命令。
@Alice
做了授权没有?
euca-authorize -P icmp -t -1:-1 default
euca-authorize -P tcp -p 22 default
再检查一下是否有2个 dnsmasq 服务同时在运行(如果你只运行了1个 instance 的话),如果不是的话 kill 后再重启服务。
killall dnsmasq service nova-network restart
@vpsee
这个授权已经做过了,在控制机本机上是可以正常使用ping和ssh命令的,我的节点机器上只安装的nova-compute服务,节点机器上的instance可以正常启动,但是连接不上。
这个只是安装了control端吗?nova-compute没有吗?
@jankie
这个安装了 control+compute,如果要在云里增加 compute node(结点)的话只需要在每台 node (compute) 上安装就可以:
sudo apt-get install -y nova-common python-nova nova-compute vlan unzip ntp euca2ools
~/creds# uec-publish-tarball ubuntu-8.04.4-server-uec-amd64.tar.gz mybucket
2011年 07月 02日 星期六 08:33:53 CST: ====== extracting image ======
kernel : hardy-server-uec-amd64-vmlinuz-xen
ramdisk: hardy-server-uec-amd64-initrd-xen
image : hardy-server-uec-amd64.img
2011年 07月 02日 星期六 08:34:53 CST: ====== bundle/upload kernel ======
failed to register hardy-server-uec-amd64-vmlinuz-xen.manifest.xml
failed: euca-register –name hardy-server-uec-amd64-vmlinuz-xen mybucket/hardy-server-uec-amd64-vmlinuz-xen.manifest.xml
UnknownError:
UnknownError
发生了一个未知的错误. 请重试你的请求.9WLRMMS0U8507U4-ALTQfailed to upload kernel上传的时候出现这样的提示,换了其他镜像也是一样。请问能帮忙解决一下吗?
@vpsee, 在nova-compute node是否还需要安装hypersisor(KVM)呢?还是说我安装了nova-compute组件后就已经集成了kvm功能呢?另外能否在vpsee.com上展示一下关于openstack的dashboard的图形操作界面给看一下呢?呵呵。
thanks @vpsee.
@vpsee,在本案例中的control+compute节点上也可以运行instance吗?按照openstack的架构来看,一般来说是要在nova-compute node节点上运行的吧?有点晕,请vpsee指点一下,哈哈。
@vpsee 以計個問題想請教一下
1.以下 這兩個網卡與網段需要插再同一個HUB還是分開阿
2.192.168.0.1 這裡如果只是區網並無對外連線是否可行
3.nova.conf的-fixed_range=192.168.0.0/16 與 sudo nova-manage network create 192.168.0.0/24 1 255 有甚麼關聯 可以設一樣嗎?
4.sudo nova-manage floating create 10.10.10.2 10.10.10.224/27
與nova-manage network create 的設定怎麼是不同的網段呢?
5.可否說明一下你的網路環境
auto eth0
iface eth0 inet static
address 172.16.39.111
netmask 255.255.254.0
gateway 172.16.38.1
auto br100
iface br100 inet static
bridge_ports eth1
bridge_stp off
bridge_maxwait 0
bridge_fd 0
address 192.168.0.1
netmask 255.255.0.0
broadcast 192.168.255.255
@jankie
安装 nova 时会自动包括 kvm. control 和 compute 结点都可以运行 instance,只要 control 上也安装了 nova-compute.
@aaron
可以在局域网。nova-manage network create 是创建内网网络,nova-manage floating create 是创建外网网络。
@vpsee thanks vpsee :)
@vpsee
您好,我向跟您请教一下,我的试验机器只有一个网卡的情况下,网络怎么配置啊,我只有eth0,没有eth1.
谢谢!
按照这样的方法安装mysql会报错的吧?
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket 楼主有报错吗 ?
@vpsee
我与23楼的aaron有相同的疑问,能否解答详细一些吗?特别是nova.conf文件中的配置与你实验环境如何对应的?多谢!
OpenStack在Ubuntu的实现中使用的是哪个VMM啊?
Ubuntu中内置了VMM了不,需要自己安装吗??
我在ubuntu 上安装的时候在create new network 的时候报错
raise IndexError(‘index out range for address range size!’)
vpsee你好!实例资源如何修改,实例默认启动内存都是512M,我想修改成1G,怎么操作?
@vpsee
您好,我已经按照上面所说的步骤配置好openstack,但是访问实例的时候不成功。提示为ssh:connect to host 192.168.0.3 port 22: No route to host
euca-reboot-instances ID 重启一下,应该就可以了。
OpenStack 支持多种 VMM,如 Xen, KVM, VMware ESXi, Citrix XenServer, Microsoft Hyper-V, UML 等。
@dennis
看一下 nova-manage network create network 的时候各个参数和格式对不对。
@koory
可以用 nova-manage instance_type create 创建一个 1G 的新类型。
@simpleboy
你授权了吗?
euca-authorize -P tcp -p 22 default
$ sudo nova-manage floating create 10.10.10.2 10.10.10.224/27 这个中的IP地址与自己主机的IP地址有什么关系吗?
ssh [email protected]后要求输入密码,密码是什么?我输入mykey不行啊
@hfut
这是创建 public IP,公网的 IP。
@haha
是你安装 ubuntu 虚拟机时候自己设置的用户名和密码。
@vpsee
你好!我平台已經架好~
但在走訪實例部分用ssh卻一直出現”ssh: connect to host 10.0.0.2 port 22: Connection timed out”
請問大概是什麼問題呢?
請問ip部分是利用”euca-describe-instances”後找到running的image後面的ip嗎?
麻煩您了!
謝謝!!
vpsee你好。我现在把平台搭建起来了,实例之间能够ping通,但就是无法和外网进行通信,也就是ping不到,请问这是怎么回事呢?需要在compute上再配置点什么吗?
你好,我按照你的步骤很顺利,但是现在,本机和示例是互通的,如果让实例与外网联通啊?可以具体讲解下吗?
谢谢
@Cindy
最常见的问题就是忘了授权:
euca-authorize -P tcp -p 22 default
Unable to run euca–describe-images. Is environment for euca- set up?还会有什么可能导致此错误?
需要加载环境变量:
$ source /home/vpsee/creds/novarc已经加载过了
vpsee你好!在此篇文章的基础上,如何加入一台node节点,部分实例运行在别外一台机器上.
您好!我先用nova-manage floating create创建了一些IPs,然后在执行euca-allocate-address给实例分配公有地址的时候一直报这个错:UnknownError: An unknown error has occurred. Please try your request again。然后我在nova-api.log里发现输出:
(nova.api): TRACE: Traceback (most recent call last):
(nova.api): TRACE: File “/usr/lib/pymodules/python2.7/nova/api/ec2/__init__.py”, line 321, in __call__
(nova.api): TRACE: result = api_request.invoke(context)
(nova.api): TRACE: File “/usr/lib/pymodules/python2.7/nova/api/ec2/apirequest.py”, line 150, in invoke
(nova.api): TRACE: result = method(context, **args)
(nova.api): TRACE: File “/usr/lib/pymodules/python2.7/nova/api/ec2/cloud.py”, line 795, in allocate_address
(nova.api): TRACE: public_ip = self.network_api.allocate_floating_ip(context)
(nova.api): TRACE: File “/usr/lib/pymodules/python2.7/nova/network/api.py”, line 52, in allocate_floating_ip
(nova.api): TRACE: “args”: {“project_id”: context.project_id}})
(nova.api): TRACE: File “/usr/lib/pymodules/python2.7/nova/rpc.py”, line 385, in call
(nova.api): TRACE: raise wait_msg.result
(nova.api): TRACE: RemoteError: NoMoreAddresses None
请问您知道是由什么导致的吗?
vpsee@vpsee:~/creds$ euca-describe-availability-zones verbose
AVAILABILITYZONE nova available
AVAILABILITYZONE |- vpsee
AVAILABILITYZONE | |- nova-scheduler enabled XXX None
AVAILABILITYZONE | |- nova-network enabled XXX None
AVAILABILITYZONE | |- nova-compute enabled XXX None
请问您这个输出结果有影响么?是什么原因导致的呢?
@Anonymous
一般来说这个问题最常见的原因是没有 source novarc,既然你说你加载了环境变量,那可能 API 服务没有启动,你需要确保 OpenStack Nova 的各个服务都能正常启动和运行。
@koory
在新加的结点上安装 sudo apt-get install nova-compute
@vpsee
你好,我根据你的步骤进行操作了,我发布了一个实例,且那个实例在running,就是不知道为什么不能ping那个实例,用ssh也登陆不上。另外,我看过/var/log/nova里面的日志,都没有报错,数据库里面的表都没有什么问题。那出现上述情况是什么原因呢?请解答
@vpsee
你好,我根据你的步骤进行操作了,我发布了一个实例,且那个实例在running,就是不知道为什么不能ping那个实例,用ssh也登陆不上。另外,我看过/var/log/nova里面的日志,都没有报错,数据库里面的表都没有什么问题。那出现上述情况是什么原因呢?请解答
同问!谢谢!
@babycat
看看楼上的问题和解答,一般是授权问题。或者你没有在运行实例之前创建网络 nova-manage network create?你实例得到的 IP 地址是什么?
sudo apt-get install -y glance
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
E: 无法找到软件包 glance
请问是什么原因啊?
@vpsee
看看楼上的问题和解答,一般是授权问题。或者你没有在运行实例之前创建网络 nova-manage network create?你实例得到的 IP 地址是什么?
网络创建了,nova-manage network create 121.0.30.0/24 1 255,nova-compute节点IP是121.0.16.3,是授权问题吗?我又试了几次不行,授权的时候没有报错,是否nova.conf配置的问题,我的网络是FlagDHCP,–fixed_range=121.0.30.0/24 –network_size=256
我给实例分配了公有IP并安装了apache,可以ping通,为什么不能通过浏览器访问apache呢?采用的FaltDHCP方式.麻烦楼主给点建议。 谢谢
@babycat
貌似你用的是 public IP,openstack 上面的 VMs 不能这样直接用 public IP,需要在 nova.conf 里面配置 public_interface=vlan100,你可以试一下 192.168.0. 或 10.0.0. 这样保留的内部 IP。
我给实例分配了公有IP并安装了apache,可以ping通,为什么不能通过浏览器访问apache呢?采用的FaltDHCP方式.麻烦楼主给点建议。 谢谢
你好,请问安装玩OpenStack Nova
,我想用java做一个开发web,能调用这个做些什么呢?请教,109492927
请问(19楼)提到在云里增加 compute node(结点)的方法的介绍。在安装软件后,要修改哪些配置来使得Nova-Controller能找到这个新添加的Nova-Compute节点呢,谢谢。
@agent
你做了 euca-authorize default -P tcp -p 80 -s 0.0.0.0/0 没有?
@vpsee
openstack的部署架构是怎样的?
我有两个物理主机跑的是centos5.6 dom0(xen 3.4.3),其中一台起了一个hvm的ubuntu10.04LTS domU,我把控制节点服务安装的该domU中,能否控制那两台物理主机?
另外,nova-compute可以安装的centos5.6上吗?
请问:is environment for euca set up?下载玩镜像后,下一步出现这个问题,不知道如何设置,请赐教。
运行euca-describe-images出现EC2_ACCESS_KEY environment variable must be set
这个也不会设置,请赐教
connect to host 192.168.0.3 port 22: No route to host
我看了实例的ID是1,2,我有2哥实例。然后euca-reboot-instances 1或者2,为什么提示无效ID
@ioiioi
理论上可以安装在 xen hvm domu 上,不过不推荐这种方式。最好用 centos 6.0.
@果维康
需要 source /home/vpsee/creds/novarc
@emac
实例应该是类似 i-00000001 的格式,不是 1。
euca-attach-volume issue
When I attach a volume to running instance with euca-attach-volume getting following error in nova-compute on the compute node in a multiple node setup :
2011-08-29 21:18:45,738 WARNING nova.volume.driver [-] ISCSI provider_location not stored, using discovery
2011-08-29 21:18:45,738 DEBUG nova.utils [-] Running cmd (subprocess): sudo iscsiadm -m discovery -t sendtargets -p in01emt16 from (pid=1074) execute /usr/lib/pymodules/python2.7/nova/utils.py:150
2011-08-29 21:18:45,830 ERROR nova [-] Exception during message handling
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File “/usr/lib/pymodules/python2.7/nova/volume/driver.py”, line 407, in _get_iscsi_properties
(nova): TRACE: (volume['name']))
(nova): TRACE: Error: Could not find iSCSI export for volume volume-00000001
When I run all the services including nova-compute in single box then there is absolutely no error/issues with euca-attach-volume
Following is my setup :
root@in01emt16:~# euca-describe-availability-zones verbose
AVAILABILITYZONE nova available
AVAILABILITYZONE |- in01emt16
AVAILABILITYZONE | |- nova-scheduler enabled :-) 2011-08-28 06:06:18
AVAILABILITYZONE | |- nova-network enabled :-) 2011-08-28 06:06:19
AVAILABILITYZONE | |- nova-volume enabled :-) 2011-08-28 06:06:18
AVAILABILITYZONE |- in01emt17
AVAILABILITYZONE | |- nova-compute enabled :-) 2011-08-28 06:06:22
root@in01emt16:~# cat /etc/default/iscsitarget
ISCSITARGET_ENABLE=true
root@in01emt16:~# euca-describe-volumes
VOLUME vol-00000001 1 nova available (proj, in01emt16, None, None) 2011-08-29T12:14:14Z
root@in01emt16:~# euca-describe-instances
RESERVATION r-r06zfr6k proj default
INSTANCE i-0000000a ami-00000002 192.168.3.2 192.168.3.2 running None (proj, in01emt17) 0 m1.small 2011-08-29T15:44:21Z nova
Firewall is disabled on both nodes :
root@in01emt16:~# ufw status
Status: inactive
root@in01emt17:~# ufw status
cat /etc/hosts
127.0.0.1 localhost
192.168.3.1 in01emt16.xyz.com in01emt16
192.168.3.2 in01emt17.xyz.com in01emt17
root@in01emt16:~# cat /etc/nova/nova.conf
–dhcpbridge_flagfile=/etc/nova/nova.conf
–dhcpbridge=/usr/bin/nova-dhcpbridge
–logdir=/var/log/nova
–state_path=/var/lib/nova
–lock_path=/var/lock/nova
–verbose=1
–s3_host=10.144.199.85
–rabbit_host=192.168.3.1
–cc_host=192.168.3.1
–ec2_path=/services/Cloud
–ec2_port=8773
–ec2_scheme=http
–fixed_range=192.168.0.0/16
–network_size=8
–FAKE_subdomain=ec2
–routing_source_ip=192.168.3.1
–sql_connection=mysql://root:[email protected]/nova
–glance_host=192.168.3.1
–image_service=nova.image.glance.GlanceImageService
–iscsi_ip_prefix=193.168.3.
–network_manager=nova.network.manager.FlatDHCPManager
–flat_interface=eth1
–flat_injected=False
–public_interface=eth0
–flat_network_dhcp_start=192.168.3.3
Let me know if any additional info is needed.
Thanks,
SavSui
我在做这步时,
sudo apt-get install python-greenlet python-mysqldb python-nova nova-common nova-doc nova-api nova-network nova-objectstore nova-scheduler nova-compute euca2ools unzip
出现了以下问题
正在设置 nova-common (2011.3~rc~20110903.1526-0ubuntu0ppa1~natty1) …
Traceback (most recent call last):
File “/usr/bin/nova-manage”, line 89, in
from nova import vsa
File “/usr/lib/pymodules/python2.7/nova/vsa/__init__.py”, line 18, in
from nova.vsa.api import API
File “/usr/lib/pymodules/python2.7/nova/vsa/api.py”, line 28, in
from nova import compute
File “/usr/lib/pymodules/python2.7/nova/compute/__init__.py”, line 19, in
from nova.compute.api import API
File “/usr/lib/pymodules/python2.7/nova/compute/api.py”, line 35, in
from nova import volume
File “/usr/lib/pymodules/python2.7/nova/volume/__init__.py”, line 19, in
from nova.volume.api import API
File “/usr/lib/pymodules/python2.7/nova/volume/api.py”, line 36, in
flags.DECLARE(‘storage_availability_zone’, ‘nova.volume.manager’)
File “/usr/lib/pymodules/python2.7/nova/flags.py”, line 245, in DECLARE
__import__(module_string, globals(), locals())
File “/usr/lib/pymodules/python2.7/nova/volume/manager.py”, line 50, in
from nova import manager
File “/usr/lib/pymodules/python2.7/nova/manager.py”, line 60, in
from nova.scheduler import api
File “/usr/lib/pymodules/python2.7/nova/scheduler/api.py”, line 20, in
from novaclient import v1_1 as novaclient
ImportError: cannot import name v1_1
dpkg:处理 nova-common (–configure)时出错:
子进程 已安装 post-installation 脚本 返回了错误号 1
dpkg:依赖关系问题使得 nova-api 的配置工作不能继续:
nova-api 依赖于 nova-common (= 2011.3~rc~20110903.1526-0ubuntu0ppa1~natty1);然而:
软件包 nova-common 尚未配置。
请问是什么原因
在做
$ uec-publish-tarball ubuntu1010-UEC-localuser-image.tar.gz ubuntu1010-bucket x86_64
时
failed to bundle kernel maverick-server-uec-amd64-vmlinuz-virtual
certfailed
不知什么原因,是否有高手可以指点,如何做?
知道原因了,是因为 pem位置不对,把cert.pem cacert.pem pk.pem 放到/home/用户名/下就行了。
不过不知到 euca-run-instances -k mykey -t m1.tiny ami-00000003 mykey 是怎么来的
@gonewind
上面漏掉一个步骤是 add keypairs:
# euca-add-keypair mykey > mykey.priv
求教:
AVAILABILITYZONE nova available
AVAILABILITYZONE |- chenwd
AVAILABILITYZONE | |- nova-scheduler enabled XXX None
AVAILABILITYZONE | |- nova-network enabled XXX None
AVAILABILITYZONE | |- nova-compute enabled XXX None
输出这个结果,请问是什么原因造成的。困扰一天了,麻烦指教。谢谢!
@蓝山
nova 的相关组件没有启动成功,比如 rabbitmq-server 忘了安装?忘了启动?检查 rabbitmq-server, nova-scheduler, nova-network, nova-compute 等的日志。
你好,我在网上看到你写的有关《在Ubuntu上安装OpenStack Nova》。我是一名Ubuntu新手,按照你所说的办法一步一步顺利的进行着。但现在遇到了问题,配置nova时在终端输入命令$ sudo vi /etc/nova/nova.conf,接着在vi编辑器中输入你所写的那17行配置命令,我是粘贴过去的,因为我怕自己敲错代码。但在保存退出时,出现错误
“etc/nova/nova.config”
“etc/nova/nova.config”E212:Can’t open file for writing
我明明在终端是root权限进入的,为什么还是不能写该文件呢?虚拟机也能连上网,不知该如何解决。还请你帮忙解答,谢谢!
请问楼主怎么设置etc/network/interfaces 这个文件
我安装楼主说的步骤修改网络的配置文件后,就不可以上网了。
还有就是我只有一个etho 没有eth1,改怎么就修改呢?
vpsee您好
我創建到最後執行euca-run-instances -k mykey -t m1.tiny ami-00000003時有個錯誤訊息為[ 241.676487] nbd15: Receive control failed (result -32)要怎麼解決
@小王
不清出你的状况,就你留言的文字来看,etc/nova/nova.config 应该是 /etc/nova/nova.conf,不知道你是否手误敲错?
@vincent
不太清楚,nava 的镜像服务是否启动?看一下 /var/log/nova 里面的日志信息呢?
vpsee你好,我在注册实例到时候出了 下面到问题
root@ubuntu:/home/vpsee/creds# uec-publish-tarball ubuntu-10.04-server-uec-amd64.tar.gz mybucket
2011年 09月 28日 星期三 17:08:04 CST: ====== extracting image ======
Warning: no ramdisk found, assuming ‘–ramdisk none’
kernel : lucid-server-uec-amd64-vmlinuz-virtual
ramdisk: none
image : lucid-server-uec-amd64.img
2011年 09月 28日 星期三 17:08:28 CST: ====== bundle/upload kernel ======
failed to bundle kernel lucid-server-uec-amd64-vmlinuz-virtual
failed: euca-bundle-image –destination /tmp/uec-publish-image.LIg1ui –arch x86_64 –image /tmp/uec-publish-image.LIg1ui/.rename.z5Q6ry/lucid-server-uec-amd64-vmlinuz-virtual –kernel true
x86_64
Invalid certfailed to upload kernel
请问这是什么原因?
请问vpsee 出现
root@ubuntu:/home/administrator# ssh -i mykey.priv [email protected]
ssh: connect to host 192.168.0.2 port 22: Connection refused
这是什么原因?
我已经授权 euca-authorize -P icmp -t -1:-1 default
euca-authorize -P tcp -p 22 default
而且ping 192.168.0.2也不通,ping网关 172.16.200.190 可以通
@vpsee 遇到和@likang @Anonymous一样的问题,euca已经安装,而且Source也添加进去。您说的查看服务是否已经起来,是哪个服务?如何查看?
@vpsee @likang @Anonymous
自己摸索了一下,问题已经解决,除了总结一下:
1)先用sudo nova-manage service list 是否看到各个服务的”:-)” 符号,如果”xxx”,说明服务有问题,我的原因是Nova.conf和Interface网桥配置不合理导致的,我改成了Flat模式
2)如果服务没有问题,可能是Glance没有安装导致
@heard
你的问题我也遇到了,我解决了,贴出来,希望对你有帮助:
问题描述:
“
root@ubuntu:/home/vpsee/creds# uec-publish-tarball ubuntu-10.04-server-uec-amd64.tar.gz mybucket
2011年 09月 28日 星期三 17:08:04 CST: ====== extracting image ======
Warning: no ramdisk found, assuming ‘–ramdisk none’
kernel : lucid-server-uec-amd64-vmlinuz-virtual
ramdisk: none
image : lucid-server-uec-amd64.img
2011年 09月 28日 星期三 17:08:28 CST: ====== bundle/upload kernel ======
failed to bundle kernel lucid-server-uec-amd64-vmlinuz-virtual
failed: euca-bundle-image –destination /tmp/uec-publish-image.LIg1ui –arch x86_64 –image /tmp/uec-publish-image.LIg1ui/.rename.z5Q6ry/lucid-server-uec-amd64-vmlinuz-virtual –kernel true
x86_64
Invalid certfailed to upload kernel
”
解决方法,先明确你的认证文件(即cacert.pem cert.pem )存放的地方,我解压出来的认证文件放在/home/kli8/creds下面,
#vi /home/kli8/creds/.bashrc
删除掉这一句: NOVA_KEY_DIR=$(pushd $(dirname $BASH_SOURCE)>/dev/null; pwd;popd>/dev/null)
修改为: NOVA_KEY_DIR=/home/kli8/creds/
保存并退出,然后重新 source
#source /home/kli8/.bashrc
重新加载镜像就可以了
@kli8
可以通过 nova-manage services list 来看服务是否起来。
# nova-manage service list
node01 nova-scheduler enabled :-) 2011-10-06 14:09:07
node01 nova-network enabled :-) 2011-10-06 14:09:12
node01 nova-compute enabled :-) 2011-10-06 14:09:11
node01 nova-volume enabled :-) 2011-10-06 14:09:08
谢谢kli8你的帮助,上次我的Invalid certfailed to upload kerne问题解决啦,现在主要的问题是实例正常启动啦,也可以ping通,但ssh连接不上,出现了
root@ubuntu:/home/administrator# ping 172.16.200.183
PING 172.16.200.183 (172.16.200.183) 56(84) bytes of data.
64 bytes from 172.16.200.183: icmp_req=1 ttl=64 time=0.230 ms
64 bytes from 172.16.200.183: icmp_req=2 ttl=64 time=0.212 ms
64 bytes from 172.16.200.183: icmp_req=3 ttl=64 time=0.226 ms
64 bytes from 172.16.200.183: icmp_req=4 ttl=64 time=0.425 ms
^C
— 172.16.200.183 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0.212/0.273/0.425/0.088 ms
root@ubuntu:/home/administrator# ssh [email protected]
ssh: connect to host 172.16.200.183 port 22: Connection refused
出现连接拒绝,我的防火墙也关啦,ufw disable
请问vpsee大侠这是哪里出啦问题?
引用@babycat
貌似你用的是 public IP,openstack 上面的 VMs 不能这样直接用 public IP,需要在 nova.conf 里面配置 public_interface=vlan100,你可以试一下 192.168.0. 或 10.0.0. 这样保留的内部 IP。
我的情况和这个类似,可是我的unbuntu11.04安装在普通的台式机上,只有一个网卡,也只有一个eth0 public interface ,我的nova.conf内容如下
–s3_host=172.16.200.187
–rabbit_host=172.16.200.187
–cc_host=172.16.200.187
–ec2_url=http://172.16.200.187:8773/services/Cloud
–my_ip=172.16.200.187
–network_manager=nova.network.manager.FlatManager
–fixed_range=172.16.200.128/24
–num_networks=1
–network_size=127
–flat_injected=true
–public_interface=eth0
–flat_interface=eth0
–FAKE_subdomain=ec2
–routing_source_ip=172.16.200.187
–sql_connection=mysql://root:[email protected]/nova
–glance_host=172.16.200.187
–image_service=nova.image.glance.GlanceImageService
计算节点和控制节点都安装在172.16.200.187我的机器上啦,请问@vpsee怎么添加一个192的网络呢?
@heard
确定实例上安装了 openssh-server 以及正常启动了 sshd?
@heard
# nova-manage network create 192.168.0.0/24 1 256
请问博主,CPU不支持硬件虚拟化(也就是不支持KVM)怎么办?
@Anonymous
如果 cpu 不支持全虚拟话可以用 xen 半虚拟化的方式,openstack nova 支持 kvm(全虚拟化),xen(全虚拟化),xen(半虚拟化),……
@vpsee
博主能说说大致的步骤吗?非常感谢!!
因为openstack在ubuntu上默认是使用KVM的,如果想使用XEN,那么,应该在哪里有所不同呢?
@Anonymous
openstack 默认使用的是 kvm,如果需要改成 xen 需要在 nova.conf 里修改 –libvirt_type 为 xen,然后在相应结点安装 xen 服务器。
@vpsee
博主,你好,请问能给出一篇在ubuntu 11.10上安装xen的教程吗?
非常感谢!
请问文章里提到的这个ubuntu1010-UEC-localuser-image.tar.gz ,我已经成功运行在实例上了。但是ssh后,用什么用户和密码登陆这个实例呢?
@babo
用户名 ubuntu 密码 ubuntu
@vpsee
博主,你好。请问euca-describe-availability-zones verbose
Warning: failed to parse error message from AWS: :1:0: syntax error
None: None
是什么问题?
@vps
请问UEC可以作为domU直接运行在基于centos5.6(xen3.4.3)的dom0中吗?
@ioiioi
不能直接运行,不过改一下应该可以。
楼主你好,我初学openstack,然后就跟着你上面的操作一步一步做,想问一下从配置网桥开始我都是照着上面写的,没改任何东西,到nova-manage db sync的时候报错了,是不是上面哪些网络环境配置要根据我自己电脑的情况来的啊??、
@vpsee
楼主你好。我也是初学openstack.我跟103楼遇到的问题一样,都是在nova-manage db sync的时候报错,报错的内容为:
Traceback (most recent call last):
File “/usr/bin/nova-manage”, line 2140, in
main()
File “/usr/bin/nova-manage”, line 2079, in main
argv = FLAGS(sys.argv)
File “/usr/lib/python2.6/dist-packages/nova/flags.py”, line 109, in __call__
self._parse()
File “/usr/lib/python2.6/dist-packages/nova/flags.py”, line 96, in _parse
unknown = error_catcher.get_unknown_arg(args)
File “/usr/lib/python2.6/dist-packages/nova/flags.py”, line 68, in get_unknown_arg
return filter(lambda i: i == a or i.startswith(a + “=”), args)[0]
IndexError: list index out of range
我有尝试其他的nova-manage的指令。比如nova-manage db version,报错的反馈都是上面的内容。
不清楚在网络环境配置方面是否nova.conf数据库配置出错,但没理由其他的指令也是同样的错误反馈的。例如:
dm@dm-TA890GXB-HD:/var/lib/nova/networks$ sudo nova-manage user admin dming
Traceback (most recent call last):
File “/usr/bin/nova-manage”, line 2140, in
main()
File “/usr/bin/nova-manage”, line 2079, in main
argv = FLAGS(sys.argv)
File “/usr/lib/python2.6/dist-packages/nova/flags.py”, line 109, in __call__
self._parse()
File “/usr/lib/python2.6/dist-packages/nova/flags.py”, line 96, in _parse
unknown = error_catcher.get_unknown_arg(args)
File “/usr/lib/python2.6/dist-packages/nova/flags.py”, line 68, in get_unknown_arg
return filter(lambda i: i == a or i.startswith(a + “=”), args)[0]
IndexError: list index out of range
希望vpsee能指点一下。。
哪位大哥上面的这个配成功的而且有时间的留个qq行不
@vpsee
你好,我在使用euca-的各种命令时,都出现下面的错误:
Warning: failed to parse error message from AWS: :1:0: syntax error
None: None
请问这是什么情况啊?
谢谢!
上面这个配成功了openstack怎么使用啊
@vpsee
你好,我在启动实例时出现下面的情况:
root@ubuntu:~# virsh list
Id 名称 状态
———————————-
root@ubuntu:~# euca-run-instances ami-00000003 –kernel aki-00000002 –ramdisk ari-000000001 -k nova_key
InstanceLimitExceeded: InstanceLimitExceeded: Instance quota exceeded. You can only run 0 more instances of this type.
请问这是什么情况啊?
谢谢!
@Anonymous
你的 instance 类型没有指定(-t m1.tiny),m1.tiny 是 512MB,m1.medium 是 4GB,你的内存是多少?如果不指定 instance 类型的话可能启动的 instance 会超过服务器所能分配的内存。如果你的服务器只有 4GB,当然不能分配一个 4GB 的 instance.
楼主你好:
我做到uec-publish-tarball ubuntu1010-UEC-localuser-image.tar.gz ubuntu1010-bucket x86_64这一步时报错说
WARNING:‘uec-publish-tarball’is now to ‘cloud-publish-tarball’.please update your tools or docs
Unable to run euca–describe-images.Is environment for euca- set up?
这是什么问题啊
-k 的mykey 哪里来的
另外我使用的 image是http://smoser.brickies.net/ubuntu/ttylinux-uec/ 上的ssh上去提示输入密码,我不知道怎么输入。
这个文档完全不齐全,莫要误导大家了。大家去openstack.org看
@vpsee 你好,我在用nova-manage创建网络的时候就会出现:Command failed, please check log for more info的错误,只有nova-manage db sync是成功的,其余全会报错,这是什么原因呢?
@teacherzhu
你用的是新版的 openstack,新版 openstack 里面 uec-publish-tarball 命令改成了 cloud-publish-tarball,而且你需要 source novarc 之后才能发布镜像。特别注意,openstack 在飞速发展中,每天都在变化,以前的命令可能都有变化,注意这篇文章的写作时间。
@Anonymous
看75楼回复。
@vpsee楼主你好,我把uec-publish-tarball 改成cloud-publish-tarball后还是显示Unable to run euca–describe-images.Is environment for euca- set up?
可是我source /home/vpsee/creds/novarc和source /home/vpsee/.bashrc 这两步都做了,
euca-describe-availability-zones verbose后也成功显示了组建的运行状态,它还说euca的环境没配好,这怎么解决啊