Instructor of Booting Alluxio
本指导知道大家以及以后的我怎么在一台新的服务器上部署Alluxio服务
Contents
对于Docker的虚拟机
Docker虚拟机在咱们的网站http://10.1.1.1:81
申请虚拟机的时候在Json文件请填写"image": "10.1.0.180/alluxio/ubuntu_14.04.5:latest"即可。
对于一台新的物理机加到集群中
对新的物理机的安装操作
首先你需要安装Java7或者8,安装nvidia驱动
然后修改vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar export PATH=$PATH:$JAVA_HOME/bin export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin export HADOOP_HOME=/usr/local/hadoop export HADOOP_INSTALL=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
记得source /etc/profile
把物理机加入到Docker集群中
ssh root@10.1.1.4 cd /data/offlinesry/ansible ./add_slave 主机名 mesos
然后在网页以管理者身份登录
1) http://10.1.1.1:81/ui/auth/login
2) 点击student
3)添加主机把物理机加入到集群
对新的物理机的网络操作
需要把所有的虚拟机都绑定外网地址,这样他们才能跟Alluxio的Master180互通有无。下面是脚本:
import os import re import pexpect import time for i in range(1,31): data= ii=i+XX with open('/etc/sysconfig/network-scripts/ifcfg-enp3s0f0', 'r+') as f: for line in f.readlines(): if(line.find('DEVICE') == 0): line = 'DEVICE=%s' % ('ifcfg-enp3s0f0:%s' %i,) + '\n' if(line.find('IPADDR') == 0): line = 'DEVICE=%s' % ('10.1.X.%s' %ii,) + '\n' data += line file_object = open('/etc/sysconfig/network-scripts/ifcfg-enp3s0f0:%s' %i, 'w') file_object.writelines(data) file_object.close( )
其中XX跟X是虚拟机的IP地址,ifcfg-enp3s0f0是网卡mac地址,请在这个表格里面看还剩下什么IP地址。
https://docs.google.com/spreadsheets/d/1_nia7F0xqIrlIsPpR5ZCayH9CaA9wA38KXObR_WVMwo/edit?usp=sharing
然后记得重启网络,或者你可以用命令行加一个暂时的。然后是添加iptables
import os import re import pexpect import time for i in range(1,31): ip=i+XX ip2=i+1 ll='172.17.0.%s' %ip2 command1='iptables -t nat -A PREROUTING -d 10.1.3.%s -p tcp -m tcp --dport 1:65535 -j DNAT --to-destination %s:1-65535' %(ip,ll) command2='iptables -t nat -A POSTROUTING -d %s -p tcp -m tcp --dport 1:65535 -j SNAT --to-source 172.17.0.1' %ll command3='ifconfig enp3s0f0:%s 10.1.X.%s/16' %(i,ip) os.system(command1) os.system(command2) os.system(command3)
跟上面一样XX跟X是虚拟机的IP地址,ifcfg-enp3s0f0是网卡mac地址
需要打开的端口
需要添加的hosts
https://pan.baidu.com/s/1bOm2wm
密码
如果你添加了新的虚拟机的地址,请上传新的Excel表并且修改这里Wiki与http://wiki.iiis.systems:9988/w/index.php/Alluxio_User_Guide 这两个链接
在Master中修改Alluxio配置
我们需要Alluxio的Master (10.1.0.180)中添加Worker让他知道多了哪些节点。所以需要在
vim /root/mesos/alluxio-1.5.0/conf/workers
添加你的新的虚拟机IP地址,全部加上30个没关系,Alluxio会自行寻找哪些能通哪些不能通。
./bin/alluxio-stop.sh all ./bin/alluxio format ./bin/alluxio-start.sh all Mount
安装Alluxio与Hadoop
mkdir mesos cd mesos scp -r root@10.1.0.180:/root/mesos/alluxio-1.5.0 . scp -r root@10.1.0.180:/usr/local/hadoop /usr/local