博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
How to Perform an Upgrade from Icehouse to Juno(ice升级到juno)
阅读量:4182 次
发布时间:2019-05-26

本文共 14565 字,大约阅读时间需要 48 分钟。

How to Perform an Upgrade from Icehouse to Juno

Use this procedure to upgrade a basic operational deployment of the following services: Identity (keystone), Image Service (glance), Compute (nova), Networking (neutron), dashboard (horizon), Block Storage (cinder), Orchestration (heat), and Telemetry (ceilometer). This procedure references the basic three-node architecture in the . All nodes must run a supported distribution of Linux with a recent kernel and latest Icehouse packages.

Before you begin

  • The upgrade process interrupts management of your environment including the dashboard. If you properly prepare for the upgrade, existing instances, networking, and storage should continue to operate. However, instances might experience intermittent network interruptions.

  • Review the  before upgrading to learn about new, updated, and deprecated features.

  • Consider adopting structure and options from Juno service configuration files and merging them with existing configuration files. The  contains new, updated, and deprecated options for most services.

  • For environments using the OpenStack Networking (neutron) service, verify the Icehouse version of the database:

    # su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \  --config-file /etc/neutron/plugins/ml2/ml2_conf.ini current" neutronINFO  [alembic.migration] Context impl MySQLImpl.INFO  [alembic.migration] Will assume non-transactional DDL.Current revision for mysql://neutron:XXXXX@controller/neutron: 5ac1c354a051 -> icehouse (head), icehouse

Perform a backup

  1. Save the configuration files on all nodes:

    # for i in keystone glance nova neutron openstack-dashboard cinder heat ceilometer; \  do mkdir $i-icehouse; \  done# for i in keystone glance nova neutron openstack-dashboard cinder heat ceilometer; \  do cp -r /etc/$i/* $i-icehouse/; \  done
    [Note] Note

    You can modify this example script on each node to handle different services.

  2. Back up all databases on the controller:

    # mysqldump -u root -p --opt --add-drop-database --all-databases > icehouse-db-backup.sql
    [Note] Note

    Consider updating your SQL server configuration as described in the .

Manage repositories

Complete the following steps on all nodes.

  1. Remove the repository for Icehouse packages.

  2. On Ubuntu, follow these steps:

    1. Add the repository for Juno packages:

      # echo "deb http://ubuntu-cloud.archive.canonical.com/ubuntu" \  "trusty-updates/juno main" > /etc/apt/sources.list.d/cloudarchive-juno.list
      [Note] Note

      Remove any Ubuntu Cloud archive repositories for Icehouse packages. You might also need to install or update the ubuntu-cloud-keyring package.

    2. Update the repository database.

  3. On Red Hat Enterprise Linux (RHEL), CentOS, and Fedora, follow these steps:

    1. Remove the repository for Icehouse packages:

      # yum erase rdo-release-icehouse
    2. Add the repository for Juno packages:

      # yum install http://rdo.fedorapeople.org/openstack-juno/rdo-release-juno.rpm
    3. Update the repository database.

Controller nodes

Upgrade packages to Juno

Depending on your specific configuration, upgrading all packages might restart or break services supplemental to your OpenStack environment. For example, if you use the TGT iSCSI framework for Block Storage volumes and the upgrade includes new packages for it, the package manager might restart the TGT iSCSI services and impact connectivity to volumes.

If the package manager prompts you to update configuration files, reject the changes. The package manager appends a suffix to newer versions of configuration files. Consider reviewing and adopting content from these files.

Update services

To update a service, you generally modify one or more configuration files, stop the service, synchronize the database schema, and start the service. Some services require different steps. We recommend verifying operation of each service before proceeding to the next service.

All services

These configuration changes apply to all services.

  1. In any file containing the [keystone_authtoken] section, modify Identity service access to use the identity_urioption:

    Select Text
    1
    2
    3
    [keystone_authtoken]
    ...
    identity_uri = http:
    //
    controller:35357

    Comment out any auth_hostauth_port, and auth_protocol options because the identity_uri option replaces them.

  2. In any file containing the auth_uri option, modify it to explicitly use version 2.0:

    Select Text
    1
    auth_uri = http:
    //
    controller:5000
    /v2
    .0

Identity service

  1. Edit the /etc/keystone/keystone.conf file:

    1. In the [token] section, configure the UUID token provider and SQL driver:

      Select Text
      1
      2
      3
      4
      [token]
      ...
      provider = keystone.token.providers.uuid.Provider
      driver = keystone.token.persistence.backends.sql.Token
  2. Stop the service.

  3. Clear expired tokens:

    # su -s /bin/sh -c "keystone-manage token_flush" keystone
  4. Synchronize the database schema:

    # su -s /bin/sh -c "keystone-manage db_sync" keystone
  5. Start the service.

Image Service

  1. Edit the /etc/glance/glance-api.conf file:

    1. Move the following options from the [DEFAULT] section to the [glance_store] section:

      • default_store

      • filesystem_store_datadir

      [Note] Note

      These options must contain values.

  2. Stop the services.

  3. Synchronize the database schema:

    # su -s /bin/sh -c "glance-manage db_sync" glance
  4. Start the services.

