diff --git a/doc/openstack-ops/ch_ops_upgrades.xml b/doc/openstack-ops/ch_ops_upgrades.xml
index 861b6cbe..9f79e45e 100644
--- a/doc/openstack-ops/ch_ops_upgrades.xml
+++ b/doc/openstack-ops/ch_ops_upgrades.xml
@@ -1395,8 +1395,8 @@ rabbit_password = RABBIT_PASSUpgrade the database:#neutron-db-manage --config-file /etc/neutron/neutron.conf \
--config-file /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini stamp havana
- #neutron-db-manage --config-file /etc/neutron/neutron.conf \
- --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade icehouse
+#neutron-db-manage --config-file /etc/neutron/neutron.conf \
+--config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade icehousePerform the conversion from OVS to ML2:#python -m neutron.db.migration.migrate_to_ml2 openvswitch \
@@ -1541,8 +1541,8 @@ service_plugins = router
#service cinder-volume restart
-
+
How to Perform an Upgrade from Havana to Icehouse—Red Hat
@@ -1573,19 +1573,60 @@ service_plugins = router
Upgrade Considerations
- Always review the release notes before performing an upgrade to learn
- about newly available features that you might want to enable
- and deprecated features that you should disable.
+
+
+ Review the Icehouse Release Notes before you upgrade to learn
+ about new features that you might want to enable and
+ deprecated features that you should disable.
+
+
+ Consider adopting conventions associated with newer
+ configuration files and merging them with your existing
+ configuration files after completing the upgrade process.
+ You can find newer versions of existing configuration files
+ with the following command:
+ #find /etc -name *.rpmnew
+
+
+ Icehouse disables file injection by default per the
+ Icehouse Release Notes.
+ If you plan to deploy Icehouse in stages, you must
+ disable file injection on all compute nodes that remain on
+ Havana. This is done by editing the /etc/nova/nova-compute.conf
+ file:
+ [libvirt]
+ ...
+ libvirt_inject_partition = -2
+
+
+ You must convert the configuration for your
+ environment contained in the
+ /etc/neutron/neutron.conf and
+ /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini
+ files from OVS to ML2. For example, the OpenStack Installation
+ Guide covers ML2 plug-in configuration using GRE
+ tunnels.
+ Keep the OVS plug-in packages and configuration files
+ until you verify the upgrade.
+
+ Perform a Backup
- Save the configuration files on all nodes, as shown
- here:
- #for i in keystone glance nova cinder neutron openstack-dashboard; \
- do mkdir $i-havana; \
- done
+
+
+ Save the configuration files on all nodes:
+ #for i in keystone glance nova cinder neutron openstack-dashboard; \
+do mkdir $i-havana; \
+done#for i in keystone glance nova cinder neutron openstack-dashboard; \
do cp -r /etc/$i/* $i-havana/; \
done
@@ -1593,6 +1634,8 @@ service_plugins = router
You can modify this example script on each node to
handle different services.
+
+ Back up all databases on the controller:#mysqldump -u root -p --opt --add-drop-database --all-databases > havana-db-backup.sql
@@ -1604,108 +1647,82 @@ service_plugins = router
>OpenStack Installation
Guide.
+
+ Manage Repositories
- On all nodes, remove the repository for Havana packages
- and add the repository for Icehouse packages:
- #yum erase rdo-release-havana
-#yum install http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/ \
+
+ Complete the following actions on all nodes.
+
+ Remove the repository for Havana packages:
+ #yum erase rdo-release-havana
+
+
+ Add the repository for Icehouse packages:
+ #yum install http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/ \
rdo-release-icehouse-3.noarch.rpm
-
+
+ Disable any automatic package updates.
-
- Consider checking for newer versions of the You should check for newer versions of the Icehouse repository.
-
-
- Upgrade Notes
-
-
- Disable Compute file injection:
- Icehouse disables file injection by default per the
- release notes.
- If you plan to deploy Icehouse in stages, you must
- disable file injection on all compute nodes that will
- remain on Havana.
- Edit the
- /etc/nova/nova-compute.conf
- file:
- [libvirt]
-...
-libvirt_inject_partition = -2
-
-
- Convert from OVS to ML2 plug-in:
- You must convert the configuration for your
- environment contained in the
- /etc/neutron/neutron.conf and
- /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini
- files from OVS to ML2. For example, the OpenStack Installation
- Guide covers ML2 plug-in configuration using GRE
- tunnels.
- We recommend keeping the OVS plug-in packages and
- configuration files until you verify the upgrade.
-
-
+
+
Upgrade the Controller Node
- Upgrade packages on the controller node to Icehouse, as
- follows:
+
+
+ Upgrade packages on the controller node to Icehouse:#yum upgradeThe package manager appends .rpmnew
to the end of newer versions of existing configuration
- files. You should consider adopting conventions associated
- with the newer configuration files and merging them with
- your existing configuration files after completing the
- upgrade process. You can find newer versions of existing
- configuration files with the following command:
- #find /etc -name *.rpmnew
+ files.
+
+ Upgrade Each ServiceThe upgrade procedure for each service typically requires
that you stop the service, run the database synchronization
command to update the associated database, and start the
- service to apply the new configuration. You need administrator
- privileges for these procedures. Some services require
+ service to apply the new configuration. You will need administrator
+ privileges for these procedures. Some services will require
additional steps.
-
-
- OpenStack Identity:
- Update the configuration file for compatibility with
- Icehouse.
- Edit the
- /etc/keystone/keystone.conf
- file:
- Add the [database] section.
- Move the key from the
- [sql] section to the
- [database] section.
- Stop services, upgrade the database, and start
- services.
- #service openstack-keystone stop
-#keystone-manage token_flush
-#keystone-manage db_sync
-#service openstack-keystone start
-
-
- OpenStack Image Service:
- Before you upgrade the Image Service database, convert
+
+ Upgrade OpenStack Identity
+
+ Edit the /etc/keystone/keystone.conf
+ file for compatibility for Icehouse:
+
+ Add the [database] section.
+ Move the key from
+ the[sql] section to the
+ [database] section.
+
+
+ Stop the services:
+ #service openstack-keystone stop
+ #keystone-manage token_flush
+
+ Upgrade the database:
+ #keystone-manage db_sync
+
+ Start the services:
+ #service openstack-keystone start
+
+
+
+ OpenStack Image Service:
+ Before upgrading the Image Service database, you must convert
the character set for each table to UTF-8.
- Use the MySQL client to run the following
+ Use the MySQL client to run the following
commands:#mysql -u root -pmysql>SET foreign_key_checks = 0;
@@ -1722,70 +1739,80 @@ libvirt_inject_partition = -2
additional tables that you must convert to UTF-8 by
using similar commands.
- Update the configuration for compatibility with
- Icehouse.
- Edit the
- /etc/glance/glance-api.conf and
- /etc/glance/glance-registry.conf
- files:
- Add the [database] section.
- Rename the key to
+
+
+ Edit the /etc/glance/glance-api.conf
+ and /etc/glance/glance-registry.conf
+ files for compatibility with Icehouse:
+
+ Add the [database] section.
+
+ Rename the key to
and move it to the
- [database] section.
+ [database] section.
+
+
+ Edit the
/etc/glance/glance-api.conf
- file:
- Add Qpid message broker keys to the
- [DEFAULT] section.
+ file, and add the Qpid message broker keys to the
+ [DEFAULT] section:[DEFAULT]
...
rpc_backend = qpid
qpid_hostname = controller
+
+ Stop the services:Stop services, upgrade the database, and start
services:#service openstack-glance-api stop
-#service openstack-glance-registry stop
-#glance-manage db_sync
-#service openstack-glance-api start
+#service openstack-glance-registry stop
+
+ Upgrade the database:
+ #glance-manage db_sync
+
+ Start the services:
+ #service openstack-glance-api start#service openstack-glance-registry start
-
-
- OpenStack Compute:
- Update the configuration for compatibility with
- Icehouse.
- Edit the /etc/nova/nova.conf
- file:
- Change the key from
+
+
+
+ Upgrading OpenStack Compute:
+ Edit the /etc/nova/nova.conf
+ file and change the key from
nova.openstack.common.rpc.impl_qpid
- to qpid.
- Edit the /etc/nova/api-paste.ini
- file:
- Comment out or remove any keys in the
- [filter:authtoken] section beneath
+ to qpid.
+ Edit the /etc/nova/api-paste.ini
+ file and comment out or remove any keys in the
+ [filter:authtoken] section beneath
the paste.filter_factory =
- keystoneclient.middleware.auth_token:filter_factory
- statement.
- Stop services, upgrade the database, and start
- services.
+ keystoneclient.middleware.auth_token:filter_factory
+ statement.
+ Stop the services:#service openstack-nova-api stop#service openstack-nova-scheduler stop#service openstack-nova-conductor stop#service openstack-nova-cert stop#service openstack-nova-consoleauth stop
-#service openstack-nova-novncproxy stop
-#nova-manage db sync
-#service openstack-nova-api start
+#service openstack-nova-novncproxy stop
+
+ Upgrade the database:
+ #nova-manage db sync
+
+ Start the services:
+ #service openstack-nova-api start#service openstack-nova-scheduler start#service openstack-nova-conductor start#service openstack-nova-cert start#service openstack-nova-consoleauth start#service openstack-nova-novncproxy start
-
-
- OpenStack Networking:
+
+
+
+ Upgrade OpenStack NetworkingBefore upgrading the Networking database, you must
convert the character set for each table to UTF-8.
- Use the MySQL client to execute the following
+ Use the MySQL client to execute the following
commands:#mysql -u root -pmysql>USE neutron;
@@ -1827,43 +1854,58 @@ qpid_hostname = controller
you must also convert to UTF-8 by using similar
commands.
- Install the ML2 plug-in package:
- #yum install openstack-neutron-ml2
- Populate the
+
+ Install the ML2 plug-in package:
+ #yum install openstack-
+ neutron-ml2
+ Populate the
/etc/neutron/plugins/ml2/ml2_conf.ini
file with the equivalent configuration for your
- environment. Do not edit the
- /etc/neutron/neutron.conf file
- until after the conversion steps.
- Change the
- /etc/neutron/plugin.ini symbolic
- link to reference
- /etc/neutron/plugins/ml2/ml2_conf.ini.
- Stop services, upgrade the database, and perform the
- conversion from OVS to ML2.
- Replace NEUTRON_DBPASS with
- the password you chose for the database.
-
- We highly recommend that you perform a database
- backup prior to executing the following commands as the
- conversion script cannot roll back.
-
- #service neutron-server stop
+ environment.
+ Do not edit the /etc/neutron/neutron.conf
+ file until after the conversion steps.
+
+ Change the /etc/neutron/plugin.ini
+ symbolic link to reference
+ /etc/neutron/plugins/ml2/ml2_conf.ini.
+ Stop services:
+ #service neutron-server stop
+
+ Upgrade the database:
+ #neutron-db-manage --config-file /etc/neutron/neutron.conf \
+ --config-file /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini stamp havana#neutron-db-manage --config-file /etc/neutron/neutron.conf \
+--config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade icehouse
+ Perform the conversion from OVS to ML2:
+ #python -m neutron.db.migration.migrate_to_ml2 openvswitch \
+
+ Replace NEUTRON_DBPASS with
+ the password you chose for the database.
+ mysql://neutron:NEUTRON_DBPASS@controller/neutron
+
+
+
+ Because the conversion script cannot roll back,
+ you must perform a database backup prior to executing
+ the following commands.
+
+ Stop the service:
+ #service neutron-server stop
+
+ Upgrade the database:
+ #neutron-db-manage --config-file /etc/neutron/neutron.conf \
--config-file /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini stamp havana#neutron-db-manage --config-file /etc/neutron/neutron.conf \
- --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade icehouse
-#python -m neutron.db.migration.migrate_to_ml2 openvswitch \
+ --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade icehouse
+
+ Perform the conversion from OVS to ML2:
+ #python -m neutron.db.migration.migrate_to_ml2 openvswitch \
mysql://neutron:NEUTRON_DBPASS@controller/neutron
- Edit the
+
+ Edit the
/etc/neutron/neutron.conf file to
use the ML2 plug-in and enable network change
notifications:
- Replace SERVICE_TENANT_ID
- with the service tenant identifier (id) in the Identity
- service and NOVA_PASS with the
- password you chose for the nova user in
- the Identity service.[DEFAULT]
...
core_plugin = ml2
@@ -1877,141 +1919,165 @@ nova_admin_tenant_id = SERVICE_TENANT_ID
nova_admin_password = NOVA_PASS
nova_admin_auth_url = http://controller:35357/v2.0
- Start Networking services.
+ Replace SERVICE_TENANT_ID
+ with the service tenant identifier (id) in the Identity
+ service and NOVA_PASS with the
+ password you chose for the nova user in
+ the Identity service.
+
+ Start Networking services.#service neutron-server start
-
-
- OpenStack Block Storage:
- Stop services, upgrade the database, and start
- services.
+
+
+
+ Upgrade OpenStack Block Storage
+ Stop services:#service openstack-cinder-api stop#service openstack-cinder-volume stop
-#service openstack-cinder-scheduler stop
-#cinder-manage db sync
-#service openstack-cinder-api start
+#service openstack-cinder-scheduler stop
+
+ Upgrade the database:
+#cinder-manage db sync
+
+ Start services:
+ #service openstack-cinder-api start#service openstack-cinder-volume start#service openstack-cinder-scheduler start
-
-
- Dashboard:
- Update the configuration for compatibility with
- Icehouse.
- Edit the
- /etc/openstack-dashboard/local_settings
- file:
- Change the
- key
- from "Member" to
- "_member_".
- Restart Dashboard services.
+
+
+
+ Update Dashboard
+ Edit the /etc/openstack-dashboard/local_settings
+ file and change the
+ key from "Member" to "_member_"
+ .
+ Restart Dashboard services:#service httpd restart
-
-
+
+
The controller node update is complete. Now you can
upgrade the remaining nodes.Upgrade the Network Node
- Upgrade packages on the network node to Icehouse:
+
+ Upgrade packages on the network node to Icehouse:Make sure you have removed the repository for Havana
packages and added the repository for Icehouse
packages.#yum upgrade
- Install the ML2 plug-in package:
+
+ Install the ML2 plug-in package:#yum install openstack-neutron-ml2
- Edit the /etc/neutron/neutron.conf
+
+ Edit the /etc/neutron/neutron.conf
file to use the ML2 plug-in:[DEFAULT]
core_plugin = ml2
service_plugins = router
- Populate the
+
+ Populate the
/etc/neutron/plugins/ml2/ml2_conf.ini
file with the equivalent configuration for your
- environment.
- Change the /etc/neutron/plugin.ini
+ environment.
+ Change the /etc/neutron/plugin.ini
symbolic link to reference
- /etc/neutron/plugins/ml2/ml2_conf.ini.
- Clean the active OVS configuration:
+ /etc/neutron/plugins/ml2/ml2_conf.ini
+ .
+ Clean the active OVS configuration:#service neutron-ovs-cleanup restart
- Restart Networking services:
+
+ Restart Networking services:#service neutron-dhcp-agent restart#service neutron-l3-agent restart#service neutron-metadata-agent restart#service neutron-openvswitch-agent restart
+
+ Upgrade the Compute Nodes
- Upgrade packages on the compute nodes to Icehouse:
+
+ Upgrade packages on the compute nodes to Icehouse:Make sure you have removed the repository for Havana
packages and added the repository for Icehouse
packages.#yum upgrade
- Install the ML2 plug-in package:
+
+ Install the ML2 plug-in package:#yum install openstack-neutron-ml2
- Edit the /etc/neutron/neutron.conf
+
+ Edit the /etc/neutron/neutron.conf
file to use the ML2 plug-in:[DEFAULT]
core_plugin = ml2
service_plugins = router
- Populate the
+
+ Populate the
/etc/neutron/plugins/ml2/ml2_conf.ini
file with the equivalent configuration for your
environment.
- Change the /etc/neutron/plugin.ini
+
+ Change the /etc/neutron/plugin.ini
symbolic link to reference
/etc/neutron/plugins/ml2/ml2_conf.ini.
- Clean the active OVS configuration:
+
+ Clean the active OVS configuration:#service neutron-ovs-cleanup restart
- Restart Networking services:
+
+ Restart Networking services:#service neutron-openvswitch-agent restart
- Restart Compute services:
+
+ Restart Compute services:#service openstack-nova-compute restart
+
+ Upgrade the Storage Nodes
- Upgrade packages on the storage nodes to Icehouse:
+
+ Upgrade packages on the storage nodes to Icehouse:Make sure you have removed the repository for Havana
packages and added the repository for Icehouse
packages.#yum upgrade
- Restart Block Storage services.
+
+ Restart Block Storage service:#service openstack-cinder-volume restart
-
+
+
+
Cleaning Up and Final Configuration File Updates
-
On all distributions, you must perform some final tasks to
complete the upgrade process.upgradingfinal steps
-
- Decrease DHCP timeouts by modifying
+
+ Decrease DHCP timeouts by modifying
/etc/nova/nova.conf on the compute nodes
- back to the original value for your environment.
-
- Update all .ini files to match
+ back to the original value for your environment.
+ Update all .ini files to match
passwords and pipelines as required for Havana in your
- environment.
-
- After a migration, your users see different results from
+ environment.
+ After migration, users see different results from
nova image-list and glance
- image-list unless you match policies for access to
- private images. To do so, edit the
- /etc/glance/policy.json and
- /etc/nova/policy.json files to contain
+ image-list. To ensure users see the same images in
+ the list commands, edit the /etc/glance/policy.json
+ and /etc/nova/policy.json files to contain
"context_is_admin": "role:admin", which limits
- access to private images for projects.
-
- Thoroughly test the environment. Then, let your users know
- that their cloud is running normally again.
+ access to private images for projects.
+ Thoroughly test the environment. Then, let your users
+ know that their cloud is running normally again.
+