demn 发表于 2013-10-16 08:33:55

centos6.4下openstack-grizzly安装之控制节点

参考的是官方文档,由于官方文档有些文件及步骤没有列出来,现已经补齐。经过测试没问题。备忘一下。You need at leastthree machines, virtual or physical, with Fedora 18 installed.
Table 2.1. Architecture and node information


Nodes

controllernetworkcompute

Hostnamecloudnetworkc01

ServicesMySQL, Qpid, Nova, Cinder, Glance, Keystone, QuantumQuantum-L3-agent, Quantum-DHCP-agent, Quantum Agent with Open-vSwitchnova-compute, KVM, nova-api, Quantum Agent with Open-vSwitch

Minimum number of disks211

External10.0.0.10/2410.0.0.9/24-

Internal network10.10.10.10/2410.10.10.9/2410.10.10.11/24

Total number of NIC221



IntroductionThe Controllernode will provide :
[*]Databases (with MySQL)
[*]Queues (with Qpid)
[*]Keystone
[*]Glance
[*]Nova (without nova-compute)
[*]Cinder
[*]Quantum Server (with Open-vSwitch plugin)
[*]Dashboard (with Horizon)
Common servicesOperating SystemMySQL DatabaseServiceQpid MessagingServiceOperating System
[*]Install Fedora 18 . The exact installation procedure is outside the scope of this document, but please note the following configurations:

[*]Time zone: UTC
[*]Hostname: cloud
[*]Packages: OpenSSH-Server, wget
Once installation has finished, the server will reboot.
[*]Use the Fedora repositories for Grizzly:
3. wgethttp://repos.fedorapeople.org/repos/openstack/openstack-grizzly/fedora-openstack-grizzly.repomv fedora-openstack-grizzly.repo/etc/yum.repos.d/
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
ForCentOS, use http://repos.fedorapeople.org/repos/openstack/openstack-grizzly/epel-openstack-grizzly.repo.

[*]Configure the network:

[*]Set up old ethernet nic device names:
sed -i 's/GOTO="netdevicename_end"/GOTO="netdevicename_end"/g'/lib/udev/rules.d/71-biosdevname.rules
[*]Disable NetworkManager and enable the network service
· service NetworkManager stop· service network start· chkconfig NetworkManager offchkconfig network on
[*]Edit /etc/sysconfig/network-scripts/ifcfg-eth0:
· Internal Network·DEVICE=eth0·TYPE=Ethernet·BOOTPROTO=static·IPADDR=10.10.10.10·NETMASK=255.255.255.0·DEFROUTE=yes·ONBOOT=yes
[*]Edit /etc/sysconf/network-scripts/ifcfg-eth1:
· External Network·DEVICE=eth1·TYPE=Ethernet·BOOTPROTO=static·IPADDR=10.0.0.10·NETMASK=255.255.255.0·GATEWAY=10.0.0.1·DNS=8.8.8.8·DEFROUTE=yes·ONBOOT=yes
[*]Reboot
[*]Edit the /etc/hosts file and add cloud, network, and c01 hostnames with correct IP.
·127.0.0.1 localhost·10.10.10.10 cloud·10.10.10.9 network10.10.10.11 c01
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
While manually specifying host entries is acceptable for a simple or testing environment, it is highly recommended to use proper DNS entries, or at a minimum a configuration management system such as Puppet, to maintain your IP to host mappings.

