一、安裝CentOS 6.5 x64
具體安裝過程自行百度
1.1 修改IP地址
[root@master ~]# vi /etc/sysconfig/network
DEVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.1.181 NETMASK=255.255.255.0 GATEWAY=192.168.1.1
刪除70-persistent-net.rules
[root@master ~]# rm -rf /etc/udev/rules.d/70-persistent-net.rules
1.2 修改主機名
[root@master ~]# vi /etc/sysconfig/network
NETWORKING=yes HOSTNAME=master
1.3 設置IP與主機映射關系
[root@master ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.181 master 192.168.1.182 slave1 192.168.1.183 slave2
二、JDK的安裝
2.1 新建soft文件夾,存放軟件安裝包
[root@master ~]# mkdir /root/soft
2.2 上傳JDK安裝包到soft文件夾中
使用xftp上傳
2.3 將jdk解壓到/opt目錄
[root@master soft]# tar -zxvf jdk-8u151-linux-x64.tar.gz -C /opt/
2.4 配置環境變量
[root@master soft]# vi /etc/profile
最文件最后添加以下內容:
#JAVA_HOME export JAVA_HOME=/opt/jdk1.8.0_151 export PATH=$PATH:$JAVA_HOME/bin
修改完之后,使profile文件重新生效一下
[root@master soft]# source /etc/profile
2.5 驗證Java版本
[root@master soft]# java -version java version "1.8.0_151" Java(TM) SE Runtime Environment (build 1.8.0_151-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
三、關閉防火牆
對安裝階段將防火牆暫時關閉,所有安裝軟件安裝完成之后再單獨機器做安全策略。需要在每台機器上執行以下命令:
#關閉防火牆 [root@master soft]# service iptables stop #設置防火牆開機自動關閉 [root@master soft]# chkconfig iptables off
四、關閉Selinux
#臨時關閉命令 [root@master soft]# setenforce 0 #修改配置文件(重啟生效) [root@master soft]# vi /etc/selinux/config
SELINUX=disabled
五、配置SSH免密登錄
5.1 生成密鑰對
[root@master ~]# ssh-keygen -t rsa
中間3次回車
5.2 將slave上的公鑰發送到master上
slave1機器上執行
[root@slave1 ~]# scp -r /root/.ssh/id_rsa.pub master:/root/.ssh/slave1 .pub
slave2機器上執行
[root@slave2 ~]# scp -r /root/.ssh/id_rsa.pub master:/root/.ssh/slave2.pub
5.3 復制公鑰到authorized_keys
在master上執行
#進入/root/.ssh目錄 [root@master ~]# cd .ssh/ #復制master生成的公鑰到authorized_keys [root@master .ssh]# cat id_rsa.pub >> authorized_keys #復制slave1生成的公鑰到authorized_keys [root@master .ssh]# cat slave1.pub >> authorized_keys #復制slave2生成的公鑰到authorized_keys [root@master .ssh]# cat slave2.pub >> authorized_keys
5.4 將合並后的公鑰發送到其他節點
#發送到slave1服務器 [root@master .ssh]# scp -r authorized_keys slave1:$PWD #發送到slave2服務器 [root@master .ssh]# scp -r authorized_keys slave2:$PWD
5.5 測試免密登錄
第一次登錄會要求輸入yes確認一下,之后就可以直接進行登錄。所以機器都要進行登錄一遍
[root@master .ssh]# ssh master
[root@master .ssh]# ssh slave1
[root@master .ssh]# ssh slave2
六、安裝本地yum源
6.1 創建相關目錄
/mnt/dvd1和/mnt/dvd2 用於掛載CentOS鏡像
/mnt/dvd3 用於合並后的鏡像
/mnt/iso ISO鏡像存儲
[root@master ~]# mkdir -p /mnt/dvd1 /mnt/dvd2 /mnt/dvd3 /mnt/iso
6.2 上傳CentOS鏡像到/mnt/iso
使用xftp進行上傳
6.3 掛載CentOS鏡像
[root@master iso]# mount -o loop /mnt/iso/CentOS-6.5-x86_64-bin-DVD1.iso /mnt/dvd1/ [root@master iso]# mount -o loop /mnt/iso/CentOS-6.5-x86_64-bin-DVD2.iso /mnt/dvd2/
6.4 拷貝文件
首先,拷貝DVD1中的所有文件到/mnt/dvd3目錄下,然后,只拷貝DVD2中Packages目錄下的所有rpm文件到/mnt/dvd3/Packages目錄下
[root@master iso]# cp -av /mnt/dvd1/* /mnt/dvd3/ [root@master iso]# cp -v /mnt/dvd2/Packages/*.rpm /mnt/dvd3/Packages/
6.5 合並TRANS.TBL
將DVD2中的TRANS.TBL文件的信息追加到DVD1中的TRANS.TBL后面,並排序保存
[root@master iso]# cat /mnt/dvd2/Packages/TRANS.TBL >> /mnt/dvd3/Packages/TRANS.TBL [root@master iso]# mv /mnt/dvd3/Packages/{TRANS.TBL,TRANS.TBL.BAK} [root@master iso]# sort /mnt/dvd3/Packages/TRANS.TBL.BAK > /mnt/dvd3/Packages/TRANS.TBL [root@master iso]# rm -rf /mnt/dvd3/Packages/TRANS.TBL.BAK
dvd3已經是合並后的文件了,可以用作本地源和做成ISO使用。
6.6 備份yum配置文件(所有服務器都執行)
[root@master ~]# cd /etc/yum.repos.d/ #創建一個bak文件夾 [root@master yum.repos.d]# mkdir bak #將所有的.repo文件移動到bak文件夾里面 [root@master yum.repos.d]# mv *.repo bak
6.7 新建一個yum配置文件
[root@master yum.repos.d]# vi /etc/yum.repos.d/CentOS-Media.repo
[CentOS-Local] name=CentOS-Local baseurl=file:///mnt/dvd3
gpgcheck=0 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
6.8 更新yum源
[root@master yum.repos.d]# yum clean all
[root@master yum.repos.d]# yum repolist
6.9 安裝httpd服務
[root@master ~]# yum install -y httpd
6.10 啟動httpd服務
#查看httpd運行狀態 [root@master ~]# service httpd status #啟動httpd [root@master ~]# service httpd start
6.11 在httpd服務的web目錄中放入rpm庫
[root@master ~]# mkdir /var/www/html/centos6.5 #創建一個軟連接指向dvd3 [root@master ~]# ln -s /mnt/dvd3/ /var/www/html/centos6.5/
6.12 用瀏覽器訪問一下httpd服務
看是否能訪問到/mnt/dvd3里面的東西
訪問地址:http://192.168.1.181/centos6.5/
6.13 修改yum源
[root@master ~]# vi /etc/yum.repos.d/CentOS-Media.repo
[CentOS-Local] name=CentOS-Local #baseurl=file:///mnt/dvd3 baseurl=http://192.168.29.181/centos6.7/dvd3 gpgcheck=0 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
6.14 再次更新yum源
[root@master ~]# yum clean all [root@master ~]# yum repolist
如下即為成功:
已加載插件:fastestmirror, security Determining fastest mirrors CentOS-Local | 4.0 kB 00:00 CentOS-Local/primary_db | 4.6 MB 00:00 倉庫標識 倉庫名稱 狀態 CentOS-Local CentOS-Local 6,575 repolist: 6,575
6.15 發送新的yum配置文件到其余節點
[root@master ~]# cd /etc/yum.repos.d/ [root@master yum.repos.d]# scp -r CentOS-Media.repo slave1:$PWD [root@master yum.repos.d]# scp -r CentOS-Media.repo slave2:$PWD
6.16 在其余節點更新yum源
命令詳見6.14
七、設置時鍾同步
7.1 安裝ntpd服務(所有服務器)
[root@master ~]# yum install -y ntp
7.2 設定master為時間服務器
#查看服務器時間 [root@master ~]# date 2018年 08月 03日 星期日 00:53:02 CST #修改時間 [root@master ~]# date -s 16:59:01 #把系統時間寫入CMOS [root@master ~]# clock –w #修改ntp配置文件 [root@master ~]# vi /etc/ntp.conf
在“server 3.centos.pool.ntp.org iburst”后追加以下內容:
server 192.168.1.181 restrict 192.168.1.181 nomodify notrap noquery server 127.127.1.0 fudge 127.127.1.0 stratum 10
7.3 修改其余節點ntp配置文件
[root@slave1 ~]# vi /etc/ntp.conf
server 192.168.1.181 server 127.127.1.0 fudge 127.127.1.0 stratum 10
7.4 啟動master上的ntp服務
#啟動ntpd服務 [root@master ~]# service ntpd start #設置開機自啟 [root@master ~]# chkconfig ntpd on
7.5 啟動其余節點的ntp服務
#先同步master服務器上的時間 [root@slave1 ~]# ntpdate master #啟動ntpd服務 [root@slave1 ~]# service ntpd start #設置開機自啟 [root@slave1 ~]# chkconfig ntpd on
7.6 在其余節點添加定時任務
[root@slave1 ~]# crontab -e
*/10 * * * * /usr/sbin/ntpdate 192.168.1.181
注意:如果服務器時間不同步,集群運行將出現各種各樣的問題
八、安裝依賴包
所有節點都需要安裝
[root@master ~]# yum install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb –y
九、修改swappiness
#臨時修改 [root@master cloudera]# sysctl -w vm.swappiness=0 #永久修改 [root@master cloudera]# echo "vm.swappiness=0" >> /etc/sysctl.conf
十、關閉透明大頁面
#臨時關閉透明大頁面 [root@master cloudera]# echo never > /sys/kernel/mm/transparent_hugepage/defrag [root@master cloudera]# echo never > /sys/kernel/mm/transparent_hugepage/enabled #永久關閉透明大頁面 root@master cloudera]# echo ' ' >> /etc/rc.local [root@master cloudera]# echo '# 關閉大透明頁面' >> /etc/rc.local [root@master cloudera]# echo 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag' >> /etc/rc.local [root@master cloudera]# echo 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled' >> /etc/rc.local #查看是否關閉透明大頁面 [root@master cloudera]# cat /sys/kernel/mm/redhat_transparent_hugepage/defrag [root@master cloudera]# cat /sys/kernel/mm/redhat_transparent_hugepage/enabled