大資料(Hadoop)元件安裝 Linux環境準備 步驟簡單 詳細

是個好男人呀發表於2020-12-17

 

本次測試3臺叢集(node1(192.168.1.2),node2(192.168.1.4),node3(192.168.1.6)),所有的主服務都安裝在node1節點,作業系統為CentOS7.6

1.設定語言和時區

(1)設定預設語言

每個節點都要設定

echo $LANG

預設語言為en_US.UTF-8,則跳過。
預設語言非en_US.UTF-8,則執行以下步驟:

echo 'export LANG=en_US.UTF-8' >> ~/.bashrc

重新登入當前會話。

(2)設定作業系統時區

每個節點都要設定

預設設定為(Asia /Shanghai)

cp /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime

重新登入當前會話。

 

2.設定主機名

(1)修改主機名

每個節點都要設定,將節點的主機名分別修改為node1,node2和node3

hostnamectl set-hostname node1 --static
hostnamectl set-hostname node2 --static
hostnamectl set-hostname node3 --static

(2)修改/etc/hosts

每個節點都要設定,在/etc/hosts檔案中新增叢集所有節點的對映關係

vim /etc/hosts

192.168.1.2 node1
192.168.1.4 node2
192.168.1.6 node3

 

3.禁用防火牆和關閉SELinux

(1)關閉禁用防火牆

每個節點都要設定

systemctl disable firewalld
systemctl stop firewalld

(2)關閉SELinux

每個節點都要設定

# 先更改SELinux為寬容模式

setenforce 0

# 修改/etc/selinux/config檔案,永久禁止SELinux

vi /etc/selinux/config

修改為disabled

# This file controls the state of SELinux on the system. 
# SELINUX= can take one of these three values: 
# enforcing - SELinux security policy is enforced. 
# permissive - SELinux prints warnings instead of enforcing. 
# disabled - No SELinux policy is loaded. 
SELINUX=disabled 
# SELINUXTYPE= can take one of three values: 
# targeted - Targeted processes are protected, 
# minimum - Modification of targeted policy. Only selected processes are protected. 
# mls - Multi Level Security protection. 
SELINUXTYPE=targeted

 

4.配置limits引數

每個節點都要設定,編輯limits.conf檔案

vi /etc/security/limits.conf

在最後新增以下幾行

* hard nproc 65535 
* soft nproc 65535 
* hard nofile 65535 
* soft nofile 65535

 

5.設定節點互信

每個節點都要設定,配置SSH免密登入

# 執行如下命令,生成金鑰,遇到提示時,按回車

ssh-keygen -t rsa

配置SSH免密登入(包括配置自身節點的免密)

ssh-copy-id -i ~/.ssh/id_rsa.pub root@所有節點IP

例子:

# 在node1下生產金鑰
ssh-keygen -t rsa

# 配置免密 需要輸入密碼
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node1
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node2
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node3

 

6.配置OS的yum源

每個節點都要設定,配置SSH免密登入

參考部落格:https://blog.csdn.net/qq_35260875/article/details/106148473

(1)掛載映象源

# 需要先下載作業系統對用的iso,我這裡用的是CentOS7.6的

mount CentOS-7-x86_64-DVD-1810.iso  /media/ -o loop

(2)配置yum源

#備份原始repo檔案

cd /etc/yum.repos.d
mkdir -p /etc/yum.repos.d/bak
mv *.repo bak

# 建立並編輯local.repo檔案

cd /etc/yum.repos.d
vi local.repo

在local.repo檔案中新增如下內容:

[local] 
name=local repo 
baseurl=file:///media 
enabled=1 
gpgcheck=0

(3)本地源生效

yum clean all
yum makecache

 

7.安裝配置JDK

每個節點都要設定,使用yum源安裝jdk1.8

yum install java-1.8.0-openjdk*

 

8.時鐘同步ntp設定

(1)安裝ntp

每個節點都要執行

yum install ntp -y

(2)設定時鐘同步開機自啟

每個節點都要執行

system enable ntpd

(3)配置ntp 服務端

設定node1作為ntp服務端,其他兩臺的時間會以這臺作為同步

vi /etc/ntp.conf

# 修改內容為如下

# Hosts on local network are less restricted. 
restrict 128.5.128.1 mask 255.255.224.0 nomodify notrap 
#允許內網其他機器同步時間,192.168.1.1為當前閘道器,255.255.224.0為子網掩碼 


# Use public servers from the pool.ntp.org project. 
# Please consider joining the pool (http://www.pool.ntp.org/join.html). 
#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 

#設定node1為時鐘伺服器 
server 127.127.1.0
Fudge 127.127.1.0 stratum 10

 

# 重啟ntp

systemctl restart ntpd.service

(4)配置ntp 客戶端

node2和node3作為ntp客戶端

vi /etc/ntp.conf

# 修改內容為如下

# Hosts on local network are less restricted. 
restrict 128.5.128.1 mask 255.255.224.0 nomodify notrap

# Use public servers from the pool.ntp.org project. 
# Please consider joining the pool (http://www.pool.ntp.org/join.html). 
#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 

#設定為node1的ip 
server 192.168.1.2 perfer
fudge 192.168.1.2 stratum 10

 

# 重啟ntp

systemctl restart ntpd.service

(5)驗證ntp時鐘同步

每個節點都要執行

ntpstat

# ntp 服務端資訊如下:

synchronised to local net at stratum 6 
time correct to within 12 ms 
polling server every 64 s

# ntp 客戶端資訊如下:

synchronised to NTP server (192.168.1.2) at stratum 7 
time correct to within 41 ms 
polling server every 1024 s

 


 

 

相關文章