OpenTSDB+Grafana 监控环境搭建
硬件3台服务器.192.168.1.1;192.168.1.2;192.168.1.3。64位CentOS6.5
1. 安装 rzsz
yum install lrzsz
2.安装jdk
yum -y list Java*
yum -y install java-1.7.0-openjdk*
3.配置JAVA_HOME
vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.7.0
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
// 生效
source /etc/profile
// 测试JAVA_HOME是否生效
echo $JAVA_HOME
4.安装zookeeper
上传zookeeper
cd /usr/local/src
rz
tar -zxvf zookeeper-3.4.8.tar.gz
cd /home
mkdir zookeeper
cd zookeeper
mkdir data
mkdir logs
cp -r /usr/local/src/zookeeper-3.4.8 /home/zookeeper/
cd /home/zookeeper/zookeeper-3.4.8/conf
mv zoo_sample.cfg zoo.cfg
vi zoo.cfg
#修改数据目录.
dataDir=/home/zookeeper/data
#增加日志目录
dataLogDir=/home/zookeeper/logs
#增加部署地址
server.1=192.168.1.1:2888:3888
server.2=192.168.1.2:2888:3888
server.3=192.168.1.3:2888:3888
#修改server.1的myid。写入1;server.2则写入2
cd /home/zookeeper/data
vi myid
#其他两台重复以上步骤
#启动
cd /home/zookeeper/zookeeper-3.4.8/bin
./zkServer.sh start
#关闭
./zkServer.sh stop
#测试集群是否都启动成功
./zkCli.sh -server 192.168.1.1:2181
5.安装Hadoop
一、配置hosts文件
二、建立hadoop运行帐号(也可直接用root账号)
三、配置ssh免密码连入
四、下载并解压hadoop安装包
五、配置各种配置文件
六、向各节点复制hadoop
七、格式化namenode
八、启动hadoop
九、用jps检验各后台进程是否成功启动
十、通过网站查看集群情况
5.1配置host
(1)编辑/etc/hosts文件
vi /etc/hosts
192.168.1.1 sms-test-001
192.168.1.2 sms-test-002
192.168.1.3 sms-test-003
#sms-test-001作为master,sms-test-002,sms-test-003作为slave
(2)编辑/etc/sysconfig/network文件
(3)Hostname设置
hostname sms-test-001
(4)输入hostname验证
5.2建立hadoop
运行账号
//设置hadoop用户组
sudo groupadd hadoop
//添加一个hadoop用户,此用户属于hadoop用户组
sudo useradd -s /bin/bash -d /home/user/hadoop -m hadoop -g hadoop
#设置hadoop权限./home目录的读写执性权限
setfacl -m u:hadoop:rwx /home
//设置用户hadoop登录密码
sudo passwd hadoop
//切换到hadoop用户中
su hadoop
【注】不一定要新建账号。例如我用root账号登录的,直接用root账号也可以,为了方便下面就直接用root账号操作。
5.3配置ssh免密码连接
#单点回环免密码登录
cd /root
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
#验证免密码。welcome则表示成功
ssh localhost
#退出用exit
#master连接slave免密码登录
#sms-test-002服务器
cd /root/.ssh
scp root@sms-test-001:~/.ssh/id_dsa.pub ./master_dsa.pub
cat master_dsa.pub >> authorized_keys
#sms-test-001服务器ssh sms-test-002。第一次需要密码,后面就可以免密码登录
#sms-test-003服务器重复以上操作。
#sms-test-001登录002和003可以免密码登录了,但是002,003登录001还需要手动认证。
#slave连接master免密码登录。重复master连接slave的操作
6.安装hadoop
#在sms-test-001服务器上传hadoop
cd /usr/local/src
rz
tar -zxvf hadoop-2.6.0.tar.gz
cd /home
mkdir hadoop
cd /home/hadoop
cp -r hadoop-2.6.0 /home/hadoop/
cd hadoop-2.6.0
ll
cd etc/hadoop
ls
#修改hadoop-env.sh、yarn-env.sh、core-site.xml、hdfs-size.xml、mapred-site.xml、yarn-size.xml、slaves文件
(1)配置hadoop-env.sh和yarn-env.sh的JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/java-1.7.0
(2)配置core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://sms-test-001:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>sms-test-001:2181,sms-test-002:2181,sms-test-003:2181</value>
</property>
(3)配置hdf-site.xml
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hdfs_data/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hdfs_data/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>sms-test-001:50090</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
(4)配置mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>Master.Hadoop:50030</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>sms-test-001:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>sms-test-001:19888</value>
</property>
(5)配置yarn-site.xml(8088端口如果想通过外网访问,则要配置成外网地址)
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>sms-test-001:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>sms-test-001:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>sms-test-001:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>sms-test-001:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>sms-test-001:8088</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>768</value>
</property>
(5)配置slaves文件
vi slaves
#写入
sms-test-002
sms-test-003