前言
很多同仁刚学习大数据时候,不知道怎么去配置一个基础的环境。很多时候在部署其他组件的时候发现之前有些事还没做,然后又去各种找资料,找资源,繁琐并且浪费太多时间。今天我把一个从0开始配置CentOS并且是足够简单的配置方案写了一下,和大家分享。
有什么问题欢迎大家踊跃留言,我会一一回复和解答。
正文开始:
临时设置服务器ip地址:
临时设置服务器的ip地址,方便用工具连接,我用的工具是secureCRT
ifconfig ens33 172.16.123.100
ip的话根据自己的网络环境自行修改,可以看看自动分配的ip是什么,或者同一网段的机器分配的是什么样的ip。设置好之后就可以使用SecureCRT从主机连接服务器了。
配置ip与hosts的映射
在/etc/hosts文件中配置本地ip到hostname的映射,方便通过名称访问服务器。可能你们不需要那么多服务器,可以参考格式自定义即可。以后访问这个ip,就可以用后面的名称代替。
在命令行中输入,打开服务器的hosts文件
vim /etc/hosts
定位到最后:shift+G $,按a进入编辑模式,粘贴如下ip的映射
172.16.123.100 master
172.16.123.100 hadoop0
172.16.123.101 hadoop1
172.16.123.102 hadoop2
172.16.123.103 hadoop3
172.16.123.104 hadoop4
172.16.123.105 hadoop5
设置hostname,这个是你本机的名称,每次登录之后闪烁的光标之前显示的[root@master ~],@后面的东西就是它,我的本机名称叫master。
vim /etc/hostname
windows主机上的hosts文件
C:\Windows\System32\drivers\etc\hosts
macOS主机上的hosts文件:
/etc/hosts
服务器上的hosts文件
/etc/hosts
永久性配置CentOS网络
之前临时配置了服务器网络,但是如果重启了就失效了,但是我们希望服务器的ip是固定的,我们可以编辑网络的配置文件使其永久生效
vim /etc/sysconfig/network-scripts/ifcfg-ens33
删除所有内容,粘贴如下配置。
DEVICE=ens33
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.16.123.100
NETMASK=255.255.255.0
GATEWAY=172.16.123.2
DNS1=114.114.114.114
其实就是配置了网卡设备名ens33,网络类型以太网,开机自动开启网络,固定ip,和ip地址、网关等信息。
下面是之前文档的备份,供配置错误时参考
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=347cebc3-8bd3-4513-a49c-9647924efd89
DEVICE=ens33
ONBOOT=yes
重启网卡
service network restart
关闭防火墙
由于是本地测试环境,有时候防火墙会给我们的使用带来一些麻烦,可以酌情考虑关闭防火墙
service firewalld stop
systemctl disable firewalld.service
vim /etc/selinux/config
设置免密登录
ssh是一个远程连接工具,设置自己登录自己不需要输密码,方便以后分布式组件的调用。
ssh-keygen -t rsa
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
环境变量
设置常用的环境变量,这里是大数据的相关组件,就不用再配置环境变量了
vim ~/.bash_profile
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export FLUME_HOME=/usr/local/flume
export PATH=$PATH:$FLUME_HOME/bin
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
export KAFKA_HOME=/usr/local/kafka
export PATH=$PATH:$KAFKA_HOME/bin
export SCALA_HOME=/usr/local/scala
export PATH=$PATH:$SCALA_HOME/bin
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin
或者
echo 'export JAVA_HOME=/usr/local/java' >> ~/.bash_profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> ~/.bash_profile
echo 'export HADOOP_HOME=/usr/local/hadoop' >> ~/.bash_profile
echo 'export PATH=$PATH:$HADOOP_HOME/bin' >> ~/.bash_profile
echo 'export PATH=$PATH:$HADOOP_HOME/sbin' >> ~/.bash_profile
echo 'export FLUME_HOME=/usr/local/flume' >> ~/.bash_profile
echo 'export PATH=$PATH:$FLUME_HOME/bin' >> ~/.bash_profile
echo 'export HIVE_HOME=/usr/local/hive' >> ~/.bash_profile
echo 'export PATH=$PATH:$HIVE_HOME/bin' >> ~/.bash_profile
echo 'export ZOOKEEPER_HOME=/usr/local/zookeeper' >> ~/.bash_profile
echo 'export PATH=$PATH:$ZOOKEEPER_HOME/bin' >> ~/.bash_profile
echo 'export KAFKA_HOME=/usr/local/kafka' >> ~/.bash_profile
echo 'export PATH=$PATH:$KAFKA_HOME/bin' >> ~/.bash_profile
echo 'export SCALA_HOME=/usr/local/scala' >> ~/.bash_profile
echo 'export PATH=$PATH:$SCALA_HOME/bin' >> ~/.bash_profile
echo 'export SPARK_HOME=/usr/local/spark' >> ~/.bash_profile
echo 'export PATH=$PATH:$SPARK_HOME/bin' >> ~/.bash_profile
重新加载环境变量文件使其生效
source ~/.bash_profile