#!/bin/bash

menu()
{
echo "---欢迎使用hadoop部署管理程序---"
echo "# 1.初始化Linux环境"
echo "# 2.配置jdk"
echo "# 3.配置ntpd时钟服务"
echo "# 4.配置zookeeper环境"
echo "# 5.配置hadoop环境"
echo "# 6.退出程序"
echo "-----------------------------"
} choice()
{
read -p "Please choice a menu[1‐9]:" select
} install_linux(){
mkdir /usr/app
dir=/usr/app/software
if [ ! -d ${dir} ]
then
mkdir /usr/app/software -p
fi
#设置主机名
hostnamectl set-hostname cent
sed -i 's/HOSTNAME=localhost.localdomain/HOSTNAME=cent/g' /etc/sysconfig/network
echo "192.168.66.128 cent" >> /etc/hosts
#关闭selinux
sed -i '/^SELINUX/s/=.*/=disabled/' /etc/selinux/config
setenforce 0
#关闭防火墙
service iptables stop
chkconfig iptables off
#修改Linux系统的最大打开文件数量
cat >> /etc/security/limits.conf <<EOF
* soft nofile 65536
* hard nofile 65536
EOF
} install_jdk(){
find /usr/app/software -type -f -name 'jdk*.tar.gz'
if [ $? -eq 0 ]
then
tar xvf /usr/app/software/jdk*.tar.gz -C /usr/app
mv jdk* jdk
cat >> /etc/profile <<EOF
export JAVA_HOME=/usr/app/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
EOF
source /etc/profile
else
echo "请先上传jdk tar包"
fi
} install_ntpd(){
yum -y install ntp
service ntpd restart
#ntpdate -u ntp1.aliyun.com ---配置阿里云时钟
#如果是离线网络,则需要配置一台ntpd时钟,其他节点的同步这台时钟
} install_zookeeper(){
ls -ll /usr/app/software/zookeeper*.tar.gz
if [ $? -eq 0 ]
then
tar xvf /usr/app/software/zookeeper*.tar.gz -C /usr/app
mv zookeeper* zookeeper
mv /usr/app/zookeeper/conf/zoo.cfg* /usr/app/zookeeper/conf/zoo.cfg
echo>/usr/app/zookeeper/conf/zoo.cfg
mkdir /usr/app/zookeeper/data
cat >> /usr/app/zookeeper/conf/zoo.cfg << EOF
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/app/zookeeper/data
clientPort=2181
maxClientCnxns=60
server.1= cent:2888:3888
EOF
else
echo "请先上传zookeeper tar包"
fi
} install_hadoop(){
echo "配置太多(hadoop-env.sh/core-site.xml/hdfs-site.xml/mapred-site.xml/yarn-site.xml/yarn-env.sh),此功能忽略"
} while :
do
menu
choice
case $select in
1)
install_linux;;
2)
install_jdk;;
3)
install_ntpd;;
4)
install_zookeeper;;
5)
install_hadoop;;
6)
exit;;
*)
echo "您输入的数字没有对应的菜单"
esac
done

  

