openstack swift 部署的安装部署复杂吗

当前位置:&>&&>&
OpenStack安装配置过程中常见问题以及解决办法
时间: 12:54:01    来源:服务器之家    投稿:root
一、网络问题-network
更多网络原理机制可以参考《OpenStack云平台的网络模式及其工作机制》。
1.1、控制节点与网络控制器区别
OpenStack平台中有两种类型的物理节点,控制节点和计算节点。控制节点包括网络控制、调度管理、api服务、存储卷管理、数据库管理、身份管理和镜像管理等,计算节点主要提供nova-compute服务。
控制节点的服务可以分开在多个节点,我们把提供nova-network服务的节点称为网络控制器。
1.2、OpenStack中nova-network的作用
OpenStack的网络由nova-network(网络控制器)管理,它会创建虚拟网络,使主机之间以及与外部网络互相访问。
OpenStack的API服务器通过消息队列分发nova-network提供的命令,这些命令之后会被nova-network处理,主要的操作有:分配ip地址、配置虚拟网络和通信。
1.3、OpenStack中Flat与FlatDHCP区别
Flat(扁平): 所有实例桥接到同一个虚拟网络,需要手动设置网桥。
FlatDHCP: 与Flat(扁平)管理模式类似,这种网络所有实例桥接到同一个虚拟网络,扁平拓扑。不同的是,正如名字的区别,实例的ip提供dhcp获取(nova-network节点提供dhcp服务),而且可以自动帮助建立网桥。
1.4、OpenStack中Flat与vLAN区别
在两种Flat模式里,网络控制器扮演默认网关的角色,实例都被分配了公共的IP地址(扁平式结构,都在一个桥接网络里)。
vLAN模式功能丰富,很适合提供给企业内部部署使用。但是,需要支持vLAN的switches来连接,而且相对比较复杂,在小范围实验中常采用FlatDHCP模式。
1.5、OpenStack中网络流向是怎样的,都经过网络控制器吗
多节点时,网络控制器与计算节点分别在不同主机,普通部署方式下(不是multi_host),只有nova-network控制网络,而它仅仅在控制节点运行。因此,所有计算节点的实例都需要通过控制节点来与外网通信。
可以通过multi_host等高可用性部署方式改变这个单点故障问题。
1.6、OpenStack单网卡怎么配置?
配置好服务器的网络(混杂模式);
/etc/nova/nova.conf那一块,public_interface和flat_interface都改成这个单网卡的名称即可,比如在脚本oneStack.sh
/etc/network/interfaces设置那一块,去掉第2个网卡的设置(eth1);
/etc/nova/nova.conf那一块,eth1修改为eht0(flat的网卡)。
这样,在这个网卡上,既有外网的网络,又有flat网络。详见《OpenStack云平台的网络模式及其工作机制》。
1.7、OpenStack中网络流向是怎样的,都经过网络控制器吗
多节点时,网络控制器与计算节点分别在不同主机,普通部署方式下(不是multi_host),只有nova-network控制网络,而它仅仅在控制节点运行。因此,所有计算节点的实例都需要通过控制节点来与外网通信。
可以通过multi_host等高可用性部署方式改变这个单点故障问题。
1.8、OpenStack中网络注意问题
1)openstack 中,nova-manage
create用来创建虚拟机运行时所需的内网,并且将相关的IP地址记录到fixed_ips数据表中。但是,当调用nova-manage delete
时,并不会自动的删除fixed_ips中的内容,需手动进行删除。
2)采用FlatDHCP方式部署openstack,在开放了icmp和ssh22端口的情况下,仍然无法通过控制节点连接到虚拟机实例。此时应该检查控制节点的ip配置信息ip
3)FlatDHCP模式下,network_size是整个fixed_ip
range中的所有ip数。例如在一个A类/12的网络中,有2^20个IP地址,所有的这些IP地址都要写入数据库fixed_ips表中,这将会花费很长时间,导致出现假死。
4)如果采用FlatManager的网络模式,则必须手动建立相关的网桥,以便虚拟机实例之间以及和主机之间通信。
而且,必须手动的将虚拟机实例的内部IP加入到nova数据库的fixed_ips表中。
此外,fiexed_ips表保着所有可供虚拟机实例使用的内部IP,每次发起一个新的虚拟机实例,openstack的网络服务部分,根据
fixed_ips表中的内容分配给该实例IP。如果用户希望保留特定的IP地址,需要将数据库中该IP对应的reserved字段设置为1。
二、虚拟化问题-virtual
2.1、OpenStack中控制节点和计算节点配置nova.conf一样吗
多节点时,网络控制器与计算节点分别在不同主机,普通部署方式下(不是multi_host),只有nova-network控制网络,而它仅仅在控制节点运行。因此,所有计算节点的实例都需要通过控制节点来与外网通信。
可以通过multi_host等高可用性部署方式改变这个单点故障问题。
计算节点的nova.conf并不是与控制节点完全一样,主要是
--vncserver_proxyclient_address=
--vncserver_listen=
应该是计算节点的ip。
2.2、OpenStack执行 virsh -c qemu:///system list,一直挂起在那里(hang),怎么解决
killall -9 dmidecode
dmidecode是一个管理工具,在虚拟机装OpenStack中需要用到,用在libvirt中,但在有的机器中会出现hang
up的情况,这时候需要kill掉它。
2.3、OpenStack中虚拟化技术在哪里配置
主要两个文件:nova.conf nova-compute.conf。
其中的虚拟技术应该一致,比如都为kvm,或者都为qemu。
2.4、OpenStack中虚拟机中nova-compute经常启动失败,virsh list显示空白,怎么解决
1. 在vmware workstation上的虚拟机需要修改 *.vmx文件
vcpu.hotadd = "TRUE"
vcpu.hotadd = "FALSE"
重新启动机器,如果执行命令:
进入控制台就没有问题了。
2. 修改nova配置文件/etc/nova/nova.conf
#--libvirt_type=kvm
更改为qemu
--libvirt_type=qemu
3. 修改/etc/nova/nova-compute.conf
--libvirt_type=qemu
4. 重新启动nova-compute,如果libvirt报错
/var/log/libvirt/libvirtd.log
Cannot find 'pm-is-supported' in path: No such file or
报错后需要安装
apt-get install pm-utils
2.5、noVNC不能连接到实例,提示“Connection Refuesd”,什么原因
可能是控制节点在收到vnc请求的时候,无法解析计算节点的主机名,从而无法和计算节点上的实例建立连接。
另外可能是,当前浏览器不支持或者不能访问,将计算节点的ip和主机名的对应关系加入到控制节点的/etc/hosts文件中。
三、存储、卷问题-volume、lvm
3.1、OpenStack中创建volume一直在creating,什么原因
主要因为nova-volume没有正常启动,可以
nova-manage service list
看看后面的状态,不是笑脸:-)而是xx。如果没有启动,请看下一条。
3.2、OpenStack中nova-volume服务不能启动,什么原因
主要因为没有nova-volumes卷组,或者iscsitarget服务没有启动(或者没有安装)。
1、vgdisplay
没有nova-volumes卷组,可以创建卷组和磁盘
$ dd if=/dev/zero of=/opt/nova-volumes.img bs=1M seek=100000
$ losetup -f /opt/nova-volumes.img
$ losetup -a
$ vgcreate nova-volumes /dev/loop0
记着启动nova-volume然后创建volume,否则下面仍然不能创建
$ service nova-volume restart
$ nova volume-create --display_name "volume1" 10
2、service iscsitarget status
1)没有安装iscsitarget,可以apt安装;
然后执行以下命令安装和设置为可以启动
apt-get install -y iscsitarget iscsitarget-dkms lvm2
sed -i -e 's/false/true/' /etc/default/iscsitarget
service iscsitarget start
service nova-volume start
2)状态为stop,可以start
service iscsitarget start
3)如果既没有nova-volumes卷组,也没有安装iscsitarget,切忌保证这两者都存在,然后重启nova-volume,再创建volume
有人安装iscsitarget并启动后就create,结果nova-volume并没有启动,所以问题依然存在;
有人创建nova-volumes,也没有重启nova-volume,也不能正常工作。
3.3、OpenStack中创建volume一直在creating,怎么停掉(stop)
主要因为nova-volume没有正常启动,可以
nova-manage service list
看看后面的状态,不是笑脸:-)而是xx。如果没有启动,请看下一条。
3.4、OpenStack中nova-volume执行出现问题,检查什么地方
主要因为nova-volume没有正常启动或者计算节点没有能找到target,可以检查以下这些问题。
nova-volume是否正常;控制点,详见问题3.2
iscsitarget是否开启;服务端
open-iscsi是否安装和开启;客户端
客户端(计算节点)iscsiadm discovery看看能不能找到存储服务;
分析nova-volume.log。
3.5、OpenStack中nova-volume管理target
控制节点查看target
tgtadm --lld iscsi --op show --mode target
建立target
sudo tgtadm --op new --lld=iscsi --mode=target --tid=1
--targetname=iqn.2010-10.org.openstack:volume-
3.6、OpenStack中计算节点管理volume
查看session
sudo iscsiadm -m session
手动发现target
sudo iscsiadm -m discovery -t sendtargets -p IP:port
sudo iscsiadm -m node -T
targetname(iqn.2010-10.org.openstack:volume-) -p
10.200.200.4:3260 --login
sudo iscsiadm -m node -T
targetname(iqn.2010-10.org.openstack:volume-) -p
10.200.200.4:3260 --logout
sudo iscsiadm -m node -o [delete|new|update] -T targetname
四、OneStack安装问题
4.1、OpenStack能在普通的PC机上跑吗?
普通pc没有试过,这也不是它需要支持的对象。但是普通pc一样可以工作的。
官网的配置,只是对于稍有一定规模的部署(配置并不算高,甚至是服务器最基本的要求)
现在服务器基本都64位,但是它也指出了,32位的可以工作的,只是不能运行64位的操作系统实例,自己改一下镜像就可以。还有不支持vt技术的,我没有试过。
双网卡也不是必须的,一个对内,一个对外。可以更改配置。详见1.6单网卡安装。
其它的基本就是自由的。
4.2、OneStack简单安装需要改哪些地方?
1、切换到root,oneStack.sh删除设置root密码、设置locale、设置apt这3段(为了方便刚安装新系统的用户加入的可选的步骤,setup_base.sh没有这3段)
2、设置ip等参数 OUT_IP 外网ip(注意这是相对于OpenStack?内部网络的) OUT_IP_PRE
外网ip前缀(脚本后面出现ip不用管,会被这个参数替换) FLOAT_IP
3、裸机的话qemu改成kvm (对于xen之类的未加入支持) VIRT_YPE
4、网络设置,会替换掉你原来的,不想替换就删掉这一段
设置cat写入interfaces文件(注意,那里面pre-up手动设置了网卡mac,不需要的自行去掉;单网卡去掉eth1的设置即可)
5、执行oneStack.sh 或者setup_base.sh(基本系统,没有添加镜像和实例,可以setup_test.sh)
其它没有需要更改的(数据库密码等自行更改无影响)。 里面有个image是从ubuntu官网下载,可能需要一些时间 (svn
checkout,里面还有一些删除之类的工具)
4.3、OneStack单网卡安装需要改哪些地方?
除了4.2所述部分外
1)在配置interfaces时,去掉eth1部分;
2)后面nova.conf设置里面,eth1改为eth0(public_interface)。
4.4、OneStack多节点安装需要改哪些地方?
控制节点使用oneStack.sh,如果不需要安装nova-compute去掉即可;
计算节点执行addComputeNode.sh
注意nova.conf配置其余一样,只是
--vncserver_proxyclient_address=
--vncserver_listen=
应该是计算节点的ip。
4.5、OneStack安装后怎么清空nova数据,包括实例和volume等?
控制节点执行resetStack.sh clear,清空数据库;
再执行resetStack.sh重新初始化数据库。
五、镜像问题-image
5.1、OpenStack中可以使用windows吗
虚拟出来的实例基本与普通的主机一样,所以基本上所有系统都可以使用,制作相应的镜像即可。
5.3、OpenStack怎么制作Windows镜像
建立镜像文件
kvm-img create -f raw windowsxp.img 10G
http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/virtio-win-0.1-22.iso
启动安装到镜像
kvm -m 1024 -cdrom winxp.iso -drive
file=windowsxp.img,if=virtio,boot=on -drive
file=virtio-win-0.1-22.iso,media=cdrom -boot d -nographic -vnc
可以vnc查看以及操作安装过程
vncviewer 192.168.139.50:5900
(注意,5900最后一位与vnc :0对应,如果端口占用可以改为1、2、3等,vncviewer 5901等)
glance add name="WindowsXP" is_public=true container_format=ovf
disk_format=raw & windowsxp.img
5.3、OpenStack怎么制作CentOS镜像
kvm-img create -f raw centos.img 5G
kvm -m 2048 -cdrom CentOS-6.2-i386.iso -drive file=centos.img -boot
d -net nic -nographic -vnc :1
操作安装过程
vncviewer 192.168.139.50:5901
再次启动安装好的镜像
kvm -m 2048 -drive file=centos.img -boot c -net nic -nographic -vnc
在虚拟机内部安装ssh,以便可以远程登录实例
yum install openssh-server
service sshd start (虚拟机内部)
chkconfig sshd on (不然,重启又不能ssh)
glance add name="CentOS6.2" is_public=true container_format=ovf
disk_format=raw & centos.img
要使虚拟机内部访问外网,需要在节点上执行
sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1 (vi /proc/sys/net/ipv4/ip_forward)
5.4、OpenStack怎么Linux登录ubuntu
官方提供的镜像需要使用密钥登录,也就是启动实例的时候使用的那个key(不用key启动ubuntu实例是没法ssh登录的)
ssh -i ~/.ssh/id_rsa
在外网登录使用floating ip;
要访问外网注意设置节点上
sysctl -w net.ipv4.ip_forward=1
5.5、OpenStack怎么novnc浏览器访问登录ubuntu
在能使用vnc的地方,浏览器输入地址可以访问系统。
控制节点上
nova get-vnc-console 4 novnc
得到一个url,例如
+-------+-------------------------------------------------------------------------------------+
| Type | Url |
+-------+-------------------------------------------------------------------------------------+
http://192.168.139.50:6080/vnc_auto.html?token=ca2455e8-fcc9-447f-92ee-853b92b37cdb
+-------+-------------------------------------------------------------------------------------+
浏览器中使用这个url访问。
5.6、OpenStack怎么Windows登录ubuntu
下载启动实例的时候使用的那个key(不用key启动ubuntu实例是没法ssh登录的)
ssh登录工具里面选择key认证方式,auth里面上传这个private key
然后ssh登录,输入用户名ubuntu,直接登录。
5.7、OpenStack可以密码登录ubuntu而不是密钥吗
默认的镜像通过注入密钥的方式,ssh是需要密钥认证的方式登录,不允许密码登录的;
设置别的用户比如root密码后,在vnc里面可以通过密码登录;
可以自己制作镜像,参考制作CentOS镜像那样,使用密码登录。
六、实例问题-instance
6.1、OpenStack中实例是什么意思
简单的说,一个实例就是一个跑着操作系统的虚拟机。
6.2、OpenStack中实例怎么访问
在OpenStack内部,可以使用内网ip(fixed ip)访问。
外部,可以使用floating ip访问。
注意设置相应的访问规则,比如ssh端口,防火墙规则,ipv4_forward等。
可以vnc访问,vnc浏览器访问。
Linux系统可以ssh登录,桌面系统也可以安装xrdp实现远程桌面访问;
Windows系统可以远程桌面连接。
6.3、OpenStack中怎么管理实例
可以web端(dashboard)访问,图形化操作管理。也可以使用api,如下:
## 1:上传实例
http://cloud-/precise/current/precise-server-cloudimg-amd64-disk1.img
glance add name="Ubuntu12.04-amd64" is_public=true
container_format=ovf disk_format=qcow2 &
precise-server-cloudimg-amd64-disk1.img
nova image-list
## 2:创建flavor
nova flavor-list
nova-manage flavor create --name=m1.minitest --memory=384 --cpu=1
--root_gb=1 --flavor=6 --ephemeral_gb=1
## 3、创建虚拟机
nova boot --flavor 1 --image "Ubuntu12.04-amd64" --key_name key1
nova show cloud01
nova console-log cloud01
##绑定浮动ip
nova floating-ip-create
nova add-floating-ip cloud01 192.168.139.226
nova show cloud01
nova add-floating-ip cloud01 `nova floating-ip-create | awk
'FNR==4{print $2}'`
nova show cloud01
### 查看vm
### 删除vm,vm的ID或者名字
nova delete 10d1bc19-b2c4-4eee-a5c8-b256bda3f343
nova delete cloud01
## 4、默认实例登录
ssh-keygen -f "/home/cloud/.ssh/known_hosts" -R 10.0.0.2
ssh -i ~/.ssh/id_rsa
6.4、怎么新建密钥,怎么使用密钥
mkdir /root/ssh_clients/
创建密钥:ssh-keygen -t rsa -f /root/ssh_clients/key01
上传密钥:nova keypair-add --pub_key /root/ssh_clients/key01.pub
启动实例时分配密钥:nova keypair-add --pub_key /root/ssh_clients/key01.pub
使用密钥登录:ssh -i /root/ssh_clients/key01
删除keypair:nova keypair-delete
6.5、OpenStack中nova-compute启动失败什么原因
分析/var/log/nova/nova-compute.log日志。
容易出现的问题是,volume问题或者virt问题。
6.5、OpenStack中nova-compute启动失败什么原因
启动失败时,nova-manage service
list下显示为“XX”;分析/var/log/nova/nova-compute.log日志。
容易出现的问题是,volume问题或者virt问题。
6.6、OpenStack中无法连接实例
无法连接到虚拟机实例的时候,应该检查如下的环节:
1) 公共IP是否已经绑定到了公共网卡接口上,ip addr
2) 查看iptable的设置,NAT规则是否设置正确,iptables-save
3) 检查安全组设置,euca-describe-groups
6.6、OpenStack中实例注意问题
1)虚拟机在build阶段时,不要进行重启操作,否则会出现kernel panic现象。
nova-manage
create用来创建虚拟机运行时所需的内网,并且将相关的IP地址记录到fixed_ips数据表中。但是,当调用nova-manage
delete 时,并不会自动的删除fixed_ips中的内容,需手动进行删除。
2)计算节点的操作系统为32位,因此,kvm上启动的虚拟机内存受到限制,比如无法创建内存大于4G的虚拟机。
3)虚拟机实例已经绑定了浮动IP,并且控制节点的对外网络接口上也发现了相关的浮动IP地址,但是通过ssh却无法进行连接。
解决:在dashboard中添加相关的安全规则。security group -& edit rules
添加:icmp -1 -1 0/0;tcp 22 22 0/0
在OneStack里面,已经把端口全部启动1~65535,可以更改为只开放ssh、imcp等部分。
4)nova的配置文件默认存放在/etc/nova/nova.conf中,其中涉及到nova各个参数的配置。
nova所有的参数可以通过nova-api --help进行查看。
七、系统及其它
7.1、查看日志
OpenStack的nova相关日志都在/vr/log/nova下面,一般多数是nova出现问题,包括网络、存储、compute、虚拟化等。
volume相关问题查看nova-volume.log
compute和libvirt相关问题查看nova-compute.log
查看实例日志,web里面有这样一个菜单,api里面使用nova console-log cloud01
7.2、怎么实现高可用性的部署
请参考文章《构建OpenStack的高可用性(HA,High Availability)》,里面给出了一些大概的方案。
7.3、OpenStack有哪些资料,新手去哪里学习
动手实践,阅读wiki、文档,参与社区,反馈问题,勤动脑。以下为部分网址:
国内技术资料较少,多为安装管理相关问题,或者媒体资料。对于swift有一些技术分析的资料,其它较少。
官方OpenStack www.openstack.org
国内OpenStack社区 www.
Installing OpenStack Essex (2012.1) on Ubuntu 12.04 ("Precise Pangolin")(原文) /resources/docs/installing-openstack-essex-20121-ubuntu-1204-precise-pangolin
“OpenStack Documentation”team(文档、bug报告) https://launchpad.net/~openstack-doc
Quora上关于openstack的话题 /OpenStack
stackoverflow上关于openstack资源的讨论 /questions/5882333/good-tutorials-and-resources-for-openstack
/blogs/florian//high-availability-openstack
Existing High Availability Options for Networking
bringing-high-availability-openstack-keystone-and-glance
Quantum Setup
MySQL HA with Pacemaker
安装部署问题多Google,很多会链接到https://launchpad.net/别人的问答。以后可以把问题和解决方法抽象出来在《OpenStack安装部署管理中常见问题解决方法(OpenStack-Lite-FAQ)》分享,希望少把时间浪费在安装和部署上。
转载请注明原文地址:20分钟自动安装kilo版本openstack开发环境 - 博客频道 - CSDN.NET
吴业亮的专栏
欢迎技术交流~
分类:openstack
作者:【吴业亮】云计算开发工程师
博客:http://blog.csdn.net/wylfengyujiancheng
安装视频地址:http://my./us/990232.shtml
网络拓扑及网卡配置
一、创建centos7.0操作系统
1、使用CentOS-7.0--DVD.iso(本地源为7.0的,请勿安装成CentOS-7.0--DVD.iso)
2、安装类型为basicweb& server
3、需要使用两块网卡
4、第一块网卡为管理网络且配置IP,安装用该IP登录(建议设置为静态IP)
5、第二块网卡为internat网卡,绑定网桥走虚拟机流量。
二、使用本地源方法
用ftp工具(如:filezilla)通过root用户将软件包openstack_kilo_centos7.tar.gz上传到服务器/mnt下
解压压缩包
# tar –zxvf& openstack_kilo_centos7.tar.gz
配置本地源配置文件
备份网络源
# cd /etc/yum.repos.d/ && mkdir bak_repo_bak && mv *.repo bak_repo_bak
新建/etc/yum.repos.d/repo.repo并写入(必须命名为repo.repo,脚本判断本地源的依据)
baseurl=file:///mnt/openstack_kilo_centos7
gpgcheck=0
proxy=_none_
执行下列命令测试,有正常回显,如报错返回检查配置文件及文件路径是否正确。
# yum list
三、安装各个组件
1、用ftp工具(如:filezilla)通过root用户将kilo_install-V1.0.zip上传到服务器/root下
# cd /root/
# unzip kilo_install-V1.0.zip
注意:如果希望自定义neutron的网段,请参见另一篇博客http://blog.csdn.net/wylfengyujiancheng/article/details/
2、如果使用云硬盘,请在/root/kilo_install-V1.0/lib/cinder_disk中下面新增一行写入做云硬盘的磁盘符或分区,多个分区请用空格分开(文件中有说明)。
注意:所写的分区,系统必须存在且能识别,检查方法用命令lsblk(在virtual box和比较老的物理机上重启后盘符有时会发生改变,建议安装cinder之前再次检查盘符)
3、执行安装
# cd&& &~/kilo_install-V1.0
# bash main.sh
然后依次输入安装数字1-8,0是退出。
输入数字1config Basic environment.
当出现下列回显表示安装配置成功
注意:安装config Basic environment需要手动输入主机名,默认为controller,安装完成后会系统自动重启一次
重启后用root重新登录
# cd&& &~/kilo_install-V1.0
# bash main.sh
输入数字2install mariadb and rabbitmq-server
输入数字 3& &install keystone.
输入数字4&install glance..
输入数字5&install nova
输入数字6&install cinder
输入数字7进入installneutron安装,如果系统只有一块网卡请选择1,有两块网卡请选择2。输入0退出。
输入数字7install dashboard
输入0退出脚本
四、登录openstack及创建虚拟机
1、Dashboard安装成功后在浏览器中输出
登录用户名及密码
admin/Changeme_123
demo/Changeme_123
2、创建虚拟机
点击computer– instance-launch instance创建虚拟机
大概几分钟虚拟机即可创建成功
3、分配浮动IP
点击associatefloating ip 给虚拟机分配IP
点击+号分配IP—associate
1、脚本必须用root执行,否则自动退出
2、脚本日志在/var/log/openstack-kilo,如果报错,打开日志最下面找到红色的一行,检查环境问题。
3、执行脚本时绿色回显表示执行命令成功。
4、其他密码
数据库密码root/Changeme_123
Keystone glance nova neutron cinder 用户密码Changeme_123
5、安装请按数字1-8依次安装。
6、脚本报错后执行再次执行,自动识别已经安装的步骤。
7、该脚本支持物理机也支持虚拟机。
&8、续:新增部署分布式集群脚本,详情请参见:《》http://blog.csdn.net/wylfengyujiancheng/article/details/
&软件包下载路径:
链接:/s/1pJMlJh5 密码:uzsd
或者:/s/1i4rIOZj
该脚本是本人利用大约一周的下班时间用shell写的。支持虚拟机和物理机。如果大家在安装部署的过程中有任何问题,请和我联系,记得将/var/log目录打包发给我哦,欢迎提bug。
邮箱: 微信:A
脚本解压密码:wuyeliang
操作系统:CentOS-7.0--DVD.iso
openstack安装rpm包:openstack_kilo_centos7.tar.gz
安装脚本:kilo_install-V1.0.zip
安装视频:20分钟自动安装kilo版本openstack开发环境.MP4
安装指导书:自动安装openstack-kilo指导.docx
wylfengyujiancheng
排名:第15612名
(41)(9)(1)(2)(0)(0)博客访问: 78334
博文数量: 35
博客积分: 1646
博客等级: 上尉
技术积分: 415
注册时间:
APP发帖 享双倍积分
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: 云计算
原文链接:
OpenStack基本安装
本文档旨在帮助那些想要在Ubuntu 12.04 LTS(使用Ubuntu Cloud Archive)上部署OpenStack Folsom用于开发目的的人。我们将安装三个节点:一个控制器节点,一个网络节点和一个计算节点。当然,你可以根据需要安装更多的节点。对于那些想要安装测试基础设施的OpenStack新手来说,本文档是个好起点。
标准Quantum部署包括多达4个不同的物理数据中心网络:
?&& 管理网络。用于OpenStack组件之间的内部通信。网络的IP地址只应该在数据中心内部可达。
?&& 数据网络。用于在云部署内部虚拟机之间数据通信。网络的IP地址的编址需求依赖于使用的Quantum插件。
?&& 外部网络。某些场景下,用于提供虚拟机的Internet访问。网络的IP地址应该对Internet上的任何主机可达。
?&& API网络:暴露所有的OpenStack
APIs给租户,包括Quantum API。网络的IP地址应该对Internet的所有主机可达。这可能和外部网络是同一个网络,因为可以为外部网络创建一个Quantum子网,通过IP分配范围只使用整个IP块全部地址范围的一部分IP地址。
至少需要三台机器(虚拟或物理)并安装了Ubuntu 12.04(LTS)。
表1.1.架构和节点信息
folsom-controller
folsom-network
folsom-compute
MySQL, RabbitMQ, Nova, Cinder, Glance, Keystone, Quantum
Quantum-L3-agent, Quantum-DHCP-agent, Quantum Agent with Open-vSwitch
nova-compute, KVM, nova-api, Quantum Agent with Open-vSwitch
最小磁盘数
外部+API网络
7.7.7.7/24
7.7.7.8/24
192.168.0.1/24
192.168.0.2/24
192.168.0.3/24
10.10.10.1/24
10.10.10.2/24
控制器节点将提供:
?&& 数据库(包括MySQL)
?&& 队列(包括RabbitMQ)
?&& KeyStone
?&& Glance
?&& Nova(不包括nova-compute)
?&& Cinder
?&& Quantum服务器(包括Open-vSwitch插件)
?&& Dashboard(包括Horizon)
1.&&&&&& 安装Ubuntu,安装时设置如下参数:
?&& 时区:UTC
?&& 主机名:contoller
?&& 软件包:OpenSSH-Server
操作系统安装完成后,重启服务器。
2.&&&&&& 由于Ubuntu 12.04 LTS默认包含OpenStack Essex,我们将使用Ubuntu Cloud Archive获取Folsom:
install ubuntu-cloud-keyring
编辑/etc/apt/sources.list.d/cloud-archive.list:
deb http://ubuntu-cloud./ubuntu precise-updates/folsom main
升级系统(需要的话重启):
apt-get update && apt-get upgrade
3.&&&&&& 配置网络:
?&& 编辑/etc/network/interfaces文件:
# Management Network
&&& iface eth0 inet static
&&& address 192.168.0.1
&&& netmask 255.255.255.0
# API + Public Network
&&& auto eth1
&&& iface eth1 inet static
&&& address 7.7.7.7
&&& netmask 255.255.255.0
&&& gateway 7.7.7.1
&&& dns-nameservers 8.8.8.8
?&& 编辑/etc/sysctl.conf
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0&
然后重启网络服务:
service networking restart
?&& 编辑/etc/hosts文件,添加主机名controller,
network和compute1及相应IP。
127.0.0.1&&&&&& localhost
127.0.1.1&&&&&& controller
192.168.0.1&&&& controller
192.168.0.2&&&& network
192.168.0.3&&&& compute
4.&&&&&& 安装配置NTP
?&& 安装软件包:
apt-get install -y ntp
?&& 配置/etc/ntp.conf文件:
server 127.127.1.0
fudge 127.127.1.0 stratum 10
?&& 重启服务:
service ntp restart
MySQL数据库服务
1.&&&&&& 安装软件包:
apt-get install mysql-server python-mysqldb
2.&&&&&& 允许从网络连接数据库:
sed -i 's/127.0.0.1/0.0.0.0/g' /etc/f
3.&&&&&& 重启服务:
service mysql restart
4.&&&&&& 创建数据库,用户和权限:
mysql -u root -ppassword <<EOF
CREATE DATABASE
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' \
IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'192.168.0.1' \
IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'192.168.0.2' \
IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'192.168.0.3' \
IDENTIFIED BY 'password';
CREATE DATABASE
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
IDENTIFIED BY 'password';
CREATE DATABASE
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \
IDENTIFIED BY 'password';
CREATE DATABASE
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
IDENTIFIED BY 'password';
CREATE DATABASE
GRANT ALL PRIVILEGES ON quantum.* TO 'quantum'@'localhost' \
IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON quantum.* TO 'quantum'@'192.168.0.2' \
IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON quantum.* TO 'quantum'@'192.168.0.3' \
IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
RabbitMQ消息服务
1.&&&&&& 安装软件包:
apt-get install rabbitmq-server
2.&&&&&& 修改默认口令:
rabbitmqctl change_password guest password
1.&&&&&& 安装软件包:
apt-get install keystone python-keystone python-keystoneclient
2.&&&&&& 编辑/etc/keystone/keystone.conf:
admin_token = password
bind_host = 0.0.0.0
public_port = 5000
admin_port = 35357
compute_port = 8774
verbose = True
debug = True
log_file = keystone.log
log_dir = /var/log/keystone
log_config = /etc/keystone/logging.conf
connection = mysql://keystone:password@localhost:3306/keystone
idle_timeout = 200
[identity]
driver = keystone.identity.backends.sql.Identity
driver = keystone.catalog.backends.sql.Catalog
3.&&&&&& 重启Keystone并在数据库创建表:
service keystone restart
keystone-manage db_sync
4.&&&&&& 加载环境变量:
?&& 创建novarc文件:
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=password
export OS_AUTH_URL="http://localhost:/"
export SERVICE_ENDPOINT="http://localhost:3"
export SERVICE_TOKEN=password
?&& 导出环境变量:
source novarc
echo "source novarc">>.bashrc
5.&&&&&& 下载数据脚本,并用数据(用户、租户、服务)填充Keystone数据库:
./keystone-data.sh
6.&&&&&& 下载endpoint脚本,并创建endpoints(为项目):
./keystone-endpoints.sh
如果管理器节点上的管理网络的IP地址与此例不同,请使用如下命令:
./keystone-endpoints.sh -K
1.&&&&&& 安装软件包:
apt-get install glance glance-api glance-registry python-glanceclient glance-common
2.&&&&&& 配置Glance:
?&& 编辑/etc/glance/glance-api.conf和/etc/glance/glance-registry.conf文件并修改:
sql_connection = mysql://glance:password@localhost/glance
admin_tenant_name = service
admin_user = glance
admin_password = password
对glance-api.conf,修改:
notifier_strategy = rabbit
rabbit_password = password
?&& 重启Glance服务:
service glance-api restart && service glance-registry restart
?&& 在数据库中创建Glance数据表:
glance-manage db_sync
?&& 下载并导入Ubuntu
12.04 LTS UEC镜像:
glance image-create \
&&& --location http://uec-/releases/12.04/release/ubuntu-12.04-server-cloudimg-amd64-disk1.img \
&&& --is-public true --disk-format qcow2 --container-format bare --name "Ubuntu"
?&& 检查镜像是否已在索引中引入:
glance image-list
+--------------------------------------+--------+-------------+------------------+-----------+--------+
| ID&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& | Name&& | Disk Format | Container Format | Size&&&&& | Status |
+--------------------------------------+--------+-------------+------------------+-----------+--------+
| 0d2664d3-cda9--909ecf8ea362 | Ubuntu | qcow2&&&&&& | bare&&&&&&&&&&&& |
| active |
+--------------------------------------+--------+-------------+------------------+-----------+--------+
?&& 你还可以安装Glance
Replicator(Folsom新引入)。更多信息在此。
1.&&&&&& 安装软件包:
apt-get install nova-api nova-cert nova-common \
&&& nova-scheduler python-nova python-novaclient nova-consoleauth novnc \
&&& nova-novncproxy
2.&&&&&& 配置Nova:
?&& 编辑/etc/nova/api-paste.ini文件并修改:
admin_tenant_name = service
admin_user = nova
admin_password = password
由于我们将使用Cinder进行存储,因此我们还应该删除与”nova-volume”有关的部分:
============================================================
[composite:osapi_volume]
use = call:nova.api.openstack.urlmap:urlmap_factory
/: osvolumeversions
/v1: openstack_volume_api_v1
============================================================
============================================================
[composite:openstack_volume_api_v1]
use = call:nova.api.auth:pipeline_factory
noauth = faultwrap sizelimit noauth ratelimit osapi_volume_app_v1
keystone = faultwrap sizelimit authtoken keystonecontext ratelimit osapi_volume_app_v1
keystone_nolimit = faultwrap sizelimit authtoken keystonecontext osapi_volume_app_v1
============================================================
============================================================
[app:osapi_volume_app_v1]
paste.app_factory = nova.api.openstack.volume:APIRouter.factory
============================================================
============================================================
[pipeline:osvolumeversions]
pipeline = faultwrap osvolumeversionapp
[app:osvolumeversionapp]
paste.app_factory = nova.api.openstack.volume.versions:Versions.factory
============================================================
?&& 编辑/etc/nova/nova.conf文件并修改:
# MySQL Connection #
sql_connection=mysql://nova:password@192.168.0.1/nova
# nova-scheduler #
rabbit_password=password
scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler
# nova-api #
cc_host=192.168.0.1
auth_strategy=keystone
s3_host=192.168.0.1
ec2_host=192.168.0.1
nova_url=http://192.168.0.1:/
ec2_url=http://192.168.0.1:8773/services/Cloud
keystone_ec2_url=http://192.168.0.1:/ec2tokens
api_paste_config=/etc/nova/api-paste.ini
allow_admin_api=true
use_deprecated_auth=false
ec2_private_dns_show_ip=True
dmz_cidr=169.254.169.254/32
ec2_dmz_host=192.168.0.1
metadata_host=192.168.0.1
metadata_listen=0.0.0.0
enabled_apis=ec2,osapi_compute,metadata
# Networking #
network_api_class=nova.network.quantumv2.api.API
quantum_url=http://192.168.0.1:9696
quantum_auth_strategy=keystone
quantum_admin_tenant_name=service
quantum_admin_username=quantum
quantum_admin_password=password
quantum_admin_auth_url=http://192.168.0.1:3
libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver
linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver&
firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver
# Cinder #
volume_api_class=nova.volume.cinder.API
# Glance #
glance_api_servers=192.168.0.1:9292
image_service=nova.image.glance.GlanceImageService
novnc_enable=true
novncproxy_base_url=http://7.7.7.7:6080/vnc_auto.html
vncserver_proxyclient_address=192.168.0.1
vncserver_listen=0.0.0.0
logdir=/var/log/nova
state_path=/var/lib/nova
lock_path=/var/lock/nova
root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf
verbose=true
?&& 在数据库中创建Nova数据表:
nova-manage db sync
?&& 重启Nova服务:
service nova-api restart
service nova-cert restart
service nova-consoleauth restart
service nova-scheduler restart
service nova-novncproxy restart
1.&&&&&& 安装软件包:
apt-get install -y cinder-api cinder-scheduler cinder-volume iscsitarget \
&&& open-iscsi iscsitarget-dkms python-cinderclient linux-headers-`uname -r`
2.&&&&&& 配置并启动iSCSI服务:
sed -i 's/false/true/g' /etc/default/iscsitarget
service iscsitarget start
service open-iscsi start
3.&&&&&& 配置Cinder
?&& 编辑/etc/cinder/cinder.conf文件并修改:
sql_connection = mysql://cinder:password@localhost:3306/cinder
rabbit_password = password
?&& 编辑/etc/cinder/api-paste.ini文件并修改:
admin_tenant_name = service
admin_user = cinder
admin_password = password
?&& 创建卷(在第二块磁盘上):
fdisk /dev/sdb
[Create a Linux partition]
pvcreate /dev/sdb1
vgcreate cinder-volumes /dev/sdb1
?&& 在数据库中创建Cinder表:
cinder-manage db sync
?&& 重启服务:
service cinder-api restart
service cinder-scheduler restart
service cinder-volume restart
1.&&&&&& 安装软件包:
apt-get install quantum-server
2.&&&&&& 配置Quantum服务:
?&& 编辑/etc/quantum/quantum.conf文件并修改:
core_plugin = \
&&& quantum.plugins.openvswitch.ovs_quantum_plugin.OVSQuantumPluginV2
auth_strategy = keystone
fake_rabbit = False
rabbit_password = password
?&& 编辑/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini文件并修改:
[DATABASE]
sql_connection = mysql://quantum:password@localhost:3306/quantum
tenant_network_type = gre
tunnel_id_ranges = 1:1000
enable_tunneling = True
注意:选择使用tunnel模式更方便,因为不用为VLANs配置物理路由器。
?&& 编辑/etc/quantum/api-paste.ini文件并修改:
admin_tenant_name = service
admin_user = quantum
admin_password = password
3.&&&&&& 启动服务:
service quantum-server restart
Dashboard(Horizon)
安装软件包:
apt-get install apache2 libapache2-mod-wsgi openstack-dashboard \
&&& memcached python-memcache
OpenStack Dashboard现在可以通过访问。我们可以通过admin/password或demo/password登录。
网络节点将提供:
?&& 支持隧道的Virtual
Bridging(Open-vSwitch + Quantum Agent)
?&& DHCP Server(Quantum DHCP Agent)
?&& Virtual Routing(Quantum L3 Agent)
1.&&&&&& 安装Ubuntu,安装时设置如下参数:
?&& 时区:UTC
?&& 主机名:folsom-network
?&& 软件包:OpenSSH-Server
操作系统安装完成后,重启服务器。
2.&&&&&& 由于Ubuntu 12.04 LTS默认包含OpenStack Essex,我们将使用Ubuntu Cloud Archive获取Folsom:
install ubuntu-cloud-keyring
编辑/etc/apt/sources.list.d/cloud-archive.list:
deb http://ubuntu-cloud./ubuntu precise-updates/folsom main
升级系统(需要的话重启):
apt-get update && apt-get upgrade
3.&&&&&& 配置网络:
?&& 编辑/etc/network/interfaces文件:
# Management Network
&&& iface eth0 inet static
&&& address 192.168.0.2
&&& netmask 255.255.255.0
&&& gateway 192.168.0.254
&&& dns-nameservers 8.8.8.8
# Data Network
&&& auto eth1
&&& iface eth1 inet static
&&& address 10.10.10.1
&&& netmask 255.255.255.0
# Public Bridge
&&& auto eth2
&&& iface eth2 inet manual
&&& up ifconfig $IFACE 0.0.0.0 up
&&& up ip link set $IFACE promisc on
&&&&down ifconfig $IFACE down
?&& 编辑/etc/sysctl.conf
net.ipv4.ip_forward=1
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0&
然后重启网络服务:
service networking restart
?&& 编辑/etc/hosts文件,添加主机名controller,
network和compute1及相应IP。
4.&&&&&& 安装配置NTP
安装软件包:
apt-get install -y ntp
配置/etc/ntp.conf文件:
server 192.168.0.1
重启服务:
service ntp restart
Open-vSwitch
1.&&&&&& 安装软件包:
apt-get install quantum-plugin-openvswitch-agent \
quantum-dhcp-agent quantum-l3-agent
2.&&&&&& 启动Open vSwitch:
service openvswitch-switch start
3.&&&&&& 创建Virtual Bridging:
ovs-vsctl add-br br-int
ovs-vsctl add-br br-ex
ovs-vsctl add-port br-ex eth2
ip link set up br-ex
配置Quantum服务:
?&& 编辑/etc/quantum/l3_agent.ini文件并修改:
auth_url = http://192.168.0.1:3
admin_tenant_name = service
admin_user = quantum
admin_password = password
metadata_ip = 192.168.0.1
use_namespaces = False
?&& 编辑/etc/quantum/api-paste.ini文件并修改:
auth_host = 192.168.0.1
admin_tenant_name = service
admin_user = quantum
admin_password = password
?&& 编辑/etc/quantum/quantum.conf文件并修改:
core_plugin = \
&&& quantum.plugins.openvswitch.ovs_quantum_plugin.OVSQuantumPluginV2
auth_strategy = keystone
fake_rabbit = False
rabbit_host = 192.168.0.1
rabbit_password = password
?&& 编辑/etc/quantum/openvswitch/ovs_quantum_plugin.ini文件并修改:
[DATABASE]
sql_connection = mysql://quantum:password@192.168.0.1:3306/quantum
tenant_network_type = gre
tunnel_id_ranges = 1:1000
enable_tunneling = True
integration_bridge = br-int
tunnel_bridge = br-tun
local_ip = 10.10.10.1
?&& 编辑/etc/quantum/dhcp_agent.ini文件并添加:
use_namespaces = False
?&& 启动服务:
service quantum-plugin-openvswitch-agent start
service quantum-dhcp-agent restart
service quantum-l3-agent restart
创建虚拟网络
1.&&&&&& 加载环境变量:
?&& 创建novarc文件:
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=password
export OS_AUTH_URL="http://192.168.0.1:/"
export SERVICE_ENDPOINT="http://192.168.0.1:3"
export SERVICE_TOKEN=password
?&& 导出变量:
source novarc
echo "source novarc">>.bashrc
2.&&&&&& 下载Quantum脚本。我们使用用例“Provider Router with Private Networks”。
3.&&&&&& 按照你的网络编辑该脚本(公有网络,浮动IP)。
4.&&&&&& 执行脚本。
?&& 拷贝外部网络ID
quantum net-list
?&& 编辑/etc/quantum/l3_agent.ini,并粘贴该ID:
gateway_external_network_id = ID
?&& 复制提供商路由器ID
quantum router-list
?&& 编辑/etc/quantum/l3_agent.ini,并粘帖该ID:
router_id = ID
?&& 重启L3代理:
service quantum-l3-agent restart
计算节点将提供:
?&& Hypervisor(KVM)
?&& Nova-compute
?&& Quantum OVS Agent
1.&&&&&& 安装Ubuntu,安装时设置如下参数:
?&& 时区:UTC
?&& 主机名:folsom-network
?&& 软件包:OpenSSH-Server
操作系统安装完成后,重启服务器。
2.&&&&&& 由于Ubuntu 12.04 LTS默认包含OpenStack Essex,我们将使用Ubuntu Cloud Archive获取Folsom:
install ubuntu-cloud-keyring
编辑/etc/apt/sources.list.d/cloud-archive.list:
deb http://ubuntu-cloud./ubuntu precise-updates/folsom main
升级系统(需要的话重启):
apt-get update && apt-get upgrade
3.&&&&&& 配置网络:
?&& 编辑/etc/network/interfaces文件:
# Management Network
&&& iface eth0 inet static
&&& address 192.168.0.3
&&& netmask 255.255.255.0
&&& gateway 192.168.0.254
&&& dns-nameservers 8.8.8.8
# Data Network
&&& iface eth1 inet static
&&& address 10.10.10.2
&&& netmask 255.255.255.0
?&& 编辑/etc/sysctl.conf
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0&
然后重启网络服务:
service networking restart
?&& 编辑/etc/hosts文件,添加主机名controller,
network和compute1及相应IP。
4.&&&&&& 安装配置NTP
安装软件包:
apt-get install -y ntp
配置/etc/ntp.conf文件:
server 192.168.0.1
重启服务:
service ntp restart
Hypervisor
1.&&&&&& 安装我们需要的软件包:
apt-get install -y kvm libvirt-bin pm-utils
2.&&&&&& 配置libvirt:
?&& 编辑/etc/libvirt/qemu.conf文件并添加:
cgroup_device_acl = [
&&& "/dev/null", "/dev/full", "/dev/zero",
&&& "/dev/random", "/dev/urandom",
&&& "/dev/ptmx", "/dev/kvm", "/dev/kqemu",
&&& "/dev/rtc", "/dev/hpet", "/dev/net/tun"]
?&& 关闭KVM default
virtual bridge以避免混淆:
virsh net-destroy default
virsh net-undefine default
?&& 允许Live
Migrations:
编辑/etc/libvirt/libvirtd.conf文件:
listen_tls = 0
listen_tcp = 1
auth_tcp = "none"
在/etc/init/libvirt-bin.conf文件中修改libvirtd_opts变量:
env libvirtd_opts="-d -l"
编辑/etc/default/libvirt-bin文件:
libvirtd_opts="-d -l"
3.&&&&&& 重启libvirt:
service libvirt-bin restart
1.&&&&&& 安装软件包:
apt-get install nova-compute-kvm
2.&&&&&& 配置Nova:
?&& 编辑/etc/nova/api-paste.ini文件并修改:
auth_host = 192.168.0.1
admin_tenant_name = service
admin_user = nova
admin_password = password
?&& 编辑/etc/nova/nova-compute.conf文件并修改:
libvirt_type=kvm
libvirt_ovs_bridge=br-int
libvirt_vif_type=ethernet
libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver
libvirt_use_virtio_for_bridges=True
?&& 编辑/etc/nova/nova.conf并修改:
# MySQL Connection #
sql_connection=mysql://nova:password@192.168.0.1/nova
# nova-scheduler #
rabbit_host=192.168.0.1
rabbit_password=password
scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler
# nova-api #
cc_host=192.168.0.1
auth_strategy=keystone
s3_host=192.168.0.1
ec2_host=192.168.0.1
nova_url=http://192.168.0.1:/
ec2_url=http://192.168.0.1:8773/services/Cloud
keystone_ec2_url=http://192.168.0.1:/ec2tokens
api_paste_config=/etc/nova/api-paste.ini
allow_admin_api=true
use_deprecated_auth=false
ec2_private_dns_show_ip=True
dmz_cidr=169.254.169.254/32
ec2_dmz_host=192.168.0.1
metadata_host=192.168.0.1
metadata_listen=0.0.0.0
enabled_apis=metadata
# Networking #
network_api_class=nova.network.quantumv2.api.API
quantum_url=http://192.168.0.1:9696
quantum_auth_strategy=keystone
quantum_admin_tenant_name=service
quantum_admin_username=quantum
quantum_admin_password=password
quantum_admin_auth_url=http://192.168.0.1:3
libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver
linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver
firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver
# Compute #
compute_driver=libvirt.LibvirtDriver
connection_type=libvirt
# Cinder #
volume_api_class=nova.volume.cinder.API
# Glance #
glance_api_servers=192.168.0.1:9292
image_service=nova.image.glance.GlanceImageService
novnc_enable=true
novncproxy_base_url=http://7.7.7.7:6080/vnc_auto.html
vncserver_proxyclient_address=192.168.0.3
vncserver_listen=0.0.0.0
logdir=/var/log/nova
state_path=/var/lib/nova
lock_path=/var/lock/nova
root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf
verbose=true
?&& 重启Nova服务:
service nova-compute restart
Open vSwitch
1.&&&&&& 安装软件包:
apt-get install -y openvswitch-switch
2.&&&&&& 启动Open vSwitch服务:
service openvswitch-switch start
3.&&&&&& 配置虚拟网桥:
ovs-vsctl add-br br-int
1.&&&&&& 安装软件包:
apt-get install -y quantum-plugin-openvswitch-agent
2.&&&&&& 编辑/etc/quantum/quantum.conf文件并修改:
core_plugin = \
&&& quantum.plugins.openvswitch.ovs_quantum_plugin.OVSQuantumPluginV2
auth_strategy = keystone
fake_rabbit = False
rabbit_host = 192.168.0.1
rabbit_password = password
3.&&&&&& 编辑/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini文件并修改:
[DATABASE]
sql_connection = mysql://quantum:password@192.168.0.1:3306/quantum
tenant_network_type = gre
tunnel_id_ranges = 1:1000
integration_bridge = br-int
tunnel_bridge = br-tun
local_ip = 10.10.10.2
enable_tunneling = True
4.&&&&&& 启动Agent:
service quantum-plugin-openvswitch-agent restart
创建第一个虚拟机
1.&&&&&& 现在你可以使用OpenStack API或Dashboard通过demo/password来管理你自己的IaaS:。
2.&&&&&& 修改安全组”Default”以允许ICMP和SSH。
3.&&&&&& 创建个人的keypair。
4.&&&&&& 在Dashboard中,去”Instances”点击“Launch Instance”生成一个新的虚拟机。
5.&&&&&& 由于Horizon在Folsom发布中不管理L3,因此我们需要从Quantum CLI(使用默认demo租户)配置浮动IP。为了做这一步,你需要得到ext_net ID和虚拟机的port_id:
quantum net-list -- --router:external True
quantum port-list -- --device_id
6.&&&&&& 现在,我们将创建一个绑定到我们虚拟机的虚端口的浮动IP,并路由到外部网络:
quantum floatingip-create --port_id
7.&&&&&& 就是这样了。你应该能够通过浮动IP ping通你的虚拟机。
我们已经为高级测试创建了基本架构。这种架构和生产环境类似,但没有高可用(HA)和一些服务,如运行OpenStack Object Storage。你当然可以按照需要添加更多的计算节点。如果你需要更多的帮助,请阅读每个项目的官方文档或往OpenStack邮件列表中发邮件。
阅读(5391) | 评论(0) | 转发(1) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。

我要回帖

更多关于 openstack 复杂 的文章

 

随机推荐