虚拟机安装我采用的是基础设施服务,这样不带桌面版的,有基础的网络环境,是比较节省资源的一种安装方式

centos7 待机 centos7设置不休眠_hadoop

centos7 主机(都已配置完主机名,配置固定IP;关闭防火墙,关闭selinux) 网络通畅,可以通过主机名ping通

1. 虚拟机配置固定IP及修改主机名

# 我的虚拟机使用桥接模式,设置静态IP
vim /etc/sysconfig/network-scripts/ifcfg-你的网卡名字


# 网关地址GATEWAY 和自己电脑查询的要一直
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
ONBOOT="yes"
BOOTPROTO="static"
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="enp0s3"
UUID="1e0cb40e-b49f-423e-bb26-a1bc011843c0"
DEVICE="enp0s3"
 
IPADDR="192.168.1.101"
# 下方的信息应该符合自己宿主机的规则
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS1="192.168.1.1"
DNS2=114.114.114.114

centos7 待机 centos7设置不休眠_linux_02

 重启虚拟机网络:

service network restart

1.2 centos7 修改主机名

# 查看主机名
hostname

# 设置主机名 新开会话窗口生效,重启后仍旧生效
hostnamectl set-hostname master

# 修改配置文件(只有重启后生效)
vi /etc/hostname
#内容为:
master

2. 关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

3. 关闭selinux

查看selinux状态: /usr/sbin/sestatus -v

永久关闭:vi /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled
设置后需要重启才能生效

4. 设置各个虚拟机直接时间同步

# 1.安装 ntp
yum -y install ntp

# 根据网络时间校正
ntpdate 1.cn.pool.ntp.org

# 2.选择时区
tzselect
#步骤
#5Asia->9 China->1->Beijing Time ->1 yes

# 3.时区信息写入配置文件
echo 'TZ='Asia/Shanghai'; export TZ' > ~/.profile

# 4.软件时间同步至硬件时间
hwclock -w

# 5.查看当前时间
date

5.设置免密登录

5.1 打开sshd服务

 背景:在服务器越来越多的场景下,我们通常会使用ssh的方式跳转登录到目标机器来简化登录服务器的步骤

ssh [-l login_name] [-p port] [user@]hostname

5.2 :编辑  vim /etc/ssh/sshd_config

RSAAuthentication       yes
PubkeyAuthentication    yes
AuthorizedKeysFile      .ssh/authorized_keys

我这里如果只配置上述配置,ssh连接不稳定,经常出现连接断开的现象,可以增加如下配置

# ssh登录由于UseDNS配置卡住,所以打开注释关闭
UseDNS no

# ssh 超时时间
ClientAliveInterval 3600
# 允许超时的次数
ClientAliveCountMax 3

5.3:重启sshd服务

systemctl restart sshd.service

5.4 设置免密

在要登录的远程机器添加hadoop用户,而且要给用户添加密码,密码只在第一次登录时使用,只有不会在输入

# 增加新用户hadoop
$bin useradd hadoop

# 给新增的y用户设置密码;如果不设置在第一次登录是无法输入的
$bin passwd hadoop

$bin su hadoop
# 在master主机上生成RSA公私钥对
$bin ssh-keygen -t rsa

centos7 待机 centos7设置不休眠_主机名_03

# 到你指定的用户的用户目录下的.ssh目录
$bin cd ~/.ssh

# 生成authorized_keys文件
# 多台服务器之间免密,则相互同步
$bin cat id_rsa.pub >> authorized_keys
# 对authorized_keys文件进行权限修复
$bin chmod 644 ./authorized_keys

# 分发authorized_keys到node1 node2
# 如果需要两两免密,则需要把公钥拷贝到所有机器上
# id_rsa是所有的机器上的
cat id_rsa.pub >> authorized_keys
scp authorized_keys node1:`pwd`

# hadoop:是我这里远程登录的用户
# node1/node2:是我要远程登录机器配置的主机名(已经在host文件配置,可以ping通的)
# node1/node2:可以直接使用 IP
$bin ssh-copy-id hadoop@node1
$bin ssh-copy-id hadoop@node2

# 在主机上对免密登录进行测试,除第一外后面再登录都不需要输入登录密码
# master主机上免密登录到node1
$bin ssh node1
# master主机上免密登录到node2
$bin ssh node2

centos7 待机 centos7设置不休眠_centos7 待机_04

配置jdk:

#·在profile文件末尾加入:
export JAVA_HOME=/usr/local/jdk1.8.0_212
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$JAVA_HOME/bin:$PATH

注意:第一次使用ssh 登录需要输入密码