z7369 发表于 2015-4-13 08:47:51

CentOS6.4部署OpenStack Havana(Nova-Network版) (下)

CentOS6.4部署OpenStack Havana(Nova-Network版) (上)


7.4.nova测试:


(1).创建网络:
# nova network-create vmnet --fixed-range-v4=10.1.1.0/24 --bridge-interface=br1 --multi-host=T
#nova network-list

+--------------------------------------+-------+-------------+
| ID                                 | Label | Cidr      |
+--------------------------------------+-------+-------------+
| d3bc4874-2b4b-4abf-b963-0e5ae69b7b31 | vmnet | 10.1.1.0/24 |
+--------------------------------------+-------+-------------+

# nova-manage network list
id    IPv4         IPv6   start addressDNS1      DNS2   VlanID    project    uuid         
1   10.1.1.0/24    None   10.1.1.2       8.8.4.4   None   None      None       d3bc4874-2b4b-4abf-b963-0e5ae69b7b31


(2).设置安全组:
# nova secgroup-add-rule default tcp 22 22 0.0.0.0/0

+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port | IP Range| Source Group |
+-------------+-----------+---------+-----------+--------------+
| tcp         | 22      | 22      | 0.0.0.0/0 |            |
+-------------+-----------+---------+-----------+--------------+
# nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port | IP Range| Source Group |
+-------------+-----------+---------+-----------+--------------+
| icmp      | -1      | -1      | 0.0.0.0/0 |            |
+-------------+-----------+---------+-----------+--------------+
(3).创建虚拟机实例:

查看可用镜像:

# nova image-list
+--------------------------------------+-----------+--------+--------------------------------------+
| ID                                 | Name      | Status | Server                               |
+--------------------------------------+-----------+--------+--------------------------------------+
| 45456157-9b46-4e40-8ee3-fbb2e40f227b | centos6.4 | ACTIVE |                                    |
+--------------------------------------+-----------+--------+--------------------------------------+
创建虚拟机实例:
# nova boot --flavor 1 --image centos6.4 vm01

+--------------------------------------+--------------------------------------------------+
| Property                           | Value                                          |
+--------------------------------------+--------------------------------------------------+
| OS-DCF:diskConfig                  | MANUAL                                           |
| OS-EXT-AZ:availability_zone          | nova                                             |
| OS-EXT-SRV-ATTR:host               | -                                                |
| OS-EXT-SRV-ATTR:hypervisor_hostname| -                                                |
| OS-EXT-SRV-ATTR:instance_name      | instance-00000001                              |
| OS-EXT-STS:power_state               | 0                                                |
| OS-EXT-STS:task_state                | scheduling                                       |
| OS-EXT-STS:vm_state                  | building                                       |
| OS-SRV-USG:launched_at               | -                                                |
| OS-SRV-USG:terminated_at             | -                                                |
| accessIPv4                           |                                                |
| accessIPv6                           |                                                |
| adminPass                            | hZBG4A7eJMdL                                     |
| config_drive                         |                                                |
| created                              | 2014-03-31T07:12:55Z                           |
| flavor                               | m1.tiny                                          |
| hostId                               |                                                |
| id                                 | f754afe1-784f-41d0-9139-a05d25eaca20             |
| image                              | centos6.4 (45456157-9b46-4e40-8ee3-fbb2e40f227b) |
| key_name                           | -                                                |
| metadata                           | {}                                             |
| name                                 | vm01                                             |
| os-extended-volumes:volumes_attached | []                                             |
| progress                           | 0                                                |
| security_groups                      | default                                          |
| status                               | BUILD                                          |
| tenant_id                            | 446893f3733b4294a7080f3b0bf1ba61               |
| updated                              | 2014-03-31T07:12:55Z                           |
| user_id                              | 2d7f8e7ec15c40cfb4209134cb5b30ba               |
+--------------------------------------+--------------------------------------------------+
查看虚拟机实例运行状态:

# nova list

