因为最近的一个项目需要用linux架构,但机器配置要求不能高,同时还有虚拟化及迁移等部署要求。所以今天开始测试,考虑到以上原因,CentOS版本选择7,安装环境用VMware Workstation Pro 15.5。
一、新建虚拟机
1、选择“自定义(高级)”;比较简单略图
2、选择虚拟机硬件兼容性,默认配置,点击下一步;
3、安装客户机操作系统界面,选择“稍后安装操作系统”,原因是如果在向导里选择了安装ISO,VM会使用自己的推荐安装,这样就没有办法自定义最小化安装了;
4、配置客户机操作系统版本,选择Linux,列表选“ContOS7 64位”;
5、配置客户机安装位置和客户机名称,自定;
6、配置客户机的处理器,根据业务需要定义,因为本次业务计算量较小,我选了单CPU,4核心;
7、配置虚拟机的内存,一般不能超过提示的最大推荐内存,也是根据业务需要我选了2G内存,后期如果需要可以调整;
8、网络类型选择,因为业务需要,这里我是桥接,让虚拟机和物理机处于同一内网下;
9、I/O控制器类型、磁盘类型和选择磁盘选择虚拟机的推荐选项,默认进行下一步;
10、磁盘容量,本业务50GB,其它如图选择,特别是“立即分配磁盘空间”和“单个文件”,因为业务需要实时性,所以必须这样选择才能保证性能;
11、至此完成安装向导,待VM配置完成后(第一次配置硬盘需要时间),不要启动,再次编辑虚拟机设置,添加安装映像。这里根据业务需要,又添加了一块网卡。同时在WM的菜单“编辑”下选“虚拟网络编辑器”,添加二个桥接网络,分别对应二块物理机网卡,虚拟机网卡分别连接对应二个自定义网络。
12、启动虚拟机,开始安装。
13、等待流程至选择语言时,选“中文”,“中国”。
14、进入到配置界面,软件选择时,默认是“最小化”,但这里为了后期调试,需要增加部分功能,点进入,如图所选。
15、安装磁盘分区,如果没有特殊要求,可以使用默认分区。
二、安装完成,开始配置
1、配置网络
进入到网卡配置目录
cd /etc/sysconfig/network-scripts/
此时ifconfig命令还没有安装,则直接ls,根据文件名推断网卡的名称
编辑配置文件 vi ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPADDR=192.168.1.149
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
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=ens32
UUID=d16fe359-9256-4414-a557-19d751b4fc72
DEVICE=ens32
ONBOOT=yes
加粗的部分是要修改的地方
退出并保存 (按esc,再:wq)
重启网卡
另一块网卡相同配置,不过网关只能设一个。多网卡设置,参见CentOS备忘,需要注意UUID。
systemctl restart network
用nmcli快捷设置dns
1、nmcli connection show——显示当前网络连接
在显示的device列中查到对应的网卡名 ,例 我的网卡是ens33
2、nmcli con mod ens33 ipv4.dns “114.114.114.114 8.8.8.8”
3、nmcli con up eth0———使dns配置生效
2、安装工具
最小化的CentOS7系统是没有安装 wget 、 curl 、 ifconfig 、 lsof 、 zip、unzip命令,因此这里需要安装一下(命令解释:wget是一个下载文件的工具;curl是一个利用URL规则在命令行下工作的文件传输工具;ifconfig是linux中用于显示或配置网络设备(网络接口卡)的命令;lsof(list open files)是一个列出当前系统打开文件的工具;zip、unzip是压缩和解压缩命令工具 ):
命令行:yum -y install wget curl net-tools lsof zip unzip
安装完成后,此时可以用ifconfig命令查看网络状态了。
接下来配置防火墙,参见CentOS备忘。
三、安装相关业务软件
1、测试时关闭防火墙,正式上线到生产环境时,根据需要配置iptables规则。
2、安装NODE.JS
yum install git
先安装git
因为访问github有时会不正常,此时可用git来安装nvm
git clone git://github.com/creationix/nvm.git ~/nvm
验证安装
command -v nvm
设置nvm自动运行
echo "source ~/nvm/nvm.sh" >> ~/.bashrc source ~/.bashrc
先用命令检查下当前最新LTS版本号
nvm ls-remote
再安装
nvm install v10.24.1
安装完成,此时node版本会自动切换,且npm也是对应版本。
3、安装mysql
安装之前先切换yum安装源,见另一笔记。
CentOS7带有MariaDB而不是MySQL,MariaDB和MySQL一样也是开源的数据库,直接使用yum -y install mariadb-server mariadb命令安装会报错。
解决方案:
首先必须添加mysql社区repo,再安装:
sudo rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
yum -y install mysql mysql-server mysql-devel
这样就会安装最新版的mysql,同时自动替换掉MariaDB。
1 GRANT ALL PRIVILEGES ON *.* TO 'username'@'192.168.0.1' IDENTIFIED BY 'password' WITH GRANT OPTION; 2 FLUSH PRIVILEGES;
4、项目部署
本项目代码放在gitee的私人仓库中,可以用git直接下载到应用目录,详见安装配置文档。
5、虚拟机导出
关机后,在WM中选择导出,到生产环境再导入,修改对应网络配置及代码中的设备信息后即可使用。
6、虚拟机开机启动
建立VMware的快捷方式,后面添加参数,如:“C:\Program Files (x86)\VMware\VMware Workstation\vmware.exe" -x "d:\CentOS7\CentOS7.vmx",将此快捷方式放在启动项中。
本条为测试主机迁移
未经允许不得转载:生于七零年代 » CentOS 最小化安装及虚拟机迁移