#!/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. css 为什么给span加vertical-align: middle不起作用?

    vertical-align是什么意思?先举个例子! 这句html元素中的文本为什么不能垂直居中. <style> span{ height:60px;vertical-align: mi ...

  2. LightOJ - 1226 - One Unit Machine(排列组合)

    链接: https://vjudge.net/problem/LightOJ-1226 题意: OUM is a one unit machine which processes jobs. Sinc ...

  3. 使用unsafe改善性能

    这种方式是Go所推荐的,优点就是安全,尽管这种操作会发生内存拷贝,导致性能上会有所损耗,这在处理一般业务时这种损耗是可以忽略的.但如果是拷贝频繁的情况下,想要进行性能优化时,就需要引入unsafe.P ...

  4. P3604 美好的每一天

    真·美好的每一天(美好个鬼啊) 真·调了一下午 原因是,我之前移动指针时没有先扩再缩,所以导致区间是负的:但是正常来说也没事,可是这题卡常,桶我开的是 unsigned short ,于是区间是负的, ...

  5. YAML_06 playbook从上往下顺序执行,若报错,不提示,继续往下执行

    ansible]# vim user4.yml --- - hosts: cache   remote_user: root   vars:     user: bb   tasks:    - sh ...

  6. linux的计划任务操作

    1.cron服务来设置 计划任务查看与设置命令:crontab 包括条目: 分钟m:0-59 小时h:0-23 月日dom:1-31 月份mon:1-12 星期dow:0-7 例子: 每隔2小时处理一 ...

  7. COGS 1151 活动安排

    - 有 N 场活动,每场活动在特定的时间需要占用场地. - 如果有两场活动需要同一时间占用场地,则不能同时举行 - 问最多能举行多少场活动? 将所有活动按照结束时间从早到晚排序后贪心即可 具体思路看代 ...

  8. 洛谷 P1613 跑路 题解

    P1613 跑路 题目描述 小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零.可是小A偏偏又有赖床的坏毛病.于是为了保住自己的工资,小A买了一个十分牛B的 ...

  9. Neither shaken nor stirred(DFS理解+vector存图)

    题目链接:http://acm.timus.ru/problem.aspx?space=1&num=2013 题目理解: 给定n个点的有向图: 下面n行,第一个数字表示点权,后面一个数字m表示 ...

  10. 《挑战30天C++入门极限》C/C++中字符指针数组及指向指针的指针的含义

        C/C++中字符指针数组及指向指针的指针的含义 就指向指针的指针,很早以前在说指针的时候说过,但后来发现很多人还是比较难以理解,这一次我们再次仔细说一说指向指针的指针. 先看下面的代码,注意看 ...