大数据脚本相关

1.xsync集群分发脚本

首先确保集群配置了SSH免密登录。(详见5)

(a)在/home/atguigu目录下创建bin目录(/home/atguigu/bin),并在bin目录下xsync创建文件,文件内容如下:

[atguigu@hadoop102 ~]$ mkdir bin

[atguigu@hadoop102 ~]$ cd bin/

[atguigu@hadoop102 bin]$ touch xsync

[atguigu@hadoop102 bin]$ vi xsync

 

在该文件中编写如下代码

#!/bin/bash

#1 获取输入参数个数,如果没有参数,直接退出

pcount=$#

if((pcount==0)); then

echo no args;

exit;

fi

 

#2 获取文件名称

p1=$1

fname=`basename $p1`

echo fname=$fname

 

#3 获取上级目录到绝对路径

pdir=`cd -P $(dirname $p1); pwd`

echo pdir=$pdir

#4 获取当前用户名称
user=`whoami`

#5 循环

for((host=103; host<105; host++)); do

        echo ------------------- hadoop$host --------------

        rsync -rvl $pdir/$fname $user@hadoop$host:$pdir

done

 

(b)修改脚本 xsync 具有执行权限

[atguigu@hadoop102 bin]$ chmod 777 xsync

(c)调用脚本形式:xsync 文件名称

[atguigu@hadoop102 bin]$ xsync /home/atguigu/bin

2设置启动集群(zookeeper hdfs yarn )

在/home/atguigu/bin创建start-cluster.sh,如果zookeeper不能启动,在zkEnv.sh加上

 

start-cluster.sh

#!/bin/bash
user=`whoami` 
echo "===============     开始启动所有节点服务        ==============="
echo "===============     正在启动Zookeeper......     ==============="
for((host=102; host<=104; host++)); do
                echo "--------------- hadoop$host Zookeeper...... ----------------"
        ssh $user@hadoop$host '/opt/module/zookeeper-3.4.10/bin/zkServer.sh start'
done
echo "================    正在启动HDFS                ==============="
ssh $user@hadoop102 '/opt/module/hadoop-2.7.2/sbin/start-dfs.sh'
echo "================    正在启动YARN                ==============="
ssh $user@hadoop103 '/opt/module/hadoop-2.7.2/sbin/start-yarn.sh'
echo "================ hadoop102正在启动JobHistoryServer  ==============="
ssh $user@hadoop102 '/opt/module/hadoop-2.7.2/sbin/mr-jobhistory-daemon.sh start historyserver'
done

(b)修改脚本 具有执行权限

[atguigu@hadoop102 bin]$ chmod 777 start-cluster.sh

3.关闭集群(zookeeper hdfs yarn )

在/home/atguigu/bin创建stop-cluster.sh

内容为

#!/bin/bash
user=`whoami`
echo "================     开始停止所有节点服务        ==============="
echo "================ hadoop102正在停止JobHistoryServer  ==============="
ssh $user@hadoop102 '/opt/module/hadoop-2.7.2/sbin/mr-jobhistory-daemon.sh stop historyserver'
echo "================    正在停止YARN                ==============="
ssh $user@hadoop103 '/opt/module/hadoop-2.7.2/sbin/stop-yarn.sh'
echo "================    正在停止HDFS                ==============="
ssh $user@hadoop102 '/opt/module/hadoop-2.7.2/sbin/stop-dfs.sh'
echo "===============     正在停止Zookeeper......     ==============="
for((host=102; host<=104; host++)); do
        echo "--------------- hadoop$host Zookeeper...... ----------------"
        ssh $user@hadoop$host '/opt/module/zookeeper-3.4.10/bin/zkServer.sh stop'

done

修改脚本 具有执行权限

[atguigu@hadoop102 bin]$ chmod 777 stop-cluster.sh

最后使用xsync 分发到其它集群上(切记要改变权限)

4.查看集群进程

在/home/atguigu/bin创建util.sh

