脚本两则--用于快速部署HADOOP,SPARK这些(特别是VM虚拟机模板部署出来的)。。

感觉可能只是适合我自己的部署习惯吧,且只针对CENTOS6及以下版本,以后有时间,可能还是要改进。。

1,从VM的模块产生的虚拟机,如何快速搞定网络配置?

#!/bin/bash

#usage:./init_cdh_sys.sh hostname hostip
#generate the host from esxi template.must change NIC mac address and change hostname
net_rule_file="/etc/udev/rules.d/70-persistent-net.rules"
net_conf_file="/etc/sysconfig/network-scripts/ifcfg-eth0"
net_hostname_file="/etc/sysconfig/network"
netmask_conf="255.255.255.0"
gateway_conf="192.168.xx.1"
dns1_conf="a.b.c.d"
old_mac="00:50:56:BD:92:DA"#此处要替换为模板的MAC地址

#============================================
#resetup 70-persistent-net.rules file
if  (cat $net_rule_file|grep -i $old_mac) ;then
  new_mac_str=$(sed -n -e ‘/eth1/ p‘ $net_rule_file)
  #new_mac_1=${new_mac_str:64:17}
  new_mac=$(echo $new_mac_str| awk -F ‘,‘ {‘print $4‘}|awk -F ‘==‘ {‘print $2‘}|sed ‘s/\"//g‘)
  sed -i "/$old_mac/Id" $net_rule_file
  sed -i "s/eth1/eth0/g" $net_rule_file
else
  new_mac_str=$(sed -n -e ‘/eth0/ p‘ $net_rule_file)
  #new_mac_1=${new_mac_str:64:17}
  new_mac=$(echo $new_mac_str| awk -F ‘,‘ {‘print $4‘}|awk -F ‘==‘ {‘print $2‘}|sed ‘s/\"//g‘)
  echo "done 70-persistent-net.rules file!"
fi

#====================================
#change hostname
if [ ! -n "$1" ] ;then
    echo "you have not input a hostname!"
    echo "usage:./init_sys_nic.sh cm222.wdzjcdh.com 192.168.14.222"
else
  sed -i "s/localhost.localdomain/$1/g" $net_hostname_file
fi
#===================================
#resetup NIC config file
if  (cat $net_conf_file|grep $netmask_conf) ;then
  echo "done /etc/sysconfig/network-scripts/ifcfg-eth0"
elif [ ! -n "$2" ] ;then
    echo "you have not input a ip address!"
else
  sed -i "/$old_mac/Id" $net_conf_file
  sed -i "s/dhcp/static/g" $net_conf_file
  echo "HWADDR=$new_mac" >> $net_conf_file
  echo "IPADDR=$2" >> $net_conf_file
  echo "NETMASK=$netmask_conf" >> $net_conf_file
  echo "GATEWAY=$gateway_conf" >> $net_conf_file
  echo "DNS1=$dns1_conf" >> $net_conf_file
  service network restart
  reboot
fi

2,SSH-KEYGEN -T RSA这个命令暂时没有想到好的操作方面(ANSIBLE来部署?)最近动了这个心了,SALTSTACK作应用部署,快,但运维自己的操作,ANSIBLE也是一个选择哟,毕竟纯SSH。。

3,在弄好首台HADOOP之后,如何愉快的COPY到其它结点?这个脚本不太方便,可能相关目录要自定义。。。如果能所有的东东统一到一个目录的话。。。:),还有scp -r $var_folder [email protected]$1:/usr/local/,这个写得奇丑,当时只求快。。

#!/bin/bash

echo "Usage: ./init_hadoop_spark -f demo-data"
cp_file=("/etc/hosts" "/etc/profile.d/env.sh")
cp_folder=("/root/.ssh/" "/usr/local/scala-2.11.4" "/usr/local/hadoop-2.6.0" "/usr/local/spark-1.2.2-bin-hadoop2.4" "/usr/local/jdk1.7.0_71")

function cp_file_folder()
{
  for var_file in ${cp_file[@]};
  do
    scp $var_file [email protected]$1:$var_file
  done 

  for var_folder in ${cp_folder[@]};
  do
    scp -r $var_folder [email protected]$1:/usr/local/
  done
}

while getopts :f:h file_name
do
    case $file_name in
    f) cat $OPTARG | while read line
        do
                arr_var=(${line})
            cp_file_folder ${arr_var[0]}
                #run_docker ${arr_var[0]}  ${arr_var[1]} ${arr_var[2]}
        done
        sleep 2
        ;;
    h) echo "Usage: ./init_hadoop_spark -f demo-data"
            exit 1
            ;;
        \?) echo "Usage: ./init_hadoop_spark -f demo-data"
            exit 1
            ;;
    :) echo "Usage: ./init_hadoop_spark -f demo-data"
            exit 1
            ;;
    esac
done
时间: 2024-08-03 23:37:50

脚本两则--用于快速部署HADOOP,SPARK这些(特别是VM虚拟机模板部署出来的)。。的相关文章

Hadoop + Spark 在CentOS下的伪分布式部署

