一. 安装Centos7
安装32位版本时候出现网卡丢失的问题。请参考http://blog.youkuaiyun.com/kernel_32/article/details/50579839
二,配置本地yum源
VMware Workstation虚拟机:虚拟机-->可移动设备-->CD/DVD-->连接
1. mkdir /mnt/cdrom #创建目录
2. mount /dev/cdrom /mnt/cdrom #挂载
3. umount /mnt/cdrom #卸载
若不想每次都要放光盘,那就复制光盘文件到本地硬盘吧
1. cp -avf /mnt/cdrom /yum # -a:该选项保留链接、文件属性,并递归地复制目录
创建repo文件
[html] viewplaincopy
[root@localhost yum.repos.d]# pwd
/etc/yum.repos.d
1. mv CentOS-Base.repo CentOS-Base.repo_BAK
2. touch CentOS-Base.repo
[Base]
name=Local Yum
baseurl=file:///mnt/cdrom
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1
二 .配置网络和smb服务
1,网络配置,配置Ip为静态IP 可以通过界面配置。
2,smb服务配置
1)安装samba:
#yum -y install samba samba-client samba-common
2)查看相关包
~#:rpm -qa| grep samba
samba-libs-4.2.3-10.el7.i686
samba-4.2.3-10.el7.i686
samba-common-4.2.3-10.el7.noarch
samba-client-4.2.3-10.el7.i686
samba-common-tools-4.2.3-10.el7.i686
samba-common-libs-4.2.3-10.el7.i686
samba-client-libs-4.2.3-10.el7.i686
3)修改smb.conf,最好先备份原文件,以防修改不正确导致smb无法执行
vi /etc/samba/smb.conf
#============================ Share Definitions ==============================
[Share]
path = /home/samba
browsable =yes
writable = yes
guest ok = yes
read only = no
3)添加samba用户
smbpasswd -a admin
执行以下命令,启动samba服务
mkdir -p /home/samba
systemctl enable smb.service
systemctl enable nmb.service
systemctl restart smb.service
systemctl restart nmb.service
4)跳过防火墙
一种方法是关闭防火墙
systemctl stop firewalld.service
setenforce 0
二 方法是添加规则
firewall-cmd --permanent --zone=public--add-service=samba
如果samba目录无法写入记得执行:
setsebool -P samba_export_all_rw on
samba 偶发 实在无法访问 多重启几次。
三 安装JDK
1)下载对应版本 建议下载 tar.gz 自己配置
http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk7-downloads-1880260.html
2)卸载原jdk
rpm -qa|grep jdk
[root@localhost usr]# rpm -qa|grep jdk
java-1.8.0-openjdk-1.8.0.65-3.b17.el7.i686
java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.i686
java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.i686
java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.i686
[root@localhost usr]# yum -y remove java java-1.8.0-openjdk-1.8.0.65-3.b17.el7.i686
[root@localhost usr]# yum -y remove java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.i686
[root@localhost usr]# yum-y remove java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.i686
[root@localhost usr]# java
bash: /usr/bin/java: No such file ordirectory
3)安装
tar zxvf ./jdk-7-linux-i586.tar.gz -C /usr/
配置变量:
# cp /etc/profile /etc/profile.bak #备份
# vim /etc/profile #编辑,在最后添加下面的内容
export JAVA_HOME=/usr/jdk1.8.0_65
export JRE_HOME=${JAVA_HOME}/jre
exportCLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
# source /etc/profile#使配置文件立即生效
四 安装hodoop 2.6
1) 解压 tar zxvf ./hadoop.2.6.0.tar.gz -C /usr/
2)配置环境 #vi /etc/profile #编辑,在最后添加下面的内容
export vi /etc/profile #编辑,在最后添加下面的内容
export HADOOP_HOME =/user/hadoop
export PATH=${HADOOP_HOME}/sbin:${HADOOP_HOME}/bin:$PATH
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native/
3)配置Hadoop
hadoop-env.sh:
export JAVA_HOME=/usr/jdk1.8.0_65
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_HOME/lib/native/"
core-site.xml :
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/hadoop2.6.0/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop:9000</value>
</property>
</configuration>
hdfs-site.xml :
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/hadoop2.6.0/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/hadoop2.6.0/dfs/data</value>
</property>
</configuration>
mapred-site.xml,这里2.6.0中没有这个文件,可以
#mv mapred-site.xml.template mapred-site.xml
<configuration>
<property>
<name>mapreduce.jobtracker.address </name>
<value>hadoop:9001</value>
</property>
</configuration>
五,ssh免密码登陆设置
命令:(此处要切换root用户,不要傻逼嘻嘻的一直使用个人用户)
#ssh-keygen -t dsa -P "" -f ~/.ssh/id_dsa
#cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
测试是否配置成功:
#ssh localhost
要是能免密码登陆显示系统信息,就应该是对的。(这里有个输入密码环节,是系统的密码)
六 修改主机名
参考:http://blog.youkuaiyun.com/kernel_32/article/details/50776534
很关键,要不会出现hbase 无法连接 hadoop:2181的异常问题。
六,格式化hdfs:
#hadoop namenode –format
七 启动/关闭hadoop
启动命令:
#./sbin/start-all.sh
查看启动是否成功
#jps
[root@localhost admin]# jps
8953 Jps
8451 SecondaryNameNode
8132 DataNode
5492 ResourceManager
8828 NodeManager
关闭的命令:
#./sbin/stop-all.sh
以服务形式启动:
sbin 目录添加 service.sh
#!/bin/bash
#description:simple example service
RETVAL=0
start(){
echo "hadoopservice is started..."
nohup sudo bash /usr/hadoop-2.6.2/sbin/start-all.sh &
}
stop(){
sudo bash /usr/hadoop-2.6.2/sbin/stop-all.sh
echo "hadoop service is stoped..."
}
case $1 in
start)
start
;;
stop)
stop
;;
*)
echo "error choice ! please input start or stop";;
esac
exit $RETVA
在 /lib/systemd/system 目录添加 hadoop.service
[unit]
Description=hadoop
After=network.target
[Service]
Type=forking
ExecStart=/usr/hadoop-2.6.2/sbin/service.sh start
ExecReload=/usr/hadoop-2.6.2/sbin/service.sh restart
ExecStop=/usr/hadoop-2.6.2/sbin/service.sh stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
启动服务:
[root@localhost system]# chmod +x hadoop.service
[root@localhost system]# systemctl start hadoop.service
[root@localhost system]# systemctl enable hadoop.service
八, hbase 安装
# tar vxf hbase-1.0.2.tar.gz
#vim hbase-env.sh
export JAVA_HOME=/usr/jdk1.8.0_65/
#export HBASE_MANAGES_ZK= true
export HBASE_HOME=/usr/hbase-1.0.2
#vim hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/usr/hbase-1.0.2/hbase-tmp/tmp</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/usr/hbase-1.0.2/zookeeper_data</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property></configuration>
注意:hbase.zookeeper.quorum 必须跟主机名保持一致
启动/关闭 hbase
start-hbase.sh
stop-hbase.sh
注意:
1,如果出现无法连接zookeeper的情况,首先检查防火墙,起床检查hbase的配置, 再其次就是hosts文件的
/etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.10 hadoop
2,
在安装hbase-1.0.1时发现一个问题,hbase能够正常使用,hbase shell 完全可用,但是60010页面却打不开,最后找到问题,是因为1.0.1版本的hbase的master web 默认是不运行的,所以需要自己配置默认端口。配置如下
在hbase-site.xml中加入一下内容即可
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
同理可以配置regionserver web端口
问题:
1、 安装好 hbase 后,发现启动start-hbase.sh 后
hmaster 进程总是过一会就没了
hbase(main):004:0> create 't1', {NAME => 'f1', VERSIONS => 5}
ERROR: Can't get master address from ZooKeeper; znode data == null
解决方法:
由于重新格式化过namenode ,可能之前的版本信息没有删除导致
清理相应的目录,保险起见又重新格式化了namenode
重新启动hadoop 及hbase 运行正常
1330



被折叠的 条评论
为什么被折叠?



