Openstack平台搭建之第三天


Author :xxbAndy

If you have any question ,please contact me by weichuangxxb@sina.cn or 371990778(qq)

注意:主控节点为server10.example.com; 新增nova节点为desktop10.example.com

在实验环境中已经对各个主机做了DNS解析

1.管理neutron节点服务,为nova-compute节点进行配置网络服务

[root@server10 ~]# source /root/keystonrc_admin
[root@server10 ~(keystone_admin)]# vim /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini
tenant_network_type = vlan                                    tenant类型    
network_vlan_ranges = physnet1:1:100                   vlan地址池
bridge_mappings = physnet1:br-eth1                     桥接口创建相应的接口:
[root@server10 ~(keystone_admin)]#ovs-vsctl add-br br-eth1
[root@server10 ~(keystone_admin)]#ovs-vsctl add-port br-eth1 eth1
[root@server10 ~(keystone_admin)]#ovs-vsctl show重启所有neutron启动相关的服务(condrestart),并进行日志查看(因为在搭建过程中任何一处的小错误将会影响整个平台搭建)
[root@server10 ~(keystone_admin)]#for i in /etc/init.d/neutron-*;do $i condrestart;done
[root@server10 ~(keystone_admin)]#grep ERROR /var/log/neutron/openvswitch-agent.log查看本机启动服务:
[root@server10 ~(keystone_admin)]#nova-manage servece list                只显示当前一个主机的节点enable(因为我们是all in one,即所有服务在一台主机上部署的)

2.添加nova节点,并且配置相同的nova-compute服务

新增一台主机,内存硬盘可以根据自己的实际需求进行扩展(nova-compute节点主要是运行云主机以及相关服务的,所以你就想着看多少比较适合你的环境了。因为是在试验环境下,我们将宿主机资源共享给nova-compute)

不过值得注意的是,我们需要将nova-compute节点的IP设置为静态。

nova-compute新增节点配置:

#yum update -y ;reboot
#yum install openstack-nova-compute -y 由于在server10.example.com主机上我们已经正确配置过nova-compute以及neutron,因此,在新增的nova节点上,我们将完全拷贝配置文件,最后进行适当的微调。
[root@server10 nova(keystone_admin)]# scp /etc/nova/nova.conf 192.168.0.10:/etc/nova/
[root@desktop10 nova]# vim /etc/nova/nova.conf 
my_ip=192.168.0.10
vncserver_listen=192.168.0.10
vncserver_proxyclient_address=192.168.0.10
libvirt_type=kvm                                      (记住,因为是在加的真机使用KVM,虚拟机用qemu)

必须注意与mysql的链接啊
connection=mysql://nova:westos@192.168.0.110/nova            使用nova用户westos密码登录nova库(默认拷贝过来是链接localhost的)                       [root@desktop10 nova]# /etc/init.d/openstack-nova-compute start 
[root@desktop10 nova]# /etc/init.d/libvirtd start 
  注意:其实在环境中应该启动libvirtd服务哦!
[root@desktop10 nova]# chkconfig openstack-nova-compute on
[root@desktop10 nova]# chkconfig  libvirtd on
[root@desktop10 nova]# nova-manage service list
Binary           Host                                 Zone             Status     State Updated_At
nova-conductor   server10.example.com                 internal         enabled    :-)   2014-08-03 03:42:26
nova-compute     server10.example.com                 nova             enabled    :-)   2014-08-03 03:42:26
nova-consoleauth server10.example.com                 internal         enabled    :-)   2014-08-03 03:42:25
nova-scheduler   server10.example.com                 internal         enabled    :-)   2014-08-03 03:42:25
nova-compute     desktop10.example.com                nova             enabled    :-)   2014-08-03 03:42:31由输出我们可知:新增了一个nova-compute节点,desktop10.example.com
同时为了便于我们区分之后的云主机是在哪个节点启动的,我们将server10的nova-compute先disable。
[root@desktop10 nova]# nova-manage service disable --host server10.example.com --service nova-compute

此时,整个环境中将只有一个nova-compute节点,也就是说最终的云主机是在desktop10主机上启动消耗的是desktop10的硬件资源。



3.为nova-compute节点配置neutron网络服务

