(?)企业部分之hadoop

需要纯净的三个虚拟机,建议内存大小为1024M,注意要将时间、解析配置成一致,防火墙、SElinux关闭。使用nfs进行同步。

若过程中获得警告,可能是由于编译环境32位或jdk版本过低的原因

1.安装和配置环境

所需软件包:hadoop-1.2.1.tar.gz jdk-6u32-linux-x64.bin

【server1/server2/server3】

useradd -u 900 hadoop
echo westos | passwd --stdin hadoop

【server1】

sh jdk-6u32-linux-x64.bin
mv jdk1.6.0_32/ /home/hadoop/java
mv hadoop-1.2.1.tar.gz /home/hadoop/
su - hadoop
tar zxf hadoop-1.2.1.tar.gz
ln -s hadoop-1.2.1 hadoop
vim .bash_profile

修改环境变量为以下内容:

export JAVA_HOME=/home/hadoop/java

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin

source .bash_profile
echo $JAVA_HOME

cd /home/hadoop/hadoop/conf
vim hadoop-env.sh

修改第9行,修改Java的目录

9 export JAVA_HOME=/home/hadoop/java

jps    ##查看Java运行的进程,当前无
cd ..
mkdir input
cp conf/*.xml input/
ls input/    ##一些测试文件

bin/hadoop jar hadoop-examples-1.2.1.jar grep input out ‘dfs[a-z.]+‘    ##在input过滤dfs开头的文件在output输出
ls out/
cat out/*

2.分布式文件系统

cd /home/hadoop/hadoop/conf
cat masters 
cat slaves

ssh localhost    ##需要密码,要实现无密码登陆
ssh-keygen
ssh-copy-id localhost

测试:

ssh localhost
ssh 172.25.19.1
ssh server1.example.com

测试是否可以进行无密码登陆

cd /home/hadoop/hadoop/conf
vim core-site.xml

添加内容如下:

<configuration>

<property>

<name>fs.default.name</name>

<value>hdfs://172.25.19.1:9000</value>

</property>

</configuration>

vim mapred-site.xml

添加内容如下:

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>172.25.19.1:9001</value>

</property>

</configuration>

vim hdfs-site.xml

添加内容如下:

<configuration>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

</configuration>

cd /home/hadoop/hadoop/
bin/hadoop namenode -format    ##格式化
ls /tmp    ##放在/tmp下

#bin/start-all.sh    ##也可以用此命令开启所有服务
bin/start-dfs.sh    ##开启分布式
jps

bin/start-mapred.sh
jps

http://172.25.19.1:50030

http://172.25.19.1:50070

bin/hadoop fs

bin/hadoop fs -put input test    ##上传

上传文件的存放目录为/usr/hadoop/,此目录会自动建立

bin/hadoop fs -ls test

bin/hadoop jar hadoop-examples-1.2.1.jar wordcount test output    ##计算字数

bin/hadoop fs -ls out/

bin/hadoop fs -cat out/*

bin/hadoop fs -get out test##将out下载本地查看
cat test/*

以上都可以在网页中查看,并可以查看任务进度

3.完整分布式文件系统

【server1/server2/servre3】

在root用户下

yum install -y nfs-utils
/etc/init.d/rpcbind start

【server1】

/etc/init.d/nfs start
vim /etc/exports

添加以下内容:

/home/hadoop    *(rw,all_squash,anonuid=900,anongid=900)

exportfs -rv
exportfs -v

【server2/server3】

showmount -e 172.25.19.1
mount 172.25.19.1:/home/hadoop/ /home/hadoop/
df
su - hadoop

【server1】

su - hadoop

##检测无密码认证

ssh 172.25.19.2
logout
ssh 172.25.19.3
logout
jps    ##进程都开着
bin/stop-all.sh 
jps##tasktracker datanode 没有被关掉
bin/hadoop-daemon.sh stop tasktracker##手动关闭
bin/hadoop-daemon.sh stop datanode
jps    ##查看是否被完全关闭(只剩下一个JPS)
cd conf/
vim hdfs-site.xml

把1改为2

vim slaves

添加以下内容:

172.25.19.2

172.25.19.3

vim masters

添加以下内容:

172.25.19.1

bin/hadoop namenode -format    ##注意(Y/N)选项是大写
bin/start-dfs.sh
jps

此时,在server2/server3上执行jps,DataNode进程运行

bin/start-mapred.sh
jps

此时,server2/server3上执行jps,TaskTracker进程运行

【serve2/server3】

jps

网页

格式化后,先前上传的文件消失

两个节点

测试:

bin/hadoop fs -put input/ test    ##主从节点都可以上传,但最好在主节点上传
bin/hadoop jar hadoop-examples-1.2.1.jar grep test output ‘dfs[a-z].+‘
bin/hadoop dfsadmin -report

dd if=/dev/zero of=bigfile bs=1M count=100
bin/hadoop fs -put bigfile test2

bin/hadoop dfsadmin -report

添加一个节点,再增加一个虚拟机

【server4】

useradd -u 900 hadoop
echo westos | passwd --stdin hadoop
yum install -y nfs-utils
/etc/init.d/rpcbind start
showmount -e 172.25.19.1
mount 172.25.19.1:/home/hadoop/ /home/hadoop/
df
su - hadoop
cd /home/hadoop/hadoop/conf
vim slaves

添加一个节点:172.25.19.4

cd ..
bin/hadoop-daemon.sh start datanode
jps

bin/hadoop-daemon.sh start tasktracker
jps

【serevr1】

bin/hadoop dfsadmin -report

cd /home/hadoop/hadoop/conf
vim mapred-site.xml

添加以下内容:

<property>

<name>dfs.hosts.exclude</name>

<value>/home/hadoop/hadoop/conf/datanode-excludes</value>

</property>

vim /home/hadoop/hadoop/conf/datanode-excludes

添加要删除节点的IP

bin/hadoop dfsadmin -refreshNodes
bin/hadoop dfsadmin -report

bin/hadoop dfsadmin -report

【server3】

jps

bin/hadoop-daemon.sh stop tasktracker
jps

二、新版本

软件包:hadoop-2.6.4.tar.gz  jdk-7u79-linux-x64.tar.gz

【server1】

cd conf
vim slaves

删掉关闭的节点

cd ..
bin/stop-all.sh
jps

【server1/server2/server3/server4】

rm -rf /tmp/*

【server1】

mv java/ jdk-1.6.32
tar zxf jdk-7u79-linux-x64.tar.gz
ln -s jdk1.7.0_79 java
logout
su - hadoop
java -version

rm -rf hadoop
tar zxf hadoop-2.6.4.tar.gz 
ln -s hadoop-2.6.4 hadoop
cd /home/hadoop/hadoop/etc/hadoop
vim hadoop-env.sh

修改25行并添加以下内容:

25 export JAVA_HOME=/home/hadoop/java

26 export HADOOP_PREFIX=/home/hadoop/hadoop

cd /home/hadoop/hadoop/
bin/hadoop    ##成功安装

mkdir input
cp etc/hadoop/*.xml input/
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep input output ‘dfs[a-z].+‘
cat output/*

有一个警告

解决方法:安装hadoop-native-64-2.6.0.tar

tar -xf hadoop-native-64-2.6.0.tar -C hadoop/lib/native/
cd hadoop
rm -rf output/
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep input output ‘dfs[a-z].+‘##解决警告
cd /home/hadoop/hadoop/etc/hadoop
vim slaves

删掉localhost,添上节点的IP

172.25.19.2

172.25.19.3

vim core-site.xml

修改内容为以下:

<configuration>

<property>

<name>fs.defaultFS</name>

<value>hdfs://172.25.19.1:9000</value>

</property>

</configuration>

vim hdfs-site.xml

修改内容为以下:

<configuration>

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

</configuration>

cd /home/hadoop/hadoop
bin/hdfs namenode -format    ##格式化
sbin/start-dfs.s

jps

server2/server3 jps

此时目录为空,且新本版不会自己建立目录,所以无法直接上传,需要先建立目录

bin/hdfs dfs -mkdir /user/
bin/hdfs dfs -mkdir /user/hadoop

测试:

bin/hdfs dfs -put input/ test
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep test output ‘dfs[a-z].+‘

bin/hdfs dfs -cat output/*
cd /home/hadoop/hadoop/etc/hadoop
vim yarn-site.xml

添加以下内容:

<configuration>

<!-- Site specific YARN configuration properties -->

<property>

<name>yarn.resourcemanager.hostname</name>

<value>server1.example.com</value>

</property>

</configuration>

sbin/start-yarn.sh
jps

server2/server3 jps

时间: 2024-10-09 21:37:47

(?)企业部分之hadoop的相关文章

(三)企业部分之nginx(未完)

1.nginx安装 所需软件包:nginx-1.8.0.tar.gz tar zxf nginx-1.8.0.tar.gz cd nginx-1.8.0 yum install pcre-devel  openssl-devel  -y ./configure --prefix=/usr/local/lnmp/nginx --with-http_ssl_module --with-http_stub_status_module make make install vim /root/.bash_

(四)企业部分之PHP(未完)

1.PHP安装 软件包:php-5.6.19.tar.bz2 re2c-0.13.5-1.el6.x86_64.rpm gd-devel-2.0.35-11.el6.x86_64.rpm tar jxf php-5.6.19.tar.bz2 yum install curl-devel re2c-0.13.5-1.el6.x86_64.rpm gd-devel-2.0.35-11.el6.x86_64.rpm gmp-devel net-snmp-devel libxml2-devel -y c

(?)企业部分之nagios(未完)

##nagios安装## ##可参考官网文档 1.tar jxf nagios-cn-3.2.3.tar.bz2 cd nagios-cn-3.2.3 yum install gd-devel-2.0.35-11.el6.x86_64.rpm -y groudadd nagcmd useradd -M -d /usr/local/nagious -G nagcmd nagios usermod -G nagcmd apache ./configure --with-command-group=n

(?)企业部分之ganglia(未完)

昨天的 开启禁用的服务 6.11 server3开启服务--nagios  httpd server4 server3 下载包 ganglia-web-3.4.2.tar.gz libconfuse-2.6-3.el6.x86_64.rpm libconfuse-devel-2.6-3.el6.x86_64.rpm rrdtool-devel-1.3.8-6.el6.x86_64.rpm ganglia-3.4.0.tar.gz yum install -y rpm-build rumbuild

(?)企业部分之MySQl

(1)MySQL数据的复制 MySQL数据库支持同步复制.单向.异步复制,在复制的过程中一个服务器充当主服务器,而一个或多个服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起发生的任何更新,然后封锁并等待主服务器通知新的更新. 请注意当你进行复制时,所有对复制中的表的更新必须在主服务器上进行.否则,你必须要小心

(五)企业部分之lnmp:memcache

1.memcached安装 yum install memcached /etc/sysconfig/memcached start yum install telnet telnet 127.0.0.1 11211 2.配置 php -m 可以看到php不支持memcached 解压memcache-2.2.5.tgz 进入解压目录 运行phpize##会自动生成configure ./configure --prefix=/usr/local/lnmp/php/modules --enabl

(六)企业部分之lnmp:jdk

1.安装jdk sh jdk-6u32-linux-x64.bin    ##原生的 mv jdk1.6.0_32/ /usr/local/java    ##生成java工作目录 vim /etc/profile export JAVA_HOME=/usr/local/java export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$PAHT:$JAVA_HOME/bin source  ~/.bash_profile

(七)企业部分之lnmp:tomcat

1.安装tomcat tar zxf apache-tomcat-7.0.37.tar.gz -C /usr/local/lnmp/ cd /usr/local/lnmp/ ln -s apache-tomcat-7.0.37/ tomcat cd tomcat/ bin/startup.sh vim /usr/local/lnmp/nginx/conf/nginx.conf 在location ~ \.php$之后,添上以下内容(82行之后) location ~ \.jsp$ { proxy

(八)企业部分之lnmp:nginx+tomcat+memcached

[server1] vim /usr/local/lnmp/tomcat/conf/context.xml <Context> ...... <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" memcachedNodes="n1:172.25.45.1:11211,n2:172.25.45.2:11211" failoverNodes="n1&