Windows上使用Ubuntu部署大数据环境

2022-11-14 14:57:44 浏览数 (1)

前言

本文所有的大数据软件都放在了下面的文件夹中

D:ToolsBigData

使用Windows中的Ubuntu进行启动

对应Ubuntu中的路径为

/mnt/d/Tools/BigData

Ubuntu的本地IP为

192.168.3.80

Taier

文档:https://dtstack.github.io/Taier/docs/guides/introduction/

视频:https://www.bilibili.com/video/BV13L4y1L71w/

源码:https://github.com/DTStack/Taier

JDK

官方下载JDK 网址

或者 链接:https://pan.baidu.com/s/1JdPCMMEq178hXV5V4Ild3Q 密码:03l1

比如下载的文件为jdk-8u221-linux-x64.rpm

更改文件权限

代码语言:javascript复制
chmod 755 jdk-8u221-linux-x64.rpm

安装

代码语言:javascript复制
tar -zxvf jdk-8u341-linux-x64.tar.gz -C /usr/local

安装后的路径为/usr/local/jdk1.8.0_341

为空的话要配置java-home 否则无法配置Tomcat为服务

代码语言:javascript复制
cd /etc/profile.d/

创建配置文件

代码语言:javascript复制
vi /etc/profile.d/jdk.sh

加入:

代码语言:javascript复制
export JAVA_HOME=/usr/local/jdk1.8.0_341
export PATH=$JAVA_HOME/bin:$PATH   
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

配置立即生效

代码语言:javascript复制
source /etc/profile

查询java版本

代码语言:javascript复制
java -version

查看java-home

代码语言:javascript复制
echo $JAVA_HOME

环境设置

host

hostname

代码语言:javascript复制
vi /etc/hostname

设置为

代码语言:javascript复制
master

修改hosts文件

代码语言:javascript复制
vi /etc/hosts

配置为

代码语言:javascript复制
192.168.3.80 master

测试

代码语言:javascript复制
ping master

Windows下

修改hosts文件

C:WindowsSystem32driversetc

添加

代码语言:javascript复制
192.168.3.80 master

免密登陆

生成密钥对

代码语言:javascript复制
mkdir ~/.ssh
cd ~/.ssh
#生成秘钥,之后一路回车即可,不需要输入任何内容。我之前已经生成过,所以提示是否overwrite。如果是第一次生成,不会有这个提示。
ssh-keygen -t rsa
#将公钥复制到制定文件
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys 
#测试ssh连接,首次连接需要输入yes,但不需要输入密码,之后不需要输入yes,如果能不输入密码连接,就配置成功了
ssh master

Hadoop

下载

https://archive.apache.org/dist/hadoop/common/hadoop-2.7.7/

解压

代码语言:javascript复制
tar -zxvf hadoop-2.7.7.tar.gz
mkdir -p /mnt/d/Tools/BigData/
mv hadoop-2.7.7 /mnt/d/Tools/BigData/
cd /mnt/d/Tools/BigData/hadoop-2.7.7

配置环境变量

代码语言:javascript复制
cd /etc/profile.d/

创建配置文件

代码语言:javascript复制
vi /etc/profile.d/hadoop.sh

内容设置为

代码语言:javascript复制
#HADOOP_HOME
export FLINK_HOME=/mnt/d/Tools/BigData/flink-1.12.7
export PATH=$PATH:$FLINK_HOME/bin
export PATH=$PATH:$FLINK_HOME/sbin

配置生效

代码语言:javascript复制
source /etc/profile

查看是否生效

代码语言:javascript复制
echo $HADOOP_HOME

修改配置文件

注意

本文是伪分布式部署

进入配置文件目录

代码语言:javascript复制
cd $HADOOP_HOME/etc/hadoop

hadoop-env.sh

将原本的JAVA_HOME 替换为绝对路径就可以了

代码语言:javascript复制
export JAVA_HOME=/usr/local/jdk1.8.0_341

注意

虽然系统已经设置JAVA_HOME,但是运行时依旧无法找到,所以配置的绝对路径

core-site.xml

代码语言:javascript复制
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/mnt/d/Tools/BigData/hadoop-2.7.7/tmp</value>
        <description></description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
</configuration>

hdfs-site.xml

代码语言:javascript复制
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>    
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/mnt/d/Tools/BigData/zdata/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/mnt/d/Tools/BigData/zdata/dfs/data</value>
    </property> 
</configuration>

mapred-site.xml

代码语言:javascript复制
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

yarn-site.xml