[root@desktop10 nova]# yum install openstack-neutron-openvswitch -y 
[root@desktop10 neutron]# scp 192.168.0.110:/etc/neutron/neutron.conf /etc/neutron/[root@desktop10 neutron]# scp 192.168.0.110:/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini  /etc/neutron/plugins/openvswitch/
[root@desktop10 neutron]# /etc/init.d/openvswitch start
[root@desktop10 neutron]# chkconfig openvswitch on[root@desktop10 neutron]# ovs-vsctl add-br br-int                    创建一个虚拟桥接口br-int
[root@desktop10 neutron]# ovs-vsctl add-br br-eth1                 
[root@desktop10 neutron]# ovs-vsctl add-port br-eth1 br101    本机br101桥接到br-eth1上[root@desktop10 neutron]# /etc/init.d/neutron-openvswitch-agent start
Starting neutron-openvswitch-agent:                        [  OK  ]
[root@desktop10 neutron]# chkconfig neutron-openvswitch-agent on
[root@desktop10 neutron]# chkconfig neutron-ovs-cleanup on
[root@desktop10 neutron]# tail -f /var/log/neutron/openvswitch-agent.log[root@desktop10 neutron]# ovs-vsctl show
0d1feaba-56ce-4696-9d16-0a993cff5923
    Bridge br-int
        Port "int-br-eth1"
            Interface "int-br-eth1"
        Port br-int
            Interface br-int
                type: internal
    Bridge "br-eth1"
        Port "br-eth1"
            Interface "br-eth1"
                type: internal
        Port "br101"
            Interface "br101"
        Port "phy-br-eth1"
            Interface "phy-br-eth1"
    ovs_version: "1.11.0"

查看到上述输出基本就是正确了。


4.需要注意的是,在新增nova节点时需要安装一个依赖包,以进行和主控节点(server10)进行通信,具体步骤如下:

[root@desktop10 neutron]# yum install -y openstack-neutron-ml2.noarch
[root@desktop10 nova]# vim  /etc/nova/nova.conf 
novncproxy_base_url=http://192.168.0.110:6080/vnc_auto.html
glance_host=192.168.0.110                                            让nova-compute在创建云主机时可以找到glance文件
rpc_backend=nova.openstack.common.rpc.impl_qpid    让nova-compute和主控端进行通信[root@desktop10 nova]# /etc/init.d/openstack-nova-compute restart 
[root@desktop10 nova]# chkconfig openstack-nova-compute on

接下来需要配置的已经配置完毕。

现在使用admin用户登录https://server10.example.com/dashboard 进行创建相关的项目以及用户服务。

 1.创建项目
2.创建用户(admin身份和成员身份)                    身份所指的是用户的角色,即决定用户的权限
用admin身份的那个用户接下来操作
3.上传镜像                                                          在glance服务中我们已经上传了small.img和web.img了
4.创建网络:针对某个项目创建网络(外网)              进行创建网络,内部网络和外部网络通信
  点net1创建子网内网172.24.X.0(不需用网关)         172网段在真实主机上模拟的是一个公网地址

不用DHCP,子网详情 

  创建网络:内网网络                                             内网192.168.32.0网段其实就是之前桥接的br101接口

  点net2创建内网192.168.32.0                            

查看一下网络拓扑图                                                会发现我们真正的创建了两个网络(172网络和192网络)

5.添加路由

   创建route选择网关。(查看拓扑)                            添加路由信息,分别将两个网络连接起来,实现内外网通信

   增加路由接口,将两个网段链接


6.创建安全组,并且设置规则                                    自定义访问规则,相当于简单的防火墙策略

   创建密钥对,并且下载                                           用于客户机对云主机的远程登录验证所用的

   分配浮动ip(公网IP)                                                 给172公网分配一个浮动IP,以进行客户通信

7.创建云主机类型(也就是主机的配置)                          自己定义所需要主机的相关配置

   云磁盘

8.启动云主机                                                            开始启动云主机,进行相应的信息选择(主机名。。。)

   管理员密码,就是访问云主机的管理员密码,但是默认不能使用,安全组的选择

   选择私有网络(查看网络拓扑)

openstack云平台搭建 分配服务器IP如何处理_python

点击更多进行绑定浮动IP(以便用于客户对云主机进行直接登录访问)

启动云主机:

发现其实云主机已经启动起来了,默认获取的IP为192.168.32.2

[root@desktop10 nova]# virsh list                                                                使用virsh命令查看
 Id    Name                           State
----------------------------------------------------
 1     server10                       running                                                            server10为KVM的虚拟机
 2     instance-00000003              running                                                    这个为Openstack的云主机

模拟公网IP登录测试: 使用之前创建秘钥对进行远程登录云主机(172.24.10.4是当时分配的公网IP)


openstack云平台搭建 分配服务器IP如何处理_desktop_02

远程登录后对系统内部进行测试:

openstack云平台搭建 分配服务器IP如何处理_数据库_03

此时,我们已经可以在远程登录我们的云主机了。