- Воздействие на пользователей
- Анализ модернизации
- Выполнение резервного копирования
- Управление репозиториями
- Обновление файлов настройки
- Пакеты модернизации на узле контроллера
- Останов служб, обновление схем базы данных и перезапуск служб на контроллере узла
- Пакеты модернизации и перезапуск служб на вычислительном узле
- Пакеты модернизации и перезапуск служб на узле блочного хранилища
В данном разделе мы предполагаем, что вы начинаете с архитектурой, представленной в Руководстве по установке OpenStack и выполняете модернизацию для той же архитектуры Havana. Все узлы должны выполнять Ubuntu 12.04 LTS. В данном разделе в первую очередь обсуждаются службы ядра OpenStack, такие, как служба идентификации (keystone), служба образов (glance), вычислительные ресурсы (nova), включающие сетевую среду, блочные хранилища (cinder), а также инструментальную панель.
Процесс модернизации прерывает управление вашей средой, в том числе через инструментальную панель. Если вы правильно подготовитесь к данной модернизации, экземпляры владельцев нормально продолжат свою работу.
Перед выполнением модернизации всегда просматривайте замечания к редакции для ознакомления с новой доступной функциональностью, которую, возможно, вы допустите, при этом устаревшие свойства вы должны отключить.
На всех узлах сохраните файлы настройки, как показано здесь:
# for i in keystone glance nova cinder openstack-dashboard; \ do mkdir $i-grizzly; \ done # for i in keystone glance nova cinder openstack-dashboard; \ do cp -r /etc/$i/* $i-grizzly/; \ done
Замечание | |
---|---|
Вы можете изменить данный пример сценария на каждом узле для обработки различных служб. |
Выполните резервное копирование всех баз данных на контроллере:
# mysqldump -u root -p --opt --add-drop-database \ --all-databases > grizzly-db-backup.sql
Удалите репозиторий для пакетов Grizzly на всех узлах или добавьте репозиторий для пакетов Havana:
# apt-add-repository -r cloud-archive:grizzly # apt-add-repository cloud-archive:havana
Предостережение | |
---|---|
Проверьте, что все автоматические обновления запрещены. |
Модернизируйте настройку glance на узле контроллера для совместимости с Havana.
Добавьте и измените следующие ключи в файлах
/etc/glance/glance-api.conf
и
/etc/glance/glance-registry.conf
:
[keystone_authtoken] auth_uri = http://controller:5000 auth_host = controller admin_tenant_name = service admin_user = glance admin_password = GLANCE_PASS [paste_deploy] flavor = keystone
Если они присутствуют в текущее время, удалите следующие ключи из раздела
[filter:authtoken]
в файлах
/etc/glance/glance-api-paste.ini
и
/etc/glance/glance-registry-paste.ini
:
[filter:authtoken] flavor = keystone
Измените настройку nova на всех узлах для совместимости с Havana.
Добавьте раздел [database]
и
связанный с ним ключ в раздел файла /etc/nova/nova.conf
:
[database] connection = mysql://nova:NOVA_DBPASS@controller/nova
Удалите вышедшие из употребления настройки из раздела
[DEFAULT]
в файле
/etc/nova/nova.conf
:
[DEFAULT] sql_connection = mysql://nova:NOVA_DBPASS@controller/nova
Добавьте или измените следующие ключи в файле /etc/nova/nova.conf
:
[keystone_authtoken] auth_uri = http://controller:5000/v2.0 auth_host = controller auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = nova admin_password = NOVA_PASS
Следующим образом увеличьте время владения DHCP (измеряемое в секундах)
на всех вычислительных узлах в файле
/etc/nova/nova.conf
для
разрешения всем активным экземплярам продолжать владеть
своими IP адресами в процессе модернизации:
[DEFAULT] dhcp_lease_time = 86400
Предостережение | |
---|---|
Установка этих значений слишком большими может вызвать в более динамичной среде выход за пределы доступных IP адресов. Используйте значения, соответствующие вашей среде. |
Вы должны перезапустить dnsmasq и компоненты сети для обновления значения нового времени владения:
# pkill -9 dnsmasq # service nova-network restart
Измените настройки Cinder в контроллере и узлах хранения для совместимости с Havana.
Добавьте и измените следующие ключи в файл /etc/cinder/cinder.conf
:
[keystone_authtoken] auth_uri = http://controller:5000
Измените настройку инструментальной панели на узле контроллера для совместимости с Havana.
Процедура установки и настройки файла инструментальной панели
претерпела существенные изменения при переходе с Grizzly на Havana.
В частности, если вы работаете под Django 1.5 или более поздними версиями,
вы должны убедиться, что /etc/openstack-dashboard/local_settings
содержат правильно настроенные ключиALLOWED_HOSTS
,
которые имеют в своем составе список имен хостов,
распознаваемый инструментальной панелью.
Если пользователи осуществляют доступ к вашей инструментальной панели с использованием
http://dashboard.example.com,
определите ALLOWED_HOSTS
следующим образом:
ALLOWED_HOSTS=['dashboard.example.com']
Если пользователи осуществляют доступ к вашей инструментальной панели
в локальной системе, определите ALLOWED_HOSTS
следующим образом:
ALLOWED_HOSTS=['localhost']
Если пользователи осуществляют доступ к вашей инструментальной панели
при помощи IP адреса в добавление к имени хоста, определите ALLOWED_HOSTS
следующим образом:
ALLOWED_HOSTS=['dashboard.example.com', '192.168.122.200']
Модернизируйте пакеты на узле контроллера для Havana следующим образом:
# apt-get update # apt-get dist-upgrade
Замечание | |
---|---|
В зависимости от особенностей настройки, выполнение |
Администратор пакетов выдает вам приглашение для модернизации различных
файлов настройки. Откажитесь от данных изменений. Администратор пакетов
добавит .dpkg-dist
к новым версиям существующих
файлов настройки. Вы должны проанализировать принятые соглашения, связанные с
более новыми файлами настройки и объедините их с существующими файлами настройки
после завершения процесса модернизации.
Остановите все службы, выполните, если это необходимо, команду синхронизации базы данных для обновления схемы базы данных и перезапустите все службы для принятия новых настроек. Перечислим некоторые службы, требующие дополнительные команды:
- Идентификация OpenStack
-
# service keystone stop # keystone-manage token_flush # keystone-manage db_sync # service keystone start
- Служба образов OpenStack
-
# service glance-api stop # service glance-registry stop # glance-manage db_sync # service glance-api start # service glance-registry start
- Вычислительная среда OpenStack
-
# service nova-api stop # service nova-scheduler stop # service nova-conductor stop # service nova-cert stop # service nova-consoleauth stop # service nova-novncproxy stop # nova-manage db sync # service nova-api start # service nova-scheduler start # service nova-conductor start # service nova-cert start # service nova-consoleauth start # service nova-novncproxy start
- Блочное хранилище OpenStack
-
# service cinder-api stop # service cinder-scheduler stop # cinder-manage db sync # service cinder-api start # service cinder-scheduler start
Модернизация узла контроллера завершена. Теперь вы можете приступить к модернизации вычислительных узлов.
Модернизируйте пакеты на вычислительных узлах для редакции Havana:
# apt-get update # apt-get dist-upgrade
Замечание | |
---|---|
Проверьте, что вы удалили репозиторий для пакетов Grizzly и добавили репозиторий для пакетов Havana. |
Предостережение | |
---|---|
Из-за проблем с упаковкой пакетов данная команда может завершиться со следующей ошибкой: Errors were encountered while processing: /var/cache/apt/archives/ qemu-utils_1.5.0+dfsg-3ubuntu5~cloud0_amd64.deb /var/cache/apt/archives/ qemu-system-common_1.5.0+dfsg-3ubuntu5~cloud0_ amd64.deb E: Sub-process /usr/bin/dpkg returned an error code (1) Устраните эту проблему, выполнив данную команду: # apt-get -f install |
Система работы с пакетами пригласит вас модернизировать файл
/etc/nova/api-paste.ini
.
Как и в случае с модернизацией контроллера мы рекомендуем вам отказаться
от этих изменений и просмотреть файл .dpkg-dist
после завершения процесса модернизации.
Перезапустите вычислительные службы:
# service nova-compute restart # service nova-network restart # service nova-api-metadata restart
Модернизируйте узлы хранения для редакции Havana:
# apt-get update # apt-get dist-upgrade
Замечание | |
---|---|
Убедитесь, что вы удалили репозиторий для пакетов Grizzly и добавили репозиторий для пакетов Havana. |
Система работы с пакетами пригласит вас модернизировать файл
/etc/cinder/api-paste.ini
.
Как и в случае с модернизацией контроллера мы рекомендуем вам отказаться
от этих изменений и просмотреть файл .dpkg-dist
после завершения процесса модернизации.
Перезапустите службы блочного хранилища:
# service cinder-volume restart