Introduction
Cloudera Manager ?
- 하둡 에코 시스템 관리를 편하게 하기위해 만들어진 Cloudera GUI 오픈소스
왜 업그레이드를 해야하는가?
- 관리하는 DMP의 버전이 5.6로, 하이브 접속시 auth방식이 5.7과 상이함
- auth 방식 추가를 위해, DMP Cloudera Manager 버전을 5.6 --> 5.7로 업그레이드를 진행함.
- 참고 document URL : [링크 이동]
Step 1 - 기본 정보 수집.
- Cloudera manager가 설치된 서버의 sudo 권한 계정 확인.
- Cloudera Manager > 지원 > 정보 에서 JDK 버전 확인
- 각 호스트별로 OS 버전 확인 (클러스터 -> 호스트 )
Step 2 - 업그레이드 전 사전 준비
- 업그레이드 대상 버전이 현재 OS와 JDK를 지원하는지 확인 - [링크 이동]
- Kafka 1.2가 설치되어있을경우 아래 순서에 따라 진행
- 1. Select Administration > Settings.
- 2. Click the Custom Service Descriptors category.
- 3. Retrieve the directory from the Local Descriptor Repository Path property.
- 4. Delete the KAFKA CSD from directory
현재 교체하려는 DMP는 Kafka가 깔려있지않아 해당사항이 없지만 추후 Kafka 추가시 Step2과정을 포함해야함
Step 3 - JDK
- JDK 버전 업그레이드가 필요할 경우 다음 포스트를 참고 - [링크 이동]
Step 4 - Backup
1. cloudera manager 정보 수집
Cloudera Server가 설치된 호스트 접속
ssh root@cdh.hostname.com
scm서버의 db information 확인
cat /etc/cloudera-scm-server/db.properties
>>>
# Auto-generated by initialize_embedded_db.sh
#
# 20160304-181141
#
# These are database settings for CM Manager
#
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=localhost:7432
com.cloudera.cmf.db.name=***
com.cloudera.cmf.db.user=***
com.cloudera.cmf.db.password=******
Activity Monitor 데이터베이스 정보 수집
- 클라우데라 매니저 관리자 콘솔에서
- 클러스터 > Cloudera Management Service > 구성 에서 데이터베이스 카테고리 선택. 나머지 정보는 라이센스가 유효하지않아 필요 없음.
Service Monitor가 어디서 실행되는지 확인
- 클러스터 > Cloudera Management Service > 인스턴스
2.Cloudera Manager Agent Backup
- Cloudera Manager Agent 가 설치된 모든 호스트에 대해 아래 내용 수행
# Create a top level backup directory.
export CM_BACKUP_DIR="`date +%F`-CM5.6"
echo $CM_BACKUP_DIR
mkdir -p $CM_BACKUP_DIR
# Back up the Agent directory and the runtime state.
sudo -E tar -cf $CM_BACKUP_DIR/cloudera-scm-agent.tar --exclude=*.sock /etc/cloudera-scm-agent /etc/default/cloudera-scm-agent /var/run/cloudera-scm-agent /var/lib/cloudera-scm-agent
# Back up the existing repository directory.
sudo -E tar -cf $CM_BACKUP_DIR/repository.tar /etc/yum.repos.d
3.Cloudera Management Service Backup
- Cloudera Management Service 가 설치된 호스트에 대해 아래 내용 수행.
sudo cp -rp /var/lib/cloudera-service-monitor /var/lib/cloudera-service-monitor-`date +%F`-CM5.6
#On the host where the Host Monitor role is configured to run, backup the following directory:
sudo cp -rp /var/lib/cloudera-host-monitor /var/lib/cloudera-host-monitor-`date +%F`-CM5.6
#On the host where the Event Server role is configured to run, back up the following directory:
sudo cp -rp /var/lib/cloudera-scm-eventserver /var/lib/cloudera-scm-eventserver-`date +%F`-CM5.6
4.Cloudera Manager Server와 Cloudera Management Service 중지
1. Cloudera Management Service 중지
2. Cloudera Manager Server 중지
sudo service cloudera-scm-server stop
5.Cloudera Manager의 Databases 백업
Cloudera Manager Server DB 백업
pg_dump -h database_hostname -U user_name -W -p database_port database_name > $HOME/database_name-backup-`date +%F`-CM5.6.sql
예 ) pg_dump -h localhost -U scm -W -p 7432 scm > $HOME/database_name-backup-`date +%F`-CM5.6.sql
Activity Monitor DB 백업
- 생략
6.Cloudera Manager Server Backup
cloudera manager (scm)가 설치된 호스트에서 아래 내용 수행
export CM_BACKUP_DIR="`date +%F`-CM5.6"
echo $CM_BACKUP_DIR
mkdir -p $CM_BACKUP_DIR
sudo -E tar -cf $CM_BACKUP_DIR/cloudera-scm-server.tar /etc/cloudera-scm-server /etc/default/cloudera-scm-server
sudo -E tar -cf $CM_BACKUP_DIR/repository.tar /etc/yum.repos.d
7.Cloudera Manager Server와 Cloudera Management Service 시작
1. Cloudera Manager Server 시작
sudo service cloudera-scm-server start
2. Cloudera Management Service 시작
Step 5 - Cloudera Manager Server 업그레이드 하기
1. Software 접근 경로 구축
# 이전 yum repo 지우기
sudo rm /etc/yum.repos.d/cloudera*manager.repo*
#yum repo 수정
sudo vi /etc/yum.repos.d/cloudera-manager.repo
>>> 버전에 따라 경로 수정. 세부버전을 적지않으면 해당 릴리즈의 가장 최신버전이 다운됨.
[cloudera-manager]
# Packages for Cloudera Manager
name=Cloudera Manager
baseurl=https://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.7.1
gpgkey=https://archive.cloudera.com/cm5/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera
gpgcheck=1
2. Cloudera Manager Server 업그레이드
1. Cloudera Management Service 중지
2. Cloudera Manager Server 중지
sudo service cloudera-scm-server stop
3. Cloudera Manager Agent 중지
sudo service cloudera-scm-agent stop
4. package 업그레이드
sudo yum clean all
sudo yum upgrade cloudera-manager-server cloudera-manager-daemons cloudera-manager-agent
아래 2개의 prompt 결과에 대해서 N으로 Answer (비슷하게 출력됨)
#1. Configuration file '/etc/cloudera-scm-agent/config.ini'
#2. Configuration file/etc/cloudera-scm-server/db.properties
# 출력 예
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
아래 prompt 결과에 대해서 y로 Answer
Retrieving key from https://archive.cloudera.com/.../cm/RPM-GPG-KEY-cloudera
Importing GPG key ...
Userid : "Yum Maintainer <webmaster@cloudera.com>"
Fingerprint: ...
From : https://archive.cloudera.com/.../RPM-GPG-KEY-cloudera</webmaster@cloudera.com>
5. 올바른 package가 설치되었는지 확인
rpm -qa 'cloudera-manager-*'
>>>
cloudera-manager-server-5.7-..cm...
cloudera-manager-agent-5.7-..cm...
cloudera-manager-daemons-5.7-..cm...
6. Cloudera Manager Agent 시작
sudo service cloudera-scm-agent start
7. Cloudera Manager Server 시작
sudo service cloudera-scm-server start
Step 6 - Cloudera Manager Agent 업그레이드
Cloudera Manager 업그레이드 마법사로 Agent 업데이트
페이지 이동후 가이드에 따라 진행
[http://cloudera.manager.net:7180/cmf/upgrade-wizard/welcome]
- 도중 ssh 설정은 다음과 같이 설정하여줍니다
- 계정명 : root (혹은 root권한의 계정)
- ssh key file : 삽입 (cloudera manager가 설치된 호스트의 의 id_rsa keyfile 입니다.)
- 암호 미사용
cloudera manager 업데이트 여부 확인
- 상단탭의 지원 > 정보
'Bigdata Engineering' 카테고리의 다른 글
[Redis] In memory DB Redis 설치 (CentOS 6.9, NoSQL, Master - Slave 구조) (0) | 2020.02.14 |
---|---|
[CDH] 클라우데라 Hadoop - Open JDK 교체(oracle jdk -> open jdk) (0) | 2020.02.14 |
[Apache Impala] c++ 을 이용하여 urldecoder UDF 작성 하기 (0) | 2020.02.07 |
[Apache Impala]임팔라에 Hive UDF를 (User Defined Function) 등록하기 (0) | 2020.02.06 |
[CDH] 클라우데라 로그 확인 - cloudera log check (0) | 2020.02.04 |