반응형
Ambari 2.7.5 버전을 설치해보자.
Step 1 : 환경 준비
- os 세팅 (jdk 1.8설치, postgresql 설치, ssh-keygen 설치, ntp 설치, hosts등록, 방화벽 끄기, SELINUX끄기, PackageKit 설치)
별도의 게시글로 설명한다. - http 설치
# yum install httpd
## httpd 설치 후 버전 확인
$ yum list installed | grep httpd
httpd.x86_64 2.4.6-97.el7.centos @updates
httpd-tools.x86_64 2.4.6-97.el7.centos @updates
# systemctl enable httpd
# systemctl start httpd
# systemctl status httpd
- Ambari 에서 필요한 패키지 설치
## python-devel 설치
$ sudo yum install python-devel
$ yum list installed | grep python-dev
python-devel.x86_64 2.7.5-90.el7 @updates
## epel-release 설치
$ sudo yum install epel-release
$ yum list installed | grep epel-release
epel-release.noarch 7-11 @extras
## nodejs 설치
$ sudo yum install nodejs
$ yum list installed | grep nodejs
nodejs.x86_64 1:6.17.1-1.el7 @epel
## npm 버전 확인
$ yum list installed | grep npm
npm.x86_64 1:3.10.10-1.6.17.1.1.el7 @epel
- Apache Maven 설치하기
- yum install maven의 경우 3.0.5버전이 설치되는데 apache atlas, apache ambari의 경우 3.3 버전 이상을 사용하는 것을 권고하고있다.
- 해당 내용은 apache atlas 항목에도 있다.
$ cd /opt/
$ wget <https://downloads.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz> -P /tmp
$ sudo tar xf /tmp/apache-maven-3.6.3-bin.tar.gz -C /opt
$ sudo ln -s /opt/apache-maven-3.6.3/ /opt/maven
# vi /opt/maven/conf/settings.xml
central
central
Human Readable Name for this Mirror.
<https://repo1.maven.org/maven2/>
google-maven-central
Google Maven Central
<https://maven-central.storage.googleapis.com>
central
centralhttps
Maven central Https
<http://insecure.repo1.maven.org/maven2>
central
Step 2 : Apache Ambari 2.7.5 버전 소스 다운로드 및 빌드하기
- 원격저장소에서 Ambari 2.7.5 버전 압축파일 다운로드
$ cd /home/songdev/Downloads
$ wget https://www-eu.apache.org/dist/ambari/ambari-2.7.5/apache-ambari-2.7.5-src.tar.gz
- 압축 해제
$ tar xfvz apache-ambari-2.7.5-src.tar.gz
- xfvz 옵션 순서대로 : tar압축 풀기, 파일 이름을 지정하기, 묶거나 파일을 풀 때 과정을 화면에 출력하기, gzip으로 압축하거나 해제하기
- apache-ambari-2.7.5-src 폴더로 이동
$ cd apache-ambari-2.7.5-src
- maven을 이용해서 현재 apache-ambari-2.7.5-src를 버전 2.7.5.0.0로 받아오기
$ /opt/maven/bin/mvn versions:set -DnewVersion=2.7.5.0.0
- ambari-metrics로 이동
$ pushd ambari-metrics
- pushd : 디렉토리 경로를 스택에 보관. 뒤에 목적지경로를 넣으면 현재 위치가 보관되며 해당위치로 이동함
- maven을 이용해서 현재 apache-metrics를 버전 2.7.5.0.0로 받아오기
$ /opt/maven/bin/mvn versions:set -DnewVersion=2.7.5.0.0
- 다시 apache-ambari-2.7.5-src 폴더로 복귀
$ popd
- popd : 디렉토리 경로를 스택에 인출. pushd를 했던 곳으로 복귀함
- Ambari Admin View의 버전 수정
- ambari-amdin 으로 이동 후, pom.xml의 nodeVersion과 npmVersion이 아래와 같이 되어있는지 확인한다.
- 참고 : https://stackoverflow.com/questions/61542102/ambari-2-7-5-installation-failure-on-centos-7
$ cd apache-ambari-2.7.5-src/ambari-admin
$ vi pom.xml
<configuration>
<nodeVersion>v6.17.1</nodeVersion>
<npmVersion>3.10.10</npmVersion>
<workingDirectory>src/main/resources/ui/admin-web/</workingDirectory>
<npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven>
</configuration>
- Ambari Metrics Coollector의 pom.xml 수정
- 사용가능한 경로로 변경 및 그에 맞는 maven 버전으로 수정한다.
- 참고 : https://github.com/apache/ambari/pull/3283/commits/3dca705f831383274a78a8c981ac2b12e2ecce85
(1) ambari-infra/ambari-infra-assembly/pom.xml 수정
$ cd apache-ambari-2.7.5-src/ambari-infra/ambari-infra-assembly
$ vi pom.xml
- <solr.tar>정보를 아래와 같이 수정 (참고링크 확인)
<solr.tar>http://archive.apache.org/dist/lucene/solr/${solr.version}/solr-${solr.version}.tgz</solr.tar>
(2) ambari-metrics/ambari-metrics-timelineservice/pom.xml 수정
$ cd apache-ambari-2.7.5-src/ambari-metrics/ambari-metrics-timelineservice
$ vi pom.xml
- <hadoop.version>, <phoenix.version>, <hbase.version>을 아래와 같이 수정 (참고링크 확인)
<hadoop.version>3.1.1</hadoop.version>
<phoenix.version>5.0.0-HBase-2.0</phoenix.version>
<hbase.version>2.0.2</hbase.version>
(3) ambari-metrics/pom.xml 수정
$ cd apache-ambari-2.7.5-src/ambari-metrics
$ vi pom.xml
- <hbase.tar>, <hbase.folder>, <phoenix.tar>, <phoenix.folder>를 아래와 같이 수정 (참고링크 확인)
<https://archive.apache.org/dist/hbase/2.0.2/hbase-2.0.2-bin.tar.gz>
hbase-2.0.2
<https://archive.apache.org/dist/hadoop/common/hadoop-3.1.1/hadoop-3.1.1.tar.gz>
hadoop-3.1.1
..
<https://downloads.apache.org/phoenix/apache-phoenix-5.0.0-HBase-2.0/bin/apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz>
apache-phoenix-5.0.0-HBase-2.0-bin
- 빌드하기
$ cd apache-ambari-2.7.5-src/
$ /opt/maven/bin/mvn -B clean install rpm:rpm -DnewVersion=2.7.5.0.0 -DbuildNumber=5895e4ed6b30a2da8a90fee2403b6cab91d19972 -DskipTests -Dpython.ver="python >= 2.6" -Drat.skip=true
- 설치 메뉴얼에 나와있는 명령어 뒤에 -Drat.skip=true 옵션을 추가
Step 3 : rpm 파일들로 repo 생성
- ambari repo 디렉토리 생성
$ sudo mkdir /var/www/html/ambari
- 파일 찾기
$ cd $AMBARI_SRC/
$ find ./ -name ambari*.rpm
- rpm파일들을 한번에 옮겨주기 위한 ambari_ch.sh 파일 생성
# vi ambari_ch.sh
#!/bin/sh
cp ./ambari-project/target/rpm/ambari-project/RPMS/noarch/ambari-project-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-infra/ambari-infra-manager-it/target/rpm/ambari-infra-manager-it/RPMS/noarch/ambari-infra-manager-it-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-infra/ambari-infra-assembly/target/rpm/ambari-infra-assembly/RPMS/noarch/ambari-infra-assembly-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-infra/ambari-infra-solr-plugin/target/rpm/ambari-infra-solr-plugin/RPMS/noarch/ambari-infra-solr-plugin-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-infra/ambari-infra-solr-client/target/rpm/ambari-infra-solr-client/RPMS/noarch/ambari-infra-solr-client-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-infra/ambari-infra-manager/target/rpm/ambari-infra-manager/RPMS/noarch/ambari-infra-manager-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-infra/target/rpm/ambari-infra/RPMS/noarch/ambari-infra-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-config-solr/target/rpm/ambari-logsearch-config-solr/RPMS/noarch/ambari-logsearch-config-solr-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-logfeeder/target/rpm/ambari-logsearch-logfeeder/RPMS/noarch/ambari-logsearch-logfeeder-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-config-json/target/rpm/ambari-logsearch-config-json/RPMS/noarch/ambari-logsearch-config-json-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-server/target/rpm/ambari-logsearch-server/RPMS/noarch/ambari-logsearch-server-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-logfeeder-plugin-api/target/rpm/ambari-logsearch-logfeeder-plugin-api/RPMS/noarch/ambari-logsearch-logfeeder-plugin-api-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-config-api/target/rpm/ambari-logsearch-config-api/RPMS/noarch/ambari-logsearch-config-api-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-config-zookeeper/target/rpm/ambari-logsearch-config-zookeeper/RPMS/noarch/ambari-logsearch-config-zookeeper-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-logfeeder-container-registry/target/rpm/ambari-logsearch-logfeeder-container-registry/RPMS/noarch/ambari-logsearch-logfeeder-container-registry-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-assembly/target/rpm/ambari-logsearch-assembly/RPMS/noarch/ambari-logsearch-assembly-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-config-local/target/rpm/ambari-logsearch-config-local/RPMS/noarch/ambari-logsearch-config-local-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-web/target/rpm/ambari-logsearch-web/RPMS/noarch/ambari-logsearch-web-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-appender/target/rpm/ambari-logsearch-appender/RPMS/noarch/ambari-logsearch-appender-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/ambari-logsearch-it/target/rpm/ambari-logsearch-it/RPMS/noarch/ambari-logsearch-it-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-logsearch/target/rpm/ambari-logsearch/RPMS/noarch/ambari-logsearch-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-agent/target/rpm/ambari-agent/RPMS/x86_64/ambari-agent-2.7.5.0-0.x86_64.rpm /var/www/html/ambari
cp ./ambari-funtest/target/rpm/ambari-funtest/RPMS/noarch/ambari-funtest-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-server/target/rpm/ambari-server/RPMS/x86_64/ambari-server-2.7.5.0-0.x86_64.rpm /var/www/html/ambari
cp ./ambari-web/target/rpm/ambari-web/RPMS/noarch/ambari-web-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-views/target/rpm/ambari-views/RPMS/noarch/ambari-views-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-assembly/target/rpm/ambari-metrics-assembly/RPMS/noarch/ambari-metrics-assembly-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-common/target/rpm/ambari-metrics-common/RPMS/noarch/ambari-metrics-common-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-host-aggregator/target/rpm/ambari-metrics-host-aggregator/RPMS/noarch/ambari-metrics-host-aggregator-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-grafana/target/rpm/ambari-metrics-grafana/RPMS/noarch/ambari-metrics-grafana-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-timelineservice/target/rpm/ambari-metrics-collector/RPMS/noarch/ambari-metrics-collector-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-hadoop-sink/target/rpm/ambari-metrics-hadoop-sink/RPMS/noarch/ambari-metrics-hadoop-sink-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-flume-sink/target/rpm/ambari-metrics-flume-sink/RPMS/noarch/ambari-metrics-flume-sink-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-storm-sink/target/rpm/ambari-metrics-storm-sink/RPMS/noarch/ambari-metrics-storm-sink-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-kafka-sink/target/rpm/ambari-metrics-kafka-sink/RPMS/noarch/ambari-metrics-kafka-sink-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-storm-sink-legacy/target/rpm/ambari-metrics-storm-sink-legacy/RPMS/noarch/ambari-metrics-storm-sink-legacy-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/ambari-metrics-host-monitoring/target/rpm/ambari-metrics-host-monitoring/RPMS/noarch/ambari-metrics-host-monitoring-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-metrics/target/rpm/ambari-metrics/RPMS/noarch/ambari-metrics-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./ambari-admin/target/rpm/ambari-admin/RPMS/noarch/ambari-admin-2.7.5.0-0.noarch.rpm /var/www/html/ambari
cp ./target/rpm/ambari/RPMS/noarch/ambari-2.7.5.0-0.noarch.rpm /var/www/html/ambari
- 총 40개의 rpm 파일 확인
- ambari_ch.sh 파일을 실행
## 실행할 수 있는 권한 추가
$ chmod +x ambari_ch.sh
## 실행
$ sudo ./ambari_ch.sh
- 실행 후 /var/www/html/ambari로 이동해서 복사되었는지 확인
- repo 만들기
$ sudo createrepo /var/www/html/ambari/
Spawning worker 0 with 40 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
$ sudo vi /etc/yum.repos.d/ambari.repo
[ambari]
name=ambari
baseurl=http://localhost/ambari
enabled=1
gpgcheck=0
$ sudo yum clean all
$ sudo yum repolist
- sudo yum repolist 실행 후 ambari에 총 40개 완료된 것 확인
Step 4 : ambari 설치
- ambari 설치
# yum install ambari-server
- ambari setup
# ambari-server setup
# ambari-server start
# ambari-server status
- ambari-server running 상태인것 확인 필요
- web ui 뜨는 것 확인
<http://192.168.xxx.xxx:33445>
- portforward 설정한 port로 접속
반응형
'Bigdata > Ambari' 카테고리의 다른 글
Ambari Overview (0) | 2021.09.30 |
---|