[*]Install NTP. NTP will ensure that the server has the correct time. This is important because if an OpenStack server's time is not correct, it will be removed from the rest of the cloud.
· yum install -y ntpMySQL Database ServiceThe variousOpenStack components store persistent data in a relational database. MySQL isthe most popular choice.
[*]Install the packages:
yum install mysql mysql-server MySQL-python
[*]By default, MySQL will only accept connections from localhost. This needs changed so that the compute nodes can access the OpenStack Networking service. Database requests for the OpenStack Compute service are proxied through the nova-conductor service.
sed -i 's/127.0.0.1/0.0.0.0/g' /etc/my.cnf
[*]Restart the service:
systemctl start mysqld.serviceservice mysqld restartchkconfig mysqld on
[*]The various databases that the OpenStack services require need created. Additionally, MySQL accounts to access those databases need created, too:
5. mysql -u root -p <<EOF6.CREATE DATABASE nova;7.GRANT ALL PRIVILEGES ON nova.* TO'nova'@'localhost' \8.IDENTIFIED BY 'password';9.CREATE DATABASE cinder;10.GRANT ALL PRIVILEGES ON cinder.* TO'cinder'@'localhost' \11.IDENTIFIED BY 'password';12.CREATE DATABASE glance;13.GRANT ALL PRIVILEGES ON glance.* TO'glance'@'localhost' \14.IDENTIFIED BY 'password';15.CREATE DATABASE keystone;16.GRANT ALL PRIVILEGES ON keystone.* TO'keystone'@'localhost' \17.IDENTIFIED BY 'password';18.CREATE DATABASE quantum;19.GRANT ALL PRIVILEGES ON quantum.* TO'quantum'@'localhost' \20.IDENTIFIED BY 'password';21.GRANT ALL PRIVILEGES ON quantum.* TO'quantum'@'10.10.10.9' \22.IDENTIFIED BY 'password';23.GRANT ALL PRIVILEGES ON quantum.* TO'quantum'@'10.10.10.11' \24.IDENTIFIED BY 'password';25.FLUSH PRIVILEGES;EOFQpid Messaging ServiceThe OpenStackcomponents also communicate through a queuing service. For example, the CloudController places a request to launch an instance on the queue. The ComputeNode then picks this request up and launches the instance. OpenStack can workwith several different queuing services.
[*]Install the packages:
yum install qpid-cpp-server
[*]Enable authentication:
echo auth=1 >> /etc/qpidd.conf/etc/qpidd.conf里的yes改成no也行

[*]Enable the messaging service:
chkconfig qpidd on
# saslpasswd2 -f /var/lib/qpidd/qpidd.sasldb-u QPID guest
>Password: guest
>Again (for verification): guest...wait for a moment while it updates......and then to validate that these usersactually exist now:
# sasldblistusers2 -f /var/lib/qpidd/qpidd.sasldb
guest@QPID: userPassword <--- password obscured by program
steve@QPID: userPassword <-- another I added "just to test"There were no users listed in the SASLdbat all after my initial installation, so the QPID docs (security chapter) werequite handy:

