centos6.4用cloudera manager安裝hadoop2.0.0-cdh4.3.0集羣(一)
cloudera發行的hadoop安裝有4種方式,其中使用cloudera manager安裝是最簡單的。缺點是你不清楚hadoop安裝時的配置以及具體流程,而且cloudera manager的商業版是收費的,有免費版但是隻支持最多50個節點。雖然官方極力推薦此種方法,但是個人認爲若需要對hadoop源碼熟悉的較快,可以選擇手動安裝。下面簡單介紹一下cloudera安裝方式的流程。
一、前期準備
1、操作系統選擇。
centos、red hat、ubuntu均是可以的,但是和要安裝的hadoop版本有區別。根據要安裝的hadoop選擇操作系統,一般選centos6以上版本。
2、jdk安裝配置
選擇jdk1.7以上版本,集羣安裝最好所有節點版本一致,路徑一致。下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
將已下載的java包移動到你想要的目錄,比如:
cd /usr
mkdir java
mv 'java源包路徑' 、/usr/java
rpm -ivh /usr/java/java1.7.....
安裝完成後,需要配置環境變量:
export JAVA_HOME=<jdk-install-dir>
sudo env | grep JAVA_HOME
編輯/etc/sudoers文件:
vim /etc/sudoers
按i編輯,添加:
Defaults env_keep+=JAVA_HOME
esc退出編輯,輸入‘:wq!’保存退出。
3、關閉selinux
vim /etc/selinux/config
修改SELINUX=disabled
注:重啓後生效,可以在配置完其他步驟後再重啓。
4、關閉防火牆
service iptables stop ---臨時關閉
chkconfig iptables stop ---永久關閉
不同系統有細微區別,建議每次開機都臨時關閉防火牆,永久關閉命令不一定有效。
5、配置代理以及修改timeout
vim /etc/yum.conf
添加:
http_proxy=http://server:port/
timeout=55555
此處timeout若不添加可能會在後續cdh4安裝時因爲網絡問題下載安裝失敗。
6、安裝內置數據庫postgresql
yum install postgresql
service postgresql initdb ---此處數據庫初始化注意必須在操作系統中添加有PostgreSQL
chkconfig postgresql on ---開機啓動
vim /var/lib/pgsql/data/postgresql.conf ---配置參數
修改
#listen_addresses = '127.0.0.1' # what IPaddress(es) to listen on;
# comma-separatedlist of addresses;
#defaults to 'localhost', '*' = all
#port = 5432
修改後:
listen_addresses= '*' #what IP address(es) to listen on;
# comma-separated listof addresses;
# defaults to'localhost', '*' = all
port= 5432
保存退出。
service postgresql restart ---重啓數據庫服務
上述前期配置均已完成後可重啓計算機。所有集羣節點均做相同操作。
二、部署cdh4集羣
1、修改主機名
比如在master節點上:
hostname master
vim /etc/sysconfig/network
修改
HOSTNAME=master
其他slave節點做類似操作,重啓計算機。
2、修改hosts
vim /etc/hosts
添加:
192.168.xxx.xxx master
192.168.xxx.xxx slave01
192.168.xxx.xxx slave02
..
..
所有集羣電腦做上述相同配置。
3、配置ssh
在Master上生成一個密鑰對,包括一個公鑰和一個私鑰,並將公鑰複製到所有的Slave上;
當Master通過SSH連接Slaver時,Slave會生成一個隨機數並用Master的公鑰對隨機數進行加密,併發送給Master;
Master收到加密後用私鑰進行解密,並將解密數回送給Slave,Slave確認解密數無誤後允許Master不輸入密碼就可以進行連接。
在master電腦上:
ssh-keygen -t rsa -p ''
一路默認,按enter結束。若之前已有公鑰私鑰,會出現是否覆蓋,y確定覆蓋。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
vim /etc/ssh/sshd_config
修改
#RSAAuthentication yes # 啓用RSA 認證
#PubkeyAuthentication yes # 啓用公鑰私鑰配對認證方式
# AuthorizedKeysFile .ssh/authorized_keys # 公鑰文件路徑(和上面生成的文件同)
修改後:
RSAAuthenticationyes # 啓用RSA 認證
PubkeyAuthenticationyes # 啓用公鑰私鑰配對認證方式
AuthorizedKeysFile.ssh/authorized_keys # 公鑰文件路徑(和上面生成的文件同)