【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)

资料:
链接:https://pan.baidu.com/s/1BERKtAe-zQur1N4L-IDxqQ
提取码:nfgd

1:注意事项

1.1 windows系统确认所有的关于VmWare的服务都已经启动

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第1张图片

1.2 确认好VmWare生成的网关地址

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第2张图片

1.3 确认VmNet8网卡已经配置好了IP地址和DNS

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第3张图片【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第4张图片
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第5张图片
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第6张图片【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第7张图片双击下面IPv4选项
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第8张图片

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第9张图片

2:复制虚拟机

2.1 将资料中虚拟机文件夹复制三份,并分别重命名, 并使用VM打开重命名

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第10张图片
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第11张图片

2.2分别设置三台虚拟机的内存

  • 需要三台虚拟机, 并且需要同时运行, 所以总体上的占用为: 虚拟机存
  • 在分配的时候, 需要在总内存大小的基础上, 减去2G-4G作为系统内存, 剩余的除以3, 作为每
    台虚拟机的内存
    每台虚拟机内存 = (总内存 - 4)/ 3
    比如16G运行内存每个分配4G,8G运行内存每个分配2G,

注意 :存放虚拟机的盘符最好有100G以上的空间,最少不能低于80G,不然后期开发会内存不足。
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第12张图片

3:虚拟机修改Mac和IP

3.1 集群规划

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第13张图片

3.2 :设置ip和Mac地址

3.2.1 每台虚拟机更改mac地址:

  1. 在VMware中在虚拟机上右键查看MAC地址
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第14张图片【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第15张图片特别重要
    点击生成,重新生成MAC地址,因为VMware版本不同,如果能点击生成就点击生成,不能就代表该地址可用,记住该MAC地址
    如果这步弄错,那么虚拟机将不能联网
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第16张图片
  2. 进入虚拟机输入下面命令修改MAC地址
vim /etc/udev/rules.d/70-persistent-net.rules

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第17张图片

3.2.2 每台虚拟机更改IP地址:

  1. 输入下面命令
vim /etc/sysconfig/network-scripts/ifcfg-eth0

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第18张图片

  1. 查看自己的IP网段和网关信息

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第19张图片
网关与子网掩码
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第20张图片
IP地址有效范围,即填写的IP地址要在下面两个范围之内

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第21张图片

3.2.3每台虚拟机修改对应主机名

vi /ect/sysconfig/network

HOSTNAME=node01

3.2.4 每台虚拟机 设置ip和域名映射

vim /etc/hosts

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第22张图片

3.3 inux系统重启

关机重启linux系统即可进行联网了
第二台第三台机器重复上述步骤,并设置IP网址为192.168.203.140,192.168.203.150
联网检查输入命令
ping www.baidu.com
按Ctrl+C即可停止
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第23张图片

4:虚拟机关闭防火墙和SELinux

4.1 关闭防火墙

三台机器执行以下命令(root用户来执行)

service iptables stop   #关闭防火墙
chkconfig iptables off  #禁止开机启动

4.2 三台机器关闭selinux

  • 什么是SELinux
    • SELinux是Linux的一种安全子系统
    • Linux中的权限管理是针对于文件的, 而不是针对进程的, 也就是说, 如果root启动了某
      个进程, 则这个进程可以操作任何一个文件
    • SELinux在Linux的文件权限之外, 增加了对进程的限制, 进程只能在进程允许的范围内操作资源

-为什么要关闭SELinux
- 如果开启了SELinux, 需要做非常复杂的配置, 才能正常使用系统, 在学习阶段, 在非生产环境, 一般不使用SELinux

  • SELinux的工作模式
enforcing 强制模式
permissive 宽容模式
disable 关闭

4.2.1 修改selinux的配置文件

vi /etc/selinux/config

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第24张图片同样,三台虚拟机全部修改

5: 虚拟机免密码登录