Compute service

  1. Edit the /etc/nova/nova.conf file:

    1. In the [DEFAULT] section, rename the glance_host option to host and move it to the [glance] section.

    2. In the [DEFAULT] section, rename the following options and move them to the [neutron] section:

      Old options New options
      neutron_url url
      neutron_auth_strategy auth_strategy
      neutron_admin_tenant_name admin_tenant_name
      neutron_admin_username admin_username
      neutron_admin_password admin_password
      neutron_admin_auth_url admin_auth_url
      service_neutron_metadata_proxy service_metadata_proxy
      neutron_metadata_proxy_shared_secret metadata_proxy_shared_secret
  2. Stop the services.

  3. Synchronize the database schema:

    # su -s /bin/sh -c "nova-manage db sync" nova
  4. Start the services.

Networking service

  1. Edit the /etc/neutron/neutron.conf file:

    1. In the [DEFAULT] section, change the value of the rpc_backend option:

      neutron.openstack.common.rpc.impl_kombu becomes rabbit

    2. In the [DEFAULT] section, change the value of the core_plugin option:

      neutron.plugins.ml2.plugin.Ml2Plugin becomes ml2

    3. In the [DEFAULT] section, change the value or values of the service_plugins option to use short names. For example:

      neutron.services.l3_router.l3_router_plugin.L3RouterPlugin becomes router

    4. In the [DEFAULT] section, explicitly define a value for the nova_region_name option. For example:

      Select Text
      1
      2
      3
      [DEFAULT]
      ...
      nova_region_name = regionOne
  2. Stop the services.

  3. Synchronize the database schema:

    # su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \  --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade juno" neutron
  4. Start the services.

Dashboard

In typical environments, updating the dashboard only requires restarting the services.

  • Restart the services.

Block Storage service

  1. Edit the /etc/cinder/cinder.conf file:

    1. In the [DEFAULT] section, add the following option:

      Select Text
      1
      my_ip = controller
  2. Stop the services.

  3. Synchronize the database schema:

    # su -s /bin/sh -c "cinder-manage db sync" cinder
  4. Start the services.

Orchestration service

  1. Create the heat_stack_owner role if it does not exist:

    # keystone role-create --name heat_stack_owner
  2. Edit the /etc/heat/heat.conf file:

    1. In the [DEFAULT] section, change the value of the rpc_backend option:

      heat.openstack.common.rpc.impl_kombu becomes rabbit

  3. Stop the services.

  4. Synchronize the database schema:

    # su -s /bin/sh -c "heat-manage db_sync" heat
  5. Start the services.

Telemetry service

In typical environments, updating the Telemetry service only requires restarting the services.

  • Restart the services.

Network nodes

Upgrade packages to Juno

Explicitly install the ipset package if your distribution does not install it as a dependency.

Depending on your specific configuration, upgrading all packages might restart or break services supplemental to your OpenStack environment. For example, if you use the TGT iSCSI framework for Block Storage volumes and the upgrade includes new packages for it, the package manager might restart the TGT iSCSI services and impact access to volumes.

If the package manager prompts you to update configuration files, reject the changes. The package manager appends a suffix to newer versions of configuration files. Consider reviewing and adopting content from these files.

Update services

To update a service, you generally modify one or more configuration files, stop the service, synchronize the database schema, and start the service. Some services require different steps. We recommend verifying operation of each service before proceeding to the next service.

All services

These configuration changes apply to all services.

  1. In any file containing the [keystone_authtoken] section, modify Identity service access to use the identity_urioption:

    Select Text
    1
    2
    3
    [keystone_authtoken]
    ...
    identity_uri = http:
    //
    controller:35357

    Comment out any auth_hostauth_port, and auth_protocol options because the identity_uri option replaces them.

  2. In any file containing the auth_uri option, modify it to explicitly use version 2.0:

    Select Text
    1
    auth_uri = http:
    //
    controller:5000
    /v2
    .0

Networking service

  1. Edit the /etc/neutron/neutron.conf file:

    1. In the [DEFAULT] section, change the value of the rpc_backend option:

      neutron.openstack.common.rpc.impl_kombu becomes rabbit

    2. In the [DEFAULT] section, change the value of the core_plugin option:

      neutron.plugins.ml2.plugin.Ml2Plugin becomes ml2

    3. In the [DEFAULT] section, change the value or values of the service_plugins option to use short names. For example:

      neutron.services.l3_router.l3_router_plugin.L3RouterPlugin becomes router

    4. In the [DEFAULT] section, explicitly define a value for the nova_region_name option. For example:

      Select Text
      1
      2
      3
      [DEFAULT]
      ...
      nova_region_name = regionOne
    5. In the [database] section, remove any connection options because the Networking service uses the message queue instead of direct access to the database.

  2. Restart the services.

Compute nodes

Upgrade packages to Juno

Explicitly install the ipset package if your distribution does not install it as a dependency.

