目录:
1. 概述
要搭建大数据集群之前,需要安装Linux环境并进行相应设置,本文介绍正式安装大数据组件的前期准备。
集群节点
192.168.159.100 cdh001
192.168.159.101 cdh002
192.168.159.102 cdh003
2.操作系统安装
本文介绍基于3台centos系统的虚拟机集群,用于开发和测试,一台用作管理节点Cloudera Manager和NameNode等,另外两台作为工作节点。如果是生产系统,最少6台,3台管理节点包括1个Cloudera Manager,2个NameNode启用高可用,3个工作节点。常见的较小规模的生产系统一般为10-20台。
到centos官网下载对应处理器的操作系统,如果是Intel处理器,直接点下方链接即可下载
http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso
对于vm下centos的安装教程,网上很多,这里就先不造轮子了,说一下os的目录结构,如果简单点,只有一个根目录/
建议最少100G,管理节点往往还存放MySQL,以及一些监控数据,可以增加到200G,对于VMware虚拟机来说,分配的虚拟磁盘不会立马占用物理磁盘空间,所以不用担心分配空间后磁盘就没空间了,但也最好不要超过物理磁盘存储上限,因为物理磁盘满了,虚拟磁盘再多也不可能装进去了。也可以设置多个挂载点如:
/
10G
/opt
50G+ 类D盘
/usr
50G+ 类C盘
/var
50G+ 用来存储经常被修改的文件,如日志、数据文件、邮箱等
/tmp
20G+ 临时文件
学习环境如果资源有限,以上配置也可以适当降低,生产环境需要根据数据量和组件来进行具体资源需求分析。我重点还是讲下系统装好后的后续设置
3.配置静态IP
]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static #设置为static
IPADDR=192.168.159.100 #每台服务器分别对应不同ip
NETMASK=255.255.255.0 #设置掩码
GATEWAY=192.168.159.2 #设置网关
DNS1=8.8.8.8 #设置DNS
DNS2=4.4.4.4 #设置DNS
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens33
DEVICE=ens33
ONBOOT=yes #设置开机启用
重启网络使配置生效
]# systemctl restart network
查看是否修改成功
]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.159.100 netmask 255.255.255.0 broadcast 192.168.159.255
ether 00:0c:29:2d:57:4d txqueuelen 1000 (Ethernet)
RX packets 17139 bytes 3531365 (3.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 10282 bytes 1666216 (1.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
4.配置主机名
- 修改主机名
vim /etc/hostname
分别将3台服务器hostname分别设置为cdh001,cdh002,cdh003
- 修改hosts文件
vim /etc/hosts
]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.159.100 cdh001
192.168.159.101 cdh002
192.168.159.102 cdh003
3台服务器的hosts都需要做如上修改
5.关闭防火墙及selinux
3台服务器上分别执行以下操作,关闭防火墙并配置开机不自动启动
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl status firewalld.service
关闭3台服务器selinux
vim /etc/sysconfig/selinux
修改
SELINUX=disabled
重启后验证是否禁用成功
]# sestatus -v
SELinux status: disabled
6.配置ssh互信
方法一
- 在每台服务器上执行如下操作,一直回车即可
ssh-keygen -t rsa
- 在所有上执行,需要输入其他服务器的密码
ssh-copy-id -i /root/.ssh/id_rsa.pub cdh001
ssh-copy-id -i /root/.ssh/id_rsa.pub cdh002
ssh-copy-id -i /root/.ssh/id_rsa.pub cdh003
方法二
5. 在每台服务器上执行如下操作,一直回车即可
ssh-keygen -t rsa
- 在服务器1上将公钥(名为id_rsa.pub文件)追加到认证文件(名为authorized_keys文件)中:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- 去其他服务器节点将
~/.ssh/id_rsa.pub
中的内容拷贝到服务器1的~/.ssh/authorized_keys
中,查看文件中的内容
]# cat ~/.ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/eA09X4s5RIYvuYNxVvtOo6unY1mgipsFyoz/hy/Gwk0onfZvBi/Sl3TVRZO5aqcHccAGlLF7OPTKH1qUuKVtnUOQik0TouL5VKsOBDMHHRT9D5UwqaIE8tYDC8V6uwieFgscZcBjhrsJ/Iramo9ce7N9RTO3otRMRQxOs+Wd1F/ZOmpRtMGU2N4RH4i2quRU6m2lt/eJKpNupSHKoztTQRsEanilHVASnikAXH8JpG70iO7RXR/hLz+/Of3ISUrOMSO4/ZIIu4xnYN3jvsXOdK/qIhP/PI2s+uF22IvVE6xZYVadQFa4zAuhQmCBWkE7vMyI1UJkxP7OQYj72LUH root@cdh001
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCnz8wHoytR2Xlnl04rQq4I2vgUVWbkKjv30pj+Toz4719ah4cY9pvZj0JsfhVzaaCsR14BLFVLkqKUhCWK3K6muT4iHb+N0WirpbwfJkztmQeco7Ha9xrPQ8v/I4xZujFoMVA0tkb/32zRTxOkPv9AUgB8V6Lin6LnB/AcnhnmoIs5PdbAdh/kBGpQGKIZkbyCUOYz9/PZuGJoJBblqfWiqzxYYLN9&