WSL中Docker内Flink高可用集群搭建


写在前面:

本实验开始之前,已经安装好Ubuntu内的docker,并拉取一个centos8镜像作为基础的镜像。

一、实验内容

在docker内搭建Flink集群。

二、实验环境

  • 本机:win 10 专业版;
  • WSL:Ubuntu 20.04 TS;
  • docker:19.03
  • Hadoop:2.7.4
  • zookeeper:3.4.9
  • Flink:1.7.2

三、环境说明

WSL是安装于windows中的linux系统,具体介绍安装请参考https://www.jianshu.com/p/6b02948b3d37
总体环境如下:
在这里插入图片描述

四、实验步骤

  • flink版本的选择需要考虑hadoop的版本,本集群hadoop的版本为2.7.4,flink的版本为flink-1.7.2-bin-hadoop27-scala_2.11.tgz
  • flink高可用集群需要依赖zookeeper
    现在一个容器中配置好所有的环境,然后存为镜像,再分别启动三个容器,形成集群。

4.1 Java环境搭建

在这里插入图片描述
首先检验镜像内有无Java环境,经过检查并无Java配置。通过以下命令安装Java环境:

yum update 
yum list java* #查看yum源的java包
yum install XXXXXXX #XXXXX为上条命令下查看到的java包
java -version #验证java环境

通常安装java 1.8即可。
在这里插入图片描述
使用yum安装之后, 再修改环境变量,修改.bashrc文件,追加jdk的路径。

export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.272.b10-1.el8_2.x86_64

若是不知道Java的路径可以采用如下的方法进行查询:
在这里插入图片描述
因为用yum安装,实质上是用rpm安装,所以rpm查询信息的指令都可用。但是环境变量中的信息是在以jre开头的目录下,这点需要注意。修改环境变量之后,执行source ~/.bashrc使环境变量生效。
使用命令java,javac都能正确执行命令,则java环境安装成功。

4.2 hadoop环境搭建

4.2.1 安装hadoop

进入 hadoop 目录,然后解压下载下来的 hadoop-2.7.4.tar.gz,修改 ~/.bashrc, 配置 hadoop 环境变量。
链接:https://pan.baidu.com/s/10vpKVkeIpDALfHO6zloLow
提取码:rwst

cd /root/soft/apache/hadoop
tar -xvzf hadoop-2.7.4.tar.gz
cd hadoop-2.7.4
mkdir tmp
cd tmp
mkdir dfs
cd dfs
mkdir data
mkdir name
vim ~/.bashrc
	 export HADOOP_HOME=/root/soft/apache/hadoop/hadoop-2.7.4
     export HADOOP_CONFIG_HOME=$HADOOP_HOME/etc/hadoop
     export PATH=$PATH:$HADOOP_HOME/bin
     export PATH=$PATH:$HADOOP_HOME/sbin
source ~/.bashrc

使用hadoop version命令查看hadoop是否安装完成
在这里插入图片描述

4.2.2 配置Hadoop

接下来进入hadoop/etc/hadoop目录下,hadoop的配置文件均在此目录下。

  1. core-site.xml
 <property>
 	<name>hadoop.tmp.dir</name>
    <value>/root/soft/apache/hadoop/hadoop-2.7.4/tmp</value>
    <description>A base for other temporary directories.</description>
</property>
<property>
    <name>fs.default.name</name>
    <value>hdfs://master:9000</value>
    <final>true</final>
    <description>The name of the default file system.  A URI whose scheme and authority determine the FileSystem implementation.  The uri's scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class.  The uri's authority is used to determine the host, port, etc. for a filesystem.</description>
</property>
<property>
    <name>ha.zookeeper.quorum</name>
    <value>master:2181,slave1:2181,slave2:2182</value>
</property>
<property>
    <name>ipc.client.connect.max.retries</name>
    <value>100</value>
    <description>Indicates the number of retries a client will make to establish a server connection.</description>
</property>
<property>
    <name>ipc.client.connect.retry.interval</name>
    <value>10000</value>
    <description>Indicates the number of milliseconds a client will wait for before retrying to establish a server connection.</description>
</property>
  1. hdfs-site.xml
<configuration>
        <property>
                <name>dfs.nameservices</name>
                <value>ns1</value>
        </property>
        <property>
                <name>dfs.ha.namenodes.ns1</name>
                <value>nn1,nn2</value>
        </property<
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
WSL运行Docker有两种方式,下面分别介绍这两种方式。 方式一:使用WSL 2和Docker Desktop 1. 确保你的Windows版本是Windows 10版本2004或更高,并且已启用WSL 2。 2. 安装Docker Desktop for Windows。可以从Docker官方网站下载并安装。 3. 在Docker Desktop启用WSL 2后端。在Docker Desktop的设置,选择"General"选项卡,然后勾选"Use the WSL 2 based engine"选项。 4. 在WSL安装所需的Linux发行版。可以从Microsoft Store安装Ubuntu 18.04 LTS。 5. 在WSL安装Docker CLI。打开WSL终端,运行以下命令: ```shell sudo apt-get update sudo apt-get install docker.io ``` 6. 启动Docker服务。运行以下命令: ```shell sudo service docker start ``` 7. 现在你可以在WSL使用Docker了。可以运行`docker version`命令来验证安装是否成功。 方式二:使用WSL 1和Docker Machine 1. 确保你的Windows版本支持WSL 1,并且已启用WSL 1。 2. 在WSL安装所需的Linux发行版。可以从Microsoft Store安装Ubuntu 18.04 LTS。 3. 在WSL安装Docker CLI。打开WSL终端,运行以下命令: ```shell sudo apt-get update sudo apt-get install docker.io ``` 4. 安装Docker Machine。可以从Docker官方网站下载并安装。 5. 创建一个Docker Machine。运行以下命令: ```shell docker-machine create --driver virtualbox default ``` 6. 设置环境变量。运行以下命令: ```shell eval $(docker-machine env default) ``` 7. 现在你可以在WSL使用Docker了。可以运行`docker version`命令来验证安装是否成功。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值