内容为

#!/bin/bash
for ip in hadoop102 hadoop103 hadoop104
do
   echo "------------------------------[ jps $ip ]-------------------------"
   ssh atguigu@$ip "source /etc/profile;jps"
done

5.SSH免登录

无密钥配置

(1)免密登录原理,如图所示

(2)生成公钥和私钥:

[atguigu@hadoop102 .ssh]$ ssh-keygen -t rsa

然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)

(3)将公钥拷贝到要免密登录的目标机器上

[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop102

[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop103

[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop104

6.配置群起Zookeeper

在/home/用户名/bin下,创建zkstart.sh 

#!/bin/bash
user=`whoami`
echo "===============     正在启动Zookeeper......     ==============="
for((host=102; host<=104; host++)); do
                echo "--------------- hadoop$host Zookeeper...... ----------------"
        ssh $user@hadoop$host '/opt/module/zookeeper-3.4.10/bin/zkServer.sh start'
done

创建zkStop.sh

#!/bin/bash
user=`whoami`
echo "=============== 正在停止Zookeeper...... ==============="
for((host=102; host<=104; host++)); do
echo "--------------- hadoop$host Zookeeper...... ----------------"
ssh $user@hadoop$host '/opt/module/zookeeper-3.4.10/bin/zkServer.sh stop'
done

修改权限 chmod 777

7.配置kafka后台启动

在kafka目录下创建startkafka.sh

nohup bin/kafka-server-start.sh   config/server.properties > kafka.log 2>&1 &

修改权限 chmod 777

./startkafka.sh 即可执行

只需要把startkafka.sh分发到各个机器,再独自启动即可

 

【注:

     a. >kafka.log 将运行的日志写到kafka中,  2>&1 的意思就是将标准错误重定向到标准输出。

   b. &:后台运行。当你只使用“&”时,关闭终端,进程会关闭。所以当你要让程序在后台不挂断运行时,需要将nohup和&一起使用。

      c.  启动命令首位加上nohup,即使停掉crt,kafka、flume依然可以在后台执行,这样就不用每次登陆,重新运行启动命令了。如果需要停掉服务,只需运行 kill -9 [程序运行的号即可]

     】

 

转载于:https://www.cnblogs.com/songdanlee/p/10646824.html

### 关于四合天地大数据处理脚本 在开源平台上,如 GitHub 和 Gitee,可以找到许多与大数据处理相关脚本资源。对于特定关键词“四合天地”,可能需要进一步明确其具体含义或领域背景以便更精准定位相关内容[^1]。 以下是基于常见需求构建的一个通用大数据处理 Python 脚本示例,适用于多种场景: ```python import pandas as pd from pyspark.sql import SparkSession # 初始化Spark会话 spark = SparkSession.builder \ .appName("BigDataProcessing") \ .config("spark.some.config.option", "some-value") \ .getOrCreate() # 加载数据源 data_path = "./input_data.csv" df_spark = spark.read.format("csv").option("header", "true").load(data_path) # 数据清洗与转换逻辑 def clean_and_transform(df): df_cleaned = df.na.drop() # 删除缺失值 df_filtered = df_cleaned.filter((df_cleaned['column_name'] > 0)) # 过滤条件 return df_filtered df_processed = clean_and_transform(df_spark) # 输出结果到文件 output_path = "./processed_output.parquet" df_processed.write.mode('overwrite').parquet(output_path) print(f"数据已成功写入 {output_path}") ``` 此脚本利用 PySpark 对大规模结构化数据进行加载、清理以及存储操作。如果目标平台涉及“四合天地”的专有特性,则需额外引入对应的 API 或 SDK 支持[^2]。 为了获取更多针对性项目实例,在搜索引擎中尝试如下查询语句可帮助发现潜在匹配项: - `"四合天地" big data script site:github.com` - `big data processing example 四合天地 site:gitee.com` 这些检索方式能够缩小范围至指定代码托管站点内的关联成果集。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值