Reverting a Failed Cloudera Manager Upgrade
Loading Filters ... 6.3.4 6.3.3 6.3.1 6.3.0 6.2.1 6.2.0 6.1.1 6.1.0 6.0.1 6.0.0 7.11.3 7.7.3 7.7.1 7.6.7 7.6.1 7.4.4 6.3.4 6.3.3 6.3.2 6.3.1 6.3.0 6.2.1 6.2.0 6.1.1 6.1.0 6.0.2 6.0.1 7.1.9.1000 7.1.9 7.1.8 7.1.7.3000 7.1.7.2000 7.1.7.1000 7.1.7
Minimum Required Role: Cluster Administrator (also provided by Full Administrator)
This topic describes how to reinstall the same version of Cloudera Manager you were using previously, so that the version of your Cloudera Manager Agents match the server. The steps below assume that the Cloudera Manager Server is already stopped (because it failed to start after the attempted upgrade).
Ensure Cloudera Manager Server and Agent are stopped.
- Log in to the Cloudera Manager Server host.
ssh my_cloudera_manager_server_host
- Stop the Cloudera Manager
Server.
sudo systemctl stop cloudera-scm-server
- Stop the Cloudera Manager Agent.
- RHEL 7, SLES 12, Ubuntu 18.04 and higher
-
sudo systemctl stop cloudera-scm-agent
- RHEL 5 or 6, SLES 11, Debian 6 or 7, Ubuntu 12.04 or 14.04
-
sudo service cloudera-scm-agent stop
Restore the Cloudera Manager Database (if necessary)
If your Cloudera Manager upgrade fails, you need to determine whether the upgrade process has successfully completed updating the schema of the Cloudera Manager database. If the schema update has begun, you must restore the Cloudera Manager database using a backup taken before you began the upgrade.
- To determine whether the schema has been updated, examine the
Cloudera Manager server logs, and look for a message similar to the
following:
Updated Schema Version to 60000
. (The version number may be different for your environment.)Run the following command to find the log entry (f the log file is in a different location, substitute the correct path):grep 'Updated Schema Version to ' /var/log/cloudera-scm-server/cloudera-scm-server.log
- If required, restore the database.
The procedure for restoring the database depends on the type of database used by Cloudera Manager.
Establish Access to the Software
Cloudera Manager needs access to a package repository that contains the updated software packages. You can choose to access the Cloudera public repositories directly, or you can download those repositories and set up a local repository to access them from within your network. If your cluster hosts do not have connectivity to the Internet, you must set up a local repository.
If you have enabled high availability for Cloudera Manager, perform the following steps on the hosts for both the active and passive instances of the Cloudera Manager server.
- Log in to the Cloudera Manager Server host.
ssh my_cloudera_manager_server_host
- Remove any older files in the existing
repository directory:
- RHEL / CentOS
-
sudo rm /etc/yum.repos.d/cloudera*manager.repo*
- SLES
-
sudo rm /etc/zypp/repos.d/cloudera*manager.repo*
- Ubuntu
-
sudo rm /etc/apt/sources.list.d/cloudera*.list*
- Fill in the form at the top of this page.
- Create a repository file so that the package
manager can locate and download the binaries.
Do one of the following, depending on whether or not you are using a local package repository:
-
Use a local package repository. (Required when cluster hosts do not have access to the internet.) See Configuring a Local Package epository.
-
Use the Cloudera public repository
- RHEL / CentOS
-
- Create a file named
/etc/yum.repos.d/cloudera-manager.repo
with the following content:[cloudera-manager] name=Cloudera Manager baseurl=https://archive.cloudera.com/p/cm7/<Cloudera Manager version>/redhat<OS major version>/yum/ gpgkey =https://archive.cloudera.com/p/cm7/<Cloudera Manager version>/redhat<OS major version>/yum/RPM-GPG-KEY-cloudera username=changeme password=changeme gpgcheck=1 enabled=1 autorefresh=0 type=rpm-md
Replace
changeme
with yourusername
andpassword
in the/etc/yum.repos.d/cloudera-manager.repo
file.
- Create a file named
- SLES
-
- Create a file named
/etc/zypp/repos.d/cloudera-manager.repo
with the following content:[cloudera-manager] name=Cloudera Manager baseurl=https://archive.cloudera.com/p/cm7/<Cloudera Manager version>/sles<OS major version>/yum/ gpgkey =https://archive.cloudera.com/p/cm7/<Cloudera Manager version>/sles<OS major version>/yum/RPM-GPG-KEY-cloudera username=changeme password=changeme gpgcheck=1 enabled=1 autorefresh=0 type=rpm-md
-
Replace
changeme
with yourusername
andpassword
in the/etc/zypp/repos.d/cloudera-manager.repo
file.
- Create a file named
- Ubuntu
-
Debian is not a supported operating system for Cloudera Manager 6.x.
- Create a file named
/etc/apt/sources.list.d/cloudera_manager.list
with the following content:# Cloudera Manager <Cloudera Manager version> deb [arch=amd64] http://username:password@archive.cloudera.com/p/cm7/<Cloudera Manager version>/ubuntu1804/apt -cm<Cloudera Manager version> contrib
- Run the following
command:
sudo apt-get update
-
Replace
changeme
with yourusername
andpassword
in the/etc/apt/sources.list.d/cloudera_manager.list
file.
- Create a file named
-
- A Cloudera Manager upgrade can introduce
new package dependencies. Your organization may have restrictions or
require prior approval for installation of new packages. You can
determine which packages may be installed or upgraded:
- RHEL / CentOS
-
yum deplist cloudera-manager-agent
- SLES
-
zypper info --requires cloudera-manager-agent
- Ubuntu
-
apt-cache depends cloudera-manager-agent
Downgrade the Cloudera Manager Packages
- Downgrade the packages.
- RHEL / CentOS
-
sudo yum clean all sudo yum repolist
sudo yum downgrade "cloudera-manager-*"
- SLES
-
sudo zypper clean --all
sudo zypper dup -r baseurl
- Ubuntu
- There is no action that downgrades Cloudera Manager to the version currently in the repository.
-
Verify that you have the correct packages installed.
- Ubuntu
-
dpkg-query -l 'cloudera-manager-*'
Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Description +++-======================-======================-============================================================ ii cloudera-manager-agent 5.15.0-0.cm...~sq The Cloudera Manager Agent ii cloudera-manager-daemo 5.15.0-0.cm...~sq Provides daemons for monitoring Hadoop and related tools. ii cloudera-manager-serve 5.15.0-0.cm...~sq The Cloudera Manager Server
- RHEL / CentOS / SLES
-
rpm -qa 'cloudera-manager-*'
cloudera-manager-server-5.15.0-... cloudera-manager-agent-5.15.0-... cloudera-manager-daemons-5.15.0-...
cloudera-manager-server-db-2-5.15.0-...
Restore the Cloudera Manager Directory
- Run the following commands to extract the
backups:
cd $CM_BACKUP_DIR tar -xf cloudera-scm-agent.tar tar -xf cloudera-scm-server.tar
- Restore the Cloudera Manager server directory from a backup taken
during the upgrade process:
sudo -E cp -rp $CM_BACKUP_DIR/etc/cloudera-scm-server/* /etc/cloudera-scm-server
sudo -E cp -rp $CM_BACKUP_DIR/etc/default/cloudera-scm-server /etc/default/cloudera-scm-server
- If the Cloudera Manager server host has an agent installed, restore
the Cloudera Manager agent directory from a backup taken during the
upgrade process:
sudo -E cp -rp $CM_BACKUP_DIR/etc/cloudera-scm-agent/* /etc/cloudera-scm-agent
sudo -E cp -rp $CM_BACKUP_DIR/etc/default/cloudera-scm-agent /etc/default/cloudera-scm-agent
sudo -E cp -rp $CM_BACKUP_DIR/var/run/cloudera-scm-agent/* /var/run/cloudera-scm-agent
sudo -E cp -rp $CM_BACKUP_DIR/var/lib/cloudera-scm-agent/* /var/lib/cloudera-scm-agent
Start Cloudera Manager Again
- Start the Cloudera Manager Agent.
- RHEL 7, SLES 12, Ubuntu 18.04 and higher
-
If the agent starts without errors, no response displays.sudo systemctl start cloudera-scm-agent
- RHEL 5 or 6, SLES 11, Debian 6 or 7, Ubuntu 12.04 or 14.04
-
You should see the following:sudo service cloudera-scm-agent start
Starting cloudera-scm-agent: [ OK ]
- Start the Cloudera Manager
Server.
sudo systemctl start cloudera-scm-server
- Start the Cloudera Management Service.
- Log in to the Cloudera Manager Admin Console.
- Select .
- Select .
vim /var/log/cloudera-scm-server/cloudera-scm-server.log