Ambari Upgrade Guide
Also available as:
PDF

Upgrade Ambari

  1. If you are running Ambari Metrics service in your cluster, stop the service. From Ambari Web, browse to Services > Ambari Metrics and select Stop from the Service Actions menu.

  2. Stop the Ambari Server. On the host running Ambari Server:

    ambari-server stop

  3. Stop all Ambari Agents. On each host in your cluster running an Ambari Agent:

    ambari-agent stop

  4. Fetch the new Ambari repo and replace the old repository file with the new repository file on all hosts in your cluster.

    [Important]Important

    Check your current directory before you download the new repository file to make sure that there are no previous versions of the ambari.repo file. If you do not, and a previous version exists, the new download will be saved with a numeric extension, such as ambari.repo.1. Make sure that the version you copy is the new version.

    Select the repository appropriate for your environment from the following list:

    • For RHEL/CentOS/Oracle Linux 6:

      wget -nv http://dev.hortonworks.com.s3.amazonaws.com/ambari/centos6/2.x/updates/2.1.2.1/ambari.repo -O /etc/yum.repos.d/ambari.repo
    • For RHEL/CentOS/Oracle Linux 7:

      wget -nv http://dev.hortonworks.com.s3.amazonaws.com/ambari/centos7/2.x/updates/2.1.2.1/ambari.repo -O /etc/yum.repos.d/ambari.repo
    • For SLES 11:

      wget -nv http://dev.hortonworks.com.s3.amazonaws.com/ambari/suse11/2.x/updates/2.1.2.1/ambari.repo -O /etc/zypp/repos.d/ambari.repo
    • For Ubuntu 12:

      wget -nv http://dev.hortonworks.com.s3.amazonaws.com/ambari/ubuntu12/2.x/updates/2.1.2.1/ambari.list -O /etc/apt/sources.list.d/ambari.list
    • For Ubuntu 14:

      wget -nv http://dev.hortonworks.com.s3.amazonaws.com/ambari/ubuntu14/2.x/updates/2.1.2.1/ambari.list -O /etc/apt/sources.list.d/ambari.list
    • For Debian 7:

      wget -nv http://dev.hortonworks.com.s3.amazonaws.com/ambari/debian7/2.x/updates/2.1.2.1/ambari.list -O /etc/apt/sources.list.d/ambari.list
    [Note]Note

    If your cluster does not have access to the Internet, set up a local repository with this data before you continue. See Using a Local Repository for more information.

    [Note]Note

    Ambari Server does not automatically turn off iptables. Check that your installation setup does not depend on iptables being disabled. After upgrading the server, you must either disable iptables manually or make sure that you have appropriate ports available on all cluster hosts. For more information about ports, see Configuring Network Port Numbers.

  5. Upgrade Ambari Server. On the host running Ambari Server:

    • For RHEL/CentOS/Oracle Linux:

      yum clean all
      yum info ambari-server

      In the info output, visually validate that there is an available version containing "2.1.2.1"

      yum upgrade ambari-server
    • For SLES:

      zypper clean
      zypper info ambari-server

      In the info output, visually validate that there is an available version containing "2.1.2.1"

      zypper up ambari-server
    • For Ubuntu/Debian:

      apt-get clean all
      apt-get update 
      apt-cache show ambari-server | grep Version 

      In the info output, visually validate that there is an available version containing "2.1.2.1"

      apt-get install ambari-server 
    [Important]Important

    When performing upgrade on SLES, you will see a message "There is an update candidate for 'ambari-server', but it is from different vendor. Use 'zypper install ambari-server-2.1.2.1-101.noarch' to install this candidate". You will need to to use yast to update the package, as follows:

    1. From the command line run: > yast.

      > yast

      You will see command line UI for YaST program.

    2. Choose Software > Software Management, then click the Enter button.

    3. In the Search Phrase field, enter ambari-server, then click the Enter button.

    4. On the right side you will see the search result ambari-server 2.1.2.1. Click Actions, choose Update, then click the Enter button.

    5. Go to Accept, and click enter.

  6. Check for upgrade success by noting progress during the Ambari Server installation process you started in Step 5.

    • As the process runs, the console displays output similar, although not identical, to the following:

      Setting up Upgrade Process
      Resolving Dependencies
      --> Running transaction check
    • If the upgrade fails, the console displays output similar to the following:

      Setting up Upgrade Process
      No Packages marked for Update
    • A successful upgrade displays output similar to the following:

      Updated:
         ambari-server.noarch 0:2.1.2.1-111 
      Complete!
    [Note]Note

    Confirm there is only one ambari-server*.jar file in /usr/lib/ambari-server. If there is more than one JAR file with name ambari-server*.jar, move all JARs except ambari-server-2.1.2.1.*.jar to /tmp before proceeding with upgrade.

  7. Upgrade all Ambari Agents. On each host in your cluster running an Ambari Agent:

    • For RHEL/CentOS/Oracle Linux:

      yum upgrade ambari-agent
    • For SLES:

      zypper up ambari-agent
      [Note]Note

      Ignore the warning that begins with "There are some running programs that use files deleted by recent upgrade".

      [Important]Important

      When performing upgrade on SLES, you will see a message "There is an update candidate for 'ambari-agent', but it is from different vendor. Use 'zypper install ambari-agent-2.1.2.1-101.noarch' to install this candidate". You will need to to use yast to update the package, as follows:

      1. From the command line run: > yast

        > yast

        You will see command line UI for YaST program.

      2. Choose Software > Software Management, then click the Enter button.

      3. In the Search Phrase field, enter ambari-agent, then click the Enter button.

      4. On the right side you will see the search result ambari-agent 2.1.2.1. Click Actions, choose Update, then click the Enter button.

      5. Go to Accept, and click enter.

    • For Ubuntu/Debian:

      apt-get update
      apt-get install ambari-agent
  8. After the upgrade process completes, check each host to make sure the new files have been installed:

    rpm -qa | grep ambari-agent
  9. Upgrade Ambari Server database schema. On the host running Ambari Server:

    ambari-server upgrade
  10. Start the Ambari Server. On the host running Ambari Server:

    ambari-server start
  11. Start all Ambari Agents. On each host in your cluster running an Ambari Agent:

    ambari-agent start
  12. Open Ambari Web.

    Point your browser to http://<your.ambari.server>:8080

    where <your.ambari.server> is the name of your ambari server host. For example, c6401.ambari.apache.org.

    [Important]Important

    Refresh your browser so that it loads the new version of the Ambari Web code. If you have problems, clear your browser cache manually, then restart Ambari Server.

  13. Log in, using the Ambari administrator credentials that you have set up.

    For example, the default name/password is admin/admin.

  14. You will see a Restart indicator next to each service after upgrading. Ambari upgrade has added to/adjusted the configuration properties of your cluster based on new configuration types and properties being made available for each service with this release of Ambari. Review these changes by comparing the previous configuration with the latest version created by "ambari-upgrade".

  15. If you are upgrading from Ambari 1.6.1 or earlier, the HDP-UTILS repository Base URL is no longer set in the ambari.repo file. Therefore, you must review the HDP-UTILS repository Base URL setting in Ambari.

    If using HDP 2.2 Stack or later:

    • Browse to Ambari Web > Admin > Stack and Versions.

    • Click on the Versions tab.

    • You will see the current installed HDP Stack version displayed.

    • Click the Edit repositories icon in the upper-right of the version display and confirm the value of the HDP-UTILS repository Base URL is correct for your environment.

    • If you are using a local repository for HDP-UTILS, be sure to confirm the Base URL is correct for your locally hosted HDP-UTILS repository.

    If using HDP 2.0 or 2.1 Stack:

    • Browse to Ambari Web > Admin > Repositories.

    • Under the Services table, the current Base URL settings are displayed.

    • Confirm the value of the HDP-UTILS repository Base URL is correct for your environment or click the Edit button to modify the HDP-UTILS Base URL.

    • If you are using a local repository for HDP-UTILS, be sure to confirm the Base URL is correct for your locally hosted HDP-UTILS repository.

  16. If you have configured Ambari to authenticate against an external LDAP or Active Directory, you must re-run "ambari-server setup-ldap”. For more information, see Set Up LDAP or Active Directory Authentication.

  17. If you have configured your cluster for Hive or Oozie with an external database (Oracle, MySQL or PostgreSQL), you must re-run “ambari-server setup --jdbc-db and --jdbc-driver” to get the JDBC driver JAR file in place. For more information, see Using Non-Default Databases - Hive and Using Non-Default Databases - Oozie.

  18. If your cluster includes Ganglia and Nagios:

    You must remove Nagios and Ganglia from your cluster and replace with Ambari Alerts and Metrics. For more information, see Migrate to Ambari Alerts and Metrics.

  19. If you have upgraded from Ambari 1.7 or earlier:

    • If your cluster was configured for Kerberos, you must adjust your cluster for Kerberos. For more information, see Adjusting for Kerberos.

    • If your cluster is running HDP 2.2 Stack, you must get the cluster hosts to advertise the "current version". This is done by restarting a master or slave component (such as a DataNode ) on each host to have the host. For example, in Ambari Web, navigate to the Hosts page, select any Host that has the DataNode component and restart that DataNode component on that single host.

  20. If you are running Ambari Metrics service in your cluster, Upgrade Ambari Metrics service.