Centos7 大資料叢集環境準備
1.關閉防火牆
關閉防火牆
systemctl stop firewalld.service
永久關閉防火牆
systemctl disable firewalld.service
檢視防火牆狀態
systemctl status firewalld.service
2.關閉selinux
vi /etc/selinux/config
將SELINUX=enforcing改為SELINUX=disabled
設定後需要重啟才能生效
3.更改主機名
hostnamectl set-hostname node01.hadoop.com
檢視主機名
4.主機名與ip地址對映
vi /etc/hosts
5.機器重啟
reboot -h now
6.免密碼登入
假設三臺機器分別為node01,node02,node03
(1)在node01機器上,進入~/.ssh目錄,輸入命令:ssh-keygen -t rsa,然後連續四下回車
(2)在node02機器上,輸入命令:ssh-keygen -t rsa,然後連續四下回車
(3)在node03機器上進入root使用者,輸入命令:ssh-keygen,然後連續四下回車
注意:
1.ssh目錄的許可權必須是700
2 .ssh/authorized_keys檔案許可權必須是600
(4)在node01機器上輸入命令:ssh-copy-id -i node01,然後輸入對應密碼,再輸入ssh-copy-id -i node02,輸入對應密碼,然後輸入命令:ssh-copy-id -i node03;
(5)在node02機器上輸入命令:ssh-copy-id -i node01,然後輸入對應密碼,再輸入ssh-copy-id -i node02,輸入對應密碼,然後輸入命令:ssh-copy-id -i node03;
(6)在node03機器上輸入命令:ssh-copy-id -i node01,然後輸入對應密碼,再輸入ssh-copy-id -i node02,輸入對應密碼,然後輸入命令:ssh-copy-id -i node03;
(7)在機器node01中,輸入命令:ssh node02即可免密登入機器node02,輸入命令:ssh node03即可免密登入機器node03。
7.時鐘同步
以node01伺服器時間為準進行時鐘同步,安裝ntp服務
yum install -y ntp
vi /etc/ntp.conf 放開註釋,並修改成我們區域網的ip段 restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap 註釋掉網路時間同步 #server 0.centos.pool.ntp.org iburst #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst 新增本地作為時間伺服器供其他伺服器同步 server 127.127.1.0 fudge 127.127.1.0 stratum 10
加上硬體同步
vi /etc/sysconfig/ntpd
新增如下配置
SYNC_HWCLOCK=yes
啟動ntp服務:
systemctl start ntpd
開機啟動:
systemctl enable ntpd
其他節點配置,配置其他節點每隔1分鐘去上面的時間伺服器節點同步時間:
crontab -e 新增如下定時任務 */1 * * * * /usr/sbin/ntpdate node01
8.安裝jdk
檢查當前linux系統上是否有jdk
rpm -qa | grep java
解除安裝掉系統自帶的jdk(箭頭標識),命令:rpm -e --nodeps 後面跟系統自帶的jdk名
mkdir -p /export/softwares
mkdir -p /export/servers
上傳jdk-8u141-linux-x64.tar.gz 至 /export/softwares 解壓至 /export/servers
vi /etc/profile
export JAVA_HOME=/export/servers/jdk1.8.0_141
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
生效環境變數
source /etc/profile