Linux虚拟机需要做哪些初始配置
内容概要
- 修改hostname
- 将动态ip修改为静态ip
- 关闭防火墙
- 设置阿里yum源
- 多台虚拟机之间互相设置ssh免密登录
- 时间自动同步程序安装(NTP)
以下内容基于
CentOS-7-x86_64-Minimal-1908.iso镜像搭建,适用于centos7最小化安装配置参考。
1.修改hostname
为什么要修改hostname呢? 如果你使用虚拟机的目的是为了搭建一套hadoop集群或其他的什么,集群之间的通讯往往需要使用hostname(当然ip也可以),这时候你就需要一个可读性强的hostname。
我个人喜欢用m31p50(指代ip 192.168.31.50)这样的格式来定义hostname,hadoop-001这样的也不错。
设置hostname(永久生效)
hostnamectl set-hostname m31p50 // m31p50 改成你需要的hostname
2.将动态ip修改为静态ip
// 编辑ifcfg-ens33 vi /etc/sysconfig/network-scripts/ifcfg-ens33 // 将BOOTPROTO改为static BOOTPROTO="static" // 增加静态ip相关的内容(换成你自己的,需要注意 WMware网络连接选择 桥接模式的话网段需要和物理机一致) IPADDR="192.168.31.53" NETMASK="255.255.255.0" GATEWAY="192.168.31.1" // 添加DNS配置 DNS1=114.114.114.114 DNS2=8.8.8.8
第2步需要重启网卡 systemctl restart network 才能生效。
3.关闭防火墙
centos7的防火墙是Firewall 关闭Firewall 命令 // 关闭防火墙 systemctl stop firewalld // 禁止开机启动 命令:systemctl disable firewalld
4.设置 aliyun yum源
将base yum源设置成 aliyun 的,后续通过yum安装程序会快很多。
0. 最小化安装的系统默认不安装wget,先安装一下 yum install -y wget 1. 备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2. 下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/ wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo 3. 运行 yum -y update 更新内核和软件包 yum -y makecache 生成缓存
5.多台虚拟机中间互相设置ssh免密登录
多台机器之间如果用scp互传文件设置了免密登入会很方便。假如你有3台centos虚拟机,规划的 hostname 和 ip如下
192.168.31.50 m31p50 192.168.31.51 m31p51 192.168.31.52 m31p52
请先将上面的内容追加到 /etc/hosts文件中
然后设置3台机器之间的ssh免密登入
生成ssh 公私钥 ssh-keygen // 一路回车 将公钥copy到想要免密登入的机器 ssh-copy-id -i root@m31p50 // (m31p50, m31p51, m31p52 都要copy) 换成你的ip,记得到自身的免密登录也设置一下
6.时间自动同步程序安装(NTP)
各种集群中节点之间的时间误差会导致一些问题。当我们挂起虚拟机再启动后很可能时间就不准了,所以我们需要有时间同步的手段,这里使用ntp。
ntp工作原理图
上图中时间服务器指远端的时间服务器,如阿里的ntp1.aliyun.com等。ntp Server是ntp的服务端,如果我们有一个多台虚拟机的集群的话,只需要其中一台配置成 ntp Server,其他机器都可以配置成ntp Client,从ntp Server同步时间即可。
首先安装ntp服务 yum install -y ntp.x86_64 修改配置文件 vi /etc/ntp.conf logfile /var/log/ntpd.log //设置日志文件 restrict 192.168.31.0 mask 255.255.255.0 nomodify notrap // 192.168.31.0 表示31网段都可以访问该时间服务器,换成你自己的 //用下面的远程时间服务器地址替换掉文件中原来的server配置 server ntp1.aliyun.com server ntp2.aliyun.com server ntp3.aliyun.com //设置当上面的远程时间服务器不可用时,将本机作为时间服务器 server 127.0.0.1 fudge 127.0.0.1 stratum 10 以上是 ntp Server的配置,ntp client 只需注释掉/etc/ntp.conf中的server 项, 添加 “server ip地址” (ntp server 的地址)即可 启动ntp服务 systemctl start ntpd 设置开机自启 systemctl enable ntpd 集群中的每台机器都需要安装启动ntp。
如果发现系统的时区不对可以执行下面的命令修改
timedatectl set-timezone Asia/Shanghai // 修改为上海时区
最后,如果要搭建多台虚拟机,可以先配置好一台再用VMware的克隆功能即可。
关于VMware的网络连接类型(仅主机,桥接,NAT),建议选择桥接,不仅可以访问外网还可以用同一局域网中的其他电脑连接你的虚拟机。
尾巴:
不记得安装配置过多少次虚拟机了,却总是记不住命令(步骤到是记得),每次都要各种找资料。今天重新安装虚拟机是为了学习大数据相关的组件,索性好好整理一下。之后会更新一些大数据相关的内容。