环境搭建

一、安装虚拟机后主要的设置

1、先临时性设置虚拟机ip地址:ifconfig eth0 192.168.31.248,在/etc/hosts文件中配置本地ip(192.168.31.248)到host(spark1)的映射

2、配置windows主机上的hosts文件:C:\Windows\System32\drivers\etc\hosts,192.168.31.248 spark1

3、使用Xmanager从windows上连接虚拟机

4、永久性配置CentOS网络

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.31.248

NETMASK=255.255.255.0

GATEWAY=192.168.56.1

备注:另外两台的ip和domain别为

192.168.31.249(spark2)

192.168.31.250(spark3)

5、重启网卡

service network restart

6、即使更换了ip地址,重启网卡,可能还是联不通网。那么可以先将IPADDR、NETMASK、GATEWAY给删除,将BOOTPROTO改成dhcp。然后用service network restart重启网卡。此时linux会自动给分配一个ip地址,用ifconfig查看分配的ip地址。然后再次按照之前说的,配置网卡,将ip改成自动分配的ip地址。最后再重启一次网卡。

二、关闭防火墙

1、关闭防火墙

service iptables stop

chkconfig iptables off

vi /etc/selinux/config

SELINUX=disabled

自己在win7的控制面板中,关闭windows的防火墙!

2、配置dns服务器

vi /etc/resolv.conf

nameserver 8.8.8.8

nameserver 8.8.4.4

验证网络是否正常

pingwww.baidu.com

三、修改repo(Error: Cannot retrieve repository metadata (repomd.xml) for repository)

1、修改repo

使用WinSCP(网上很多,自己下一个),将CentOS6-Base-163.repo上传到CentOS中的/usr/local目录下

cd /etc/yum.repos.d/

rm -rf *

mv 自己的repo文件移动到/etc/yum.repos.d/目录中:cp /usr/local/CentOS6-Base-163.repo .

修改repo文件,把所有gpgcheck属性修改为0

2、配置yum

yum clean all

yum makecache

yum install telnet

四、安装jdk

1、将jdk-7u60-linux-i586.rpm通过WinSCP上传到虚拟机中

2、安装JDK:rpm -ivh jdk-7u65-linux-i586.rpm

3、配置jdk相关的环境变量

vi .bashrc

export JAVA_HOME=/usr/java/latest

export PATH=$PATH:$JAVA_HOME/bin

source .bashrc

4、测试jdk安装是否成功:java -version

5、rm -f /etc/udev/rules.d/70-persistent-net.rules

说明:

1、安装上述步骤,再安装两台一模一样环境的虚拟机,因为后面hadoop和spark都是要搭建集群的。

2、集群的最小环境就是三台。因为后面要搭建ZooKeeper、kafka等集群。

3、另外两台机器的hostname分别设置为spark2和spark3即可,ip分别为192.168.31.249和192.168.31.250

4、在安装的时候,另外两台虚拟机的centos镜像文件必须重新拷贝一份,放在新的目录里,使用各自自己的镜像文件。

5、虚拟机的硬盘文件也必须重新选择一个新的目录,以更好的区分。

6、安装好之后,记得要在三台机器的/etc/hosts文件中,配置全三台机器的ip地址到hostname的映射,而不能只配置本机,这个很重要!

7、在windows的hosts文件中也要配置全三台机器的ip地址到hostname的映射。

五、免密登录设置

1、首先在三台机器上配置对本机的ssh免密码登录

生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh目录下

ssh-keygen -t rsa

将公钥复制为authorized_keys文件,此时使用ssh连接本机就不需要输入密码了

cd /root/.ssh

cp id_rsa.pub authorized_keys

2、接着配置三台机器互相之间的ssh免密码登录

使用ssh-copy-id -i spark命令将本机的公钥拷贝到指定机器的authorized_keys文件中(方便好用)

--------------------------------------------------------------------------------------------------------------

一、双方机器都是root用户登陆方法

A为本地主机(即用于控制其他主机的机器) ;

B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;

A和B的系统都是Linux

在A上运行命令:

# ssh-keygen -t rsa (连续三次回车,即在本地生成了私钥(id_rsa) 与公钥 (id_rsa.pub),不设置密码)

# ssh [email protected] "mkdir .ssh" (需要输入密码)

# scp ~/.ssh/id_rsa.pub [email protected]:.ssh/id_rsa.pub (需要输入密码)

在B上的命令:

# touch /root/.ssh/authorized_keys (如果已经存在这个文件, 跳过这条)

# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys (将id_rsa.pub的内容追加到authorized_keys 中)

回到A机器:

# ssh [email protected] (不需要密码, 登录成功)


二、远程主机不是root用户(比如普通用户test)登陆方法

A为本地主机(即用于控制其他主机的机器) ;

B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;

A和B的系统都是Linux

在A上运行命令:

# ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)

# ssh [email protected] "mkdir .ssh" (需要输入密码)

# scp ~/.ssh/id_rsa.pub [email protected]:.ssh/id_rsa.pub (需要输入密码)

在B上的命令:

# touch /home/test/.ssh/authorized_keys (如果已经存在这个文件, 跳过这条)

# cat /home/test/.ssh/id_rsa.pub >> /home/test/.ssh/authorized_keys (将id_rsa.pub的内容追加到authorized_keys 中)

修改test/.ssh和authorized_keys的权限

#chmod 700 test

#chmod 700 .ssh

#chmod 600 authorized_keys

回到A机器:

# ssh [email protected] (不需要密码, 登录成功)

------------------------------------------------------------------------------------------------------------

你可能感兴趣的:(环境搭建)