Step H: Downgrade Node A - AWS Elemental Delta

This is version 2.3 of the AWS Elemental Delta documentation. This is the latest version. For prior versions, see the Previous Versions section of AWS Elemental Delta Documentation.

Step H: Downgrade Node A

The node must be in a working state prior to downgrade. If the node is in a degraded state (for example, the web interface isn't responding), the downgrade fails.

Perform these steps at the hardware unit for node A.

  1. If you're not downgrading from Delta version 2.3.1, skip this step. If you are downgrading from 2.3.1, delete the filter_stats RabbitMQ queue by using the following steps:

    1. From a Linux command prompt, locate the RabbitMQ username and password in the following directory: /etc/elemental/rabbitmq

    2. Navigate to the RabbitMQ web interface using the following address: http://delta.hostname:15672

    3. Log in to the RabbitMQ interface and choose the Queues tab.

    4. Choose filter_stats.

    5. Expand the Delete/purge section and choose Delete.

  2. Make sure that the node has timed out on the web interface before running the prepare for downgrade script.

    [elemental@hostname ~]$ sudo /opt/elemental_se/web/script/prepare_for_downgrade.sh -i ./elemental_production_delta_<version>.nnnnnn.run

    These are the guidelines for the version to use in the script:

    • If you meet the conditions in Downgrade Special Consideration, run the script for version 2.1.3.

    • If you don't meet the conditions for special consideration, run the script for the version that you're downgrading to.

  3. Enter this command to remove the existing package cache.

    [elemental@hostname ~]$ sudo rm -r /var/cache/yum/local/
  4. Run the installer as follows:

    [elemental@hostname ~]$ sudo sh ./elemental_production_delta_<version>.run –-skip-all –xeula --start --downgrade --restore-db <path/to/database/backup>

    where:

    • version: If you meet the downgrade special conditions, the version is 2.1.3. Otherwise, use the version that you're downgrading to.

    • --skip-all: Skips the configuration prompts you followed the first time you installed. The existing configuration is unchanged.

    • -xeula: Skips the prompts to read through the EULA. You are prompted once to accept it.

    • --start: Specifies to start the services without being prompted.

    • --downgrade: Tells the installer that an earlier version is being installed.

    • --restore-db <path>: Installs the backup file that you identified earlier. Specify just the filename, in this format: elemental_production_delta_n.n.n.nnnnnn_yyyy-mm-dd_hh-mm-ss

    The installer looks for the database file you specified and checks that it is a compatible version. If the file is not found or is not compatible, the downgrade fails.

    The installer automatically stops the software, if it is running. You are prompted to accept the EULA (end user license agreement).

    The new software is installed. During installation, the database is restored. Finally, all services except elemental_se are automatically restarted.

    Note

    During downgrade, the logs display a RubyVersionMismatch error. This is expected and doesn't affect the downgrade process. For reference, the full error is as follows: /opt/elemental-ruby/lib/ruby/gems/1.9.1/gems/bundler-1.11.2/lib/bundler/definition.rb:402:in `validate_ruby!': Your Ruby version is 1.9.3, but your Gemfile specified 2.3.6 (Bundler::RubyVersionMismatch)

  5. Once installation is complete, you might be prompted to reboot:

    Installation and configuration complete! . . . NOTE: You must reboot your system to finish the installation!

    Enter this command to reboot:

    [elemental@hostname ~]$ sudo reboot

    The reboot takes approximately 5 minutes. When the reboot completes, the elemental _se service automatically starts. Look for this message on the command line:

    Starting elemental_se: [ OK ]
  6. If you didn't meet the conditions for special downgrade, skip this step.

    If you met the conditions for special downgrade, run the installer with downgrade to your desired version.

    [elemental@hostname ~]$ sudo sh ./elemental_production_delta_<version>.run –-skip-all –xeula --start --downgrade --restore-db <path/to/database/backup>

    The new software is installed and all services except elemental_se are automatically restarted.

    Once installation is complete, you might be prompted to reboot:

    Installation and configuration complete! . . . NOTE: You must reboot your system to finish the installation!

    Enter this command to reboot:

    [elemental@hostname ~]$ sudo reboot

    The reboot takes approximately 5 minutes. When the reboot completes, the elemental _se service automatically starts. Look for this message on the command line:

    Starting elemental_se: [ OK ]
  7. If you're not prompted to reboot, you are prompted to start elemental_se:

    Would you like to start the Elemental service now? [Y]

    Enter Y.

    The restart takes approximately 1 minute. When the restart is done, this message appears:

    Installation and configuration complete! Please open a web browser and point it to http://xxx.xxx.xxx.xxx to get to the web interface. Enjoy!

    Node A joins the cluster. Node B is the leader now and node A is the secondary.

  8. If you're not using a health checker, add the node back to the load balancer.

  9. Refresh your web browser to load the updated AWS Elemental Delta web interface.

    When both node A and node B show as green on the Nodes tab, proceed to the next step (Downgrade Egress Nodes).