前言
最近發現,公司的的大資料環境,空間有不足的情況,集群的計算能力也下降, 此時需要對將大資料的集群環境進行擴容 增加計算節點,
操作步驟
集群示意圖:

準備好linux環境
配置hadoop賬號,ssh免密,關掉防火墻,磁盤掛載
1:創建hadoop賬號
useradd hadoop
2:ssh無密碼登陸
su hadoop
ssh-keygen -t rsa
#復制到所有datanode,并測驗ssh登陸
cp id_rsa.pub authorized_key
3:配置hadoop
把原先的/usr/local/hadoop復制到/home/hadoop下,并修改組態檔中hadoop_home相關的地址,
4:修改檔案權限
修改dfs.name.dir,dfs.data.dir,mapred.system.dir,mapred.local.dir等相關目錄的權限,
chown -R hadoop:hadoop [dir]
5:修改hdfs權限
hadoop dfs -chown -R hadoop:hadoop /
6:配置系統時間chrony時間同步服務器
root用戶執行命令,安裝chrony:
yum install -y chrony*
echo "server 192.168.4.11 iburst" >> /etc/chrony.conf

啟動chrony.service
/bin/systemctl restart chronyd.service
/bin/systemctl enable chronyd.service
chronyc sources -v

同步到bios 時間,root用戶執行命令
hwclock --localtime -w

關閉firewalld iptables 和禁用selinux,關閉iptables
systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
關閉iptables
iptables -F
systemctl stop iptables.service
service iptables save
禁用 selinux
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
setenforce 0
getenforce 0
sestatus
重啟機器
reboot
修改檔案系統的最大連接數,以root用戶執行:
vim /etc/security/limits.conf
* soft nofile 32728
* hard nofile 1029345
* soft nproc unlimited
* hard nproc unlimited
* soft memlock unlimited
* hard memlock unlimited
配置新增節點服務器的無密鑰認證登錄,做root用戶無密鑰認證
ssh-keygen ---一直敲回車到最后
cat id_rsa.pub >> authorized_keys
將所有節點的公鑰匯入authorized_keys 分發到 所有的 機器的.ssh/ 下面
chmod 600 .ssh/authorized_keys
然后進行無密鑰登錄認證測驗!
準備cm包,增加節點,及配置環境
安裝CDH5.12.0 組建所依賴的包
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
創建CM 的安裝目錄,root 用戶執行命名:
mkdir /opt/cloudera-manager
wget http://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.12.0_x86_64.tar.gz
解壓CM包到/opt/cloudera-manager,以root用戶執行命令:
tar -zxvf cloudera-manager-centos7-cm5.12.0_x86_64.tar.gz -C /opt/cloudera-manager
修改agent 的組態檔config.ini
以root用戶執行命令:
cd /opt/cloudera-manager/cm-5.12.0/etc/cloudera-scm-agent
vim config.ini
server_host=NN01.sge.com.cn
創建cloudera-scm 用戶用作安裝
useradd --system --home=/opt/cloudera-manager/cm-5.12.0/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
提升cloudera-scm 的權限
vim /etc/sudoers
在root 權限下面 增加 一行:
cloudera-scm ALL=(ALL) ALL
新建新增節點的目錄
以root用戶執行下面的命令:
mkdir -p /opt/cloudera/parcels
chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcels/
新建目錄:
mkdir -p /var/lib/cloudera-scm-server
mkdir -p /var/lib/cloudera-scm-agent
chown -R cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server/
chown -R cloudera-scm:cloudera-scm /var/lib/cloudera-scm-agent/
啟動新增DN03的agent端
啟動CM-server的agent 端
cd /opt/cloudera-manager/cm-5.12.0/etc/init.d
./cloudera-scm-agent start

以root 用戶執行命令
echo "10" > /proc/sys/vm/swappiness
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
vim /etc/rc.local

若啟動agent失敗,則嘗試以下命令:
ps -ef | grep supervisord | xargs kill -9
sudo service cloudera-scm-agent restart
登陸cm,選擇主機->Parcel
登陸cm(如:http://192.168.16.32:8010/pages/viewpage.action?pageId=16094086)

點擊檢查新Parcel

選擇主機加入集群

對機器進行分配,解壓,激活

檢查主機正確性

向集群添加新主機

重新部署客戶端

查看主機添加成功

對添加的新主機添加角色
在Cluster1中選擇“添加服務”

在“添加服務至Cluster1”,選擇服務型別:

自定義角色分配

同理,添加yarn

為impala角色配置目錄

角色成功加入

添加節點完成
計算節點測驗
1.HDFS命令測驗
[DNS6@fleapx ~]$ hadoop fs -ls /

2.HBase命令測驗
[DNS6@fleapx ~]$ hbase shell

3.Hive命令測驗
[DNS6@fleapx ~]$ hive

4.hadoop命令向集群提交作業
[DNS6@fleapx ~]$ hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 5 5

友情鏈接:https://blog.51cto.com/flyfish225/2118098
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/164404.html
標籤:其他
