記錄操作過程,不過多介紹相關知識以及原理,有問題自行百度或留言討論。
一、搭建web服務服務器
有兩臺虛擬機,elephant用於安裝cdh-server相關作爲管理者,monkey用於安裝cdh-agent相關,作爲被管理者。
我選擇的是nginx,網上安裝教程較多,不在贅述,把用於放置Cloudera安裝文件的conf配置貼上來。關閉防火牆之類的也不多講,注意如果是centos7,防火牆服務不是iptables了,也許如下命令會用的着。
firewall-cmd --state systemctl stop firewalld.service systemctl disable firewalld.service
[root@elephant cloudera-cdh5]# cat /etc/nginx/conf.d/elephant.conf server { listen 80; server_name elephant www.elephant.com; location / { root /data/webapps/elephant; autoindex on; #允許瀏覽文件 } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
通過如上的操作,我在宿主機和monkey虛擬機添加host,就可以通過http協議來瀏覽文件了。
[root@elephant cloudera-cdh5]# cat /etc/hosts 192.168.1.109 elephant 192.168.1.110 monkey [root@elephant cloudera-cdh5]# curl http://elephant
<html> <head><title>Index of /</title></head> <body bgcolor="white"> <h1>Index of /</h1><hr><pre><a href="../">../</a> <a href="cdh/">cdh/</a> 22-Mar-2017 15:12 - <a href="cm/">cm/</a> 24-Mar-2017 13:02 - <a href="index.html_txt">index.html_txt</a> 19-Mar-2017 07:15 40 </pre><hr></body> </html>
二、下載CM資源包
在/data/webapps/elephant下新建目錄,最終目錄結構如下:
[root@elephant cm]# pwd /data/webapps/elephant/cm
瀏覽網頁 ,找到適合你自己環境的安裝包,我選擇的是 cm5.10.0-centos7.tar.gz
http://archive-primary.cloudera.com/cm5/repo-as-tarball/5.10.0/
注意版本要和你的cdh一致。800多M,虛擬機中直接wget很慢,於是宿主機中打開迅雷,添加下載地址 http://archive-primary.cloudera.com/cm5/repo-as-tarball/5.10.0/cm5.10.0-centos7.tar.gz ,然後去睡覺了。
第二天晚上下班回來繼續操作。
把下載的軟件包複製到虛擬機的 web目錄,也就是上面的cm目錄,解壓
tar -zxvf cm5.10.0-centos7.tar.gz
解壓後的目錄結構,進入到 5.10.0 目錄可以看到下載的安裝文件。
[root@elephant cm]# ll total 8 lrwxrwxrwx 1 1106 592 6 Jan 21 03:38 5 -> 5.10.0 lrwxrwxrwx 1 1106 592 6 Jan 21 03:38 5.10 -> 5.10.0 drwxrwxr-x 4 1106 592 49 Mar 24 21:06 5.10.0 -rw-rw-r-- 1 1106 592 1690 Jan 21 03:35 RPM-GPG-KEY-cloudera -rw-rw-r-- 1 1106 592 347 Jan 26 05:35 cloudera-cm.repo
三、重新生成repodata
進入到/data/webapps/elephant/cm/5.10 目錄,執行如下命令,重新生成repodata。下一步配置yum源的baseurl,一定是有repodata的目錄。
[root@elephant 5.10]# createrepo .
如果你的虛擬機沒有repodata命令,請執行下面命令安裝。
sudo yum install yum-utils createrepo
四、配置 yum 源
把 上面cm目錄中的 cloudera-cm.repo 複製到 /etc/yum.repos.d 目錄,並進行編輯
[root@elephant yum.repos.d]# vim cloudera-cm.repo [cloudera-cm] # Packages for Cloudera's Distribution for cm, Version 5, on RedHat or CentOS 7 x86_64 name=Cloudera's Distribution for cm, Version 5 #baseurl=http://repos.jenkins.cloudera.com/cm5.10.0-release/redhat/7/x86_64/cm/5/ #gpgkey = http://repos.jenkins.cloudera.com/cm5.10.0-release/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera #gpgcheck = 1 baseurl=http://elephant/cm/5.10 #gpgkey = http://repos.jenkins.cloudera.com/cm5.10.0-release/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera gpgcheck = 0
在管理機上運行 yum clean all 後,就可以如下命令安裝cm了。
[root@elephant x86_64]# yum install -y cloudera-manager-server Loaded plugins: fastestmirror base | 3.6 kB 00:00:00 cloudera-cdh5 | 2.9 kB 00:00:00 cloudera-cm | 2.9 kB 00:00:00 extras | 3.4 kB 00:00:00 nginx | 2.9 kB 00:00:00 updates | 3.4 kB 00:00:00 (1/7): cloudera-cdh5/primary_db | 77 kB 00:00:00 (2/7): cloudera-cm/primary_db | 11 kB 00:00:00 (3/7): base/7/x86_64/group_gz | 155 kB 00:00:00 (4/7): extras/7/x86_64/primary_db | 139 kB 00:00:00 (5/7): updates/7/x86_64/primary_db | 3.8 MB 00:00:03 (6/7): nginx/x86_64/primary_db | 21 kB 00:00:06 (7/7): base/7/x86_64/primary_db | 5.6 MB 00:00:21 Determining fastest mirrors * base: mirrors.tuna.tsinghua.edu.cn * extras: mirrors.tuna.tsinghua.edu.cn * updates: mirrors.tuna.tsinghua.edu.cn Resolving Dependencies --> Running transaction check ---> Package cloudera-manager-server.x86_64 0:5.10.0-1.cm5100.p0.85.el7 will be installed --> Processing Dependency: cloudera-manager-daemons = 5.10.0 for package: cloudera-manager-server-5.10.0-1.cm5100.p0.85.el7.x86_64 --> Running transaction check ---> Package cloudera-manager-daemons.x86_64 0:5.10.0-1.cm5100.p0.85.el7 will be installed --> Finished Dependency Resolution …… …… Downloading packages: (1/2): cloudera-manager-server-5.10.0-1.cm5100.p0.85.el7.x86_64.rpm | 8.4 kB 00:00:00 (2/2): cloudera-manager-daemons-5.10.0-1.cm5100.p0.85.el7.x86_64.rpm | 570 MB 00:00:09 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 60 MB/s | 570 MB 00:00:09 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : cloudera-manager-daemons-5.10.0-1.cm5100.p0.85.el7.x86_64 1/2 Installing : cloudera-manager-server-5.10.0-1.cm5100.p0.85.el7.x86_64 2/2 Verifying : cloudera-manager-server-5.10.0-1.cm5100.p0.85.el7.x86_64 1/2 Verifying : cloudera-manager-daemons-5.10.0-1.cm5100.p0.85.el7.x86_64 2/2 Installed: cloudera-manager-server.x86_64 0:5.10.0-1.cm5100.p0.85.el7 Dependency Installed: cloudera-manager-daemons.x86_64 0:5.10.0-1.cm5100.p0.85.el7 Complete!
爲了驗證是從本地源下載,特意查看了nginx訪問日誌
127.0.0.1 - - [24/Mar/2017:22:19:55 +0800] "GET /cdh/cloudera-cdh5/repodata/repomd.xml HTTP/1.1" 200 2987 "-" "urlgrabber/3.10 yum/3.4.3" "-" 127.0.0.1 - - [24/Mar/2017:22:19:55 +0800] "GET /cm/5.10/repodata/repomd.xml HTTP/1.1" 200 2980 "-" "urlgrabber/3.10 yum/3.4.3" "-" 127.0.0.1 - - [24/Mar/2017:22:20:05 +0800] "GET /cdh/cloudera-cdh5/repodata/09b008ab02bc0b4f4b4279e2f0c0a5fb8ce53c5d0dcbd5258d32657a390f64fb-primary.sqlite.bz2 HTTP/1.1" 200 78773 "-" "urlgrabber/3.10 yum/3.4.3" "-" 127.0.0.1 - - [24/Mar/2017:22:20:05 +0800] "GET /cm/5.10/repodata/600a57f21246adc3f5d159a4daa0ce8f74d860234b6943b7ce978682b2f6f0ad-primary.sqlite.bz2 HTTP/1.1" 200 11313 "-" "urlgrabber/3.10 yum/3.4.3" "-" 127.0.0.1 - - [24/Mar/2017:22:20:30 +0800] "GET /cm/5.10/RPMS/x86_64/cloudera-manager-server-5.10.0-1.cm5100.p0.85.el7.x86_64.rpm HTTP/1.1" 200 8648 "-" "urlgrabber/3.10 yum/3.4.3" "-" 127.0.0.1 - - [24/Mar/2017:22:20:37 +0800] "GET /cm/5.10/RPMS/x86_64/cloudera-manager-daemons-5.10.0-1.cm5100.p0.85.el7.x86_64.rpm HTTP/1.1" 200 597309256 "-" "urlgrabber/3.10 yum/3.4.3" "-"
到此,yum本地源方式安裝Cloudera Manager 5已經完成。
補充:
關於如何以類似的方式安裝CDH,可以參考官網的博文,如果有問題可以留言。 https://www.cloudera.com/documentation/enterprise/5-9-x/topics/cdh_ig_yumrepo_local_create.html
這個命令會下載cdh的全部包,想到耗時間,做好心理準備 reposync -r cloudera-cdh5