大纲
1、前言
2、虚拟机基本设置(硬件虚拟化)
3、正式安装过程
1、前言
本文以学习为目的,利用VMware Workstation 10.0.2 安装CentOS 6.4。
存储规划,仅划分根分区(/),Swap分区,/boot分区。对于生产环境,请慎重。
2、虚拟机基本设置
新建虚拟机(硬件虚拟化【模拟硬件】,相当于刚到电脑城买了一台电脑,但是还没有安装操作系统)
照猫画虎教程:
1、安装好VMware后,选择 File > New Vitual Machine (或者Ctrl + N)
2、然后弹出 New Virtual Machine Wizard, 这里我们选择“Typical”,高级用户可以选择“Custom”(如下图), Next
3、接下来我们要选择从哪里选择Guest Operating System 镜像,
1、Installer disc 表示物理光驱安装,由于我物理机没有光驱,所以这里不可用。
2、Installer disc image file(iso)表示从镜像文件安装,请注意下面有一个叹号的提示:“Easy install”,如果我们选择了第二项,那么我们启动虚拟机后,会自动给我们安装。新版的VMware Workstation就是比较牛,在这里被坑过一次,每次都是自动安装,想定制安装都不行,⊙�n⊙b汗。。。(千万不要选择这一项 Easy Install)
3、I will install the operating system later. 我们推荐选择这一项。
这里选择第三项,以后安装,方便进行配置。
4、接下来选择Guest操作系统类型(如下图),我们根据要安装的系统类型合理选择即可,相信聪明的你是没有问题的
可以选择相应的Linux 发行版本号
也可以选择相应的内核版本(我比较推荐这种方式,因为有更好的兼容性)
5、设置虚拟机名称和安装路径,设置Virtual machine name, 和 Location(虚拟机安装路径),建议修改Location的位置,因为创建的虚拟机需要占用很大的磁盘空间
6、OK,然后选择 CPU 数和处理核心数,默认即可(如果CPU数超过实际CPU数量会出现警告)。
7、设置内存,内存自然越大越好,当然这需要根据实际物理内存抉择。
8、选择虚拟机联网方式:
9、选择IO控制器类型,选择默认的即可, Next
10、选择磁盘
11、选择虚拟硬盘类型
12、选择磁盘大小,磁盘大小是根据虚拟机实际占用动态分配的,所以这里没有太大关系的啦
Store virtual disk as a single file
把virtual disk存储为单个文件,这样能提高性能。
Split virtaul disk into multiple files
把virtual disk存储为多个文件,可以很容易的迁移,在某些文件系统上必须这么做(比如FAT32,单个文件最大限制为4G),但是会降低性能。
如果物理机的文件系统类型是NTFS, 那么建议选择第一项 Store virtual disk as a single file。
接下来在VMware中,点击左侧Library中的CentOS5.8
Power on this virtual machine: 启动该虚拟机
Edit virtual machine settings: 设置
我们点击“Edit virtual machine settings”出现以下界面
这里,我们可以定制虚拟机的硬件设备,添加或删除网卡,磁盘。我们现在最主要的动作是编辑“CD/DVD(SATA)项”,右边的“Device status”勾选Connect at power on,“Connection”选择Use ISO image file,然后选择一个镜像文件,这里我选择的是CentOS-5.8-i386-bin.iso。
此时,是什么意思呢? 也就是说,我们把安装光盘,插入了虚拟机的光驱内。然后就可以启动虚拟机,从光驱进行安装系统了。
OK, 回到刚才那个界面,然后点击“Power on this virtual machine”,那么我们的虚拟机就开始启动了.
这里注意几个小的细节:
安装CentOS内存最好大于512M,否则可能因为内存不够,无法加载而被挂起
当鼠标被虚拟机捕获时,如何把鼠标切换到物理机呢? Ctrl + Alt
怎么重启虚拟机? Ctrl + Alt + Insert
怎么进入虚拟机的BIOS,在启动虚拟机后,狂按 F2 键,注意鼠标要被虚拟机捕获才行。
在上面的窗口中,F2 键是进入BIOS 设置界面,F12 键是网络启动,ESC 键是虚拟机开机时按此键进入开机启动选项界面。
对于手慢的同学,同样不必担心,这里也提供一个备选方案。VM - Power - Power On to BIOS
VMware 在实验过程中经常使用的功能:
1、挂起
有时候做实验的时候可能因为某种原因,会中断实验,有没有能够定格现在的状态,等需要的时候,立刻恢复呢? 答案是有的。
suspend挂起是这样定义的,可以让虚拟机记录下当前虚拟系统的状态,下次可以用Resume重新恢复选择挂起时的运行状态,以便接着工作。所以当你挂起就是该程序未处于运行状态,但也没有被结束,只是暂时冻结。
虚拟机中的挂起,相对于休眠虚拟机,会把虚拟机当前的内存信息写入硬盘特定虚拟机硬盘文件中,下次开机时直接加载这个文件启动恢复到挂起之前的状态。挂起后,虚拟机处于关机状态
挂起存在的问题:
当系统挂起的时候,会定格到某个时刻的状态。相当于时间定格。vmware把挂起虚拟机Resume后,时间是挂起后继续的时间。所以存在时间不一致的问题。
方法一:
在linux 系统中,使用 ntpdate 命令加入计划任务,定时同步时间即可。
方法二:
Linux或Unix下怎样修改系统时间
我们一般使用“date -s”命令来修改系统时间。比如将系统时间设定成2005年7月26日的命令如下。
# date -s 07/26/2005 将系统时间设定成下午11点12分0秒的命令如下。 # date -s 11:12:00 注意,这里说的是系统时间,是linux由操作系统维护的。 当然,也可以通过ntp服务来同步时间 # yum -y install ntpdate # /usr/sbin/ntpdate 129.6.15.28 # clock -w
在系统启动时,Linux操作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性,Linux每隔一段时间会将系统时间写入CMOS。由于该同步是每隔一段时间(大约是11分钟)进行的,在我们执行date -s后,如果马上重起机器,修改时间就有可能没有被写入CMOS,这就是问题的原因。如果要确保修改生效可以执行如下命令。
#clock -w 这个命令强制把系统时间写入CMOS。
2、快照
什么是快照?
快照的英文是 Snapshot, 是对某一个特定文件系统在某一个特定时间点的一个具有只读属性的镜像。当你需要重复的返回到某一系统状态,由不想创建多个虚拟机的时候,就可以使用快照功能。
早在VMware Workstation 4就已经支持快照功能了,但是有只能生成一个快照的限制。VMware Workstation 5及以后的版本,支持多重快照。意味着可以针对同一台虚拟机在不同的时刻创建多个快照,并且能够毫无限制的往返于任何快照之间。
当我们在虚拟机中做实验或者做测试时,难免碰到一些复杂、不熟悉的地方,此时做个快照,备份一下当前的系统状态,一旦操作错误,可以很快的还原到之前的状态,避免一失足成千古恨的情况,避免一步失误导致重新开始整个实验。这样既节省磁盘空间又提高工作效率。
创建快照
1、启动虚拟机,在菜单中单击 VM - Snapshot - Take Snapshot ..
2、在“Take Snapshot”窗口中,填入快照的名字和描述,单击“Take Snapshot”,然后等待左下角创建快照进度完成即可。
3、克隆
说了快照,那么,什么又是虚拟机的克隆呢? 在VMware软件中,克隆和快照功能很相似,但又不同。
一个虚拟机的克隆就是原始虚拟机全部状态的一个拷贝,或者说一个镜像。克隆的过程并不影响原始虚拟机,克隆的操作一旦完成,克隆的虚拟机就可以脱离原始虚拟机独立存在,而且在克隆的虚拟机中和原始虚拟机中的操作是相对独立的。克隆过程,VMware会生成和原始虚拟机不同的MAC地址和UUID,这就允许克隆的虚拟机和原始虚拟机在同一个网络中出现,并且不会产生任何冲突。
VMware支持两种类型的克隆方式:
完整克隆
链接克隆
完整克隆
完整克隆适合原始虚拟机完全独立的一个拷贝,它不和原始虚拟机共享任何资源。可以脱离原始虚拟机独立使用。
链接克隆
链接克隆需要和原始虚拟机共享同一虚拟磁盘文件,不能脱离原始虚拟机独立运行。但是采用共享磁盘文件却大大缩短了创建克隆虚拟机的时间,同时还节省了宝贵的物理磁盘空间。
闲来无事,在网上看到一篇使用VMware workstation 安装 CentOS 6.4的文章, 对初学者很有帮助。
对于Linux版本的选择:
Linux桌面系统,日常办公或开发平台,首选Ubuntu
服务器端的操作系统:首选 RHEL或CentOS,这两者中首选CentOS
如果对于安全性要求很高,可以选择Debian或者FreeBSD
欧洲很多公司使用:SUSE
新技术,新功能,可以选择Fedora
需要注意的地方:
侧重于服务器领域,首选 CentOS x86_64 6.x系列的版本(因为绝大多数互联网公司都是用CentOS)
强烈推荐下载 64bit 系统, 32bit的系统应该走下历史舞台。只要是服务器,全部上 64 位操作系统。
企业中一般使用CentOS 什么版本? 5系列: 27% , 6系列: 45%
一般 CentOS 镜像有两个 DVD1,DVD2 , 第2个镜像通常是一些附加软件包,基本上没多大用。
安装CentOS 6.x 必须保证机器内存大于 628M,因为低于这个要求不会启动图形安装模式,文本安装模式不支持自定义分区,也不支持自定义选择软件包。最好大于1G,安装会比较快。安装完成之后,可以把内存调整稍微小一点,但是不建议太小,否则导致不断和虚拟内存进行换页操作,导致性能降低。 CentOS 5.x 系列安装256M即可,启动100M就行了。
系统安装完成后,默认情况下是没有启用网卡的。
有朋友肯定是会急着去启动网卡服务了,CentOS 5下不会报错,但是在CentOS6下网络服务重启后, ip配置发生了错误!原来CentOS6下的网卡的主配置文档中,默认下有NM_CONTROLLED=yes这么一行, 这意味着网卡eth0得有 NetworkManager 托管,这行中的yes|no的开关控制项的修改是即时生效的, 你可以改为no保存后,立即可以解决上述问题!下面我们来修改一下! [root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=00:0C:29:87:9D:1D TYPE=Ethernet UUID=3efbea06-751a-4add-bec7-13db4d19bc0d ONBOOT=yes # 修改为yes,开机启动 NM_CONTROLLED=no # 不被 NetworkManager 接管 BOOTPROTO=dhcp [root@web ~]# service network restart Shutting down interface eth0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface eth0: Determining IP information for eth0... done. [ OK ]
http://www.cnblogs.com/xiaoluo501395377/archive/2013/03/31/CentOs.html
Centos 6.5 及以上的操作系统重启网络服务network 会提示 Determining if ip address is already in use for device eth0提示。但是这个问题不影响正常使用,只是有些困惑,如果有强迫症的同学,可以按照下面的方法解决。
提示IP地址冲突,但是之前这个IP是没有使用过的,经过查找,是因为Centos 6.6默认开启了ARPCHECK,将它关闭就不会再提示冲突提示了。
3、安装过程
在安装过程中,请注意最下面一行快捷键,对我们很有帮助。
详细安装过程请参考:http://blog.itpub.net/15711267/viewspace-776436/
CentOS 下载地址:
建议在国内的镜像站点进行下载,速度更快一些:
比如,网易开源镜像站, 或者重庆大学镜像源
说明
1、CentOS 6.5系统镜像有两个,安装系统只用到第一个镜像即CentOS-6.5-i386-bin-DVD1.iso(32位)或者CentOS-6.5-x86_64-bin-DVD1.iso(64位), 第二个镜像是系统自带软件安装包,一般用不上; 但是我们这里要进行最小化安装,所以下载:CentOS-6.5-x86_64-minimal.iso 镜像。
不要下载 CD 格式的,下载 DVD版本。
2、安装CentOS 6.5系统的计算机内存必须等于或者大于628M(最小内存628M),才能启用图形安装模式;
3、CentOS 6.5文本安装模式不支持自定义分区,建议使用图形安装模式安装;
4、CentOS 6.5的系统安装方式分为:图形安装模式和文本安装模式;
5、CentOS 6.5的系统运行方式分为:带图形界面、可以用鼠标操作的图形化方式和不带图形界面、直接用命令行操作的文本方式(具体的系统运行方式,可以在系统安装的过程中自定义选择);
CentOS 6.0 以前, 可以选择文本安装模式; 6.0 以后,如果内存较少会自动进入文本模式安装,但是不支持自定义分区以及选择软件包。
安装图解
Install or upgrade an existing system 安装或升级现有的系统
install system with basic video driver 安装过程中采用 基本的显卡驱动
Rescue installed system 进入系统修复模式
Boot from local drive 退出安装从硬盘启动
Memory test 内存检测
这里选择第一项,安装或升级现有的系统,回车。
出现是否对CD媒体进行测试的提问,这里选择“Skip”跳过测试。
出现下面的界面
Next
选择语言为:English(English)Next
选择键盘布局为:U.S. English , Next
选择第一项,基本存储设备, 估计没有机会能够选择第二项。
选择第一项: Yes, discard any data
设置主机名:建议和具体的应用相关, web服务器: web , 数据库服务器: db , 类似这样命名
时区选择:Asia/Shanghai 或者 Asia/Chongqing
取消“系统时钟使用UTC时间”前面的勾, 这一点步知道为什么这么做。
设置root密码
选择最后一项,创建自定义布局
特别说明:用于正式生产的服务器,切记必须把数据盘单独分区,防止系统出问题时,保证数据的完整性。
不建议使用 软raid, LVM,降低系统性能。尽量事先规划好分区,避免后期做大的变动。
一般来说,在linux系统中都有最少两个挂载点,分别是/ (根目录)及 swap(交换分区),其中,/ 是必须的;
选中空闲分区,点 Create,选择标准分区,再点 Create
Mount Point: /boot
File System Type: ext4
Size: 200
Mount Point: 无
File System Type: swap
Size: 1024
Mount Point: /
File System Type: ext4
Fill to maximum allowable size .
点击 “ Format ”
正在安装
至此,系统安装已经完成, Reboot 即可
至此,系统安装已经完成, Reboot 即可
不过此时,系统是无法联网的。我们需要配置IP。
第一步:编辑网卡配置文件,
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
第二步:配置 DNS
# vi /etc/resolv.conf
nameserver 114.114.114.114
第三步:重启网络
# service network restart
因为我是在 vmware 中做的实验,这里还遇到一个问题,桥接网络默认桥接在有线网卡上,而我连接的无线,所以需要进行配置。
生产环境分区方案:
web服务器集群环境: 600G - 1T硬盘
/boot 200M
swap
/ 所有剩余空间,因为有集群,所以不担心数据丢失问题。
数据库服务器: 600G - 2T
/boot 200M
swap
/ 50 - 100G
/data 所有剩余空间
一般有重要数据的业务,尽可能把数据所在的分区单独划分出来。
未知服务: 300G - 1T
/boot 200M
swap
/ 50 - 100G
剩余空间先不划分,根据实际需求进行划分。
其实虚拟内存并不是等到物理内存用尽了才使用的,是否尽量的使用或不使用swap,在内核空间有一个参数控制。
[root@server ~]# cat /proc/sys/vm/swappiness
60
swappiness=0 的时候表示最大限度使用物理内存,然后才是swap空间;swappiness=100 的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
对于现在动辄几十GB、上百GB物理内存的服务器来说,究竟为其Linux系统设置多大的交换分区合适呢?为此,我引用红帽官方文库里的一段文字进行浅析说明。
目前Red Hat(红帽官方)推荐交换分区的大小应当与系统物理内存的大小保持线性比例关系。不过在小于2GB物理内存的系统中,交换分区大小应该设置为内存大小的 两倍,如果内存大小多于2GB,交换分区大小应该是物理内存大小加上2GB。其原因在于,系统中的物理内存越大, 对于内存的负荷可能也越大。
但是,如果物理内存大小扩展到数百GB,这样做就没什么意义了。
实际上,系统中交换分区的大小并不取决于物理内存的量,而是取决于系统中内存的负荷。Red Hat Enterprise Linux 5可以在这样的情况下工作:完全没有交换分区,而且系统中匿名内存页和共享内存页小于3/4的物理内存量。在这种情况下,系统会将匿名内存页和共享内存页锁定在物理内存中,而使用剩余的物理内存来缓冲文件系统数据(pagecache),当内存耗尽时,系统内核只会回收利用这些pagecache内存。
考虑到以下情况:
1)安装系统时难以确定内存的负荷,如何设置交换分区大小
2)系统中物理内存越大,所需交换分区就会越少
因此,在Red Hat Enterprise Linux 5中,以下是设置合适的交换分区大小的规则:
一般来说可以按照如下规则设置swap大小:
4G以内的物理内存,SWAP 设置为内存的2倍。
4-8G的物理内存,SWAP 等于内存大小。
8-64G 的物理内存,SWAP 设置为8G。
64-256G物理内存,SWAP 设置为16G。
实际上,系统中交换分区的大小并不取决于物理内存的量,而是取决于系统中内存的负荷,所以在安装系统时要根据具体的业务来设置SWAP的值。
实际上,并不是等所有的物理内存都消耗完毕之后,才去使用swap的空间,什么时候使用是由swappiness 参数值控制。
[root@rhce ~]# cat /proc/sys/vm/swappiness
60
该值默认值是60.
swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,
swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
现在服务器的内存动不动就是上百G,所以我们可以把这个参数值设置的低一些,让操作系统尽可能的使用物理内存,降低系统对swap的使用,从而提高系统的性能。
--临时性修改:
[root@rhce ~]# sysctl vm.swappiness=10
vm.swappiness = 10
[root@rhce ~]# cat /proc/sys/vm/swappiness
10
这里我们的修改已经生效,但是如果我们重启了系统,又会变成60.
--永久修改:
在/etc/sysctl.conf 文件里添加如下参数:
vm.swappiness=10
或者:
[root@rhce ~]# echo 'vm.swappiness=10'>> /etc/sysctl.conf
保存,重启,就生效了。