一. 软件 centos6.5 jdk1.7 hadoop-2.6.1.tar.gz(在64位平台重新编译好的版本) scala2.11.7.tgz spark-1.5.0-bin-hadoop2.6.tgz   二. 安装前准备 1. 在系统全局安装jdk a. 解压 b. 配置环境变量(可以在/etc/profile.d/下面配置) export JAVA_HOME=/usr/java/jdk1.7.0_21export CLASSPATH=.:$JAVA_HOME/lib:$CLASSPA

一站式VDI部署教程(5)安装基于虚拟机桌面部署

1)打开添加角色和功能向导,点击下一步 2)选择"远程桌面服务安装",点击下一步 3)这里选择标准部署,这里你也可以选择快速启动,点击下一步 4)选择基于虚拟机的桌面部署,然后点击下一步. 5)点击下一步 6)指定RD连接代理服务器 7)指定RD Web访问服务器,这里我把RD代理服务器和Web服务器放在同一台服务器上了. 8)指定RD虚拟化主机服务器,这里虚拟化主机服务器必须是物理主机. 9)勾选"需要时自动重新启动目标服务器"点击部署 10)点击关闭

VM虚拟机中部署CentOS环境步骤详解

CentOS(Community Enterprise Operating System) 是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本.每个版本的 CentOS都会获得十年的支持(通过安全更新方式).新版本的 CentOS 大约每两年发行一次,而每个版本的 CentOS 会定期(大概每六个月)更新一次,以便支持新的硬件.这样,建立一个安全.低维护.稳定.高预测性.高重复性的 Linux 环境.相对于其他 Linux 发行版,其稳定性值得信赖.本次Cen

使用Ambari快速部署Hadoop大数据环境

前言 做大数据相关的后端开发工作一年多来,随着Hadoop社区的不断发展,也在不断尝试新的东西,本文着重来讲解下Ambari,这个新的Apache的项目,旨在让大家能够方便快速的配置和部署Hadoop生态圈相关的组件的环境,并提供维护和监控的功能. 作为新手,我讲讲我自己的学习经历,刚刚开始学习的时候,当然最简单的 Google 下Hadoop ,然后下载相关的包,在自己的虚拟机(CentOS 6.3) 上安装一个单机的Hadoop版本用来做测试,写几个测试类,然后做下CRUD测试之类的,跑跑M

Spark 1.0.0 横空出世 Spark on yarn 部署(hadoop 2.4)

就在昨天,北京时间5月30日20点多.Spark 1.0.0终于发布了:Spark 1.0.0 released 根据官网描述,Spark 1.0.0支持SQL编写:Spark SQL Programming Guide 个人觉得这个功能对Hive的市场的影响很小,但对Shark冲击很大,就像win7和winXP的关系,自相残杀嘛? 这么着急的发布1.x 版是商业行为还是货真价实的体现,让我们拭目以待吧~~~~ 本文是CSDN-撸大湿原创,如要转载请注明出处,谢谢:http://blog.csd

Spark 1.0.0 部署Hadoop 2.2.0上

源码编译 我的测试环境: 系统:Centos 6.4 - 64位 Java:1.7.45 Scala:2.10.4 Hadoop:2.2.0 Spark 1.0.0 源码地址:http://d3kbcqa49mib13.cloudfront.net/spark-1.0.0.tgz 解压源码,在根去根目录下执行以下命令(sbt编译我没尝试) ./make-distribution.sh --hadoop 2.2.0 --with-yarn --tgz --with-hive 几个重要参数 --ha

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

Hadoop+Spark集群部署指南 (多节点文件分发.集群操作建议salt/ansible) 1.集群规划节点名称 主机名 IP地址 操作系统Master centos1 192.168.0.1 CentOS 7.2Slave1 centos2 192.168.0.2 CentOS 7.2Slave2 centos2 192.168.0.3 Centos 7.22.基础环境配置2.1 hostname配置1)修改主机名在192.168.0.1 root用户下执行:hostnamectl set

hadoop+spark+mongodb+mysql+c#

一.前言 从20世纪90年代数字化医院概念提出到至今的20多年时间,数字化医院(Digital Hospital)在国内各大医院飞速的普及推广发展,并取得骄人成绩.不但有数字化医院管理信息系统(HIS).影像存档和通信系统(PACS).电子病历系统(EMR)和区域医疗卫生服务(GMIS)等成功实施与普及推广,而且随着日新月异的计算机技术和网络技术的革新,进一步为数字化医院带来新的交互渠道譬如:远程医疗服务,网上挂号预约. 随着IT技术的飞速发展,80%以上的三级医院都相继建立了自己的医院信息系统

大数据项目实践:基于hadoop+spark+mongodb+mysql开发医院临床知识库系统

一.前言 从20世纪90年代数字化医院概念提出到至今的20多年时间,数字化医院(Digital Hospital)在国内各大医院飞速的普及推广发展,并取得骄人成绩.不但有数字化医院管理信息系统(HIS).影像存档和通信系统(PACS).电子病历系统(EMR)和区域医疗卫生服务(GMIS)等成功实施与普及推广,而且随着日新月异的计算机技术和网络技术的革新,进一步为数字化医院带来新的交互渠道譬如:远程医疗服务,网上挂号预约. 随着IT技术的飞速发展,80%以上的三级医院都相继建立了自己的医院信息系统