一、 VMware安装
虚拟机版本:VMware® Workstation 14 Pro。安装过程略。
二、 CentOS安装
1. CentOS下载
打开官网链接:
centos主页面提供了多种类型的镜像文件的下载链接。
镜像文件类型说明:
DVD ISO:普通光盘完整安装版镜像,可离线安装到计算机硬盘上,包含大量的常用软件,一般选择这种镜像类型即可。
Everything ISO:包含了完整安装版的内容,并对其进行补充,集成了所有软件。
Minimal ISO:这个版本为精简版的镜像,可以安装一个基本的CentOS系统,包含了可启动系统基本所需的最小安装包。
选择 DVD ISO,进入文件下载目录-->
下载目录界面分为两个主要的资源区:一个是Actual Country,表示当前所在国家资源区;另一个是Nearby Countries,表示附近国家资源区,每个资源下边又有本区的不同站点的资源,站点镜像信息中详细表示了镜像文件的地址、类型及版本号等信息。一般选择当前国家资源区的站点下载,获取资源速度比较快。随机选择一个站点完成镜像文件下载。
2. CentOS安装
vmware主页选择“创建新的虚拟机”,选择镜像后单击下一步可能报错,如下如所示:此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态
(Intel VT-x 即Virtualization Technology, 虚拟化技术,英特尔处理器内更出色的虚拟化支持Intel VT-x 有助于提高基于软件的虚拟化解决方案的灵活性与稳定性。换句话说是在单CPU上支持多系统的技术。)
解决方法是重启物理机,进入BIOS - Security,修改【Intel(R) Virtualization Tech】为【Enabled】,F10保存退出后重启机器即可解决。接上一步继续安装即可。完成后,启动虚拟机。
(TODO:安装过程)
三、 终端模拟软件安装
直接在VMware工作站中操作虚机存在windows和虚机之间焦点切换的问题,因此推荐终端模拟软件:xshell 或 secureCRT。推荐xshell,个人感觉体验更佳。
安装和使用请自行百度。
四、 网络配置
CentOS安装完毕后,默认是不联网的。联网修改设置如下:
1. 获取网卡配置文件名
ifconfig命令获取网卡配置文件名,我的虚拟机网卡名称是ens33
2. 编辑对应的配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33
将最后一行的 ONBOOT=no 修改为 ONBOOT=yes
输入:wq保存退出。重启network:
service network restart
此时虚拟机分配到IP地址可以联网。
(TODO:固定IP地址)
五、 FTP文件传输
虚机与物理机文件传输可以采用FTP服务的方式,vsftpd是linux下倍受欢迎的FTP服务器。
1、 检查&安装vsftpd
//检查是否安装vsftpd
rpm -qa | grep vsftpd
//没有就安装vsftpd
yum -y install vsftpd
//设置系统服务
chkconfig vsftpd on
2、 FileZilla
物理机下载安装FileZilla(免费开源的FTP解决方案)。安装过程略。
六、 jdk安装
1、 openjdk卸载
如果centos自带了openjdk,需先行卸载。
2、 jdk1.8安装
从sun官网下载最新的1.8版本jdk压缩包,通过远程ftp工具传输到虚机。或者采用yum方式直接下载安装。
解压到指定目录:
tar -zxvf jdk-8u171-linux-x64.tar.gz
在/etc/profile文件末尾追加java环境变量:
#set java environment
export JAVA_HOME=/home/java/jdk1.8.0_171
export JRE_HOME=$JAVA_HOME/jre
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
使/etc/profile生效:
source /etc/profile
检测安装是否成功:
[root@localhost java]# java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
[root@localhost java]# javac
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:{none,only} 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-parameters 生成元数据以用于方法参数的反射
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-h <目录> 指定放置生成的本机标头文件的位置
-implicit:{none,class} 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-profile <配置文件> 请确保使用的 API 在指定的配置文件中可用
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
七、 SSH免密登陆设置
系统安装好后,SSH默认是非免密的,可以通过下列命令测试:
ssh localhost
如果提示输入密码则表示非免密。hadoop集群中,各个节点之间互访要求是SSH免密登陆。免密登陆设置方式如下:
#生成密钥
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
#分发公钥(多节点时操作)
$ scp -r ~/.ssh/authorized_keys root@${host}: ~/.ssh/
再次ssh localhost/remotehost,免密登陆成功。
八、 虚机克隆
在一个Hadoop集群环境中,NameNode,SecondaryNameNode和DataNode是需要分配不同的节点上的,所以至少有三个节点来当然这些角色。这也就意味至少需要有三台服务器。(如果是搭建伪分布式集群,单纯的用于学习,就没必要克隆多台虚机)
按上述步骤在第一台虚拟机上安装好各种必须的软件,比如jdk,mysql,openssl,yum,python等等。然后通过vm特有的clone功能,快捷的复制出第N台虚拟机。
待补充。
参考:
https://jingyan.baidu.com/article/1876c85279cedd890a13766c.html -- 从CentOS官网下载系统镜像详细教程
http://www.jb51.net/article/129744.htm -- 启用联网
https://www.cnblogs.com/IT--Loding/p/6257685.html -- FTP服务器安装
https://blog.csdn.net/fuyuwei2015/article/details/73195936 -- java开发环境搭建
http://blog.itpub.net/26230597/viewspace-1255651/