「hadoop」cdh5.12離線安裝(未完成)

cdh 5.12.1 安裝

目前還未成功,僅供個人記錄。

【下載必備工具】
當前系統為win7_x64
1、vmware虛擬機12.5
2、ubuntu16.04服務器版本
3、windows下的ssh工具,采用git bash
4、jdk安裝包jdk-8u144-linux-x64.tar.gz
5、mysql java驅動包 mysql-connector-java-5.1.44-bin.jar
6、Cloudera Manager安裝包 http://archive.cloudera.com/cm5/cm/5/cloudera-manager-xenial-cm5.12.1_amd64.tar.gz
7、cdh 安裝包,三個文件:CDH-5.12.1-1.cdh5.12.1.p0.3-xenial.parcel,CDH-5.12.1-1.cdh5.12.1.p0.3-xenial.parcel.sha1,manifest.json, http://archive.cloudera.com/cdh5/parcels/5.12.1.3/

【注意事項】
1、按默認路徑安裝,比如/opt
2、各節點用戶名和密碼保持一致
3、/opt/cm-5.12.1的文件名不要改,否則會重新下載cm
4、hosts里的主機名必須小寫,沒有別名,沒有重復IP
5、最好用root操作
6、該文檔提到的7180網頁是指namenode:7180網頁
7、jdk最好按照在默認路徑/usr/java/jdk1.8.0-<version>,如果按照在自定義路徑,則需要在7180網頁上配置jdk路徑

【安裝vmware虛擬機】
按正常安裝并注冊即可。

【虛擬機安裝ubuntu16.04】
虛擬機安裝服務器版本16.04。

【虛擬機網路適配】
按默認的NAT連接模式。

【安裝vim】
替代vi編輯器,必備
$sudo apt-get install vim

【設置host】
$sudo vim /etc/hostname
注釋掉 127.0.1.1的映射,改為具體IP地址到host的映射,如192.168.211.131 namenode
重啟生效,$hostname 顯示當前主機名

其中,1、主節點hosts增加子節點的映射
192.168.211.132 datanode1
192.168.211.133 datanode2
192.168.211.134 datanode3
192.168.211.135 datanode4

2、子節點增加主節點的映射
192.168.211.131 namenode

3、修改windowns下的host映射,位于C:\Windows\System32\drivers\etc\hosts文件
增加
192.168.211.131??? namenode
192.168.211.132??? datanode1
192.168.211.133??? datanode2
192.168.211.134??? datanode3
192.168.211.135??? datanode4

【禁止IPv6】
cdh只支持IPv4,不支持IPv6,并且要禁止IPv6

$sudo vim /etc/sysctrl.conf 末尾增加內容:
#IPv6 disabled
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

【啟用root賬號】
設置密碼 $sudo su,$passwd
設置允許遠程root登錄 $sudo vim /etc/ssh/sshd_config
PermitRootLogin項 改為 yes

【安裝ping工具】
服務器版已默認安裝,如果沒安裝,安裝即可:$sudo apt-get install net-tools

【配置IP地址】
需要固定IP地址,由于是虛擬機,略

【安裝ssh以及免登錄】
安裝ssh,包括服務器端:$sudo apt-get install ssh

免證書登錄:
A 想ssh無密碼登錄 B
在A中生成公鑰 #ssh-keygen -t rsa
把公鑰添加到B中 #ssh-copy-id root@B // root為用戶名

注意:需要配置namenode到所有datanode節點的ssh免登錄,以及windows到namenode和所有datanode節點的ssh免登錄

【替換源】
官方的源網絡很慢,可以替換成國內源,比如阿里巴巴
$ sudo vim /etc/apt/sources.list
文件內容為:
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu xenial-security main restricted
deb http://mirrors.aliyun.com/ubuntu xenial-security universe
deb http://mirrors.aliyun.com/ubuntu xenial-security multiverse

【關閉防火墻】
默認防火墻處于關閉狀態,查看防火墻狀態$sudo ufw status

【安裝python2.7】
$sudo apt-get install python
通過 $python 測試安裝結果

【安裝perl】
$sudo apt-get install perl

【安裝iproute】
5.12及以上版本需要安裝iproute
$sudo apt-get install iproute

【同步時區】
默認不是中國時區,需要設置
安裝更新時間工具 $sudo apt-get install ntpdate
查看當前時區 $date -R
設置中國時區(Shanghai) $sudo tzselect 一步步選擇
復制文件到/etc目錄下 $sudo cp /usr/share/zoneinfo/Asia/Shanghai? /etc/localtime
更新時間 $sudo ntpdate time.windows.com

