上海古都建筑设计集团,上海办公室装修设计公司,上海装修公司高质量的内容分享社区,上海装修公司我们不是内容生产者,我们只是上海办公室装修设计公司内容的搬运工平台

大数据平台环境搭建

guduadmin116小时前

文章目录

      • 任务一:大数据平台环境搭建
          • 注:配上大数据组件下载地址:[Index of /dist (apache.org)](https://archive.apache.org/dist/)
          • 一、Docker 容器环境安装配置
            • 1. 安装 Docker 服务
              • Docker 旧版本
              • Docker 新版本(手动安装)
              • Docker 新版本(自动安装)
              • 2. Docker 服务
              • 3. 配置 docker 镜像加速器
              • 4. Docker 镜像基本命令
                • 查看镜像
                • 搜索镜像
                • 拉取镜像
                • 删除镜像
                • 把镜像保存为具体文件
                • 把镜像加载到 docker 中
                • 5. Docker 容器基本命令
                  • 创建容器
                  • 查看容器
                  • 启动容器
                  • 停止容器
                  • 进入容器
                  • 退出容器
                  • 重启容器
                  • 删除容器
                  • 一步完成新建和启动容器
                  • 启动 MySQL 容器
                  • 获取所有的容器 ID
                  • 删除所有容器
                  • 杀死所有运行容器
                  • 启动所有容器
                  • 导入和导出容器
                  • 容器与主机之间复制文件
                  • 二、Hadoop 完全分布式安装配置
                    • 1. 修改 IP 和 MAC 地址
                    • 2. 修改主机名
                    • 3. 设置 IP 和域名映射
                    • 4. 关闭防火墙
                    • 5. 关闭 SELINUX
                    • 6. 免密登录
                    • 7. 时钟同步
                    • 8. JDK 安装
                    • 9. HADOOP 安装
                    • 10. HADOOP 官方文档
                    • 三、Mysql 安装配置
                      • 1. 卸载系统自带的 Mariadb
                      • 2. 删除 etc 目录下的 my.cnf 文件
                      • 3. 检查 MySQL 是否存在
                      • 4. 上传并解压
                      • 5. 新建配置文件 my.cnf
                      • 6. 初始化 mysqld
                      • 7. 设置开机启动
                      • 8. 配置环境变量
                      • 9. 修改访问密码
                      • 四、Hive 安装配置
                        • 1. 上传并解压
                        • 2. 配置环境变量
                        • 3. 将 Hive 元数据配置到 MySQL
                        • 5. 再次启动 Hive
                        • 6. 使用元数据服务的方式访问 Hive
                        • 7. 使用 JDBC 方式访问 Hive
                        • 8. 常见属性配置
                        • 9. 解决 hive shell 中有许多日志信息的方法
                        • 五、Zookeeper 安装配置
                          • 1. 上传并解压
                          • 2. 配置环境变量
                          • 3. 修改配置文件
                          • 4. 添加 myid 配置
                          • 5. 分发并修改 myid 的值
                          • 6. 启动 zookeeper 服务
                          • 7. 启动zookeeper 脚本
                          • 六、Kafka 安装配置
                            • 1. 上传并解压
                            • 2. 修改配置文件
                            • 3. 分发文件
                            • 4. 配置环境变量
                            • 5. 启动集群
                            • 6. Kafka 操作
                            • 七、Spark Standalone 安装配置
                              • 1. 上传并解压
                              • 2. 修改配置文件
                              • 3. 分发文件
                              • 4. 启动集群
                              • 5. 提交应用
                              • 6. Spark on Yarn 提交应用
                              • 八、Flink 安装配置
                                • 1. 上传并解压
                                • 2. 修改集群配置
                                • 3. 分发文件
                                • 3. 本地启动和关闭
                                • 5. 提交应用
                                • 6. Flink on Yarn(flink-per-job) 提交应用
                                • 九、Flume 安装配置
                                  • 1. 上传并解压
                                  • 2. 修改配置文件
                                  • 3. 查看 flume 是否安装成功
                                  • 4. flume 对接 kafka
                                  • 十、HBase 安装配置
                                    • 1. 上传并解压
                                    • 2. 修改配置文件
                                    • 3. HBase 服务的启动
                                    • 4. 查看 HBase 页面
                                    • 十一、Maxwell 安装配置
                                      • 1. 上传并解压
                                      • 2. MYSQL 环境准备
                                      • 3. 初始化 Maxwell 元数据库
                                      • 4. Maxwell 进程启动
                                      • 十二、ClickHouse 安装配置
                                        • 1. 上传并解压
                                        • 2. ClickHouse 安装
                                        • 3. 连接 ClickHouse
                                        • 4. ClickHouse 卸载

                                          任务一:大数据平台环境搭建

                                          注:配上大数据组件下载地址:Index of /dist (apache.org)
                                          一、Docker 容器环境安装配置
                                          1. 安装 Docker 服务
                                          Docker 旧版本
                                          yum install -y docker
                                          

                                          查看 docker 是否安装成功

                                          docker -v
                                          
                                          rpm -qa | grep -i docker
                                          

                                          卸载 docker

                                          yum remove -y docker-*
                                          
                                          Docker 新版本(手动安装)

                                          安装依赖的软件包

                                          yum install -y yum-utils device-mapper-persistent-data lvm2
                                          

                                          添加 docker 的 Yum 源

                                          配置 docker 的 yum 源是为了安装 docker 的时候速度更快,更稳定,成功率高

                                          yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
                                          

                                          安装 docker

                                          yum install -y docker-ce docker-ce-cli containerd.io
                                          

                                          查看 docker 是否安装成功

                                          docker -v
                                          
                                          Docker 新版本(自动安装)

                                          卸载 docker

                                          yum remove -y docker-*
                                          

                                          安装 docker

                                          curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
                                          

                                          查看 docker 是否安装成功

                                          docker -v
                                          
                                          2. Docker 服务

                                          启动 docker 服务

                                          systemctl start docker
                                          

                                          开机启动 docker 服务

                                          systemctl enable docker
                                          

                                          查看 docker 服务状态

                                          systemctl status docker
                                          

                                          重启 docker 服务

                                          systemctl restart docker
                                          
                                          3. 配置 docker 镜像加速器

                                          配置镜像加速器是为了让我们从仓库拉取镜像的时候速度更快,更稳定,成功率高

                                          配置加速器

                                          vim /etc/docker/daemon.json
                                          
                                          {
                                          "registry-mirrors": [
                                                  "http://hub-mirror.c.163.com",
                                                  "https://docker.mirrors.ustc.edu.cn",
                                                  "https://mirror.ccs.tencentyun.com",
                                                  "https://3iy7bctt.mirror.aliyuncs.com"
                                           ]
                                          }
                                          

                                          重新加载配置文件

                                          systemctl daemon-reload
                                          

                                          重启 docker 服务

                                          systemctl restart docker
                                          

                                          查看 docker 服务状态

                                          systemctl status docker
                                          

                                          查看加速器是否配置成功

                                          docker info
                                          
                                          4. Docker 镜像基本命令
                                          查看镜像
                                          docker images
                                          

                                          REPOSITORY TAG IMAGE ID CREATED SIZE

                                          注意:

                                          REPOSITORY:来源仓库

                                          TAG:镜像的标签信息,表示镜像的版本,只是标记,并不能表示镜像内容

                                          IMAGE ID:镜像 id,唯一表示一个镜像,如果两个镜像的 ID 相同,说明它们实际上指向了同一个镜像,只是具有不同标签名称而已

                                          CREATED:镜像的最后更新时间

                                          SIZE:镜像大小

                                          搜索镜像
                                          docker search centos
                                          
                                          拉取镜像

                                          当我们在本地主机上使用一个不存在的镜像时,Docker 就会自动下载这个镜像,如果我们想预先下载这个镜像,我们可以使用 docker pull 命令来下载它

                                          docker pull centos:7.5.1804
                                          docker pull mysql:5.7
                                          docker pull hello-world
                                          docker images
                                          

                                          注意:如果不加版本号,则默认版本号为最新的

                                          注意:镜像拉取完成后,我们可以用镜像来运行容器

                                          删除镜像

                                          使用 tag 标签删除镜像

                                          注意:如果删除的时候报错:有容器使用了该镜像,则需要先删除使用过该镜像的容器,才能删除该镜像

                                          # docker rmi 镜像名:版本号
                                          docker rmi -f hello-world:latest
                                          
                                          docker images
                                          

                                          使用 id 删除镜像

                                          # docker rmi id号
                                          docker rmi -f feb5d9fea6a5
                                          
                                          把镜像保存为具体文件
                                          # docker save -o 本地路径+文件名
                                          # 注意:文件名建议.tar结尾
                                          docker save -o centos.tar centos:7.5.1804
                                          
                                          把镜像加载到 docker 中

                                          方法一:

                                          docker load -i centos.tar
                                          
                                          docker load --input centos.tar
                                          

                                          方法二:

                                          docker load < centos.tar
                                          
                                          5. Docker 容器基本命令
                                          创建容器
                                          docker create -i -t -h bigdata2 --name centos100 centos:7.5.1804 /bin/bash
                                          # -h HOSTNAME:设定容器的主机名,它会被写到容器内的 /etc/hostname 和 /etc/hosts
                                          # docker create -i -t -h master --name masterbigdata centos:7.5.1804 /bin/bash
                                          # --name="名称": 为容器指定一个名称
                                          docker create -it centos:7.5.1804 /bin/bash
                                          

                                          注意:

                                          • 容器的名称是唯一的

                                          • 如果不指定容器名称,docker 会自动分配

                                            查看容器
                                            # 查看所有容器
                                            docker ps -a
                                            # 查看所有运行状态的容器
                                            docker ps
                                            
                                            启动容器
                                            docker start 容器名称/ID
                                            
                                            停止容器
                                            docker stop 容器名称/ID
                                            
                                            进入容器

                                            方式一:

                                            # docker exec -i -t 容器ID/名称 /bin/bash
                                            

                                            方式二:

                                            # docker attach 容器ID/名称
                                            

                                            区别:exec 用 exit 退出时,不停止容器;attach 用 exit 退出时,停止容器

                                            exitctrl+p->ctrl+q
                                            exec退出不停止容器退出不停止容器
                                            attach退出停止容器退出不停止容器
                                            退出容器
                                            exit
                                            
                                            重启容器
                                            # docker restart 容器ID/名称
                                            
                                            删除容器
                                            • 删除未启动的容器
                                              # docker rm 容器ID/名称
                                              
                                              • 删除启动的容器
                                                # docker stop 容器ID/名称
                                                
                                                • 强制删除启动的容器
                                                  # docker rm -f 容器ID/名称
                                                  
                                                  一步完成新建和启动容器
                                                  docker run -i -t -h bigdata2 --name centos102 centos:7.5.1804 /bin/bash
                                                  # -h HOSTNAME:设定容器的主机名,它会被写到容器内的 /etc/hostname 和 /etc/hosts
                                                  # docker run -i -t -h master --name masterbigdata centos:7.5.1804 /bin/bash
                                                  # --name="名称": 为容器指定一个名称
                                                  
                                                  docker run -i -t -d -h master --name masterbigdata centos:7.5.1804 /bin/bash
                                                  docker run -i -t -d -h slave1 --name slave1bigdata centos:7.5.1804 /bin/bash
                                                  docker run -i -t -d -h slave2 --name slave2bigdata centos:7.5.1804 /bin/bash
                                                  # docker exec -i -t 容器ID/名称 /bin/bash
                                                  

                                                  相当于

                                                  docker pull # (本地不存在镜像,则会拉取)
                                                  docker create
                                                  docker start
                                                  docker exec
                                                  

                                                  后台启动容器

                                                  docker run -i -t -h bigdata3 --name centos103 -d centos:7.5.1804 /bin/bash
                                                  

                                                  注意:

                                                  -d 指启动容器后,但不进入容器,挂后台

                                                  启动 MySQL 容器
                                                  docker run -p 3307:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=000000 -d mysql:5.7
                                                  

                                                  注意:

                                                  -p 指定主机映射的端口号和 MySQL 的端口号,格式为 3307:3306

                                                  -e 指定 root 用户名密码:-e MYSQL_ROOT_PASSWORD=000000

                                                  获取所有的容器 ID
                                                  docker ps -a -q
                                                  
                                                  删除所有容器
                                                  docker rm -f $(docker ps -a -q)
                                                  
                                                  docker rm -f `docker ps -a -q`
                                                  
                                                  杀死所有运行容器
                                                  docker stop $(docker ps -a -q)
                                                  
                                                  docker stop `docker ps -a -q`
                                                  
                                                  docker kill $(docker ps -a -q)
                                                  
                                                  docker kill `docker ps -a -q`
                                                  

                                                  注意:docker kill 比 docker stop 停止容器要快

                                                  启动所有容器
                                                  docker start $(docker ps -a -q)
                                                  
                                                  docker start `docker ps -a -q`
                                                  
                                                  导入和导出容器

                                                  思路:修改 centos 容器 --> 导出成 .tar 文件 --> .tar 文件导入到新系统(以镜像的方式存在) --> 通过镜像启动容器

                                                  • 导出容器
                                                    docker export -o abc.tar 0925e9bc7ef1
                                                    
                                                    docker export 0925e9bc7ef1 > abc.tar
                                                    
                                                    • 导入容器
                                                      # docker import 文件路径/文件名 镜像名:版本号
                                                      docker import abc.tar centos:2
                                                      
                                                      容器与主机之间复制文件

                                                      容器和主机之间复制文件的时候,要保证容器已经启动

                                                      从主机复制文件到容器中:

                                                      docker cp ./docker101.txt 18e9a72a0bd4:/
                                                      

                                                      从容器复制文件到主机中:

                                                      docker cp 18e9a72a0bd4:/docker102.txt ./
                                                      

                                                      注意:

                                                      • 容器与主机之间复制文件,容器需要是启动状态

                                                      • 容器与容器之间不能复制文件

                                                        二、Hadoop 完全分布式安装配置
                                                        1. 修改 IP 和 MAC 地址

                                                        三台机器都要修改

                                                        vi /etc/sysconfig/network-scripts/ifcfg-ens33	# 进入本机网卡配置文件
                                                        

                                                        添加如下内容

                                                        ONBOOT="yes"	# 启动时是否激活 yes | no
                                                        BOOTPROTO="static"	# 协议类型
                                                        IPADDR=192.168.44.100	# 网络IP地址
                                                        NETMASK=255.255.255.0	# 网络子网地址
                                                        GATEWAY=192.168.44.2	# 网关地址
                                                        HWADDR=00:0C:29:11:26:A1	# 网卡MAC地址
                                                        DNS1=8.8.8.8	# 域名服务
                                                        

                                                        重启网卡

                                                        service network restart
                                                        

                                                        使用 ping 命令测试网络的连通性

                                                        ping www.baidu.com
                                                        

                                                        关闭 centos7 蜂鸣器声音

                                                        cd /etc/modprobe.d
                                                        vi pcspkr.conf
                                                        # 添加内容如下
                                                        blacklist pcspkr
                                                        

                                                        保存之后重启

                                                        安装 net-tools 包

                                                        yum install net-tools
                                                        

                                                        安装 vim 命令

                                                        yum -y install vim*
                                                        
                                                        2. 修改主机名
                                                        vim /etc/hostname
                                                        

                                                        添加如下内容

                                                        bigdata1
                                                        

                                                        另外两台分别添加

                                                        slave1
                                                        
                                                        slave2
                                                        

                                                        或者

                                                        三台机器同时执行

                                                        hostnamectl set-hostname bigdata1
                                                        bash	# 查看更改是否生效
                                                        
                                                        hostnamectl set-hostname slave1
                                                        bash	# 查看更改是否生效
                                                        
                                                        hostnamectl set-hostname slave2
                                                        bash	# 查看更改是否生效
                                                        
                                                        3. 设置 IP 和域名映射
                                                        vim /etc/hosts
                                                        

                                                        添加内容如下,另外两台也分别添加

                                                        192.168.44.100 bigdata1
                                                        192.168.44.110 slave1 
                                                        192.168.44.120 slave2 
                                                        

                                                        设置完成后,重启三台主机(用第二种方式修改主机名可不重启)

                                                        reboot
                                                        
                                                        4. 关闭防火墙

                                                        三台机器同时执行

                                                        systemctl stop firewalld	# 关闭防火墙
                                                        systemctl disable firewalld	# 禁止开机启动
                                                        systemctl status firewalld	# 检查防火墙状态
                                                        
                                                        5. 关闭 SELINUX

                                                        三台机器同时执行

                                                        修改 SELINUX 的配置文件

                                                        vim /etc/selinux/config
                                                        

                                                        修改内容如下

                                                        # 将 SELINUX=enforcing 修改为 SELINUX=disabled
                                                        SELINUX=disabled
                                                        
                                                        6. 免密登录

                                                        三台机器同时执行

                                                        ssh-keygen -t rsa	# 生成公私钥
                                                        

                                                        三台机器同时执行

                                                        ssh-copy-id bigdata1	# 拷贝公钥到bigdata1
                                                        

                                                        在 bigdata1 机器上使用如下命令

                                                        scp -r /root/.ssh/authorized_keys slave1:/root/.ssh
                                                        scp -r /root/.ssh/authorized_keys slave2:/root/.ssh
                                                        
                                                        7. 时钟同步

                                                        三台机器同时执行

                                                        crontab -e
                                                        

                                                        添加内容如下

                                                        */1 * * * * /usr/sbin/ntpdate ntp4.aliyun.com;
                                                        

                                                        或者

                                                        三台机器同时执行

                                                        timedatectl timezones Aisa/Shanghai
                                                        
                                                        8. JDK 安装

                                                        查看自带的 openjdk 并卸载

                                                        rpm -qa | grep java	# 搜索java相关的rpm包
                                                        yum -y remove	# 卸载当前jdk的rpm包
                                                        

                                                        创建安装目录

                                                        mkdir -p /export/softwares	# 软件包存放目录
                                                        mkdir -p /export/servers   # 安装目录
                                                        

                                                        上传并解压

                                                        在客户端(SerT)中进行登录,用 rz -E 的命令工具进行上传,如果没有,则进行下载

                                                        yum -y install lrzsz
                                                        
                                                        cd /export/softwares/
                                                        rz -E
                                                        tar -zxvf jdk-8u212-linux-x64.tar.gz -C /export/servers	# 解压到/export/servers
                                                        

                                                        将 jdk1.8.0_212 重命名为 java

                                                        cd /export/servers/
                                                        mv jdk1.8.0_212 java
                                                        

                                                        配置环境变量

                                                        vim /etc/profile
                                                        

                                                        添加内容如下

                                                        # JDK
                                                        export JAVA_HOME=/export/servers/java
                                                        export PATH=$PATH:$JAVA_HOME/bin
                                                        

                                                        重启生效

                                                        source /etc/profile
                                                        

                                                        测试是否成功安装

                                                        java -version
                                                        

                                                        在 bigdata1 机器上执行如下命令

                                                        scp -r /export/servers/java/ slave1:/export/servers	# 将JDK发送给slave1
                                                        scp -r /export/servers/java/ slave2:/export/servers	# 将JDK发送给slave2
                                                        scp -r /etc/profile slave1:/etc/profile	# 将/etc/profile发送给slave1
                                                        scp -r /etc/profile slave2:/etc/profile	# 将/etc/profile发送给slave2
                                                        

                                                        在 slave1 和 slave2 执行如下命令

                                                        source /etc/profile	# 重启生效
                                                        

                                                        配置环境变量对当前 root 用户生效

                                                        vim /root/.bash_profile
                                                        

                                                        配置环境变量对全局生效

                                                        vim /etc/profile
                                                        
                                                        9. HADOOP 安装

                                                        集群规划

                                                        Bigdata1Slave1Slave2
                                                        HDFSNameNode
                                                        DataNodeDataNodeDataNode
                                                        SecondaryNameNode
                                                        YARNNodeManagerNodeManagerNodeManager
                                                        ResourceManager

                                                        上传并解压

                                                        cd /export/softwares/
                                                        rz -E
                                                        tar -zxvf hadoop-3.1.3.tar.gz -C /export/servers	# 解压到/export/servers
                                                        

                                                        将 hadoop-3.1.3 重命名为 hadoop

                                                        cd /export/servers/
                                                        mv hadoop-3.1.3 hadoop
                                                        

                                                        配置环境变量

                                                        vim /etc/profile
                                                        

                                                        添加内容如下

                                                        # HADOOP
                                                        export HADOOP_HOME=/export/servers/hadoop
                                                        export PATH=$PATH:$HADOOP_HOME/bin
                                                        export PATH=$PATH:$HADOOP_HOME/sbin
                                                        

                                                        重启生效

                                                        source /etc/profile
                                                        

                                                        测试是否成功安装

                                                        hadoop version
                                                        

                                                        在 bigdata1 机器上执行如下命令

                                                        scp -r /export/servers/hadoop/ slave1:/export/servers/	# 将HADOOP发送给slave1
                                                        scp -r /export/servers/hadoop/ slave2:/export/servers/	# 将HADOOP发送给slave1
                                                        scp -r /etc/profile slave1:/etc/profile	# 将/etc/profile发送给slave1
                                                        scp -r /etc/profile slave2:/etc/profile	# 将/etc/profile发送给slave2
                                                        

                                                        在 slave1 和 slave2 执行如下命令

                                                        source /etc/profile	# 重启生效
                                                        

                                                        进入 HADOOP 配置文件目录下

                                                        cd /export/servers/hadoop/etc/hadoop
                                                        
                                                        • 修改 hadoop-env.sh 配置文件

                                                          vim hadoop-env.sh
                                                          # 添加内容如下
                                                          export JAVA_HOME=/export/servers/java
                                                          export HDFS_NAMENODE_USER=root
                                                          export HDFS_DATANODE_USER=root
                                                          export HDFS_SECONDARYNAMENODE_USER=root
                                                          export YARN_RESOURCEMANAGER_USER=root
                                                          export YARN_NODEMANAGER_USER=root
                                                          
                                                        • 修改 core-site.xml 配置文件

                                                          vim core-site.xml
                                                          
                                                          
                                                                  
                                                                  
                                                                          fs.defaultFS
                                                                          hdfs://bigdata1:8020
                                                                  
                                                                  
                                                                  
                                                                  
                                                                          hadoop.tmp.dir
                                                                          /export/servers/hadoop/data
                                                                  
                                                                  
                                                                  
                                                          		
                                                          			 hadoop.http.staticuser.user
                                                                       root
                                                          		
                                                          
                                                          
                                                        • 修改 hdfs-site.xml 配置文件

                                                          vim hdfs-site.xml
                                                          
                                                          
                                                          		
                                                                  
                                                                          dfs.namenode.http-address
                                                                          bigdata1:9870
                                                                  
                                                                  
                                                                  
                                                                  
                                                                          dfs.namenode.secondary.http-address
                                                                          bigdata1:9868
                                                                  
                                                          
                                                          
                                                        • 修改 yarn-site.xml 配置文件

                                                          vim yarn-site.xml
                                                          
                                                          
                                                          		
                                                                  
                                                                          yarn.nodemanager.aux-services
                                                                          mapreduce_shuffle
                                                                  
                                                                  
                                                                  
                                                                          yarn.resourcemanager.hostname
                                                                          bigdata1
                                                                  
                                                                  
                                                                  
                                                                          yarn.nodemanager.env-whitelist
                                                                      	JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_C
                                                          ONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME
                                                                  
                                                          
                                                          
                                                        • 修改 mapred-site.xml 配置文件

                                                          vim mapred-site.xml
                                                          
                                                          
                                                          		
                                                                  
                                                                          mapreduce.framework.name
                                                                          yarn
                                                                  
                                                          
                                                          
                                                        • 修改 workers 配置文件

                                                          vim workers
                                                          # 添加内容如下
                                                          bigdata1
                                                          slave1
                                                          slave2
                                                          

                                                          在 bigdata1 机器上执行如下命令

                                                          scp -r /export/servers/hadoop/etc/hadoop/ slave1:/export/servers/hadoop/etc/	# 将HADOOP的配置文件发送给slave1
                                                          scp -r /export/servers/hadoop/etc/hadoop/ slave2:/export/servers/hadoop/etc/	# 将HADOOP的配置文件发送给slave2
                                                          

                                                          启动集群

                                                          • 在 bigdata1 机器上对 NameNode 进行格式化

                                                            hdfs namenode -format
                                                            
                                                          • 启动 HDFS

                                                            cd /export/servers/hadoop
                                                            
                                                            sbin/start-dfs.sh
                                                            

                                                            查看 HDFS 是否启动

                                                            [root@bigdata1 hadoop]# jps
                                                            1683 NameNode
                                                            2053 SecondaryNameNode
                                                            1853 DataNode
                                                            2174 Jps
                                                            
                                                          • 启动 YARN

                                                            cd /export/servers/hadoop
                                                            
                                                            sbin/start-yarn.sh
                                                            

                                                            查看 YARN 是否启动

                                                            [root@bigdata1 hadoop]# jps
                                                            1683 NameNode
                                                            2053 SecondaryNameNode
                                                            2774 Jps
                                                            2312 ResourceManager
                                                            2459 NodeManager
                                                            1853 DataNode
                                                            
                                                          • Web 端查看 HDFS 的 NameNode

                                                            浏览器中输入:http://192.168.44.100:9870

                                                            查看 HDFS 上存储的数据信息

                                                          • Web 端查看 YARN 的 ResourceManager

                                                            浏览器中输入:http://192.168.44.100:8088

                                                            查看 YARN 上运行的 Job 信息

                                                            配置历史服务器

                                                            cd /export/servers/hadoop/etc/hadoop
                                                            
                                                            vim mapred-site.xml
                                                            
                                                            
                                                            		
                                                                    
                                                                            mapreduce.jobhistory.address
                                                                            bigdata1:10020
                                                                    
                                                                    
                                                                    
                                                                    
                                                                            mapreduce.jobhistory.webapp.address
                                                                            bigdata1:19888
                                                                    
                                                            
                                                            

                                                            在 bigdata1 机器上执行如下命令

                                                            scp -r /export/servers/hadoop/etc/hadoop/ slave1:/export/servers/hadoop/etc/	# 将HADOOP的配置文件发送给slave1
                                                            scp -r /export/servers/hadoop/etc/hadoop/ slave2:/export/servers/hadoop/etc/	# 将HADOOP的配置文件发送给slave2
                                                            

                                                            重新启动 YARN 后在 bigdata1 机器上启动历史服务器

                                                            stop-yarn.sh
                                                            start-yarn.sh
                                                            
                                                            mapred --daemon start historyserver
                                                            

                                                            查看历史服务器是否启动

                                                            [root@bigdata1 ~]# jps
                                                            10689 ResourceManager
                                                            10838 NodeManager
                                                            9079 DataNode
                                                            11399 Jps
                                                            8908 NameNode
                                                            9278 SecondaryNameNode
                                                            11342 JobHistoryServer
                                                            

                                                            Web 端查看 YARN 的 JobHistory

                                                            浏览器中输入:http://192.168.44.100:19888

                                                            查看 YARN 上运行的 JobHistory 信息

                                                            10. HADOOP 官方文档

                                                            在比赛期间,如果忘记了 hadoop 的配置文件该如何去写,可以用一种方法,在虚拟机上原有的 hadoop 安装包下载到我们 windows 上

                                                            cd /export/softwares
                                                            # 使用sz命令下载到Windows上
                                                            sz hadoop-3.1.3.tar.gz
                                                            

                                                            查看 windows 下下载的 hadoop-3.1.3.tar.gz 压缩文件,进行解压缩,解压缩后进入 hadoop-3.1.3 文件夹

                                                            进入 hadoop-3.1.3\share\doc\hadoop 这个目录下,有一个 index 的 html 文件,双击进去

                                                            里面有相关 hadoop 的配置文档供我们查看并记忆,而且这样比赛不算违规

                                                            三、Mysql 安装配置
                                                            1. 卸载系统自带的 Mariadb
                                                            rpm -qa | grep mariadb
                                                            
                                                            rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
                                                            
                                                            2. 删除 etc 目录下的 my.cnf 文件
                                                            rm -rf /etc/my.cnf
                                                            
                                                            3. 检查 MySQL 是否存在
                                                            rpm -qa | grep mysql
                                                            

                                                            检查 mysql 组是否存在

                                                            cat /etc/group | grep mysql
                                                            

                                                            检查 mysql 用户是否存在

                                                            cat /etc/passwd | grep mysql
                                                            

                                                            创建 mysql 用户组

                                                            groupadd mysql
                                                            

                                                            创建 mysql 用户,并将 mysql 用户添加到 mysql 用户组

                                                            useradd -g mysql mysql
                                                            

                                                            为 mysql 用户指定密码为 passwd

                                                            passwd mysql
                                                            
                                                            4. 上传并解压
                                                            cd /export/softwares/
                                                            rz -E
                                                            tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /export/servers	# 解压到/export/servers
                                                            

                                                            将文件重命名为 mysql

                                                            cd /export/servers/
                                                            mv mysql-5.7.18-linux-glibc2.5-x86_64/ mysql
                                                            

                                                            在 mysql 文件下创建 data 文件夹

                                                            cd /export/servers/mysql/
                                                            mkdir data
                                                            

                                                            更改 mysql 文件夹所属的组和用户

                                                            cd /export/servers
                                                            # 更改 mysql 文件夹所属用户 
                                                            chown -R mysql mysql/
                                                            # 更改 mysql 文件夹所属用户组 
                                                            chgrp -R mysql mysql/
                                                            
                                                            5. 新建配置文件 my.cnf
                                                            # 新建 my.cnf 文件
                                                            touch /etc/my.cnf 
                                                            # 编辑 my.cnf 文件
                                                            vim /etc/my.cnf
                                                            

                                                            在 my.cnf 文件内添加以下配置

                                                            [mysql] 
                                                            # 设置 mysql 客户端默认字符集 
                                                            default-character-set=utf8 
                                                            [mysqld] 
                                                            # skip-name-resolve
                                                            # 设置 3306 端口 
                                                            port=3306 
                                                            # 设置 mysql 的安装目录
                                                            basedir=/export/servers/mysql/
                                                            # 设置 mysql 数据库的数据的存放目录
                                                            datadir=/export/servers/mysql/data
                                                            # 允许最大连接数 
                                                            max_connections=200 
                                                            # 服务端使用的字符集默认为 8 比特编码的 latin1 字符集 
                                                            character-set-server=utf8 
                                                            # 创建新表时将使用的默认存储引擎 
                                                            default-storage-engine=INNODB 
                                                            # lower_case_table_name=1
                                                            max_allowed_packet=16M
                                                            
                                                            6. 初始化 mysqld

                                                            生成初始化密码

                                                            cd /export/servers/mysql
                                                            
                                                            ./bin/mysqld --initialize --user=mysql --basedir=/export/servers/mysql --datadir=/export/servers/mysql/data
                                                            
                                                            7. 设置开机启动

                                                            将 mysql.server 脚本复制到资源目录 /etc/rc.d/init.d/mysqld,并赋予执行权限

                                                            cd /export/servers/mysql
                                                            
                                                            # 将mysql.server脚本复制到资源目录/etc/rc.d/init.d/mysqld
                                                            cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld 
                                                            # 赋予执行权限 
                                                            chmod +x /etc/rc.d/init.d/mysqld
                                                            

                                                            执行下面命令将 mysqld 服务加入到系统服务

                                                            chkconfig --add mysqld
                                                            

                                                            检测是否生效

                                                            chkconfig --list mysqld
                                                            

                                                            执行下面命令启动 mysqld 服务

                                                            service mysqld start
                                                            
                                                            8. 配置环境变量
                                                            vim /etc/profile
                                                            

                                                            添加内容如下

                                                            # MYSQL
                                                            export MYSQL_HOME=/export/servers/mysql 
                                                            export PATH=$PATH:$MYSQL_HOME/bin
                                                            

                                                            重启生效

                                                            source /etc/profile
                                                            

                                                            查看环境变量的值

                                                            echo $PATH
                                                            
                                                            9. 修改访问密码

                                                            访问 mysql 数据库

                                                            mysql -uroot -p
                                                            

                                                            注意:此时密码使用前面自动生成的初始化密码

                                                            执行 sql 语句,设置 root 密码

                                                            set password=password('123456');
                                                            

                                                            选择数据库

                                                            use mysql;
                                                            

                                                            修改 root 用户的访问密码

                                                            update user set authentication_string=PASSWORD('123456') where user='root';
                                                            

                                                            设置远程访问

                                                            grant all privileges on *.* to root@"%" identified by "123456" with grant option;
                                                            

                                                            刷新授权表使其生效

                                                            flush privileges;
                                                            

                                                            退出

                                                            exit;
                                                            
                                                            四、Hive 安装配置
                                                            1. 上传并解压
                                                            cd /export/softwares/
                                                            rz -E
                                                            tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /export/servers	# 解压到/export/servers
                                                            

                                                            将 apache-hive-3.1.2-bin 重命名为 hive

                                                            cd /export/servers/
                                                            mv apache-hive-3.1.2-bin hive
                                                            
                                                            2. 配置环境变量
                                                            vim /etc/profile
                                                            

                                                            添加内容如下

                                                            # HIVE
                                                            export HIVE_HOME=/export/servers/hive
                                                            export PATH=$PATH:$HIVE_HOME/bin
                                                            

                                                            重启生效

                                                            source /etc/profile
                                                            
                                                            3. 将 Hive 元数据配置到 MySQL

                                                            上传驱动

                                                            cd /export/softwares/
                                                            rz -E
                                                            

                                                            拷贝 mysql jdbc 驱动到 hive 安装包 lib 下

                                                            cp /export/softwares/mysql-connector-java-5.1.38.jar /export/servers/hive/lib
                                                            

                                                            解决 Hive 与 Hadoop 之间guava版本差异

                                                            cd /export/servers/hive/lib/
                                                            rm -rf guava-19.0.jar
                                                            cp /export/servers/hadoop/share/hadoop/common/lib/guava-27.0-jre.jar ./
                                                            

                                                            修改 hive-env.sh 配置文件

                                                            cd /export/servers/hive/conf/
                                                            mv hive-env.sh.template hive-env.sh
                                                            vim hive-env.sh
                                                            # 添加内容如下
                                                            export HADOOP_HOME=/export/servers/hadoop
                                                            export HIVE_CONF_DIR=/export/servers/hive/conf
                                                            export HIVE_AUX_JARS_PATH=/export/servers/hive/lib
                                                            

                                                            在 /export/servers/hive/conf 目录下新建 hive-site.xml 文件

                                                            vim hive-site.xml
                                                            
                                                            
                                                            	
                                                            	
                                                            		javax.jdo.option.ConnectionURL
                                                            		jdbc:mysql://bigdata1:3306/metastore?createDatabaseIfNotExist=true
                                                            	
                                                             
                                                            	
                                                            	
                                                            		javax.jdo.option.ConnectionDriverName
                                                            		com.mysql.jdbc.Driver
                                                            	
                                                            	
                                                            	
                                                            		javax.jdo.option.ConnectionUserName
                                                            		root
                                                            	
                                                            	
                                                            	
                                                            		javax.jdo.option.ConnectionPassword
                                                            		123456
                                                            	
                                                               
                                                            	 
                                                            	
                                                            		hive.metastore.event.db.notification.api.auth
                                                            		false
                                                            	
                                                            
                                                            

                                                            如在比赛时忘记 hive-site.xml 文件的内容,可以进入 conf 目录下 hive-default.xml.template 模板文件搜索

                                                            cd /export/servers/hive/conf
                                                            vim hive-default.xml.template 
                                                            

                                                            初始化 Hive 元数据库

                                                            schematool -initSchema -dbType mysql -verbose
                                                            

                                                            在 hdfs 创建 hive 存储目录(如存在则不用操作)

                                                            hadoop fs -mkdir /tmp
                                                            hadoop fs -mkdir -p /user/hive/warehouse
                                                            hadoop fs -chmod 777 /tmp
                                                            hadoop fs -chmod 777 /user/hive/warehouse
                                                            
                                                            5. 再次启动 Hive

                                                            先启动 hadoop 集群

                                                            start-all.sh
                                                            

                                                            在第一个窗口中启动,进行查询数据表的操作

                                                            cd /export/servers/hive
                                                            bin/hive
                                                            
                                                            hive> show databases;
                                                            hive> show tables;
                                                            

                                                            克隆一个窗口,在克隆窗口中启动 Hive

                                                            hive
                                                            

                                                            克隆窗口和原窗口都可以进行数据查询访问,即 MySQL 数据库已作为 Hive 元数据库

                                                            6. 使用元数据服务的方式访问 Hive

                                                            在 hive-site.xml 文件中添加如下配置信息

                                                            cd /export/servers/hive/conf
                                                            vim hive-site.xml
                                                            # 添加内容如下
                                                            
                                                            
                                                            
                                                                    hive.metastore.uris
                                                                    thrift://bigdata1:9083
                                                            
                                                            

                                                            启动 metastore 服务

                                                            # 前台启动
                                                            hive --service metastore
                                                            # 后台启动
                                                            nohup /export/servers/hive/bin/hive --service metastore &
                                                            

                                                            启动 hive

                                                            cd /export/servers/hive
                                                            bin/hive
                                                            
                                                            7. 使用 JDBC 方式访问 Hive

                                                            在 hive-site.xml 文件中添加如下配置信息

                                                            cd /export/servers/hive/conf
                                                            vim hive-site.xml
                                                            # 添加内容如下
                                                            
                                                            
                                                            
                                                                    hive.server2.thrift.bind.host
                                                                    bigdata1
                                                            
                                                            

                                                            启动 hiveserver2 服务

                                                            # 前台启动
                                                            hive --service hiveserver2
                                                            # 后台启动
                                                            nohup /export/servers/hive/bin/hive --service hiveserver2 &
                                                            

                                                            在 hadoop 的配置文件 core-site.xml 中添加如下属性:

                                                            cd /export/servers/hadoop/etc/hadoop
                                                            vim core-site.xml
                                                            # 添加内容如下
                                                            
                                                            
                                                                    hadoop.proxyuser.root.hosts
                                                                    *
                                                            
                                                            
                                                                    hadoop.proxyuser.root.groups
                                                                    *
                                                            
                                                            

                                                            在 bigdata1 机器上执行如下命令

                                                            scp -r /export/servers/hadoop/etc/hadoop/ slave1:/export/servers/hadoop/etc/	# 将HADOOP的配置文件发送给slave1
                                                            scp -r /export/servers/hadoop/etc/hadoop/ slave2:/export/servers/hadoop/etc/	# 将HADOOP的配置文件发送给slave2
                                                            

                                                            重新启动 hadoop 集群

                                                            stop-all.sh
                                                            start-all.sh
                                                            

                                                            启动 beeline 客户端(需要多等待一会)

                                                            连接访问

                                                            /export/servers/hive/bin/beeline
                                                            beeline> ! connect jdbc:hive2://bigdata1:10000
                                                            beeline> root
                                                            beeline> 123456
                                                            
                                                            8. 常见属性配置

                                                            Hive 运行日志信息配置

                                                            Hive 的 log 默认存放在 /tmp/root 目录下(当前用户名下)

                                                            修改 hive 的 log 存放日志

                                                            cd /export/servers/hive/conf/
                                                            mv hive-log4j2.properties.template hive-log4j2.properties
                                                            vim hive-log4j2.properties
                                                            # 修改如下内容
                                                            # 原内容
                                                            property.hive.log.dir = ${sys:java.io.tmpdir}/${sys:user.name}
                                                            # 修改后内容
                                                            property.hive.log.dir = /export/servers/hive/logs
                                                            

                                                            打印当前库和表头

                                                            cd /export/servers/hive/conf
                                                            vim hive-site.xml
                                                            # 添加内容如下
                                                            
                                                            
                                                            		hive.cli.print.header
                                                            		true
                                                            	
                                                            
                                                            		hive.cli.print.current.db
                                                            		true
                                                            
                                                            

                                                            这样子进入 hive 客户端时,便可以清楚的知道是在哪个数据库,哪个表头

                                                            9. 解决 hive shell 中有许多日志信息的方法

                                                            在 hive 的安装目录下,在 conf 目录创建 log4j.properties日志的配置文件,然后写入以下信息就可以了

                                                            cd /export/servers/hive/conf
                                                            vim log4j.properties
                                                            
                                                            log4j.rootLogger=WARN, CA
                                                            log4j.appender.CA=org.apache.log4j.ConsoleAppender
                                                            log4j.appender.CA.layout=org.apache.log4j.PatternLayout
                                                            log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
                                                            
                                                            五、Zookeeper 安装配置
                                                            1. 上传并解压
                                                            cd /export/softwares/
                                                            rz -E
                                                            tar -zxvf zookeeper-3.4.5.tar.gz -C /export/servers	# 解压到/export/servers
                                                            

                                                            将 zookeeper-3.4.5 重命名为 zookeeper

                                                            cd /export/servers/
                                                            mv zookeeper-3.4.5 zookeeper
                                                            
                                                            2. 配置环境变量
                                                            vim /etc/profile
                                                            

                                                            添加内容如下

                                                            # ZOOKEEPER
                                                            export ZOOKEEPER_HOME=/export/servers/zookeeper
                                                            export PATH=$PATH:$ZOOKEEPER_HOME/bin
                                                            

                                                            刷新环境变量

                                                            source /etc/profile
                                                            
                                                            3. 修改配置文件
                                                            cd /export/servers/zookeeper/conf/
                                                            cp zoo_sample.cfg zoo.cfg
                                                            mkdir -p /export/servers/zookeeper/zkdatas/
                                                            vim zoo.cfg
                                                            # 添加内容如下
                                                            dataDir=/export/servers/zookeeper/zkdatas
                                                            # 保留多少个快照  (保留多少个生成的日志文件数)
                                                            autopurge.snapRetainCount=3
                                                            # 日志多少小时清理一次
                                                            autopurge.purgeInterval=1
                                                            # 集群中服务器地址  集群中myid==1 的服务器为bigdata1,并开启2888和3888两个端口
                                                            server.1=bigdata1:2888:3888
                                                            server.2=slave1:2888:3888
                                                            server.3=slave2:2888:3888
                                                            
                                                            4. 添加 myid 配置
                                                            cd /export/servers/zookeeper/zkdatas/
                                                            touch myid
                                                            echo 1 > /export/servers/zookeeper/zkdatas/myid
                                                            
                                                            5. 分发并修改 myid 的值

                                                            在 bigdata1 机器上执行如下命令

                                                            scp -r /export/servers/zookeeper/ slave1:/export/servers	# 将/export/servers/zookeeper/发送给slave1
                                                            scp -r /export/servers/zookeeper/ slave2:/export/servers	# 将/export/servers/zookeeper/发送给slave2
                                                            scp -r /etc/profile slave1:/etc/profile	# 将/etc/profile发送给slave1
                                                            scp -r /etc/profile slave2:/etc/profile	# 将/etc/profile发送给slave
                                                            

                                                            在 slave1 和 slave2 执行如下命令

                                                            source /etc/profile	# 重启生效
                                                            

                                                            在 slave1 机器上修改myid的值为2

                                                            cd /export/servers/zookeeper/zkdatas/
                                                            echo 2 > /export/servers/zookeeper/zkdatas/myid
                                                            

                                                            在 slave2 机器上修改myid的值为3

                                                            cd /export/servers/zookeeper/zkdatas/
                                                            echo 3 > /export/servers/zookeeper/zkdatas/myid
                                                            
                                                            6. 启动 zookeeper 服务

                                                            三台机器同时执行:

                                                            /export/servers/zookeeper/bin/zkServer.sh start
                                                            

                                                            查看启动状态

                                                            /export/servers/zookeeper/bin/zkServer.sh status
                                                            

                                                            启动 zookeeper 客户端

                                                            zkCli.sh
                                                            
                                                            7. 启动zookeeper 脚本
                                                            cd /export/servers/zookeeper/bin	# 进入到zookeeper的bin目录
                                                            vim start_zk.sh	# 新建脚本文件
                                                            # 添加内容如下
                                                            #! /bin/sh
                                                            for host in bigdata1 slave1 slave2
                                                            do
                                                                    ssh $host "source /etc/profile;zkServer.sh start"
                                                                    echo "$host zookeeper Server 正在启动......"
                                                            done
                                                            # 为start_zk.sh脚本文件赋予777权限
                                                            chmod 777 start_zk.sh
                                                            # 运行start_zk.sh脚本文件
                                                            cd /export/servers/zookeeper/bin
                                                            ./start_zk.sh	# 即可启动三台主机的zookeeper服务
                                                            
                                                            六、Kafka 安装配置
                                                            1. 上传并解压
                                                            cd /export/softwares/
                                                            rz -E
                                                            tar -zxvf kafka_2.12-2.4.1.tgz -C /export/servers	# 解压到/export/servers
                                                            

                                                            将 kafka 重命名为 kafka

                                                            cd /export/servers/
                                                            mv kafka_2.12-2.4.1 kafka
                                                            
                                                            2. 修改配置文件
                                                            cd /export/servers/kafka/config/
                                                            vim server.properties
                                                            # 修改内容如下
                                                            broker.id=0
                                                            log.dirs=/export/servers/kafka/data
                                                            zookeeper.connect=bigdata1:2181,slave1:2181,slave2:2181/kafka
                                                            
                                                            3. 分发文件
                                                            scp -r /export/servers/kafka slave1:/export/servers/	# 将/export/servers/kafka发送给slave1
                                                            scp -r /export/servers/kafka slave2:/export/servers/	# 将/export/servers/kafka发送给slave2
                                                            

                                                            在 slave1 机器上修改 /export/servers/kafka/config/server.properties 中的 broker.id=1 的值为1

                                                            cd /export/servers/kafka/config/
                                                            vim server.properties
                                                            # 修改内容如下
                                                            broker.id=1
                                                            

                                                            在 slave2 机器上修改 /export/servers/kafka/config/server.properties 中的 broker.id=1 的值为2

                                                            cd /export/servers/kafka/config/
                                                            vim server.properties
                                                            # 修改内容如下
                                                            broker.id=2
                                                            
                                                            4. 配置环境变量
                                                            vim /etc/profile
                                                            

                                                            添加内容如下

                                                            # KAFKA
                                                            export KAFKA_HOME=/export/servers/kafka/
                                                            export PATH=$PATH:$KAFKA_HOME/bin
                                                            

                                                            刷新环境变量

                                                            source /etc/profile
                                                            

                                                            在 bigdata1 机器上执行如下命令

                                                            scp -r /etc/profile slave1:/etc/profile	# 将/etc/profile发送给slave1
                                                            scp -r /etc/profile slave2:/etc/profile	# 将/etc/profile发送给slave
                                                            

                                                            在 slave1 和 slave2 执行如下命令

                                                            source /etc/profile	# 重启生效
                                                            
                                                            5. 启动集群

                                                            在 bigdata1 机器上启动 zookeeper 脚本,再去启动 kafka

                                                            start_zk.sh
                                                            

                                                            然后依次在 bigdata1、slave1、slave2 节点上启动 kafka

                                                            cd /export/servers/kafka/
                                                            bin/kafka-server-start.sh -daemon config/server.properties
                                                            

                                                            查看集群启动状态

                                                            [root@bigdata1 kafka]# jps
                                                            7942 Kafka
                                                            8038 Jps
                                                            7466 QuorumPeerMain
                                                            

                                                            关闭集群

                                                            cd /export/servers/kafka/
                                                            bin/kafka-server-stop.sh
                                                            

                                                            注意事项

                                                            停止 Kafka 集群时,一定要等 Kafka 所有节点进程全部停止后再停止 Zookeeper 集群。因为 Zookeeper 集群当中记录着 Kafka 集群相关信息,Zookeeper 集群一旦先停止, Kafka 集群就没有办法再获取停止进程的信息,只能手动杀死 Kafka 进程了

                                                            6. Kafka 操作
                                                            • 创建主题

                                                              zookeeper - 旧版Kafka的参数

                                                              cd /export/servers/kafka/
                                                              bin/kafka-topics.sh --create \
                                                              --topic news \
                                                              --partitions 3 \
                                                              --replication-factor 1 \
                                                              --zookeeper bigdata1:2181,slave1:2181,slave2:2181
                                                              # --create 创建主题
                                                              # --topic 主题名称
                                                              # --partitions 分区数量
                                                              # --replication-factor 每个分区副本因子个数即每个分区有多少副本
                                                              # --zookeeper zookeeper 集群地址
                                                              

                                                              bootstrap.server - 新版Kafka的参数

                                                              cd /export/servers/kafka/
                                                              bin/kafka-topics.sh --create --bootstrap-server bigdata1:9092 --topic news
                                                              

                                                              其中,2181是 ZooKeeper 的监听端口,9092是 Kafka 的监听端口

                                                              • 查看主题
                                                                cd /export/servers/kafka/
                                                                bin/kafka-topics.sh --list \
                                                                --zookeeper bigdata1:2181,slave1:2181,slave2:2181
                                                                
                                                                cd /export/servers/kafka/
                                                                bin/kafka-topics.sh --list --bootstrap-server bigdata1:9092
                                                                
                                                                • 删除主题
                                                                  cd /export/servers/kafka/
                                                                  bin/kafka-topics.sh --delete \
                                                                  --zookeeper bigdata1:2181,slave1:2181,slave2:2181 --topic news
                                                                  
                                                                  cd /export/servers/kafka/
                                                                  bin/kafka-topics.sh --delete --bootstrap-server bigdata1:9092 --topic news
                                                                  
                                                                  • 创建生产者

                                                                    在 slave1 机器上创建生产者,发送数据

                                                                    cd /export/servers/kafka/
                                                                    bin/kafka-console-producer.sh \
                                                                    --broker-list bigdata1:9092,slave1:9092,slave2:9092 \
                                                                    --topic news
                                                                    
                                                                    cd /export/servers/kafka/
                                                                    bin/kafka-console-consumer.sh --topic news --bootstrap-server bigdata1:9092
                                                                    
                                                                    • 创建消费者

                                                                      在 slave2 机器上创建消费者,查看数据

                                                                      cd /export/servers/kafka/
                                                                      bin/kafka-console-consumer.sh \
                                                                      --from-beginning --topic news \
                                                                      --bootstrap-server bigdata1:9092,slave1:9092,slave2:9092
                                                                      

                                                                      后续会直接启动脚本来创建消费者数据

                                                                      七、Spark Standalone 安装配置
                                                                      1. 上传并解压
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf spark-3.1.1-bin-hadoop3.2.tgz -C /export/servers	# 解压到/export/servers
                                                                      

                                                                      将 spark-3.1.1-bin-hadoop3.2 重命名为 spark

                                                                      cd /export/servers/
                                                                      mv spark-3.1.1-bin-hadoop3.2 spark
                                                                      
                                                                      2. 修改配置文件
                                                                      cd /export/servers/spark/conf
                                                                      mv workers.template workers
                                                                      mv spark-env.sh.template spark-env.sh
                                                                      vim workers
                                                                      # 添加内容如下
                                                                      bigdata1
                                                                      slave1
                                                                      slave2
                                                                      vim spark-env.sh
                                                                      # 添加内容如下
                                                                      export JAVA_HOME=/export/servers/java
                                                                      SPARK_MASTER_HOST=bigdata1
                                                                      SPARK_MASTER_PORT=7077
                                                                      # standalone模式下可以不配置以下内容
                                                                      export YARN_CONF_DIR=/export/servers/hadoop/etc/hadoop
                                                                      export HADOOP_CONF_DIR=/export/servers/hadoop/etc/hadoop
                                                                      
                                                                      3. 分发文件
                                                                      scp -r /export/servers/spark/ slave1:/export/servers	# 将/export/servers/spark/发送给slave1
                                                                      scp -r /export/servers/spark/ slave2:/export/servers	# 将/export/servers/spark/发送给slave2
                                                                      
                                                                      4. 启动集群
                                                                      cd /export/servers/spark/
                                                                      sbin/start-all.sh
                                                                      

                                                                      Web 端查看 SPARK 的启动状态

                                                                      浏览器中输入:http://192.168.44.100:8080

                                                                      5. 提交应用
                                                                      cd /export/servers/spark
                                                                      bin/spark-submit \
                                                                      --class org.apache.spark.examples.SparkPi \
                                                                      --master spark://192.168.44.100:7077 \
                                                                      ./examples/jars/spark-examples_2.12-3.1.1.jar 10
                                                                      

                                                                      查看运行结果

                                                                      6. Spark on Yarn 提交应用

                                                                      关闭 Spark 集群

                                                                      cd /export/servers/spark/sbin
                                                                      ./stop-all.sh
                                                                      

                                                                      启动 HDFS 和 YARN

                                                                      start-all.sh
                                                                      

                                                                      提交应用

                                                                      cd /export/servers/spark
                                                                      bin/spark-submit \
                                                                      --class org.apache.spark.examples.SparkPi \
                                                                      --master yarn \
                                                                      --deploy-mode cluster \
                                                                      ./examples/jars/spark-examples_2.12-3.1.1.jar 10
                                                                      

                                                                      在 cluster 模式下不会出现 Pi

                                                                      cd /export/servers/spark
                                                                      bin/spark-submit \
                                                                      --class org.apache.spark.examples.SparkPi \
                                                                      --master yarn \
                                                                      --deploy-mode client \
                                                                      ./examples/jars/spark-examples_2.12-3.1.1.jar 10
                                                                      

                                                                      查看运行结果

                                                                      八、Flink 安装配置
                                                                      1. 上传并解压
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf flink-1.14.0-bin-scala_2.12.tgz -C /export/servers/	# 解压到/export/servers
                                                                      

                                                                      将 flink-1.14.0 重命名为 flink

                                                                      cd /export/servers/
                                                                      mv flink-1.14.0 flink
                                                                      
                                                                      2. 修改集群配置

                                                                      修改 flink-conf.yaml 文件

                                                                      cd /export/servers/flink/conf
                                                                      vim flink-conf.yaml 
                                                                      # 原内容
                                                                      jobmanager.rpc.address: localhost
                                                                      # 修改后内容
                                                                      jobmanager.rpc.address: bigdata1
                                                                      

                                                                      这就指定了 bigdata1 节点服务器为 JobManager 节点

                                                                      修改 masters 文件,指定管理者

                                                                      cd /export/servers/flink/conf
                                                                      vim masters
                                                                      bigdata1:8081
                                                                      

                                                                      修改 workers 文件,将另外两台节点服务器添加为本 Flink 集群的 TaskManager 节点

                                                                      cd /export/servers/flink/conf
                                                                      vim workers
                                                                      slave1
                                                                      slave2
                                                                      

                                                                      这样就指定了 slave1 和 slave2 为 TaskManager 节点

                                                                      3. 分发文件
                                                                      scp -r /export/servers/flink/ slave1:/export/servers	# 将/export/servers/flink-1.14.0/发送给slave1
                                                                      scp -r /export/servers/flink/ slave2:/export/servers	# 将/export/servers/flink-1.14.0/发送给slave2
                                                                      
                                                                      3. 本地启动和关闭
                                                                      cd /export/servers/flink/bin
                                                                      ./start-cluster.sh
                                                                      ./stop-cluster.sh
                                                                      

                                                                      查看 Web UI

                                                                      浏览器中输入:http://192.168.44.100:8081,对 flink 集群和任务进行监控管理

                                                                      5. 提交应用

                                                                      进入 examples/batch/ 目录

                                                                      cd /export/servers/flink/examples/batch
                                                                      /export/servers/flink/bin/flink run WordCount.jar
                                                                      
                                                                      6. Flink on Yarn(flink-per-job) 提交应用

                                                                      进入 flink 下的 conf 目录,修改 flink-conf.yaml 文件

                                                                      cd /export/servers/flink/conf
                                                                      vim flink-conf.yaml
                                                                      # 添加内容如下
                                                                      classloader.check-leaked-classloader: false	# false 前面有空格
                                                                      

                                                                      将四个 jar 文件包拷贝到 flink 的 lib 目录下

                                                                      cd /export/servers/hadoop/share/hadoop/yarn/
                                                                      cp hadoop-yarn-api-3.1.3.jar /export/servers/flink/lib/
                                                                      
                                                                      cd /export/servers/hadoop/share/hadoop/yarn/sources/
                                                                      cp hadoop-yarn-api-3.1.3-sources.jar /export/servers/flink/lib/
                                                                      
                                                                      cd /export/servers/flink/lib/
                                                                      rz -E
                                                                      commons-cli-1.4.jar
                                                                      
                                                                      cd /export/servers/flink/lib/
                                                                      rz -E
                                                                      flink-shaded-hadoop-3-uber-3.1.1.7.2.9.0-173-9.0.jar
                                                                      

                                                                      或者

                                                                      将 hadoop 的环境全部加载出来,且不用上传 jar 包(简单)

                                                                      cd /export/servers/flink/
                                                                      export HADOOP_CLASSPATH=`hadoop classpath`
                                                                      

                                                                      提交应用

                                                                      先启动 Hadoop 集群

                                                                      start-all.sh
                                                                      

                                                                      直接使用 flink run 运行即可(无需启动 flink 集群)

                                                                      cd /export/servers/flink/
                                                                      bin/flink run -m yarn-cluster examples/batch/WordCount.jar
                                                                      bin/flink run -m yarn-cluster -p 2 -yjm 2G -ytm 2G examples/batch/WordCount.jar
                                                                      
                                                                      九、Flume 安装配置
                                                                      1. 上传并解压
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /export/servers/	# 解压到/export/servers
                                                                      

                                                                      将 apache-flume-1.9.0-bin 重命名为 flume

                                                                      cd /export/servers/
                                                                      mv apache-flume-1.9.0-bin flume
                                                                      
                                                                      2. 修改配置文件

                                                                      进入 flume 文件下的 conf 目录,将 flume-env.sh.template 这个文件修改为 flume-env.sh 文件

                                                                      cd /export/servers/flume/conf/
                                                                      mv flume-env.sh.template flume-env.sh
                                                                      

                                                                      修改 flume-env.sh 文件,将 flume 配置指定路径

                                                                      vim flume-env.sh
                                                                      # 修改内容如下
                                                                      export JAVA_HOME=/export/servers/java
                                                                      
                                                                      3. 查看 flume 是否安装成功
                                                                      cd /export/servers/flume
                                                                      bin/flume-ng version	# 显示版本号为安装成功
                                                                      
                                                                      4. flume 对接 kafka
                                                                      cd /export/servers/flume/
                                                                      mkdir job
                                                                      cd /export/servers/flume/job
                                                                      # flume_kafka_netcat.conf 在 job 目录下
                                                                      vim flume_kafka_netcat.conf
                                                                      # 添加内容如下
                                                                      a1.sources = r1
                                                                      a1.sinks = k1
                                                                      a1.channels = c1
                                                                      # 描述/配置源
                                                                      a1.sources.r1.type = netcat
                                                                      a1.sources.r1.bind = localhost
                                                                      a1.sources.r1.port = 25001
                                                                      # 描述接收器
                                                                      a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
                                                                      a1.sinks.k1.kafka.bootstrap.servers = bigdata1:9092,slave1:9092,slave2:9092
                                                                      a1.sinks.k1.kafka.topic = maxwell
                                                                      # 使用一个通道缓冲内存中的事件 
                                                                      a1.channels.c1.type = memory
                                                                      a1.channels.c1.capacity = 10000
                                                                      a1.channels.c1.transactionCapacity = 1000
                                                                      # 将source和sink绑定到通道
                                                                      a1.sources.r1.channels = c1
                                                                      a1.sinks.k1.channel = c1
                                                                      

                                                                      启动 flume

                                                                      cd /export/servers/flume/
                                                                      bin/flume-ng agent -n a1 -c conf/ -f job/flume_kafka_netcat.conf
                                                                      
                                                                      十、HBase 安装配置
                                                                      1. 上传并解压
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf hbase-2.2.3-bin.tar.gz -C /export/servers/	# 解压到/export/servers
                                                                      

                                                                      将 hbase-2.2.3 重命名为 hbase

                                                                      cd /export/servers/
                                                                      mv hbase-2.2.3 hbase
                                                                      
                                                                      2. 修改配置文件

                                                                      进入 hbase 的 conf 目录下,修改 hbase-env.sh 文件

                                                                      cd /export/servers/hbase/conf/
                                                                      vim hbase-env.sh
                                                                      # 修改内容如下
                                                                      export HBASE_MANAGES_ZK=false
                                                                      export JAVA_HOME=/export/servers/java
                                                                      

                                                                      进入 hbase 的 conf 目录下,修改 regionservers 文件

                                                                      cd /export/servers/hbase/conf/
                                                                      vim regionservers
                                                                      # 修改内容如下
                                                                      bigdata1
                                                                      slave1
                                                                      slave2
                                                                      

                                                                      进入 hbase 的 conf 目录下,修改 hbase-site.xml 文件

                                                                      cd /export/servers/hbase/conf/
                                                                      vim hbase-site.xml
                                                                      # 修改内容如下
                                                                      
                                                                      
                                                                      	hbase.zookeeper.quorum
                                                                      	bigdata1,slave1,slave2
                                                                      
                                                                      
                                                                      	hbase.rootdir
                                                                      	hdfs://bigdata1:8020/hbase
                                                                      
                                                                      
                                                                      	hbase.cluster.distributed
                                                                      	true
                                                                      
                                                                      
                                                                      	hbase.unsafe.stream.capability.enforce
                                                                      	false
                                                                      
                                                                      
                                                                      3. HBase 服务的启动

                                                                      分发 HBase 文件

                                                                      scp -r /export/servers/hbase/ slave1:/export/servers/
                                                                      scp -r /export/servers/hbase/ slave2:/export/servers/
                                                                      

                                                                      首先要启动 Zookeeper 和 hadoop

                                                                      start_zk.sh
                                                                      start-all.sh
                                                                      

                                                                      群起命令

                                                                      cd /export/servers/hbase/
                                                                      bin/start-hbase.sh
                                                                      
                                                                      4. 查看 HBase 页面

                                                                      访问 HBase 管理页面

                                                                      浏览器中输入:http://192.168.44.100:16010

                                                                      十一、Maxwell 安装配置
                                                                      1. 上传并解压
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf maxwell-1.29.0.tar.gz -C /export/servers/	# 解压到/export/servers
                                                                      

                                                                      将 maxwell-1.29.0 重命名为 maxwell

                                                                      cd /export/servers/
                                                                      mv maxwell-1.29.0 maxwell
                                                                      
                                                                      2. MYSQL 环境准备

                                                                      修改 mysql 的配置文件,开启 MySQL Binlog 设置

                                                                      vim /etc/my.cnf
                                                                      # 在[mysqld]模块下添加如下内容
                                                                      [mysqld]
                                                                      server_id=1
                                                                      log-bin=mysql-bin
                                                                      binlog_format=row
                                                                      # binlog-do-db=test_maxwell	# 指定数据库监听
                                                                      # 可不记
                                                                      plugin-load-add=validate_password.so
                                                                      validate-password=FORCE_PLUS_PERMANENT
                                                                      

                                                                      重启 MySQL 服务

                                                                      service mysqld restart
                                                                      

                                                                      登录 mysql 并查看是否修改完成

                                                                      mysql -uroot -p123456
                                                                      
                                                                      show variables like '%binlog%';
                                                                      

                                                                      进入 mysql 下的 data 目录,查看 MySQL 生成的 binlog 文件

                                                                      cd /export/servers/mysql/data
                                                                      

                                                                      注:MySQL 生成的 binlog 文件初始大小一定是 154 字节,然后前缀是 log-bin 参数配置的,后缀是默认从.000001,然后依次递增。除了 binlog 文件以外,MySQL 还会额外生产一个.index 索引文件用来记录当前使用的 binlog 文件

                                                                      3. 初始化 Maxwell 元数据库

                                                                      在 MySQL 中建立一个 maxwell 库用于存储 Maxwell 的元数据

                                                                      mysql -uroot -p123456
                                                                      
                                                                      create database maxwell;
                                                                      

                                                                      设置 mysql 用户密码安全级别(可不记)

                                                                      set global validate_password_length=4;
                                                                      set global validate_password_policy=0;
                                                                      

                                                                      分配一个账号可以操作该数据库

                                                                      grant all on maxwell.* to 'maxwell'@'%' identified by '123456';
                                                                      

                                                                      分配这个账号可以监控其他数据库的权限

                                                                      grant select,replication slave,replication client on *.* to maxwell@'%';
                                                                      

                                                                      刷新 mysql 表权限

                                                                      flush privileges;
                                                                      

                                                                      退出

                                                                      exit;
                                                                      
                                                                      4. Maxwell 进程启动

                                                                      Maxwell 进程启动方式有如下两种:

                                                                      使用命令行参数启动 Maxwell 进程

                                                                      cd /export/servers/maxwell/
                                                                      bin/maxwell --user='maxwell' --password='123456' --host='bigdata1' --producer=stdout 
                                                                      # --user 连接 mysql 的用户
                                                                      # --password 连接 mysql 的用户的密码
                                                                      # --host mysql 安装的主机名
                                                                      # --producer 生产者模式(stdout:控制台 kafka:kafka 集群)
                                                                      

                                                                      修改配置文件,定制化启动 Maxwell 进程

                                                                      cd /export/servers/maxwell/
                                                                      cp config.properties.example config.properties
                                                                      vim config.properties
                                                                      bin/maxwell --config ./config.properties
                                                                      
                                                                      十二、ClickHouse 安装配置
                                                                      1. 上传并解压
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf clickhouse-common-static-21.9.4.35.tgz -C /export/servers/	# 解压到/export/servers
                                                                      
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf clickhouse-common-static-dbg-21.9.4.35.tgz -C /export/servers/	# 解压到/export/servers
                                                                      
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf clickhouse-server-21.9.4.35.tgz -C /export/servers/	# 解压到/export/servers
                                                                      
                                                                      cd /export/softwares/
                                                                      rz -E
                                                                      tar -zxvf clickhouse-client-21.9.4.35.tgz -C /export/servers/	# 解压到/export/servers
                                                                      
                                                                      2. ClickHouse 安装
                                                                      cd /export/servers/clickhouse-common-static-21.9.4.35/install/
                                                                      ./doinst.sh
                                                                      
                                                                      cd /export/servers/clickhouse-common-static-dbg-21.9.4.35/install/
                                                                      ./doinst.sh
                                                                      
                                                                      cd /export/servers/clickhouse-server-21.9.4.35/install/
                                                                      ./doinst.sh
                                                                      # 可输入 ClickHouse 默认用户名的密码,也可以不输入,直接回车跳过即可
                                                                      
                                                                      cd /export/servers/clickhouse-client-21.9.4.35/install/
                                                                      ./doinst.sh
                                                                      
                                                                      3. 连接 ClickHouse
                                                                      clickhouse start
                                                                      clickhouse-client	# 无密码进入 ClickHouse 客户端
                                                                      clickhouse-client --password	# 有密码进入 ClickHouse 客户端
                                                                      
                                                                      show databases;
                                                                      
                                                                      4. ClickHouse 卸载
                                                                      # 删除 ClickHouse 相关配置文件
                                                                      rm -rf /usr/bin/clickhouse*
                                                                      rm -rf /var/lib/clickhouse
                                                                      rm -rf /etc/clickhouse*
                                                                      

网友评论

搜索
最新文章
热门文章
热门标签