centOS 操作记录二
2016-04-09 12:33
399 查看
LINUX下编译hadoop
安装protobuf
tar -zxf /usr/local/installPackage/protobuf-2.6.1.tar.gz -C /usr/local/installPackage/resource
cd /usr/local/installPackage/resource/protobuf-2.6.1
./configure --prefix=/usr/local/protobuf && make && make check
make install
ln -s /usr/local/protobuf/bin/protoc /usr/bin/protoc
安装cmake、zlib devel、openssl devel
yum search cmake
yum install cmake.x86_64
yum install zlib-devel
yum install openssl-devel
安装maven
tar -zxvf /usr/local/installPackage/apache-maven-3.3.9-bin.tar.gz -C /usr/local/software
修改conf/settings.xml的本地库路径
修改etc/profile
MAVEN_HOME=/usr/local/software/apache-maven-3.3.9
PATH=$MAVEN_HOME/bin:$PATH
export PATH
更新当前环境变量 source /etc/profile
修改主机名并配置免密码登录
vi /etc/hosts
vi /etc/hostname
ssh-keygen -t rsa
scp /root/.ssh/id_rsa.pub
root@S2:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub
root@S3:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub
root@S4:/root/.ssh/authorized_keys
编译安装hadoop
tar -zxf /usr/local/installPackage/hadoop-2.5.2-src.tar.gz -C /usr/local/installPackage/resource
cd /usr/local/installPackage/resource/hadoop-2.5.2-src
mvn package -Pdist,native -DskipTests -Dtar
四台虚拟机搭建hadoop高可用集群
集群规划
zookeeper:S1、S2、S3
namenode:S1、S2
datanode:S2、S3、S4
journalnode:S2、S3、S4
zkfc:S1、S2
修改四台主机名
vi /etc/hosts
vi /etc/hostname
主机名分别为:S1、S2、S3、S4
配置免密码登录
ssh-keygen -t rsascp /root/.ssh/id_rsa.pub
root@S2:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub root@S3:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub root@S4:/root/.ssh/authorized_keys安装hadoop
tar -zxf /usr/local/installPackage/resource/hadoop-2.5.2-src/hadoop-dist/target/hadoop-2.5.2.tar.gz -C /usr/local/software
安装zookeeper集群
三台zoopeeker集群放在S1、S2、S3上
tar -zxf /usr/local/installPackage/zookeeper-3.4.6.tar.gz -C /usr/local/software
cp /usr/local/software/zookeeper-3.4.6/conf/zoo_sample.cfg /usr/local/software/zookeeper-3.4.6/conf/zoo.cfg
vi /usr/local/software/zookeeper-3.4.6/zoo.cfg
mkdir /usr/local/software/zookeeper-3.4.6/data
scp -rp /usr/local/software/zookeeper-3.4.6 S2:/usr/local/software/zookeeper-3.4.6
scp -rp /usr/local/software/zookeeper-3.4.6 S3:/usr/local/software/zookeeper-3.4.6
echo "1" > /usr/local/software/zookeeper-3.4.6/data/myid
echo "2" > /usr/local/software/zookeeper-3.4.6/data/myid
echo "3" > /usr/local/software/zookeeper-3.4.6/data/myid
systemctl stop firewalld.service #关闭防火墙
/usr/local/software/zookeeper-3.4.6/bin/zkServer.sh start
/usr/local/software/zookeeper-3.4.6/bin/zkServer.sh status
hadoop集群配置
vi hadoop-env.sh #设置JAVA_HOME路径
vi core-site.xml
vi hdfs-site.xml
vi slaves
scp -r /usr/local/software/hadoop-2.5.2 S2:/usr/local/software/hadoop-2.5.2
scp -r /usr/local/software/hadoop-2.5.2 S3:/usr/local/software/hadoop-2.5.2
scp -r /usr/local/software/hadoop-2.5.2 S4:/usr/local/software/hadoop-2.5.2
格式化namenode
S2、S3、S4 上分别 hadoop-daemon.sh start journalnode
S1上bin/hdfs namenode -format(测试环境配置不够,运行慢,导致连接journalnode超时)
hadoop-daemon.sh start namenode
S2 上 bin/hdfs namenode -bootstrapStandby
启动hdfs集群
bin/hdfs zkfc -formatZK
sbin/start-dfs.sh(测试环境配置不够,运行慢,必须先开启journalnode)
访问 http://s1:50070 只能显示一个名为localhost的datanode
hdfs dfsadmin -report 所有的namenode都是Hostname: localhost
原因:/etc/hosts 中本机ip对应了两个主机名:localhost和Sx
解决:分别注释掉192.168.1.9x localhost
此问题会导致上传文件时连接不上其他datanode节点
测试上传文件
bin/hdfs dfs -mkdir -p /tmp
bin/hdfs dfs -put /usr/local/installPackage/jdk-7u75-linux-x64.tar.gz /tmp
测试HA时无法自动切换,查看zkfc日志,zkfc在执行sshfence时需要免密码登录到namenode;
且需要使用fuser,遂装之
yum search fuser
yum install psmisc.x86_64
安装protobuf
tar -zxf /usr/local/installPackage/protobuf-2.6.1.tar.gz -C /usr/local/installPackage/resource
cd /usr/local/installPackage/resource/protobuf-2.6.1
./configure --prefix=/usr/local/protobuf && make && make check
make install
ln -s /usr/local/protobuf/bin/protoc /usr/bin/protoc
安装cmake、zlib devel、openssl devel
yum search cmake
yum install cmake.x86_64
yum install zlib-devel
yum install openssl-devel
安装maven
tar -zxvf /usr/local/installPackage/apache-maven-3.3.9-bin.tar.gz -C /usr/local/software
修改conf/settings.xml的本地库路径
修改etc/profile
MAVEN_HOME=/usr/local/software/apache-maven-3.3.9
PATH=$MAVEN_HOME/bin:$PATH
export PATH
更新当前环境变量 source /etc/profile
修改主机名并配置免密码登录
vi /etc/hosts
vi /etc/hostname
ssh-keygen -t rsa
scp /root/.ssh/id_rsa.pub
root@S2:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub
root@S3:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub
root@S4:/root/.ssh/authorized_keys
编译安装hadoop
tar -zxf /usr/local/installPackage/hadoop-2.5.2-src.tar.gz -C /usr/local/installPackage/resource
cd /usr/local/installPackage/resource/hadoop-2.5.2-src
mvn package -Pdist,native -DskipTests -Dtar
四台虚拟机搭建hadoop高可用集群
集群规划
zookeeper:S1、S2、S3
namenode:S1、S2
datanode:S2、S3、S4
journalnode:S2、S3、S4
zkfc:S1、S2
修改四台主机名
vi /etc/hosts
vi /etc/hostname
主机名分别为:S1、S2、S3、S4
配置免密码登录
ssh-keygen -t rsascp /root/.ssh/id_rsa.pub
root@S2:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub root@S3:/root/.ssh/authorized_keys
scp /root/.ssh/id_rsa.pub root@S4:/root/.ssh/authorized_keys安装hadoop
tar -zxf /usr/local/installPackage/resource/hadoop-2.5.2-src/hadoop-dist/target/hadoop-2.5.2.tar.gz -C /usr/local/software
安装zookeeper集群
三台zoopeeker集群放在S1、S2、S3上
tar -zxf /usr/local/installPackage/zookeeper-3.4.6.tar.gz -C /usr/local/software
cp /usr/local/software/zookeeper-3.4.6/conf/zoo_sample.cfg /usr/local/software/zookeeper-3.4.6/conf/zoo.cfg
vi /usr/local/software/zookeeper-3.4.6/zoo.cfg
mkdir /usr/local/software/zookeeper-3.4.6/data
scp -rp /usr/local/software/zookeeper-3.4.6 S2:/usr/local/software/zookeeper-3.4.6
scp -rp /usr/local/software/zookeeper-3.4.6 S3:/usr/local/software/zookeeper-3.4.6
echo "1" > /usr/local/software/zookeeper-3.4.6/data/myid
echo "2" > /usr/local/software/zookeeper-3.4.6/data/myid
echo "3" > /usr/local/software/zookeeper-3.4.6/data/myid
systemctl stop firewalld.service #关闭防火墙
/usr/local/software/zookeeper-3.4.6/bin/zkServer.sh start
/usr/local/software/zookeeper-3.4.6/bin/zkServer.sh status
hadoop集群配置
vi hadoop-env.sh #设置JAVA_HOME路径
vi core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://mycluster</value> </property> <property> <name>ha.zookeeper.quorum</name> <value>S1:2181,S2:2181,S3:2181</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/opt/hadoop/tmp</value> </property> </configuration>
vi hdfs-site.xml
<configuration> <property> <name>dfs.nameservices</name> <value>mycluster</value> </property> <property> <name>dfs.ha.namenodes.mycluster</name> <value>nn1,nn2</value> </property> <property> <name>dfs.namenode.rpc-address.mycluster.nn1</name> <value>S1:8020</value> </property> <property> <name>dfs.namenode.rpc-address.mycluster.nn2</name> <value>S2:8020</value> </property> <property> <name>dfs.namenode.http-address.mycluster.nn1</name> <value>S1:50070</value> </property> <property> <name>dfs.namenode.http-address.mycluster.nn2</name> <value>S2:50070</value> </property> <property> <name>dfs.namenode.shared.edits.dir</name> <value>qjournal://S2:8485;S3:8485;S4:8485/mycluster</value> </property> <property> <name>dfs.journalnode.edits.dir</name> <value>/opt/hadoop/journalnode/edits</value> </property> <property> <name>dfs.client.failover.proxy.provider.mycluster</name> <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> </property> <property> <name>dfs.ha.fencing.methods</name> <value>sshfence</value> </property> <property> <name>dfs.ha.fencing.ssh.private-key-files</name> <value>/root/.ssh/id_rsa</value> </property> <property> <name>dfs.ha.automatic-failover.enabled</name> <value>true</value> </property> </configuration>
vi slaves
S2 S3 S4
scp -r /usr/local/software/hadoop-2.5.2 S2:/usr/local/software/hadoop-2.5.2
scp -r /usr/local/software/hadoop-2.5.2 S3:/usr/local/software/hadoop-2.5.2
scp -r /usr/local/software/hadoop-2.5.2 S4:/usr/local/software/hadoop-2.5.2
格式化namenode
S2、S3、S4 上分别 hadoop-daemon.sh start journalnode
S1上bin/hdfs namenode -format(测试环境配置不够,运行慢,导致连接journalnode超时)
hadoop-daemon.sh start namenode
S2 上 bin/hdfs namenode -bootstrapStandby
启动hdfs集群
bin/hdfs zkfc -formatZK
sbin/start-dfs.sh(测试环境配置不够,运行慢,必须先开启journalnode)
访问 http://s1:50070 只能显示一个名为localhost的datanode
hdfs dfsadmin -report 所有的namenode都是Hostname: localhost
原因:/etc/hosts 中本机ip对应了两个主机名:localhost和Sx
解决:分别注释掉192.168.1.9x localhost
此问题会导致上传文件时连接不上其他datanode节点
测试上传文件
bin/hdfs dfs -mkdir -p /tmp
bin/hdfs dfs -put /usr/local/installPackage/jdk-7u75-linux-x64.tar.gz /tmp
测试HA时无法自动切换,查看zkfc日志,zkfc在执行sshfence时需要免密码登录到namenode;
且需要使用fuser,遂装之
yum search fuser
yum install psmisc.x86_64
相关文章推荐
- centOS 操作记录二
- centOS 操作记录二
- centOS 操作记录二
- 16 个 Linux 服务器监控命令
- Linux文件时间属性
- Linux安装mysql——源码安装
- linux文件系统命令(6)---touch和mkdir
- LINUX内核分析第七周学习总结——可执行程序的装载
- Linux命令行:mv命令
- Linux命令行:rmdir命令
- Linux命令行:rm命令
- linux下MySQL源码安装
- Linux内核学习篇三:中断处理 -- asm.s和traps.c
- centos6.7搭建lamp超级全教程
- Linux定时任务的设置
- Linux中的文件i节点
- linux 磁盘操作命令整理
- Centos下Yum安装PHP5.5,5.6,7.0
- CentOS7 内核参数优化
- linux 64位机编译32位程序