【設置共享目錄】(可選)
設置win主機與虛擬機共享目錄
ubuntu中安裝VMware Tools,參考“http://www.cnblogs.com/ftrako/p/7654773.html”
在虛擬機上設置共享文件夾,具體步驟網上搜索
目標,在ubuntu中可以直接訪問windows下的共享文件夾

【安裝java】
假設安裝包已存放到共享文件夾中
創建安裝目錄 $sudo mkdir /usr/lib/jvm
解壓安裝包 $sudo tar -zxvf /mnt/hgfs/SharedFiles/jdk-8u144-linux-x64.tar.gz -C /usr/lib/jvm/
重命名 $sudo mv jdk1.8.0_144/ jdk
添加環境變量 $sudo vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

環境變量生效 $source /etc/profile
修改權限 $sudo chown -R chendajian /usr/lib/jvm/jdk/
測試安裝是否成功 $javac -version

【集群時間同步】
安裝ntp $sudo apt-get install ntp?? // 主節點
同步時間 $sudo ntpdate -u time.windows.com

【解決Cloudera 建議將 /proc/sys/vm/swappiness 設置為最大值 10。當前設置為 60,所有節點】
#echo 10 > /proc/sys/vm/swappiness
主機重啟,該值會恢復到默認值60

【安裝數據庫驅動,僅主節點】
假設mysql已安裝在windows主機中。
安裝mysql客戶端? $sudo apt-get install mysql-client-core-5.7
安裝mysql驅動 $sudo apt-get install libmysql-java
測試登錄? $mysql -h192.168.211.1 -P3306 -uchendajian -p123456 (h表示主機,P表示端口,u表示用戶名,p表示密碼)

【CDH包拷貝,主節點】
創建預設目錄
$sudo mkdir /opt/cloudera
$sudo mkdir /opt/cloudera/parcel-repo
依次拷貝cdh包的三個文件到parcel-repo目錄下
$sudo cp /mnt/hgfs/SharedFiles/hadoopcdh/CDH-5.12.1-1.cdh5.12.1.p0.3-xenial.parcel /opt/cloudera/parcel-repo/
$sudo cp /mnt/hgfs/SharedFiles/hadoopcdh/CDH-5.12.1-1.cdh5.12.1.p0.3-xenial.parcel.sha1 /opt/cloudera/parcel-repo/
$sudo cp /mnt/hgfs/SharedFiles/hadoopcdh/manifest.json /opt/cloudera/parcel-repo/

修改權限 $sudo chown -R chendajian /opt/cloudera

sha1改名,不然會重新下載
$sudo mv /opt/cloudera/parcel-repo/CDH-5.12.1-1.cdh5.12.1.p0.3-xenial.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.12.1-1.cdh5.12.1.p0.3-xenial.parcel.sha

【CM安裝,所有節點】
解壓cm包到/opt后注意修改權限
添加mysql java jar包 $sudo cp /mnt/hgfs/SharedFiles/mysql-connector-java-5.1.44-bin.jar /opt/cm-5.12.1/share/cmf/lib
修改成主節點名稱 /opt/cm-5.12.1/etc/cloudera-scm-agent/config.ini, 設置server_host=namenode
修改java路徑
/opt/cm-5.12.1/share/cmf/schema/scm_prepare_database.sh
/opt/cm-5.12.1/share/cmf/bin/cmf-server

備注:主節點配置好cm后,通過scp傳到其它節點

【初始化CM數據庫,僅主節點】
$sudo /opt/cm-5.12.1/share/cmf/schema/scm_prepare_database.sh mysql cm -h192.168.211.1 -P3306 -uchendajian -p123456 --scm-host localhost root 123456
說明:最后三個參數分別是 主機名 用戶名 密碼
數據庫連接配置文件位于 /etc/cloudera-scm-server/db.properties

【解決DNS反向解析問題】
網上暴力方法: #mv /usr/bin/host /usr/bin/host.bak

【創建預設數據庫】
mysql中依次創建hive, activity,oozie,hue等數據庫,參考代碼:create database activity DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

【啟動Cloudera Manager】
agent需要等待server完全啟動后才能啟動
主節點
$sudo /opt/cm-5.12.1/etc/init.d/cloudera-scm-server start
$sudo /opt/cm-5.12.1/etc/init.d/cloudera-scm-agent start

從節點
$sudo /opt/cm-5.12.1/etc/init.d/cloudera-scm-agent start
當cloudera-scm-server、cloudera-scm-agent start啟動成功之后,可通過http://主節點IP:7180來訪問CM,用戶名密碼都為admin。剩下的就是一直點下一步和根據具體的需求來配置集群了。