Depending on your specific configuration, upgrading all packages might restart or break services supplemental to your OpenStack environment. For example, if you use the TGT iSCSI framework for Block Storage volumes and the upgrade includes new packages for it, the package manager might restart the TGT iSCSI services and impact access to volumes.

If the package manager prompts you to update configuration files, reject the changes. The package manager appends a suffix to newer versions of configuration files. Consider reviewing and adopting content from these files.

Update services

To update a service, you generally modify one or more configuration files, stop the service, synchronize the database schema, and start the service. Some services require different steps. We recommend verifying operation of each service before proceeding to the next service.

All services

These configuration changes apply to all services.

  1. In any file containing the [keystone_authtoken] section, modify Identity service access to use the identity_urioption:

    Select Text
    1
    2
    3
    [keystone_authtoken]
    ...
    identity_uri = http:
    //
    controller:35357

    Comment out any auth_hostauth_port, and auth_protocol options because the identity_uri option replaces them.

  2. In any file containing the auth_uri option, modify it to explicitly use version 2.0:

    Select Text
    1
    auth_uri = http:
    //
    controller:5000
    /v2
    .0

Compute service

  1. Edit the /etc/nova/nova.conf file:

    1. In the [DEFAULT] section, rename the glance_host option to host and move it to the [glance] section.

    2. In the [DEFAULT] section, rename the following options and move them to the [neutron] section:

      Old options New options
      neutron_url url
      neutron_auth_strategy auth_strategy
      neutron_admin_tenant_name admin_tenant_name
      neutron_admin_username admin_username
      neutron_admin_password admin_password
      neutron_admin_auth_url admin_auth_url
      service_neutron_metadata_proxy service_metadata_proxy
      neutron_metadata_proxy_shared_secret metadata_proxy_shared_secret
    3. In the [database] section, remove any connection options because the Compute service uses the message queue instead of direct access to the database.

  2. Restart the services.

Networking service

  1. Edit the /etc/neutron/neutron.conf file:

    1. In the [DEFAULT] section, change the value of the rpc_backend option:

      neutron.openstack.common.rpc.impl_kombu becomes rabbit

    2. In the [DEFAULT] section, change the value of the core_plugin option:

      neutron.plugins.ml2.plugin.Ml2Plugin becomes ml2

    3. In the [DEFAULT] section, change the value or values of the service_plugins option to use short names. For example:

      neutron.services.l3_router.l3_router_plugin.L3RouterPlugin becomes router

    4. In the [DEFAULT] section, explicitly define a value for the nova_region_name option. For example:

      Select Text
      1
      2
      3
      [DEFAULT]
      ...
      nova_region_name = regionOne
    5. In the [database] section, remove any connection options because the Networking service uses the message queue instead of direct access to the database.

  2. Restart the services.

Storage nodes

Upgrade packages to Juno

Depending on your specific configuration, upgrading all packages might restart or break services supplemental to your OpenStack environment. For example, if you use the TGT iSCSI framework for Block Storage volumes and the upgrade includes new packages for it, the package manager might restart the TGT iSCSI services and impact access to volumes.

If the package manager prompts you to update configuration files, reject the changes. The package manager appends a suffix to newer versions of configuration files. Consider reviewing and adopting content from these files.

Update services

To update a service, you generally modify one or more configuration files, stop the service, synchronize the database schema, and start the service. Some services require different steps. We recommend verifying operation of each service before proceeding to the next service.

All services

These configuration changes apply to all services.

  1. In any file containing the [keystone_authtoken] section, modify Identity service access to use the identity_urioption:

    Select Text
    1
    2
    3
    [keystone_authtoken]
    ...
    identity_uri = http:
    //
    controller:35357

    Comment out any auth_hostauth_port, and auth_protocol options because the identity_uri option replaces them.

  2. In any file containing the auth_uri option, modify it to explicitly use version 2.0:

    Select Text
    1
    auth_uri = http:
    //
    controller:5000
    /v2
    .0

Block Storage service

In typical environments, updating the Block Storage service only requires restarting the services.

  • Restart the services.

转载地址:http://mzyoi.baihongyu.com/

你可能感兴趣的文章
solr原子更新功能
查看>>
greenplum + pgsql和Hadoop+hive+hbase
查看>>
cpu,硬盘,内存
查看>>
Elasticsearch 合理内存分配
查看>>
elasticsearch 与 hive集成
查看>>
ElasticSearch 2 的节点调优(ElasticSearch性能)
查看>>
Elasticsearch与hadoop比较
查看>>
raid5
查看>>
eclipse中调试solr
查看>>
solr有关Pig0.12.0和Solr4.10.2
查看>>
建议使用Solr或ElasticSearch这样的封装了
查看>>
图形数据库Neo4J简介
查看>>
JDBC 连接 带实例名的SQL Server
查看>>
mysql多实例的配置和管理
查看>>
DB2和GreenPlum对比
查看>>
PostgreSQL与Oracle的差异对比
查看>>
java多线程:线程池的原理及实现
查看>>
Java线程:概念与原理
查看>>
redis有序集内部实现原理
查看>>
Redis架构设计
查看>>