我的大数据开发第1章:hadoop 单节点伪集群安装
在一个节点机器上部署一个hadoop集群,可用于开发环境,简单易行。os为centos7虚拟机(hostname=hacl-node1)。本章包括以下软件的开发(D)或运行环境(R)安装:
- jdk-8u271-linux-x64.tar.gz
- scala-2.12.12.tgz ($ wget https://downloads.lightbend.com/scala/2.12.12/scala-2.12.12.tgz)
- amm-2.12-2.2.0 ($ wget https://github.com/lihaoyi/Ammonite/releases/download/2.2.0/2.12-2.2.0 -O amm-2.12-2.2.0)
- apache-maven-3.6.3-bin.tar.gz
- apache-zookeeper-3.6.2-bin.tar.gz
- kafka_2.12-2.7.0.tgz
- hadoop-3.3.0.tar.gz
- hbase-2.4.0-bin.tar.gz
- apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz
- hbase-2.4.0-client-bin.tar.gz
- flink-1.12.0-bin-scala_2.12.tgz
- jdk-11.0.9_linux-x64_bin.tar.gz (used by CMAK)
- cmak-3.0.0.5.tar.gz (Cluster Manager for Apache Kafka – https://github.com/yahoo/CMAK)
0 主机配置
vi /etc/hostname
hacl-node1
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6# add ipv4 and names
192.168.56.111 hacl-node1 zk1 zk2 zk3
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hacl-node1
必须能免密码 ssh 登录本机:
ssh localhost
如果提示输入密码,则需要:
ssh-keygen -t rsa -P ” -f ~/.ssh/id_rsa && cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys && chmod 0600 ~/.ssh/authorized_keys
如上操作后,如果 ssh localhost 提示: ssh_exchange_identification: read: Connection reset by peer
增加下面的行到:/etc/hosts.allow
sshd:127.0.0.1:allow
重启服务:service sshd restart
如上操作后,如果 ssh localhost 总是提示输入密码,即使输入正确的密码也 错,检查 /etc/ssh/sshd_config 文件,在最后面添加下句,然后 service sshd reload:
AllowUsers root
创建程序目录(HADOOP_HOME=/usr/local/apache/hadoop-current):
mkdir -p /usr/local/{java,scala,apache}
创建hadoop数据目录(HADOOP_DATA_PREFIX=/hacl/hadoop):
mkdir -p /hacl/hadoop/{tmp,dfs/{nn,dn,jn},logs}
1 解压安装软件
# tar -zxf jdk-8u271-linux-x64.tar.gz -C /usr/local/java/
# tar -zxf scala-2.12.12.tgz -C /usr/local/scala/
# tar -zxf hadoop-3.3.0.tar.gz -C /usr/local/apache/
# tar -zxf apache-zookeeper-3.6.2-bin.tar.gz -C /usr/local/apache/
…
# cp amm-2.12-2.2.0 /usr/local/scala/
# cd /usr/local/java/ && ln -s jdk1.8.0_271 current
# cd /usr/local/scala/ && ln -s scala-2.12.12 current
# cd /usr/local/scala/ && ln -s amm-2.12-2.2.0 amm && chmox +x amm
# cd /usr/local/bin && ln -s /usr/local/scala/amm amm
# cd /usr/local/apache/ && ln -s hadoop-3.3.0 hadoop-current
# cd /usr/local/apache/ && ln -s apache-zookeeper-3.6.2-bin zookeeper-current
…
2 配置环境变量
/etc/profile.d/hacl-env.sh 完整内容如下:
使生效:
source /etc/profile.d/hacl-env.sh
3 hadoop单机集群配置
- $HADOOP_CONF_DIR/hadoop-env.sh
修改日志目录如下:
export HADOOP_LOG_DIR=${HADOOP_DATA_PREFIX}/logs
- $HADOOP_CONF_DIR/core-site.xml
- $HADOOP_CONF_DIR/hdfs-site.xml
4 hadoop单机集群启动
第一次格式化namenode:
hdfs namenode -format
启动:
start-dfs.sh
jps
4101 NameNode
4266 DataNode
4475 SecondaryNameNode
浏览器查看:
http://hacl-node1:9870
如果看不到,把防火墙关掉再试:
systemctl stop firewalld.service
关闭:
stop-dfs.sh
5 运行YARN
用yarn运行mapreduce。配置如下:
- $HADOOP_CONF_DIR/mapred-site.xml
- $HADOOP_CONF_DIR/yarn-site.xml
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!