Hadoop记录-部署hadoop环境shell实现的更多相关文章

  1. Hadoop:部署Hadoop Single Node

    一.环境准备 1.系统环境 CentOS 7 2.软件环境 OpenJDK # 查询可安装的OpenJDK软件包[root@server1] yum search java | grep jdk... ...

  2. Hadoop记录-Apache hadoop+spark集群部署

    Hadoop+Spark集群部署指南 (多节点文件分发.集群操作建议salt/ansible) 1.集群规划节点名称 主机名 IP地址 操作系统Master centos1 192.168.0.1 C ...

  3. hadoop记录-浅析Hadoop中的DistCp和FastCopy(转载)

    DistCp(Distributed Copy)是用于大规模集群内部或者集群之间的高性能拷贝工具. 它使用Map/Reduce实现文件分发,错误处理和恢复,以及报告生成. 它把文件和目录的列表作为ma ...

  4. Hive记录-部署Hive环境

    1.配置 hive1.2.0(前提要配置hadoop2.7.2,前面文档有介绍) #官网下载二进制包,解压到/usr/app 下,配置/etc/profile: export HIVE_HOME=/u ...

  5. CentOS6.5 一键部署运行环境shell脚本

     ################################################## #  CentOS6.5                                     ...

  6. Linux巩固记录(3) hadoop 2.7.4 环境搭建

    由于要近期使用hadoop等进行相关任务执行,操作linux时候就多了 以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上 ...

  7. 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建

    准备: 两台配置CentOS 7.3的阿里云ECS服务器: hadoop-2.7.3.tar.gz安装包: jdk-8u77-linux-x64.tar.gz安装包: hostname及IP的配置: ...

  8. Hadoop环境搭建--Docker完全分布式部署Hadoop环境(菜鸟采坑吐血整理)

    系统:Centos 7,内核版本3.10 本文介绍如何从0利用Docker搭建Hadoop环境,制作的镜像文件已经分享,也可以直接使用制作好的镜像文件. 一.宿主机准备工作 0.宿主机(Centos7 ...

  9. 通过Hadoop安全部署经验总结,开发出以下十大建议,以确保大型和复杂多样环境下的数据信息安全。

    通过Hadoop安全部署经验总结,开发出以下十大建议,以确保大型和复杂多样环境下的数据信息安全. 1.先下手为强!在规划部署阶段就确定数据的隐私保护策略,最好是在将数据放入到Hadoop之前就确定好保 ...

随机推荐

  1. MySQL复制介绍及搭建

    MySQL复制介绍 MySQL复制就是一台MySQL服务器(slave)从另一台MySQL服务器(master)进行日志的复制然后再解析日志并应用到自身,类似Oracle中的Data Guard. M ...

  2. docker 进程 转载:https://www.cnblogs.com/ilinuxer/p/6188303.html

    今天我们会分析Docker中进程管理的一些细节,并介绍一些常见问题的解决方法和注意事项. 容器的PID namespace(名空间) 在Docker中,进程管理的基础就是Linux内核中的PID名空间 ...

  3. Java获取视频的大小、时长

    前端上传视频之后,根据上传的视频文件获取视频的大小和时长 1.获取视频时长 private String ReadVideoTime(File source) { Encoder encoder = ...

  4. Oracle 11g 新特性 -- 自适应游标共享(Adaptive Cursor Sharing: ACS) 说明(转载)

    一.自适应游标共享(Adaptive Cursor Sharing) 说明 1.1 ACS概述绑定变量使Oracle DB 可以为多条SQL 语句共享单个游标,以减少分析SQL 语句所使用的共享内存量 ...

  5. IP地址与Mac地址绑定错误

    有个application,有时候可以正常访问,有时候又返回404错误,百思不得其解.刚开始以为是文件夹权限问题,折腾了好久. 后来没在服务器上monitor到包,所以猜想是到了错误的mac地址,用a ...

  6. Jenkins - Update information obtained: 不可用 ago;

    Jenkins 添加插件 jenkins plugin提示: Update information obtained: 不可用 ago: 编辑 hudson.model.UpdateCenter.xm ...

  7. Linux 文件基本属性: chown修改所属组 和 chmod修改文件属性命令

    [root@www /]# ls -l total 64 dr-xr-xr-x 2 root root 4096 Dec 14 2012 bin -rwxrwxr-x 4 root root 4096 ...

  8. flutter报错:NoSuchMethodError: The method '>' was called on null.

    写了个list,发现出不来,报错 flutter: Another exception was thrown: RenderBox was not laid out: _RenderScrollSem ...

  9. flask使用模板

    flask常用代码模板 from flask import Flask, request,jsonify import requests app = Flask(__name__) @app.rout ...

  10. Java 学习之路(1)第一个Java程序

    Hello World程序 在编程语言的世界里,第一个编程语言估计就是输出Hello World了吧. /** * 编写第一个Java程序,输出Hello World! * @author LJS * ...