【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第25张图片

  • 为什么要免密登录

    • Hadoop 节点众多, 所以一般在主节点启动从节点, 这个时候就需要程序自动在主节点
      登录到从节点中, 如果不能免密就每次都要输入密码, 非常麻烦
  • 免密 SSH 登录的原理

    1. 需要先在 B节点 配置 A节点 的公钥
    2. A节点 请求 B节点 要求登录
    3. B节点 使用 A节点 的公钥, 加密一段随机文本
    4. A节点 使用私钥解密, 并发回给 B节点
    5. B节点 验证文本是否正确

5.1:三台机器生成公钥与私钥

在三台机器执行以下命令,生成公钥与私钥
ssh-keygen -t rsa
执行该命令之后,按下三个回车即可
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第26张图片

5.2 拷贝公钥到同一台机器

三台机器将拷贝公钥到第一台机器
三台机器执行命令:
ssh-copy-id node01

5.3:复制第一台机器的认证到其他机器

将第一台机器的公钥拷贝到其他机器上
scp /root/.ssh/authorized_keys node02:/root/.ssh
scp /root/.ssh/authorized_keys node03:/root/.ssh

这样在每一台机器上只要输入 sh 机器节点名称 即可无密切换到其他虚拟机上
sh node02

6:三台机器时钟同步

  • 为什么需要时间同步

    • 因为很多分布式系统是有状态的, 比如说存储一个数据, A节点 记录的时间是 1, B节点 记录的时间是 2, 就会出问题
  • 方式 1:
    所有主机和同一台主机的时间保持同步

  • 方式2:
    通过网络,所有主机和时钟同步服务器保持同步

## 安装
yum install -y ntp
## 启动定时任务
crontab -e

随后在输入界面键入

*/1 * * * * /usr/sbin/ntpdate ntp4.aliyun.com;

保存即可,同样三台虚拟机都要操作

7 Shell编程增强

如有需要,参考day03博客:https://blog.csdn.net/qq_38454176/article/details/104690041

8:三台机器安装jdk

8.1 查看自带的openjdk并卸载

rpm -qa | grep java
rpm -e java-1.6.0-openjdk-1.6.0.41-1.13.13.1.el6_8.x86_64 tzdata-java-2016j-1.el6.noarch java-1.7.0-openjdk-1.7.0.131-2.6.9.0.el6_8.x86_64 --nodeps

8.2 创建安装目录

mkdir -p /export/softwares  #软件包存放目录
mkdir -p /export/servers    #安装目录

8.3上传并 解压

#上传jdk到/export/softwares路径下去,并解压
tar -zxvf jdk-8u141-linux-x64.tar.gz -C ../servers/

8.4 配置环境变量

vim /etc/profile

添加如下内容

export JAVA_HOME=/export/servers/jdk1.8.0_141
export PATH=:$JAVA_HOME/bin:$PATH

修改完成之后记得 source /etc/profile生效

source /etc/profile

再输入java -version即可查看java版本
【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第27张图片

9:mysql的安装,选择一台装即可,我选择的是node03

第一步:在线安装mysql相关的软件包

yum  install  mysql  mysql-server  mysql-devel

第二步:启动mysql的服务

/etc/init.d/mysqld start

第三步:通过mysql安装自带脚本进行设置

/usr/bin/mysql_secure_installation

回车后会有几个选项

  1. 直接回车,没有密码
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第28张图片2. 是否设置root密码,输入Y,然后输入两次自己能记住的密码,我的是123456
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第29张图片3. 是否移除匿名用户,都行,我选Y
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第30张图片4. 不允许root远程登录码?这里一定要选 n
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第31张图片5. 是否移除测试的数据库,选n
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第32张图片6. 现在是否要加载权限表,选Y
    【大数据day07_2】——集群Linux环境搭建【非常重要】(虚拟机修改Mac和IP,虚拟机关闭防火墙和SELinux,虚拟机免密码登录,三台机器时钟同步,三台机器安装jdk,安装Mysql)_第33张图片

第四步:进入mysql的客户端然后进行授权

mysql -uroot -p密码

# 授权命令
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;


# 使授权生效命令
flush privileges;



大数据专栏,欢迎订阅

你可能感兴趣的:(大数据)