[*]Start the messaging service:
service qpidd startOpenStack Identity ServiceThe OpenStackIdentity Service provides the cloud environment with an authentication andauthorization system. In this system, users are a part of one or more projects.In each of these projects, they hold a specific role.
[*]Install the packages:
yum install openstack-utils openstack-keystone python-keystonepython-keystoneclient
[*]Edit /etc/keystone/keystone.conf:
3.4.admin_token = password5.debug = True6.verbose = True7.8.connection =mysql://keystone:password@localhost/keystone
[*]Create the ssl keys:
10. keystone-manage pki_setupchown -R keystone:keystone /etc/keystone/*
[*]Restart Keystone and create the tables in the database:
12. service openstack-keystone restartopenstack-db --init --service keystone
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
Check the /var/log/keystone/keystone.log file for errors that would prevent the Identity Service from successfully starting.

[*]Create an openrc file:

[*]Create a file called ~/openrc. This file contains the OpenStack admin credentials that are used when interacting with the OpenStack environment on the command line.
·export OS_TENANT_NAME=admin·export OS_USERNAME=admin·export OS_PASSWORD=password·export OS_AUTH_URL="http://localhost:5000/v2.0/"·export OS_SERVICE_ENDPOINT="http://localhost:35357/v2.0"export OS_SERVICE_TOKEN=password
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
Best practice for bootstrapping the first administrative user is to use the OS_SERVICE_ENDPOINT and OS_SERVICE_TOKEN together as environment variables, then set up a separate RC file just for Identity administration that uses port 35357 for the OS_AUTH_URL. This example is meant to provide a quick setup, not an audit-able environment.

[*]Source the credentials into your environment:
source ~/openrc
[*]Configure the Bash shell to load these credentials upon each login:
echo "source ~/openrc">> ~/.bashrc
[*]The following bash script will populate Keystone with some initial data:

[*]Projects: admin and services
[*]Roles: admin, Member
[*]Users: admin, demo, nova, glance, quantum, and cinder
[*]Services: compute, volume, image, identity, ec2, and network
15.!/bin/bash16.17. Modify these variables as needed18.ADMIN_PASSWORD=${ADMIN_PASSWORD:-password}19.SERVICE_PASSWORD=${SERVICE_PASSWORD:-$ADMIN_PASSWORD}20.DEMO_PASSWORD=${DEMO_PASSWORD:-$ADMIN_PASSWORD}21.exportOS_SERVICE_TOKEN="password"22.exportOS_SERVICE_ENDPOINT="http://localhost:35357/v2.0"23.SERVICE_TENANT_NAME=${SERVICE_TENANT_NAME:-service}24.25.MYSQL_USER=keystone26.MYSQL_DATABASE=keystone27.MYSQL_HOST=localhost28.MYSQL_PASSWORD=password29.30.KEYSTONE_REGION=RegionOne31.KEYSTONE_HOST=10.10.10.1032.33. Shortcut function to get a newly generated ID34.function get_field() {35. while read data; do36. if [ "$1" -lt 0 ]; then37. field="(\$(NF$1))"38. else39. field="\$$(($1 + 1))"40. fi41. echo "$data" | awk -F'[\t]*\\|[ \t]*' "{print $field}"42. done43.}44.45. Tenants46.ADMIN_TENANT=$(keystone tenant-create--name=admin | grep " id " | get_field 2)47.DEMO_TENANT=$(keystone tenant-create--name=demo | grep " id " | get_field 2)48.SERVICE_TENANT=$(keystone tenant-create--name=$SERVICE_TENANT_NAME | grep " id " | get_field 2)49.50. Users51.ADMIN_USER=$(keystone user-create--name=admin --pass="$ADMIN_PASSWORD" --email=admin@domain.com | grep" id " | get_field 2)52.DEMO_USER=$(keystone user-create--name=demo --pass="$DEMO_PASSWORD" --email=demo@domain.com--tenant-id=$DEMO_TENANT | grep " id " | get_field 2)53.NOVA_USER=$(keystone user-create--name=nova --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT--email=nova@domain.com | grep " id " | get_field 2)54.GLANCE_USER=$(keystone user-create --name=glance--pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT--email=glance@domain.com | grep " id " | get_field 2)55.QUANTUM_USER=$(keystone user-create--name=quantum --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT--email=quantum@domain.com | grep " id " | get_field 2)56.CINDER_USER=$(keystone user-create--name=cinder --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT--email=cinder@domain.com | grep " id " | get_field 2)57.58. Roles59.ADMIN_ROLE=$(keystone role-create--name=admin | grep " id " | get_field 2)60.MEMBER_ROLE=$(keystone role-create--name=Member | grep " id " | get_field 2)61.62. Add Roles to Users in Tenants63.keystone user-role-add --user-id$ADMIN_USER --role-id $ADMIN_ROLE --tenant-id $ADMIN_TENANT64.keystone user-role-add --tenant-id$SERVICE_TENANT --user-id $NOVA_USER --role-id $ADMIN_ROLE65.keystone user-role-add --tenant-id$SERVICE_TENANT --user-id $GLANCE_USER --role-id $ADMIN_ROLE66.keystone user-role-add --tenant-id$SERVICE_TENANT --user-id $QUANTUM_USER --role-id $ADMIN_ROLE67.keystone user-role-add --tenant-id$SERVICE_TENANT --user-id $CINDER_USER --role-id $ADMIN_ROLE68.keystone user-role-add --tenant-id$DEMO_TENANT --user-id $DEMO_USER --role-id $MEMBER_ROLE69.70. Create services71.COMPUTE_SERVICE=$(keystoneservice-create --name nova --type compute --description 'OpenStack ComputeService' | grep " id " | get_field 2)72.VOLUME_SERVICE=$(keystone service-create--name cinder --type volume --description 'OpenStack Volume Service' | grep" id " | get_field 2)73.IMAGE_SERVICE=$(keystone service-create--name glance --type image --description 'OpenStack Image Service' | grep" id " | get_field 2)74.IDENTITY_SERVICE=$(keystoneservice-create --name keystone --type identity --description 'OpenStackIdentity' | grep " id " | get_field 2)75.EC2_SERVICE=$(keystone service-create--name ec2 --type ec2 --description 'OpenStack EC2 service' | grep " id" | get_field 2)76.NETWORK_SERVICE=$(keystoneservice-create --name quantum --type network --description 'OpenStackNetworking service' | grep " id " | get_field 2)77.78. Create endpoints79.keystone endpoint-create --region$KEYSTONE_REGION --service-id $COMPUTE_SERVICE --publicurl 'http://'"$KEYSTONE_HOST"':8774/v2/$(tenant_id)s'--adminurl 'http://'"$KEYSTONE_HOST"':8774/v2/$(tenant_id)s'--internalurl 'http://'"$KEYSTONE_HOST"':8774/v2/$(tenant_id)s'80.keystone endpoint-create --region$KEYSTONE_REGION --service-id $VOLUME_SERVICE --publicurl'http://'"$KEYSTONE_HOST"':8776/v1/$(tenant_id)s' --adminurl'http://'"$KEYSTONE_HOST"':8776/v1/$(tenant_id)s' --internalurl'http://'"$KEYSTONE_HOST"':8776/v1/$(tenant_id)s'81.keystone endpoint-create --region$KEYSTONE_REGION --service-id $IMAGE_SERVICE --publicurl'http://'"$KEYSTONE_HOST"':9292' --adminurl'http://'"$KEYSTONE_HOST"':9292' --internalurl'http://'"$KEYSTONE_HOST"':9292'82.keystone endpoint-create --region$KEYSTONE_REGION --service-id $IDENTITY_SERVICE --publicurl'http://'"$KEYSTONE_HOST"':5000/v2.0' --adminurl'http://'"$KEYSTONE_HOST"':35357/v2.0' --internalurl'http://'"$KEYSTONE_HOST"':5000/v2.0'83.keystone endpoint-create --region$KEYSTONE_REGION --service-id $EC2_SERVICE --publicurl'http://'"$KEYSTONE_HOST"':8773/services/Cloud' --adminurl'http://'"$KEYSTONE_HOST"':8773/services/Admin' --internalurl'http://'"$KEYSTONE_HOST"':8773/services/Cloud'84.keystone endpoint-create --region$KEYSTONE_REGION --service-id $NETWORK_SERVICE --publicurl'http://'"$KEYSTONE_HOST"':9696/' --adminurl'http://'"$KEYSTONE_HOST"':9696/' --internalurl'http://'"$KEYSTONE_HOST"':9696/'

http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
If you make a mistake during this guide, you can reset the Keystone database by performing the following steps:mysql -u root -p -e "drop database keystone"mysql -u root -p -e "create database keystone"mysql -u root -p -e "grant all privileges on keystone.* TO 'keystone'@'localhost' identified by 'password'"keystone-manage db_syncAnd finally, re-run the above bash script.
OpenStack Image ServiceThe Image Serviceprovides a catalog of virtual machine images from which you can launchinstances.For example, ifa Fedora 19 image exists, you can use it to launch a Fedora19 instance.
Procedure 2.1. Toinstall and configure the OpenStack Image Service
[*]Install the OpenStack Image packages, as follows:
yum install openstack-glance
[*]Configure the OpenStack Image Service, as follows:
[*]The OpenStack Image Service provides the glance-api and glance-registry services. You configure these services identically. However, be aware that each provides a distinct service.

Edit /etc/glance/glance-api.conf and /etc/glance/glance-registry.conf,as follows:sql_connection =mysql://glance:password@localhost/glanceadmin_tenant_name = serviceadmin_user = glanceadmin_password = passwordflavor=keystone
[*]
[*]Restart both services, as follows:

service openstack-glance-api restart&& service openstack-glance-registry restart
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
Check the /var/log/glance/*.log files for errors that cause the Image Service to fail to start.

[*]
[*]Create the OpenStack Image tables in the database, as follows:

glance-manage db_sync
[*]
[*]Download and import the latest Fedora cloud image:

e.$ wgethttp://cloud.fedoraproject.org/fedora-latest.x86_64.qcow2glance image-create --is-public true--disk-format qcow2 --container-format bare --name "Fedora" <fedora-latest.x86_64.qcow2Download and import the CirrOS QCOW2 Image:$ wgethttp://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-disk.img$ glance image-create --is-public true--disk-format qcow2 --container-format bare --name "CirrOS 0.3.1"< cirros-0.3.1-x86_64-disk.img
[*]
[*]Check if the images have been introduced in the index:

$ glance image-list+--------------------------------------+--------------+-------------+------------------+-----------+--------+| ID | Name | Disk Format | Container Format |Size | Status |+--------------------------------------+--------------+-------------+------------------+-----------+--------+| acafc7c0-40aa-4026-9673-b879898e1fc2 |CirrOS 0.3.1 | qcow2 | bare | 13147648 | active || 62f9278e-a26e-4fa0-9537-1eb503aa2f01 |Fedora | qcow2 | bare | 237371392 | active |+--------------------------------------+--------------+-------------+------------------+-----------+--------+OpenStack Compute (Cloud Controller services)The OpenStackCompute Service provides the cloud environment with the ability to manage thescheduling, creation and deletion of virtual machines (instances).
[*]Install the Nova packages:
2. yum install -y openstack-nova-apiopenstack-nova-scheduler openstack-nova-cert \3. openstack-nova-consoleopenstack-nova-doc genisoimage openstack-dashboard \openstack-nova-novncproxy openstack-nova-conductor novnc
[*]Configure Nova:
/etc/nova/nova.confis missing an essential "auth_strategy=keystone" line in the section
[*]Edit /etc/nova/api-paste.ini:
··paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory·service_protocol = http·service_host = 127.0.0.1·service_port = 5000·admin_tenant_name = service·admin_user = nova·admin_password = password· Workaround forhttps://bugs.launchpad.net/nova/+bug/1154809auth_version = v2.0
[*]Add the following to the /etc/nova/nova.conf file. This file is the main configuration file of Nova. There is a large amount of configuration options that can go in this file. This guide illustrates the minimum needed for a simple environment. Note that the nova.conf file supplied by your distribution will have some options already set. Leave them as-is.
· General·verbose = True·qpid_username=guest·qpid_password=guest·rpc_backend = nova.openstack.common.rpc.impl_qpid·· Networking·network_api_class=nova.network.quantumv2.api.API·quantum_url=http://10.10.10.10:9696·quantum_auth_strategy=keystone·quantum_admin_tenant_name=service·quantum_admin_username=quantum·quantum_admin_password=password·quantum_admin_auth_url=http://10.10.10.10:35357/v2.0·libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver·linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver·· Security Groups·firewall_driver=nova.virt.firewall.NoopFirewallDriver·security_group_api=quantum·· Metadata·quantum_metadata_proxy_shared_secret=password·service_quantum_metadata_proxy=true·metadata_listen = 10.10.10.10·metadata_listen_port = 8775·· Cinder·volume_api_class=nova.volume.cinder.API·· Glance·glance_api_servers=10.10.10.10:9292·image_service=nova.image.glance.GlanceImageService·· novnc·novnc_enable=true·novncproxy_port=6080·novncproxy_host=10.0.0.10·vncserver_listen=0.0.0.0
[*]Create Nova tables into the database:
nova-manage db sync
[*]Restart Nova services:
· service openstack-nova-api restart· service openstack-nova-cert restart· service openstack-nova-consoleauthrestart· service openstack-nova-schedulerrestart· service openstack-nova-conductorrestart· service openstack-nova-novncproxyrestart· chkconfig openstack-nova-api on· chkconfig openstack-nova-cert on· chkconfigopenstack-nova-consoleauth on· chkconfig openstack-nova-scheduleron· chkconfig openstack-nova-conductoronchkconfig openstack-nova-novncproxy on
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
Check the /var/log/nova/nova-* files for any errors that would prevent the Compute Service from successfully starting.
OpenStack Block StorageWhile Cindercontains many different storage drivers, the most common and basicconfiguration uses LVM and iSCSI. This guide illustrates how to use one disk (/dev/sdb) in an LVM VolumeGroup called cinder-volumes. When a user requests a block storage volume, a Logical Volume is createdfrom this Volume Group and then mounted on the user's instance by way of iSCSI.
[*]Install the Cinder packages:
2. yum install -y openstack-cinderopenstack-cinder-doc \iscsi-initiator-utils scsi-target-utils
[*]Configure & start the iSCSI services:
4. service tgtd start5. service iscsi start6. chkconfig tgtd onchkconfig iscsi on
[*]Configure Cinder:

[*]Edit /etc/cinder/cinder.conf:
··rpc_backend = cinder.openstack.common.rpc.impl_qpid·sql_connection = mysql://cinder:password@localhost/cinder·qpid_user = guestqpid_password = guestimportant:/etc/cinder/cinder.conf is ALSO missing an essential "auth_strategy =keystone" in the section
[*]Edit /etc/cinder/api-paste.ini:
·admin_tenant_name = service·admin_user = cinderadmin_password = passwordadmin_tenant_name= service
admin_user = cinder
admin_password = password
[*]Create the LVM Physical Volume and Logical Volume:
· pvcreate /dev/sdbvgcreatecinder-volumes /dev/sdb
[*]Create Cinder tables into the database:
cinder-manage db sync
[*]Restart the services:
· service openstack-cinder-apirestart· service openstack-cinder-schedulerrestart· service openstack-cinder-volumerestart· chkconfig openstack-cinder-api on· chkconfigopenstack-cinder-scheduler onchkconfig openstack-cinder-volume onIf all cinder volumes you create result inan "error" state, and if you see entries like this in your volume.logfile:
# cat volume.log2013-08-20 20:17:31 ERROR Failed tocreate iscsi target for volume id:volume-6f57d2da-3cde-479f-9f51-b37deeab6970.Please ensure your tgtd config file contains 'include /etc/cinder/volumes/*'
2013-08-20 20:17:31 ERROR volume volume-6f57d2da-3cde-479f-9f51-b37deeab6970:create failedThe fix is clearly answered by the log filein this case.Edityour /etc/tgt/targets.conf file, and add this line near the top:
include /etc/cinder/volumes/*?OpenStack Network Service (Cloud Controller)The OpenStackNetwork Service provides a comprehensive and extendible networking service tothe cloud. Some features include, but are not limited to, the ability forinstances to reach an external network outside of the cloud as well as theability for each user of the cloud to create multiple internal subnets of theirown.
[*]Install the Quantum Server:
yum install openstack-quantumopenstack-quantum-openvswitch
[*]Configure the Quantum service:

[*]Edit /etc/quantum/quantum.conf:
··core_plugin = \·quantum.plugins.openvswitch.ovs_quantum_plugin.OVSQuantumPluginV2·auth_strategy = keystone·fake_rabbit = False·rpc_backend=quantum.openstack.common.rpc.impl_qpid·qpid_username = guestqpid_password = guest
[*]Edit /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini:
··sql_connection = mysql://quantum:password@localhost/quantum··tenant_network_type = gre·tunnel_id_ranges = 1:1000·enable_tunneling = True·local_ip = 10.10.10.10·firewall_driver = quantum.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriversql_connection =mysql://quantum:password@localhost/quantumenable_tunneling = Falsefirewall_driver =quantum.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
The Fedora kernel module for OpenVSwitch has been compiles with out support for tunnels. To use gre tunnels the module will have to be recompiled.

[*]Edit /etc/quantum/api-paste.ini:
··paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory·auth_host = 127.0.0.1·auth_port = 35357·auth_protocol = http·admin_tenant_name = service·admin_user = quantum·admin_password = password
[*]Enable the OVS plugin:
ln -s /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini/etc/quantum/plugin.ini
[*]Set SELinux to permissive mode:
[*]Start the services:
6. service quantum-server restartchkconfig quantum-server onOpenStack DashboardThe OpenStackDashboard service provides users of the cloud environment with a web-accessibleGUI as an alternative to using the command-line tools.To enable it,install the Horizon package and its dependencies:yum install httpd memcached(cat | sudo tee -a /etc/openstack-dashboard/local_settings ) <<EOFDATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'horizon','USER': 'horizon','PASSWORD': 'password','HOST': '$MY_IP','PORT': '',}}EOFOpenStackDashboard is now available at http://10.10.10.10/horizon. We canlogin with the admin /password credentialsor demo /password.
http://liuxin1982.blog./e/u/themes/default/images/spacer.gifNote
Check the /var/log/httpd/error_log file for errors that wold prevent either the Apache service or the Dashboard service from successfully starting.



lipeng 发表于 2013-10-16 15:53:48

一时的冲动,子孙的危机!

殇帝刘玢你 发表于 2013-10-16 23:04:58

吃饭与ml是第一生产力。

q2009a06z22 发表于 2013-10-17 00:30:11

走自己的路,让别人打车去吧。

奥飞火千万电 发表于 2013-10-17 07:20:32

天塌下来你顶着,我垫着!

天高云淡 发表于 2013-10-17 20:25:29

我妈常说,我们家要是没有电话就不会这么穷。

king71 发表于 2013-10-18 06:24:32

不要在一棵树上吊死,在附近几棵树上多试试死几次~
页: [1]
查看完整版本: centos6.4下openstack-grizzly安装之控制节点