找到
3
篇与
数据库
相关的结果
-
Hugegrap集群部署之Rocksdb存储 Hugegrap集群部署之Rocksdb存储 服务器信息 服务器ipRole配置信息192.168.230.128master32c64G1000G192.168.230.129worker32C64G1000G192.168.230.130worker32C64G1000G下载安装包 这里推荐使用1.5.0版本,途中踩了很多坑研究了很长时间,参考 https://github.com/apache/incubator-hugegraph/issues/2787# 服务包 https://www.apache.org/dyn/closer.lua/incubator/hugegraph/1.5.0/apache-hugegraph-incubating-1.5.0.tar.gz?action=download# 工具包 https://www.apache.org/dyn/closer.lua/incubator/hugegraph/1.5.0/apache-hugegraph-toolchain-incubating-1.5.0.tar.gz?action=download开始部署Hugegraph tar xf apache-hugegraph-incubating-1.5.0.tar.gz -C /home/hugegraph cd /home/hugegraph/apache-hugegraph-server-incubating-1.5.0/conf# 192.168.230.128 修改配置文件如下 [root@localhost conf]# cat rest-server.properties # 允许所有ip访问 restserver.url=http://0.0.0.0:8080 graphs=./conf/graphs batch.max_write_ratio=80 batch.max_write_threads=0 arthas.telnet_port=8562 arthas.http_port=8561 arthas.ip=127.0.0.1 arthas.disabled_commands=jad # 是否开启鉴权 auth.authenticator=org.apache.hugegraph.auth.StandardAuthenticator auth.graph_store=hugegraph # 本机ip rpc.server_host=192.168.230.128 rpc.server_port=8091 rpc.server_timeout=30 # 集群ip信息 rpc.remote_url=192.168.230.128:8091,192.168.230.129:8092,192.168.230.130:8093 #rpc.client_connect_timeout=20 #rpc.client_reconnect_period=10 #rpc.client_read_timeout=40 #rpc.client_retries=3 #rpc.client_load_balancer=consistentHash # id不可重复 server.id=server-1 server.role=master # slow query log log.slow_query_threshold=1000 # jvm(in-heap) memory usage monitor, set 1 to disable it memory_monitor.threshold=0.85 memory_monitor.period=2000# 192.168.230.128 修改配置文件如下 [root@localhost conf]# vim graphs/hugegraph.properties gremlin.graph=org.apache.hugegraph.HugeFactory vertex.cache_type=l2 edge.cache_type=l2 backend=rocksdb serializer=binary store=hugegraph task.scheduler_type=local task.schedule_period=10 task.retry=0 task.wait_timeout=10 search.text_analyzer=jieba search.text_analyzer_mode=INDEX rocksdb.data_path=./data rocksdb.wal_path=./wal raft.mode=true raft.group_peers=192.168.230.128:8091,192.168.230.129:8092,192.168.230.130:8093 # 参数优化。具体看官网介绍,这个是字节单位不可写MB GB单位否则报错 # 我这是参考官方的64G的优化 也可不写 rocksdb.write_buffer_size=134217728 rocksdb.max_write_buffer_number=6 rocksdb.block_cache_size=8589934592# 发送到129 和 130 服务器 # 128服务器执行 cd /home scp -r hugegraph/ root@192.168.230.129:/home # 输入服务器密码发送 # 129服务器修改 rest-server.properties rpc.server_host=192.168.230.129 rpc.server_port=8092 server.id=server-2 server.role=worker # 130服务器修改 rest-server.properties rpc.server_host=192.168.230.130 rpc.server_port=8093 server.id=server-3 server.role=worker# 初始化rocksdb 三台设备都需要操作 cd /home/hugegraph/apache-hugegraph-server-incubating-1.5.0/bin ./init-store.sh # 输入密码。 访问Hugegraph时需要使用 三台都要输入image-20250609151555046图片 # 三台都要操作,启动服务 [root@localhost bin]# ./start-hugegraph.sh Starting HugeGraphServer in daemon mode... Connecting to HugeGraphServer (http://0.0.0.0:8080/graphs)............... The operation timed out(30s) when attempting to connect to http://0.0.0.0:8080/graphs See /home/apache-hugegraph-incubating-1.5.0/apache-hugegraph-server-incubating-1.5.0/logs/hugegraph-server.log for HugeGraphServer log output. # 可能会报错,稍等一会就好验证集群状态 [root@localhost conf]# curl -X GET "http://192.168.230.128:8080/graphs/hugegraph/raft/list_peers" -u admin:创建时的密码 |jq % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 84 100 84 0 0 8581 0 --:--:-- --:--:-- --:--:-- 9333 { "hugegraph": [ "192.168.230.128:8091", "192.168.230.129:8092", "192.168.230.130:8093" ] } [root@localhost conf]# curl -X GET "http://192.168.230.128:8080/graphs/hugegraph/raft/get_leader" -u admin:123456 |jq % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 36 100 36 0 0 3610 0 --:--:-- --:--:-- --:--:-- 3600 { "hugegraph": "192.168.230.128:8091" }常用接口如下: 查询 Raft 集群所有节点(peers): GET http://<host>:<port>/graphs/<graph>/raft/list_peers 查询当前 leader 节点: GET http://<host>:<port>/graphs/<graph>/raft/get_leader 查询系统健康指标: GET http://<host>:<port>/metrics/system 查询后端存储健康指标: GET http://<host>:<port>/metrics/backend curl -X GET "http://192.168.230.128:8080/graphs/hugegraph/raft/list_peers" -u admin:密码"部署web可视化工具 # 三台设备随便一个设备部署即可 tar xf apache-hugegraph-toolchain-incubating-1.5.0.tar.gz -C /home cd /home/apache-hugegraph-toolchain-incubating-1.5.0/apache-hugegraph-hubble-incubating-1.5.0/bin ./start-hubble.sh 访问web 部署hubel的机器ip:8088创建图 创建顶点和边测试 image-20250609171519486图片 image-20250609171705301图片 image-20250609171819228图片
-
DolphinScheduler工作流任务调度集群 构架说明 IP组件规划三方组件83.1.12.43work、alterjdk1.8、zookeeper、PGsql83.1.12.44master、workjdk1.8、zookeeper83.1.12.45work、apijdk1.8、zookeeper部署使用 83.1.12.43 作为中控机,创建,启动,关闭集群 均在此服务器操作端口说明 组件默认端口说明MasterServer5678非通信端口,只需本机端口不冲突即可WorkerServer1234非通信端口,只需本机端口不冲突即可ApiApplicationServer12345提供后端通信端口# 部署参考文档 https://dolphinscheduler.apache.org/zh-cn/docs/3.1.9/guide/installation/cluster # Dolphinscheduler下载地址最新稳定版 https://dlcdn.apache.org/dolphinscheduler/3.1.9/apache-dolphinscheduler-3.1.9-bin.tar.gz # Zookeeper下载地址最新稳定版 https://dlcdn.apache.org/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz # PGSQL 使用Dcoker方式部署配置免密登录 [root@83.1.12.43 ~]# ssh-keygen # 一路回车 # 由于中控机也需要部署业务所以自己也要配置免密 [root@83.1.12.43 ~]# ssh-copy-id root@83.1.12.43 [root@83.1.12.43 ~]# ssh-copy-id root@83.1.12.44 [root@83.1.12.43 ~]# ssh-copy-id root@83.1.12.45Zookeeper集群 # 上传 apache-zookeeper-3.8.4-bin.tar.gz 文件 [root@83.1.12.43 ~]# tar xf apache-zookeeper-3.8.4-bin.tar.gz -C /home [root@83.1.12.43 ~]# cd /home [root@83.1.12.43 ~]# mv apache-zookeeper-3.8.4-bin zookeeper [root@83.1.12.43 ~]# mkdir zookeeper/data zookeeper/logs [root@83.1.12.43 home]# cd zookeeper/conf [root@83.1.12.43 conf]# cp zoo_sample.cfg zoo.cfg # 编辑配置文件 [root@83.1.12.43 conf]# vim zoo.cfg dataDir=/home/zookeeper/data dataLogDir=/home/zookeeper/logs # 集群配置 2888:选举端口 3888:投票端口 server.1=83.1.12.43:2888:3888 server.2=83.1.12.44:2888:3888 server.3=83.1.12.45:2888:3888 # 发送到另外两台服务器 [root@83.1.12.43 conf]# scp -r /home/zookeeper root@83.1.12.44:/home [root@83.1.12.43 conf]# scp -r /home/zookeeper root@83.1.12.44:/home # 创建myid文件 echo "1" > /home/zookeeper/data/myid # 切换服务器 [root@83.1.12.44 ~]# echo "2" > /home/zookeeper/data/myid # 切换服务器 [root@83.1.12.45 ~]# echo "3" > /home/zookeeper/data/myid # 依次启动服务 [root@83.1.12.43 ~]# cd /home/zookeeper/bin [root@83.1.12.43 bin]# ./zkServer.sh start [root@83.1.12.44 ~]# cd /home/zookeeper/bin [root@83.1.12.44 bin]# ./zkServer.sh start [root@83.1.12.45 ~]# cd /home/zookeeper/bin [root@83.1.12.45 bin]# ./zkServer.sh start # 查看端口 [root@83.1.12.43 ~]# netstat -tnlp 2181 # 常用命令 1. 启动ZK 服务:bin/zkServer.sh start 2. 查看ZK 服务状态:bin/zkServer.sh status 3. 停止ZK 服务:bin/zkServer.sh stop 4. 重启ZK 服务:bin/zkServer.sh restart配置PG数据库 [root@83.1.12.43 ~]# docker run -d \ --name postgres \ --restart always \ -p 5432:5432 \ -e POSTGRES_PASSWORD=Admin@9000 \ -v postgresql_data:/var/lib/postgresql/data \ postgres:17 # 采用命令行工具登陆 PostgreSQL [root@83.1.12.43 ~]# docker exec -it postgres bash psql # 创建数据库 postgres=# CREATE DATABASE dolphinscheduler; # 修改 {user} 和 {password} 为你希望的用户名和密码 postgres=# CREATE USER {user} PASSWORD {password}; postgres=# ALTER DATABASE dolphinscheduler OWNER TO {user}; # 退出 PostgreSQL postgres=#\q配置Dolphinscheduler # 数据库配置参考官方文档 https://github.com/apache/dolphinscheduler/blob/3.1.9-release/docs/docs/zh/guide/howto/datasource-setting.md# 上传 Dolphinscheduler到43服务器同时作为中控机使用 # 修改dolphinscheduler_env.sh [root@83.1.12.43 ~]# tar xf apache-dolphinscheduler-3.1.9-bin.tar.gz [root@83.1.12.43 ~]# mv apache-dolphinscheduler-3.1.9-bin /home/dolphinscheduler [root@83.1.12.43 ~]# vim /home/dolphinscheduler/bin/env/dolphinscheduler_env.sh # JAVA_HOME, will use it to start DolphinScheduler server # JDK配置 export JAVA_HOME=${JAVA_HOME:-/usr/local/jdk-17.0.13} # Database related configuration, set database type, username and password # MySQL数据库配置 # 注意这里的数据库配置不要使用{} 官方文档写的{user}和{passwd}就是坑 export DATABASE=postgresql export SPRING_PROFILES_ACTIVE=${DATABASE} export SPRING_DATASOURCE_URL="jdbc:postgresql://83.1.12.43:5432/dolphinscheduler" export SPRING_DATASOURCE_USERNAME=postgres export SPRING_DATASOURCE_PASSWORD=Admin@9000 # DolphinScheduler server related configuration export SPRING_CACHE_TYPE=${SPRING_CACHE_TYPE:-none} export SPRING_JACKSON_TIME_ZONE=${SPRING_JACKSON_TIME_ZONE:-UTC} export MASTER_FETCH_COMMAND_NUM=${MASTER_FETCH_COMMAND_NUM:-10} # Registry center configuration, determines the type and link of the registry center # zk注册中心 export REGISTRY_TYPE=${REGISTRY_TYPE:-zookeeper} export REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-83.1.12.43:2181,83.1.12.44:2181,83.1.12.45:2181} # Tasks related configurations, need to change the configuration if you use the related tasks. # 其他环境配置(此处只配置了hadoop、hive,其他环境未部署) # 如果你不使用某些任务类型,可以忽略不做配置,使用默认即可。比如Flink不使用,不做处理即可 export HADOOP_HOME=${HADOOP_HOME:-/home/soft/hadoop-3.3.6} export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/home/soft/hadoop-3.3.6/etc/hadoop} export SPARK_HOME=${SPARK_HOME:-/home/soft/spark} export PYTHON_LAUNCHER=${PYTHON_LAUNCHER:-/home/soft/python} export HIVE_HOME=${HIVE_HOME:-/home/soft/hive-3.1.3} export FLINK_HOME=${FLINK_HOME:-/home/soft/flink} export DATAX_LAUNCHER=${DATAX_LAUNCHER:-/home/soft/datax/bin/python3} export PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH# 修改install_env.sh [root@83.1.12.43 ~]# vim /home/dolphinscheduler/bin/env/install_env.sh # 按照集群部署方案,内容如下: # 集群节点 ips=${ips:-"83.1.12.43,83.1.12.44,83.1.12.45"} # ssh登录的端口 由于我的机器是22222,根据实际情况填写 # ssh免密端口,使用默认 sshPort=${sshPort:-"22222"} # master节点 masters=${masters:-"83.1.12.44"} # worker节点 workers=${workers:-"83.1.12.43:default,83.1.12.44:default,83.1.12.45:default"} # alert节点 alertServer=${alertServer:-"83.1.12.43"} # api节点 apiServers=${apiServers:-"83.1.12.45"} # dolphinscheduler实际安装路径 installPath=${installPath:-"/home/dolphinscheduler"} # 官方文档用的deployUser用户,但是我没有创建所以这里直接使用root # 部署dolphinscheduler使用的用户名 deployUser=${deployUser:-"root"} # zk根节点 zkRoot=${zkRoot:-"/dolphinscheduler"}# 初始化数据库 [root@83.1.12.43 ~]# cd /home/dolphinscheduler/ [root@83.1.12.43 dolphinscheduler]# sh ./tools/bin/upgrade-schema.sh # 等待跑码完成安装Dolphinscheduler # 执行install.sh部署命令 [root@83.1.12.43 dolphinscheduler]# ./bin/install.sh登录Apache DolphinScheduler 控制台 访问地址:http://83.1.12.45:12345/dolphinscheduler/ui/ 用户名:admin 密码:dolphinscheduler123启动/停止服务命令 第一次安装后,会自动启动所有服务。如有服务问题或者后续需要启停,命令如下。以下脚本都在43中控机 DolphinScheduler安装目录的bin下 # 一键停止集群所有服务 sh /home/dolphinscheduler/bin/stop-all.sh # 一键启动集群所有服务 sh /home/dolphinscheduler/bin/start-all.sh # 启/停 master 服务 sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh start master-server sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh stop master-server # 启/停 worker 服务 sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh start worker-server sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh stop worker-server # 启/停 api 服务 sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh start api-server sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh stop api-server # 启/停 alert 服务 sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh start alert-server sh /home/dolphinscheduler/bin/dolphinscheduler-daemon.sh stop alert-server
-
Datax-web部署文档 Datax部署 # 参考官方文档 https://github.com/alibaba/DataX/blob/master/userGuid.md# 下载datax已经封装好的文件,不推荐源码自己编译 https://datax-opensource.oss-cn-hangzhou.aliyuncs.com/202309/datax.tar.gz# 检查python环境是否存在,python2.python3都可以 [root@test-200 ~]# python -V Python 2.7.5 # 上传文件到/home然后去解压 [root@test-200 ~]# cd /home/ # 解压文件 [root@test-200 home]# tar xf datax.tar.gz [root@test-200 home]# python /home/datax/bin/datax.py /home/datax/job/job.json 2025-03-12 16:43:04.945 [job-0] INFO JobContainer - 任务启动时刻 : 2025-03-12 16:42:54 任务结束时刻 : 2025-03-12 16:43:04 任务总计耗时 : 10s 任务平均流量 : 253.91KB/s 记录写入速度 : 10000rec/s 读出记录总数 : 100000 读写失败总数 : 0 # 说明datax是可用的# 修改配置文件 # 否则后面同步数据会出现在 有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数的问题 [root@test-200 home]# vim /home/datax/conf/core.json "com.alibaba.datax.core.transport.channel.memory.MemoryChannel", "speed": { "byte": -1, "record": -1 # 把"byte": -1 改为 "byte":3000000 # 修改后内容如下 "com.alibaba.datax.core.transport.channel.memory.MemoryChannel", "speed": { "byte":3000000, "record": -1Datax-web部署 # 参考官方文档 https://github.com/WeiYe-Jing/datax-web/blob/master/doc/datax-web/datax-web-deploy.md# 下载文件 # 作者封装好的程序,同样不推荐自己编译源码 因为也会报错 https://pan.baidu.com/s/13yoqhGpD00I82K4lOYtQhg 提取码:cpsk # 同样上传到/home[root@test-200 home]# tar xf datax-web-2.1.2.tar.gz [root@test-200 home]# cd /home/datax-web-2.1.2/bin [root@test-200 bin]# bash install.sh # 输入4个y完成安装 # 我这里是本地没有安装mysql的,如果你安装了的mysql会调用直接退出即可使用配置文件配置安装Mysql # 推荐使用5.7版本的数据库,使用8.0会导致admin无法链接数据库暂时不知道什么原因 docker run -d --name mysql_datax -p 3306:3306 -v datax_web_mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_USER=datax -e MYSQL_PASSWORD=123456 -e MYSQL_DATABASE=datax_web --restart always mysql:5.7.44 [root@test-200 bin]# cd /home/datax-web-2.1.2/bin/db # 拷贝sql文件到mysql容器中导入数据 [root@test-200 db]# docker cp datax_web.sql mysql_datax:/root Successfully copied 21.5kB to mysql_datax:/root # 导入数据 [root@test-200 bin]# docker exec -it mysql_datax bash bash-4.2# mysql -udatax -p123456 datax_web < /root/datax_web.sql mysql: [Warning] Using a password on the command line interface can be insecure. bash-4.2# exit exit# 配置数据库 [root@test-200 db]# cd /home/datax-web-2.1.2/modules/datax-admin/conf [root@test-200 conf]# cat bootstrap.properties #Database DB_HOST=192.168.116.200 DB_PORT=3306 DB_USERNAME=datax DB_PASSWORD=123456 DB_DATABASE=datax_web# 配置调用datax文件 [root@test-200 bin]# sed -i s#PYTHON_PATH=#PYTHON_PATH=/home/datax/bin/datax.py#g /home/datax-web-2.1.2/modules/datax-executor/bin/env.properties启动Datax-web # 务必进去这个文件夹中启动 不然会起不来 [root@test-200 bin]# cd /home/datax-web-2.1.2/bin [root@test-200 bin]# bash start-all.sh 2025-03-12 17:11:31.391 [INFO] (5034) Try To Start Modules In Order 2025-03-12 17:11:31.400 [INFO] (5042) ####### Begin To Start Module: [datax-admin] ###### 2025-03-12 17:11:31.409 [INFO] (5050) load environment variables 2025-03-12 17:11:31.690 [INFO] (5050) /usr/local/jdk1.8.0_211/bin/java 2025-03-12 17:11:31.693 [INFO] (5050) Waiting DATAX-ADMIN to start complete ... 2025-03-12 17:11:31.843 [INFO] (5050) DATAX-ADMIN start success 2025-03-12 17:11:31.856 [INFO] (5277) ####### Begin To Start Module: [datax-executor] ###### 2025-03-12 17:11:31.869 [INFO] (5285) load environment variables 2025-03-12 17:11:32.299 [INFO] (5285) /usr/local/jdk1.8.0_211/bin/java 2025-03-12 17:11:32.302 [INFO] (5285) Waiting DATAX-EXEXUTOR to start complete ... 2025-03-12 17:11:32.543 [INFO] (5285) DATAX-EXEXUTOR start success [root@test-200 bin]# jps 5524 DataXExecutorApplication 5227 DataXAdminApplication 5579 Jps [root@test-200 bin]# netstat -tnlp | grep java tcp6 0 0 :::9527 :::* LISTEN 5227/java tcp6 0 0 :::9504 :::* LISTEN 5524/java tcp6 0 0 :::9999 :::* LISTEN 5524/java # 访问ip:9527/index.html http://192.168.116.200:9527/index.html 默认账号密码 admin/123456避坑 # 添加mysql5.7 数据库源时无法连接到数据库 # 报错如下 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link # jdbc url 这里如果按下面写会无法链接 jdbc:mysql://192.168.1.123:3306/test # 正确方式加入后面这串就好了 jdbc:mysql://192.168.1.123:3306/test?useSSL=false&connectTimeout=10000&socketTimeout=30000 &connectTimeout=30000&socketTimeout=60000