【配置】
服務啟動幾分鐘后,瀏覽器打開配置網頁 http://namenode:7180
用戶名密碼都為admin

修改jdk路徑
CDH的jdk默認路徑是/usr/java/xxxx,需要改為自定義的/usr/lib/jvm/jdk,在7180的網頁配置的高級選項中找到java相關的配置修改。

頁面顯示 Inspector did not run successfully.
幾種可能:
1、IPv6沒有禁止導致DNS反向查找失敗
2、可能是由于jdk路徑沒有識別

問題集
檢查agent日志,發現
?ERROR??? Error, CM server guid updated, expected 26e2c7d5-dd47-4368-811f-a7d1d13e1b9a, received 24171d15-06a4-43f1-b237-cb0e0540017
解決辦法:
刪除/opt/cm-5.12.1/lib/cloudera-scm-agent/cm_guid

轉載于:https://www.cnblogs.com/ftrako/p/7660747.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/393743.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/393743.shtml
英文地址,請注明出處:http://en.pswp.cn/news/393743.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

轉載 JDK + Android-SDK + Python + MonkeyRunner 的安裝

轉載來自&#xff1a; 小海豚的博客 http://blog.sina.com.cn/u/1295334083 我只是搬運工。。。 JDK Android-SDK Python MonkeyRunner 的安裝 1. Android-SDK介紹2. 安裝 JDK, Android-SDK&#xff08;包含MonkeyRunner) , Python 3. 設置環境變量4. 驗證是否安裝成功1. …

跟隨器反饋回路電阻_如何將短反饋回路設置為單獨編碼器

跟隨器反饋回路電阻I’ve spent the last couple years as a solo freelance developer. Comparing this experience to previously working in companies, I’ve noticed that those of us who work alone can have fewer iterative opportunities for improvement than devel…

leetcode991. 壞了的計算器(貪心)

在顯示著數字的壞計算器上&#xff0c;我們可以執行以下兩種操作&#xff1a; 雙倍&#xff08;Double&#xff09;&#xff1a;將顯示屏上的數字乘 2&#xff1b; 遞減&#xff08;Decrement&#xff09;&#xff1a;將顯示屏上的數字減 1 。 最初&#xff0c;計算器顯示數字…

模塊怎么用_Android 組件化/模塊化 的理解!

作者&#xff1a;前行的烏龜到現在組件化真的不是什么新鮮東西了&#xff0c;大公司都用的滾瓜爛熟&#xff0c;龍飛鳳舞了&#xff0c;也就是現在部分中型項目和小項目在組件化的路上努力。所以同志們&#xff0c;組件化沒玩過的&#xff0c;不熟悉的趕緊搞起來&#xff0c;說…

操作系統基礎

操作系統基礎一個完整的操作系統包括 &#xff08; kernel application&#xff09;內核 應用程序而我們要學習操作系統&#xff1a;Linux操作系統我們平時所用的WINDOWS和MS-DOS都是微軟出的&#xff0c;而Linux不是微軟出的&#xff0c;Linux的最大好處是非商業軟件&#x…

leetcode1247. 交換字符使得字符串相同(貪心)

有兩個長度相同的字符串 s1 和 s2&#xff0c;且它們其中 只含有 字符 “x” 和 “y”&#xff0c;你需要通過「交換字符」的方式使這兩個字符串相同。 每次「交換字符」的時候&#xff0c;你都可以在兩個字符串中各選一個字符進行交換。 交換只能發生在兩個不同的字符串之間…

interop_如何在Blazor中實現JavaScript Interop

interop介紹 (Introduction) In this article, we will learn about JavaScript Interop in Blazor. We will understand what JavaScript Interop is and how we can implement it in Blazor with the help of a sample application.在本文中&#xff0c;我們將學習Blazor中Ja…

Centos 7和 Centos 6開放查看端口 防火墻關閉打開

Centos 7 firewall 命令&#xff1a; 查看已經開放的端口&#xff1a; firewall-cmd --list-ports 開啟端口 firewall-cmd --zonepublic --add-port80/tcp --permanent 命令含義&#xff1a; –zone #作用域 –add-port80/tcp #添加端口&#xff0c;格式為&#xff1a;端口/通訊…

和get redis_SpringBoot整合Redis,你get了嗎?

Our-task介紹本篇博客是我github上our-task&#xff1a;一個完整的清單管理系統的配套教程文檔&#xff0c;這是SpringBootVue開發的前后端分離清單管理工具&#xff0c;仿滴答清單。目前已部署在阿里云ECS上&#xff0c;可進行在線預覽&#xff0c;隨意使用&#xff08;附詳細…

