北京时间4月8日,OpenStack社区如期发布了OpenStack的第13个版本——Mitaka,新版本更多聚焦于可管理性、可扩展性和终端用户体验方面。OpenStack作为一个IaaS基础设施架构的集大成者,通过支持、集成众多插件的方式,向用户提供更多可选择的功能和需求,比如SDN、NFV、Container等。OpenStack已经成为众多企业和服务器提供商的云平台选择之一。
由于,笔者更多从事的是OpenStack研发测试体系相关的CI-CT-CD工作。因此,在笔者看来,OpenStack另一个非常成功的一方面是其面向所有人的参与、贡献和交流等平台。为了协调这些,OpenStack社区构建和维护了一套非常完整的研发测试系统。这些基础设施,无疑是奠定OpenStack取得成功的重要基石之一。
鉴于,OpenStack的开发和体验,一般是使用Devstack的方式自动化部署。因此,这里基于自己的实践过程,总结出一份本日Release的Mitaka完整安装过程。
与其他资料所不同的是,本次安装较详细的给出了安装后的相关网络配置,相信能给初学或体验者带来更好的体验。
一.环境
环境:
列表内容
一台CentOS 7.2 VM;
一张NAT网卡;
内存4G;
ip地址10.10.10.129;
二.部署
1、关闭iptables防火墙和selinux
# vim /etc/selinux/config
#SELINUX=enforcing //注释掉
SELINUX=disabled //增加
# yum -y install iptables-services
# systemctl disable iptables
# reboot
2、安装epel源和git
# yum -y install epel-release git
# yum -y install net-tools
3、准备Devstack
下载代码:
# cd /home
# git clone https://github.com/openstack-dev/devstack.git -b stable/mitaka //指定clone mitaka版本
4、需要创建stack用户运行
# cd /home/devstack/tools/
# bash ./create-stack-user.sh
5、修改devstack目录权限,让stack用户可以运行
# chown -R stack:stack /home/devstack
# chmod 777 /opt/stack -R
6、切换到stack用户下
# su stack
$ cd /home/devstack
7、编辑创建localrc文件,添加以下内容:
# Misc
ADMIN_PASSWORD=admin
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
SERVICE_TOKEN=$ADMIN_PASSWORD
# Target Path
DEST=/opt/stack
# Enable Logging
LOGFILE=$DEST/logs/stack.sh.log
VERBOSE=True
LOG_COLOR=True
SCREEN_LOGDIR=$DEST/logs
KEYSTONE_TOKEN_FORMAT=UUID
# Nova
enable_service n-novnc n-cauth
# Neutron
disable_service n-net
ENABLED_SERVICES+=,q-svc,q-agt,q-dhcp,q-l3,q-meta,neutron
ENABLED_SERVICES+=,q-lbaas,q-vpn,q-fwaas
# Swift
#enable_service s-proxy s-object s-container s-accounts
#SWIFT_HASH=66a3d6b56c1f479c8b4e70ab5c2000f5
# Cinder
VOLUME_GROUP="cinder-volumes"
ENABLED_SERVICES+=,cinder,c-api,c-vol,c-sch,c-bak
# Ceilometer
#enable_service ceilometer-acompute ceilometer-acentral ceilometer-anotification ceilometer-collector ceilometer-api
#enable_service ceilometer-alarm-notifier ceilometer-alarm-evaluator
# Heat
enable_service heat h-api h-api-cfn h-api-cw h-eng
enable_service tempest
# Trove
enable_service trove tr-api tr-tmgr tr-cond
# Sahara
enable_service sahara
# Murano
enable_plugin murano git://git.openstack.org/openstack/murano
enable_service murano-cfapi
enable_service g-glare
MURANO_APPS=io.murano.apps.apache.Tomcat,io.murano.apps.Guacamole
enable_service murano murano-api murano-engine
HOST_IP=10.10.10.129 //本机IP地址
FIXED_RANGE=10.0.0.0/24 //私有IP网段
NETWORK_GATEWAY=10.0.0.1 //私有网段网关
注意:若需要安装其他服务,请参考其他资料。
8、运行Devstack,执行安装
$ ./stack.sh
注意:使用的是stack用户运行。
9、默认Devstack创建 admin和demo两个用户,通过设置环境变量可以进行相关操作。进入到/home/devstack目录下。
admin 用户:
$ source openrc admin admin
demo 用户:
$ source openrc demo demo
10、其他
安装失败时,可以再次执行安装命令。
$ ./unstack.sh && ./stack.sh
11、配置网络
由于在Devstac安装过程中,将br-ex的地址设置成了其他ip,因此需要将br-ex地址清除掉,重新配置。
$ sudo ip addr flush br-ex
或者
$ sudo ovs-vsctl del-br be-ex
之后将物理网卡eno16777736(即eth0)作为br-ex的port,之后创建的虚拟机就可以通过eth0访问网络,也能登陆Dashboard了,Host也可以通过floating ip访问虚拟机。
这里,我给出自己的配置内容
# cat ifcfg-eno16777736
TYPE=OVSPort
DEVICE=eno16777736
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
ONBOOT=yes
# cat ifcfg-br-ex
TYPE=OVSBridge
DEVICE=br-ex
DEVICETYPE=ovs
BOOTPROTO=static
IPADDR=10.0.0.9
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
# ovs-vsctl add-port br-ex eno16777736 ;systemctl restart network
PS:因为,一般VM是通过br-ex外部网桥的ip出外网的,所以,必须保证能ping通。
关闭Selinux、iptables;
如果部署的是GRE、VXLAN网络,使用ip a命令,查看br-ex的ip地址,是否能ping通;
使用ovs-vsctl show命令,查看网桥br-ex的设置情况。这里的eno16777736是我的实际网卡,即eth0,如下图所示:
3)ip a查看br-ex ip地址
# ip a | grep br-ex
14:br-ex:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
inet 10.10.10.129/24 brd 10.10.10.255 scope global br-ex
最后,我们使用这个ip地址登陆Dashboard!
三.Horizon有哪些变化
1.登录Dashboard
用户名:admin
密码:admin
2. Horizon有哪些变化
1)Keystone——身份管理变化
Mitaka版本界面中,新增加了组、域和角色的操作功能。原来只能通过命令行操作的,现在也能通过界面来实现了。
组:就是把用户放在一个组里,一个用户可以属于多个组,这样可以方便进行权限管理。
角色:也就是给创建项目的用户,分配member、admin的roles。
域:将用户和其他组使用的基础设施相隔离,具体管理的有组和组下的用户。
如下图所示
2)Cinder——云硬盘一致性组
3)Horizon——添加开发者(Bootstrap主题)面板
Mitaka版本新增加的Bootstrap主题预览面板功能,可以让用户在Default和Bootstrap两种主题中自由切换,并且可以在Bootstrap主题中进行自由配置。
4)Nova——主机集合