02
_____egon新书来袭请看:https://egonlin.com/book.html
一 虚拟机管理软件介绍
简单地说,虚拟机(Virtual Machine)软件就是一套特殊的软件,它可以作为操作系统独立运行,也可以运行于操作系统之上。若是运行于系统之上的虚拟机软件,在一台计算机(PC或笔记本电脑等)上安装虚拟机软件后,就可以模拟若干台相对独立的虚拟PC设备,并且可以在每台虚拟的PC设备上安装运行操作系统,运行网络服务,与真实的计算机设备几乎无任何使用差别。
使用时,需要先在计算机上安装虚拟机软件(windows下安装:VMware Workstation,mac下安装:VMWare Fusion) ,然后通过安装的虚拟机软件创建一个或多个虚拟机系统(即虚拟的计算机设备),最后在这些虚拟的计算机设备上安装操作系统并进行启动配置,最终实现在一台计算机上“同时”运行多个虚拟机设备系统。
另外,还可以将这些虚拟的系统连成局域网,用来部署网站集群架构等更深层次的运维技术,这样的虚拟环境在后文会涉及。
二 安装操作系统
详细安装步骤见文档:链接: https://pan.baidu.com/s/1jGtbAA6uxdG4YO2s_xK66g 提取码: dk54
- 1、cpu:选择虚拟机对应CPU的颗数,以及每个CPU的核数,默认都是1,选此即可。我们仅仅是用虚拟机来进行学习、实验,不要求虚拟机设备资源有多好。
- 2、内存:创建虚拟机时内存至少大于512MB,最好是1GB以上,否则安装系统可能报错,因为从CentOS 6开始,多数都用图形界面安装系统了,因此,占用的内存会比较大。
- 3、硬盘:6~8GB的硬盘空间即可
- 4、网络:为虚拟机选择网络类型”极其关键。VMware虚拟机常见的网络类型有Bridged(桥接)、NAT、Host-only(仅主机)3种,在分析如何选择之前,先要简单给大家介绍一下这三种网络类型。
- NAT=>VMnet8
NAT(Network Address Translation,网络地址转换),NAT模式是比较简单的实现虚拟机上网的方式。简单地理解,NAT模式的虚拟机就是通过宿主机(物理计算机)上网和交换数据的。
在NAT模式下,虚拟机的网卡连接到宿主机的VMnet8上。此时系统的VMware NAT Service服务就充当了路由器,负责将虚拟机发送到VMnet8的包进行地址转换之后发送到实际的网络上,再将实际网络上返回的包进行地址转换后通过VMnet8发送给虚拟机。VMware DHCP Service负责为虚拟机分配IP地址。NAT网络类型的原理逻辑图如图2-18所示。
NAT网络特别适合于家庭里计算机直接连接网线的情况,当然办公室的局域网环境也是适合的,其优势是不会与其他物理主机IP冲突,且在没有路由器的环境下也可以通过SSH NAT连接虚拟机学习,换了网络环境虚拟机IP等不受影响。
- Bridged(桥接模式)=>桥接到本地物理网卡
桥接模式可以简单理解为通过物理主机网卡架设一座桥,从而连入实际的网络中。因此,虚拟机可以被分配与物理主机相同网段的独立IP,所有网络功能和网络中的真实机器几乎完全一样。桥接模式下的虚拟机和网内真实计算机所处的位置是一样的。
在Bridged模式下,计算机设备创建的虚拟机就像一台真正的计算机一样,它会直接连接到实际的网络上,逻辑上上网与宿主机(计算机设备)没有联系。Bridged网络类型的原理逻辑图如图1-19所示。
Bridged网络类型特别适合于局域网环境,其优势是虚拟机像一台真正的主机一样,缺点是可能会与其他物理主机IP冲突,并且在与宿主机交换数据时,都会经过实际的路由器,当不考虑NAT模式的时候,就选择这个桥接模式,在桥接模式下换了网络环境后所有虚拟机的IP都会受影响。
- Host-only(仅主机)
在Host-only模式下,虚拟机的网卡会连接到宿主的VMnet1上,但宿主系统并不为虚拟机提供任何路由服务,因此虚拟机只能与宿主机进行通信,不能连接到实际网络上,即无法上网。Host-only网络类型的原理逻辑图
CentOS系列x86_64在虚拟机上设置CPU时可能会出现故障,这是因为笔记本电脑或台式机硬件CPU需要支持虚拟化技术,但有些系统硬件默认是不支持的,可以通过调整BIOS使其支持,不过,某些旧机器可能只能安装32位的Linux系统
进入BIOS启动虚拟化支持
进入笔记本电脑或台式机的BIOS,找到类似下面的选项进行调整,不同的计算机会略有不同。这里以Thinkpad计算机为例说明
两个选项都改成Enabled,然后保存。如果没有意外,就可以安装64位操作系统了
如果重启计算机后依然不行,那就是计算机硬件有问题了,只能安装32位系统,或者更换为支持64位系统的硬件。
分区
(1)常规生产场景(工作)方案,网络集群架构中的某个节点服务器(很多个功能相同的服务器),即数据有多份或者数据不重要的服务器,建议分区方案如下:
/boot:存放引导程序,建议大小是300-500MB
swap: 虚拟内存,1.5-2倍内存大小
工作中:物理内存<8G,SWAP就 内存*1.5
物理内存>8G,SWAP就 8G
/:根,存放所有数据,剩余空间都给根(/usr,/home,/var等分区和/共用一份分区,像Windows的C盘,所有数据和系统文件都放在了一起)
(2)数据库及存储角色的服务器,即有大量重要的数据的业务,建议分区方案如下:
/boot:存放引导程序,建议大小是300-500MB
swap :虚拟内存,1.5-2倍内存大小
工作中:物理内存<8G,SWAP就 8*1.5
物理内存>8G,SWAP就 8G
/:根,50-200G,只存放系统相关文件,网站业务数据不放这里
/data:剩余硬盘空间大小,放数据库及存储重要数据的,data的名称也可以起别的名字。
提示:本方案其实就是把重要数据单独分区,便于备份和管理
(3)大门户网站,大型企业的分区思路
/boot:存放引导程序,CentOS6给200M,CentOS7给200M
swap:虚拟内存,1.5倍内存大小
工作中:物理内存<8G,SWAP就 8*1.5
物理内存>8G,SWAP就 8G
/ :根,50-200G,只存放系统相关文件,网站业务数据不放这里
剩余空间不分区,保留,将来分配给部门,由他们根据需求再分
提示:此方法更灵活,比较适合业务线比较多需求不确定的大企业使用。
普通网友的分区方案:不推荐,应禁止(/boot,swap,/,/usr,/home,/var),没有主见的被动式的分区,没必要且管理麻烦。
分区少一些,对所有分区进行监控报警是目前多数规范企业的选择。
(4)LVM:在线调整分区大小
1、性能差
2、没必要(事先规划好)!
(5)操作系统软raid不要用
1、性能差,没有冗余
2、生产场景使用硬件raid
这里采用的是生产环境中集群节点下的节点服务器的分区方式,即系统坏掉后硬盘数据不需要保留。此分区方式也适合大多数生产环境的服务器,如果是数据库以及存储等有重要数据的特殊业务服务,一般会单独分存放数据的分区如 /data。 除了/boot、swap和/三个分区外,还可以加/usr、/home、/var等分区,具体要根据服务器的需求来决定,一般情况下,只配置这三个分区足够了。 这种分区方案最大优点就是简单,使用方便,可批量安装部署,而且不会存在有的分区满了,有的分区还剩余了很多空间又不能被利用的情况(LVM的情况这里先不阐述)。 该分区方案的缺点是如果系统坏了,重新装系统时,因为数据都在/(根)分区,导致数据备份很麻烦,如果设置了/usr、/home、/var等分区,即使系统出了故障,也可以直接在/(根)分区装系统,这样并不会破坏其他分区的数据。当然,刚才也说了,如果是不存在备份数据的集群节点,那采用这种分区方案是很明智的,不需要特别担心某个分区暴满的问题。
三 系统安装后的优化
1、根据经验,选择安装包时应该按最小化原则,即不需要的或者不确定是否需要的就不安装,这样可以最大程度上确保系统安全。
2、如果安装过程落了部分包组或者其他伙伴安装时没选,再安装后可以按如下方式补上安装时未安装的包组:
yum groupinstall "Compatibility libraries" "Base" "Development tools"
yum groupinstall "debugging Tools" "Dial-up Networking Support"
# 可以通过yum groupinfo包组查看具体安装的组件。
3、可以查看选包的情况:yum grouplist
可以看到除了我们选择的外,系统还是默认安装了一些额外的软件包组。
注意:不要使用yum的删除功能删除软件,会删除相关依赖,导致意外问题。
4、安装系统补装工具命令
安装系统后还会有一些基本的工具没装,这时可以根据需求yum来安装下,啥时用啥时装也可。例如:
[root@egon ~]# yum -y install tree nmap sysstat lrzsz dos2unix telnet bash-completion bash-completion-extras vim lsof net-tools rsync ntpdate nfs-utils
如果需要更新补丁则执行
[root@egon ~]# yum update
5、配置网络
setup命令→Network configuration→Device configuration→eth0→配置完依次点击“ok” →“save” →Save&Quit→Quit,这样就退出到命令行界面了。
该配置实质就是修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0内容。
6、创建快照
四 远程连接
远程连接Linux服务器的常见工具有Xshell、SecureCRT、Putty等,其中 最常用的是Xshell、SecureCRT。这些客户端连接工具在Linux服务器对应着相同SSH服务进程sshd,即远程连接都是使用SSH协议,当然它们也支持其他的协议,比如telnet等。
在Windows操作系统下,xshell是最好的终端,可以去官网下载,也可以从我的网盘里下:链接: https://pan.baidu.com/s/1NXnnQ1RsQ9RMcRMcWUbQug 提取码: v3h5
在Mac操作系统下,用的是iTerm2,下载地址是:https://www.iterm2.com/downloads.html
xshell整体优化如下
1、=============================================》定义Xshell日志(工具-选项)
2、=============================================》关闭Xshell自动更新
3、=============================================》关闭Xshell声音
4、=============================================》显示优化
xshell基础优化如下
xshell远程连接
xshell上传下载文件路径设置
远程连接工具排错
# 一 测试网络是否哦畅通 1.ping 10.0.0.200 #服务器ip地址 2.是否被拦截了:SElinux,Firewalld #防火墙 3.sshd服务是否开启 命令:telnet 10.0.0.200(ip地址) 22(端口号) # 二、远程连接失败常见原因 1.ip地址是否正确 2.网卡配置是否正确 3.关闭centos7 NetworkManager systemctl stop NetworkManager systemctl disable NetworkManager 4.虚拟网络编辑器 NAT模式:子网 IP:10.0.0.0 NAT设置:网关 IP:10.0.0.254 5.VMware服务是否正常启动 VMware 服务是正常运行(WIN搜索服务) VMware网卡问题,查看本地网络。