linux課程設計qq,仿QQ聊天系統課程設計.doc

目錄緒論1一&#xff0e;需求分析11.1軟件功能需求分析21.2 安全需求分析2二&#xff0e;總體設計32.1 軟件結構圖32.2 功能描述32.2.1注冊功能概要42.2.2登錄功能概要42.2.3聊天功能概要52.3 安全設計6三&#xff0e;數據庫設計63.1概念結構設計63.2邏輯結構設計73.3物理結構設…

ocp linux 基礎要點

基本命令&#xff1a; 創建/修改/刪除用戶 useradd/usermod/userdel 創建/修改/刪除用戶組 groupadd/groupmod/groupdel 修改所屬用戶/所屬用戶組 chown/chgrp 修改權限 chmod 創建文件夾 mkdir 創建文件 touch 切換目錄 …

leetcode1386. 安排電影院座位(貪心)

如上圖所示&#xff0c;電影院的觀影廳中有 n 行座位&#xff0c;行編號從 1 到 n &#xff0c;且每一行內總共有 10 個座位&#xff0c;列編號從 1 到 10 。 給你數組 reservedSeats &#xff0c;包含所有已經被預約了的座位。比如說&#xff0c;researvedSeats[i][3,8] &…

首席技術執行官_如何在幾分鐘內找到任何首席執行官的電子郵件地址

首席技術執行官by Theo Strauss由西奧斯特勞斯(Theo Strauss) 如何在幾分鐘內找到任何首席執行官的電子郵件地址 (How to find any CEO’s email address in minutes) 銀河電子郵件指南&#xff1a;第一部分 (The Emailer’s Guide To The Galaxy: Part I) I’m 17, so my net…

Linux 查看磁盤或文件夾及文件大小

當磁盤大小超過標準時會有報警提示&#xff0c;這時如果掌握df和du命令是非常明智的選擇。 df可以查看一級文件夾大小、使用比例、檔案系統及其掛入點&#xff0c;但對文件卻無能為力。 du可以查看文件及文件夾的大小。 兩者配合使用&#xff0c;非常有效。比如用df查看哪個…

Python列表基礎

列表&#xff1a;創建列表:list[] 注意&#xff1a;列表里面類型可以是不同的類型 取值&#xff1a;list[2]   替換&#xff1a;注意不要越界(下表超出了可表示范圍) 操作&#xff1a; 合并列表&#xff1a;   list3list2list1 列表的重復:   (list8*3)   判斷元素是否…

樹莓派 觸摸屏_如何用樹莓派搭建一個顆粒物(PM2.5)傳感器

用樹莓派、一個廉價的傳感器和一個便宜的屏幕監測空氣質量。-- Stephan Tetzel(作者)大約一年前&#xff0c;我寫了一篇關于如何使用樹莓派和廉價傳感器測量 空氣質量 的文章。我們這幾年已在學校里和私下使用了這個項目。然而它有一個缺點&#xff1a;由于它基于無線/有線網&a…

shell 25個常用命令

1.列出所有目錄使用量&#xff0c;并按大小排序。 ls|xargs du -h|sort -rn #不遞歸下級目錄使用du -sh2.查看文件排除以#開關和空白行&#xff0c;適合查看配置文件。 egrep -v "^#|^$" filenamesed /#.*$/d; /^ *$/d3.刪除空格和空行。 sed /^$/d filename #刪除空…

tensorflow入門_TensorFlow法律和統計入門

tensorflow入門by Daniel Deutsch由Daniel Deutsch TensorFlow法律和統計入門 (Get started with TensorFlow on law and statistics) What this is about 這是關于什么的 What we will use 我們將使用什么 Get started 開始吧 Shell commands for installing everything you …

centos7 nginx+php5.6+mysql安裝與配置

安裝與配置 php 56的安裝 php的配置寫在 php.ini&#xff0c;可在phpinfo()中查看 //查找已安裝 yum list installed | grep php // php卸載 yum -y remove php56* yum remove httpd* php* 可用的資源&#xff1a;centos 安裝php56nginx nginx php-fpm nginx安裝 sudo rpm -Uv…

leetcode337. 打家劫舍 III(dfs)

在上次打劫完一條街道之后和一圈房屋后&#xff0c;小偷又發現了一個新的可行竊的地區。這個地區只有一個入口&#xff0c;我們稱之為“根”。 除了“根”之外&#xff0c;每棟房子有且只有一個“父“房子與之相連。一番偵察之后&#xff0c;聰明的小偷意識到“這個地方的所有房…