+--------------------------------------+-----------------------+--------+------------+-------------+-----------------+
| ID                                 | Name                  | Status | Task State | Power State | Networks      |
+--------------------------------------+-----------------------+--------+------------+-------------+-----------------+
| f754afe1-784f-41d0-9139-a05d25eaca20 | vm01                  | ACTIVE | -          | Running   | vmnet=10.1.1.2|
+--------------------------------------+-----------------------+--------+------------+-------------+-----------------+
测试虚拟机实例连通性:
# ping 10.1.1.2
PING 10.1.1.2 (10.1.1.2) 56(84) bytes of data.
64 bytes from 10.1.1.2: icmp_seq=1 ttl=64 time=0.057 ms
64 bytes from 10.1.1.2: icmp_seq=2 ttl=64 time=0.037 ms
--- 10.1.1.2 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1639ms
rtt min/avg/max/mdev = 0.037/0.047/0.057/0.010 ms


  8.安装配置Horizon

  (1).安装Horizon

  # yum -y install openstack-dashboard
  

  (2).修改local_settings文件,将DEBUG = False修改为DEBUG = True
  # vi /etc/openstack-dashboard/local_settings
  DEBUG = True
  ……
  

  (3).修改httpd.conf文件,将#ServerName www.example.com:80修改为ServerName 192.168.10.21:80
  # vi /etc/httpd/conf/httpd.conf
  
  #ServerName www.example.com:80
  ServerName 192.168.10.21:80
  

  (4).修改local_settings.py文件,将"Member"修改为"admin"
  # find / -name local_settings.py
  /usr/share/openstack-dashboard/openstack_dashboard/local/local_settings.py
# cat /usr/share/openstack-dashboard/openstack_dashboard/local/local_settings.py | grep OPENSTACK_KEYSTONE_DEFAULT_ROLE
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "Member"
# vi /usr/share/openstack-dashboard/openstack_dashboard/local/local_settings.py
#OPENSTACK_KEYSTONE_DEFAULT_ROLE = "Member"
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "admin"
  

  (5).启动http服务,设置开机自启动
  # service httpd start
  # chkconfig httpd on
  

  (6).重启nova-api服务
  # service openstack-nova-api restart
  

  (7).添加防火墙策略
  # iptables -I INPUT -p tcp --dport 80 -j ACCEPT
  # iptables -I INPUT -p tcp -m multiport --dports 5900:6000 -j ACCEPT
  # iptables -I INPUT -p tcp --dport 6080 -j ACCEPT
  # service iptables save
  

  Horizon安装完成,使用http://192.168.10.21/dashboard访问openstack web界面。
  用户名:admin
  密码:password
  
http://c.hiphotos.bdimg.com/album/pic/item/6c224f4a20a446236ba747c59a22720e0cf3d72c.jpg
  

  9.添加新项目
  (1).为操作员用户创建一个tenant:
  # keystone tenant-create --name=manager --description='Manager Tenant'
  

  (2).创建操作员用户:
  # keystone user-create --name=manager --pass=password --email=manager@chensh.net
  

  (3).创建一个管理角色manager:
  # keystone role-create --name=manager
  

  (4).将manager角色添加到用户:
  # keystone user-role-add --user=manager --tenant=manager --role=manager
  

  (5).将nova角色添加到用户:
  # keystone user-role-add --user=nova --tenant=service --role=manager
  

  *******************************************************************************************

  三、计算节点安装(Node01)
  
  1.基础配置

  操作系统使用CentOS-6.4-x86_64-minimal.iso,安装过程省略,本文采用yum源安装。
  

  (1).导入第三方安装源

  
  # rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
  # rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
  # yum install http://repos.fedorapeople.org/repos/openstack/openstack-havana/rdo-release-havana-7.noarch.rpm
  

  (2).配置/etc/hosts文件
  # vi /etc/hosts
  

  127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
  ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
  192.168.10.21   openstack
  192.168.10.22   node01
  

  (3).配置网络
  

  # vi /etc/sysconfig/network-scripts/ifcfg-eth0
  DEVICE="eth0"
  BOOTPROTO="static"
  HWADDR="E4:1F:13:45:AB:C1"
  ONBOOT="yes"
  IPADDR=192.168.10.22
  NETMASK=255.255.255.0
  GATEWAY=192.168.10.1
  TYPE="Ethernet"
  # vi /etc/sysconfig/network-scripts/ifcfg-eth1
  DEVICE="eth1"
  BOOTPROTO="none"
  HWADDR="E4:1F:13:45:AB:C3"
  ONBOOT="yes"
  TYPE="Ethernet"
  

  (4).关闭selinux:
  
  # more /etc/selinux/config
  # This file controls the state of SELinux on the system.
  # SELINUX= can take one of these three values:
  #       enforcing - SELinux security policy is enforced.
  #       permissive - SELinux prints warnings instead of enforcing.
  #       disabled - SELinux is fully disabled.
  SELINUX=disabled
  # SELINUXTYPE= type of policy in use. Possible values are:
  #       targeted - Only targeted network daemons are protected.
  #       strict - Full SELinux protection.
  SELINUXTYPE=targeted
  # setenforce 0
  

  (5).修改/etc/sysctl.conf参数:

  # vi /etc/sysctl.conf
  ……………………
  net.ipv4.ip_forward = 1
  ……………………
