[关闭]
@andy2015 2025-01-12T23:07:34.000000Z 字数 4248 阅读 73

Dolphinscheduler集群部署

大数据湖仓技术


前置依赖

前置准备

  1. 集群机器规划
    vim /etc/hosts

    1. 192.168.132.64 st.master.node2 sr.fe.node2 ds.master.node2 zk.service.node1
    2. 192.168.132.211 st.master.node1 sr.fe.node1 ds.worker.node1 ss.query.server zk.service.node2 ds.api.server flink.master.node1
    3. 192.168.132.212 st.worker.node1 sr.be.node1 ds.worker.node2
    4. flink.worker.node1
    5. 192.168.132.213 st.worker.node2 sr.be.node2 ds.worker.node3 pgsql.db.node flink.worker.node2 flink.master.node2
    6. 192.168.132.214 st.worker.node3 sr.be.node3 ds.master.node1
    7. zk.service.node3 ds.alert.server flink.worker.node3 flink.master.node3

    1). 安装PostgreSQL

    1. sudo yum update
    2. sudo yum install postgresql-server postgresql-contrib
    3. sudo postgresql-setup initdb
    4. sudo systemctl start postgresql
    5. #sudo systemctl restart postgresql
    6. sudo systemctl enable postgresql
    7. #验证
    8. sudo -i -u postgres
    9. psql
    10. SELECT rolname,rolpassword FROM pg_authid;
    11. ALTER USER postgres WITH PASSWORD 'BT@024';
    12. CREATE DATABASE dolphinscheduler;
    13. # 修改 {user} 和 {password} 为你希望的用户名和密码
    14. #CREATE USER {user} PASSWORD {password};
    15. ALTER DATABASE dolphinscheduler OWNER TO postgres;
    16. #远程访问
    17. find / -name postgresql.conf
    18. vim postgresql.conf
    19. listen_addresses = '*'
    20. find / -name pg_hba.conf
    21. vim pg_hba.conf
    22. host all all 0.0.0.0/0 md5
    23. sudo systemctl restart postgresql

    2). 安装zookeeper
    a. 下载安装包:https://www.apache.org/dyn/closer.lua/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz
    b. 解压并安装配置

    1. tar -zxvf apache-zookeeper-3.8.4-bin.tar.gz
    2. mv apache-zookeeper-3.8.4-bin /opt/zookeeper-3.8.4
    3. cd zookeeper-3.8.4/conf/
    4. mv zoo_sample.cfg zoo.cfg
    5. vim zoo.cfg
    6. server.1=zk.service.node1:2888:3888
    7. server.2=zk.service.node2:2888:3888
    8. server.3=zk.service.node3:2888:3888

    c. 创建zk数据目录并myid文件,内容与zoo.cfg中server.x项中的x对应。

    1. sudo mkdir -p /data/zookeeper
    2. touch /data/zookeeper/myid
    3. sudo chmod -R 775 /data/zookeeper
    4. echo "1" >> /data/zookeeper/myid
    5. cd /opt/zookeeper-3.8.4/bin
    6. sh ./zkServer.sh start

    3) Flink安装(可选, 需要配置SSH免登录)
    a. Fink: https://nightlies.apache.org/flink/flink-docs-release-1.20/zh/docs/deployment/resource-providers/standalone/overview/
    b. Flink-CDC: https://nightlies.apache.org/flink/flink-cdc-docs-release-3.2/zh/docs/deployment/standalone/
    c. Yarn集群:集群资源调度
    https://www.cnblogs.com/caoweixiong/p/13451038.html
    https://nightlies.apache.org/flink/flink-docs-release-1.20/zh/docs/deployment/resource-providers/yarn/

    NFS配置参考

    • 服务端:

      1. sudo mkdir -p /data/flink/ha
      2. sudo yum install nfs-utils rpcbind
      3. sudo vi /etc/exports
      4. /data/flink/ha *(rw,sync,no_root_squash)
      5. /opt/flink *(rw,sync,no_root_squash)
      6. sudo systemctl start rpcbind
      7. sudo systemctl start nfs-server
      8. sudo systemctl enable rpcbind
      9. sudo systemctl enable nfs-server
    • 客户端:

      1. sudo yum install nfs-utils
      2. sudo mkdir -p /data/flink/ha
      3. sudo mount 192.168.132.211:/data/flink/ha /data/flink/ha
      4. sudo mount 192.168.132.211:/data/flink/c
      5. onf /data/flink/conf
      6. sudo mount 192.168.132.211:/data/flink/lib /data/flink/lib
      7. #取消挂载
      8. sudo umount -lf /opt/flink
  2. 下载安装包

  3. 上传包到服务器各节点解压
    tar -zxvf apache-dolphinscheduler-3.1.9-bin.tar.gz

  4. 配置用户免密及权限

    1. useradd dsuser
    2. echo "dsuser" | passwd --stdin dsuser
    3. sed -i '$adsuser ALL=(ALL) NOPASSWD: ALL' /etc/sudoers
    4. sed -i 's/Defaults requirett/#Defaults requirett/g' /etc/sudoers
    5. chown -R dsuser:dsuser dolphinscheduler-3.1.9
    6. #配置机器SSH免密登陆
    7. su dsuser
    8. ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
    9. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    10. chmod 600 ~/.ssh/authorized_keys
    11. ssh-copy-id dsuser@ip
    12. #在数据库节点初始化数据库
    13. bash tools/bin/upgrade-schema.sh
    • *因为任务执行服务是以 sudo -u {linux-user} 切换不同 linux 用户的方式来实现多租户运行作业,所以部署用户需要有 sudo 权限,而且是免密的。初学习者不理解的话,完全可以暂时忽略这一点
    • 如果发现 /etc/sudoers 文件中有 "Defaults requirett" 这行,也请注释掉*
  5. 启动集群

    1. # 一键停止集群所有服务
    2. bash ./bin/stop-all.sh
    3. # 一键开启集群所有服务
    4. bash ./bin/start-all.sh
    5. # 启停 Master
    6. bash ./bin/dolphinscheduler-daemon.sh stop master-server
    7. bash ./bin/dolphinscheduler-daemon.sh start master-server
    8. # 启停 Worker
    9. bash ./bin/dolphinscheduler-daemon.sh start worker-server
    10. bash ./bin/dolphinscheduler-daemon.sh stop worker-server
    11. # 启停 Api
    12. bash ./bin/dolphinscheduler-daemon.sh start api-server
    13. bash ./bin/dolphinscheduler-daemon.sh stop api-server
    14. #启停 Alert
    15. bash ./bin/dolphinscheduler-daemon.sh start alert-server
    16. bash ./bin/dolphinscheduler-daemon.sh stop alert-server

    浏览器访问地址 http://localhost:12345/dolphinscheduler/ui 即可登录系统 UI。默认的用户名和密码是 admin/dolphinscheduler123

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注