代码语言:javascript复制
<?xml version="1.0"?>
<configuration>
  <property> 
    <name>yarn.resourcemanager.hostname</name> 
    <value>master</value> 
  </property>
  <property> 
    <name>yarn.nodemanager.aux-services</name> 
    <value>mapreduce_shuffle</value> 
  </property>
</configuration>

剔除警告(可选):

log4j.properties

添加

代码语言:javascript复制
log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR

启动/停止

代码语言:javascript复制
sudo chmod -R 755 $HADOOP_HOME

rm -rf $HADOOP_HOME/tmp
hdfs namenode -format

这个操作主要是创建fsimage和edits文件。

只要看到信息中有一句关键:

INFO common.Storage: Storage directory /mnt/d/Tools/BigData/zdata/dfs/name has been successfully formatted.

则格式化成功.

运行

代码语言:javascript复制
bash $HADOOP_HOME/sbin/start-all.sh

输入

代码语言:javascript复制
jps

如图

访问

我的服务器的IP为 192.168.3.80

HDFS监控页面查询:

http://192.168.3.80:50070/

查看文件可以访问这个地址

http://192.168.3.80:50070/explorer.html#/

Yarn监控页面查询:

http://192.168.3.80:8088/cluster

停止

代码语言:javascript复制
bash $HADOOP_HOME/sbin/stop-all.sh

报错解决

ssh: connect to host localhost port 22: Connection refused

解决方法: 确定安装ssh:

包含了SSH服务 sudo apt-get install openssh-server 和客户端 sudo apt-get install openssh-client

代码语言:javascript复制
sudo apt-get install ssh

启动sshd:

代码语言:javascript复制
sudo service ssh start

检验方法:

代码语言:javascript复制
ssh localhost

又报错

Permission denied (publickey).

允许ssh密码登录权限

登录目标机器,打开

代码语言:javascript复制
vi /etc/ssh/sshd_config

修改PasswordAuthentication no为:PasswordAuthentication yes

允许root登录

代码语言:javascript复制
PermitRootLogin yes

然后重启服务。

代码语言:javascript复制
service ssh restart

Flink

下载

下载地址

https://archive.apache.org/dist/flink/

这里下载1.12.7版本

https://archive.apache.org/dist/flink/flink-1.12.7/

https://archive.apache.org/dist/flink/flink-1.12.7/flink-1.12.7-bin-scala_2.12.tgz

解压

代码语言:javascript复制
tar zxvf flink-1.12.7-bin-scala_2.12.gz

配置环境变量

代码语言:javascript复制
cd /etc/profile.d/

创建配置文件

代码语言:javascript复制
vi /etc/profile.d/flink.sh

内容设置为

代码语言:javascript复制
#FLINK_HOME
export FLINK_HOME=/mnt/d/Tools/BigData/flink-1.12.7
export PATH=$PATH:$FLINK_HOME/bin

配置生效

代码语言:javascript复制
source /etc/profile

查看是否生效

代码语言:javascript复制
echo $FLINK_HOME

修改配置

修改flink/conf/masters,slaves,flink-conf.yaml

代码语言:javascript复制
[admin@node21 conf]$ sudo vi masters
node21:8081
[admin@node21 conf]$ sudo vi slaves
node22
node23
[admin@node21 conf]$ sudo vi flink-conf.yaml 
taskmanager.numberOfTaskSlots:2
jobmanager.rpc.address: node21

访问 Flink UI

运行

代码语言:javascript复制
bash $FLINK_HOME/bin/start-cluster.sh

Flink有个UI界面,可以用于监控Flilnk的job运行状态 http://localhost:8081/

停止

代码语言:javascript复制
bash $FLINK_HOME/bin/stop-cluster.sh

Docker

Windows下的Ubuntu中不能安装Docker

需要Windows中安装Docker Desktop后进行如下配置

Ubuntu中配置

代码语言:javascript复制
echo "export DOCKER_HOST='tcp://0.0.0.0:2375'" >> ~/.bashrc
source ~/.bashrc

这样就可以正常访问Docker了

代码语言:javascript复制
docker ps

下面Ubuntu中安装Docker的方法在Windows下的Ubuntu中并不生效

安装

代码语言:javascript复制
curl -sSL https://get.daocloud.io/docker | sh

启动

代码语言:javascript复制
service docker start

但是发现并不能启动

数据同步

Mysql

代码语言:javascript复制
jdbc:mysql://master:3306/ztest?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&rewriteBatchedStatements=true&allowMultiQueries=true

允许远程登录

代码语言:javascript复制
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'psvmc123' WITH GRANT OPTION;
FLUSH PRIVILEGES; 
quit

设置密码永不过期

代码语言:javascript复制
ALTER USER 'root'@'%' PASSWORD EXPIRE NEVER;
flush privileges;

0 人点赞