#sysctl -p                  #使sysctl.conf配置生效
  

  

  
  2.安装配置NTP客户端
  (1).安装NTP客户端服务:
  # yum -y install ntpdate
  

  (2).设置时间同步:
  # ntpdate 192.168.10.21
  31 Mar 16:17:03 ntpdate: the NTP socket is in use, exiting
  

  (3).设置计划任务:
  # crontab -e
  插入下行内容:
  */5 * * * * ntpdate 192.168.10.21 >> /var/log/ntpdate.log
  

  3.设置环境变量
  
  修改.bash_profile文件,添加以下参数:
  # vi .bash_profile
  
  ………………
  export OS_USERNAME=admin
  export OS_TENANT_NAME=admin
  export OS_PASSWORD=password
  export OS_AUTH_URL=http://192.168.10.21:5000/v2.0
  export SERVICE_ENDPOINT=http://192.168.10.21:35357/v2.0
  export SERVICE_TOKEN=12dd70ede7c9d9d3ed3c
  ………………

  执行下面的命令使变量即时生效:
  # source .bash_profile
  

  
4.安装配置libvirt服务
  (1).安装libvirt服务:
  # yum -y install qemu-kvm libvirt
  

  
  (2)启动libvirt服务:
  # service libvirtd start
  

  (3)查看net-list,发现default:
  # virsh net-list
  Name               State      Autostart   Persistent
  --------------------------------------------------
  default            active   yes         yes
  

  (4)删除default,即virbr0:
  # virsh net-destroy default
  Network default destroyed
  # virsh net-undefine default
  Network default has been undefined
  

  (5)重启libvirtd服务,设置开机自启动:
  # service libvirtd restart
  # chkconfig libvirtd on
  

  5.安装MySQL客户端
  

  (1).安装mysql客户端
  # yum -y install mysql
  

  (2).检查mysql数据库连通性
  
  # mysql -h 192.168.10.21 -unova -pnova
  Welcome to the MySQL monitor.………………
  mysql> quit;
  Bye
  

  6.安装配置Nova服务
  

  (1)安装nova-compute、nova-network、nova-scheduler
  # yum -y install openstack-nova-compute openstack-nova-network openstack-nova-scheduler
  

  (2).修改nova配置文件
  # vi /etc/nova/nova.conf
  
  
  my_ip = 192.168.10.22
  auth_strategy = keystone
  state_path = /letv/openstack/lib/nova
  verbose=True
  allow_resize_to_same_host = true
  rpc_backend = nova.openstack.common.rpc.impl_qpid
  qpid_hostname = 192.168.10.21
  libvirt_type = kvm
  glance_api_servers = 192.168.10.21:9292
  novncproxy_base_url = http://192.168.10.21:6080/vnc_auto.html
  vncserver_listen = 192.168.10.22
  vncserver_proxyclient_address = 192.168.10.22
  vnc_enabled = true
  vnc_keymap = en-us
  network_manager = nova.network.manager.FlatDHCPManager
  firewall_driver = nova.virt.firewall.NoopFirewallDriver
  multi_host = True
  flat_interface = eth1
  flat_network_bridge = br1
  public_interface = eth0
  instance_usage_audit = True
  instance_usage_audit_period = hour
  notify_on_state_change = vm_and_task_state
  notification_driver = nova.openstack.common.notifier.rpc_notifier
  compute_scheduler_driver=nova.scheduler.simple.SimpleScheduler
  
  
  
  
  
  
  
  sql_connection=mysql://nova:nova@192.168.10.21/nova
  
  
  
  
  
  
  
  
  
  
  
  auth_host = 192.168.10.21
  auth_port = 35357
  auth_protocol = http
  admin_user = nova
  admin_tenant_name = service
  admin_password = service
  

  因上管理节点nova.conf配置文件中修改了instances实例存放的位置,还需要作一下操作:
  修改路径,设置目录权限:
  # cp -r /var/lib/nova/ /openstack/lib/
  # chown -R nova:nova /openstack/lib/nova/
  

  (3).启动nova相关服务,设置开机自启动
  # service messagebus start
  # chkconfig messagebus on
  # service openstack-nova-compute start
  # service openstack-nova-network start
  # chkconfig openstack-nova-compute on
  # chkconfig openstack-nova-network on
  *******************************************************************************************
  OpenStack其他常用命令:
  
  1.list nova服务,包含管理节点和计算节点
  # nova service-list
  +------------------+-------------+----------+---------+-------+----------------------------+-----------------+
  | Binary         | Host      | Zone   | Status| State | Updated_at               | Disabled Reason |
  +------------------+-------------+----------+---------+-------+----------------------------+-----------------+
  | nova-cert      | openstack   | internal | enabled | up    | 2014-03-31T08:59:50.000000 | -               |
  | nova-consoleauth | openstack   | internal | enabled | up    | 2014-03-31T08:59:54.000000 | -               |
  | nova-scheduler   | openstack   | internal | enabled | up    | 2014-03-31T08:59:48.000000 | -               |
  | nova-conductor   | openstack   | internal | enabled | up    | 2014-03-31T08:59:52.000000 | -               |
  | nova-compute   | openstack   | nova   | enabled | up    | 2014-03-31T08:59:56.000000 | -               |
  | nova-compute   | node01      | nova   | enabled | up    | 2014-03-31T08:59:53.000000 | -               |
  | nova-network   | openstack   | internal | enabled | up    | 2014-03-31T08:59:50.000000 | -               |
  | nova-network   | node01      | internal | enabled | up    | 2014-03-31T08:59:56.000000 | -               |
  | nova-scheduler   | node01      | internal | enabled | up    | 2014-03-31T08:59:52.000000 | -               |
  

  2.查看计算节点:

  # nova hypervisor-list
  +----+---------------------+
  | ID | Hypervisor hostname |
  +----+---------------------+
  | 1| openstack         |
  | 2| node01            |
  +----+---------------------+
  

  3.查看虚拟机模板配置:

  # nova flavor-list
  +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
  | ID | Name      | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public |
  +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
  | 1| m1.tiny   | 512       | 1    | 0         |      | 1   | 1.0         | True      |
  | 2| m1.small| 2048      | 20   | 0         |      | 1   | 1.0         | True      |
  | 3| m1.medium | 4096      | 40   | 0         |      | 2   | 1.0         | True      |
  | 4| m1.large| 8192      | 80   | 0         |      | 4   | 1.0         | True      |
  | 5| m1.xlarge | 16384   | 160| 0         |      | 8   | 1.0         | True      |
  +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
  

  
页: [1]
查看完整版本: CentOS6.4部署OpenStack Havana(Nova-Network版) (下)