K8s离线部署DolphinScheduler 3.1.2详记:踩坑与解决
需积分: 5 52 浏览量
更新于2024-08-03
收藏 11.57MB DOC 举报
"这篇文档详细记录了在k8s环境下部署DolphinScheduler 3.1.2版本的过程,包括所需的前提条件、镜像处理、目录结构、命名空间创建、values.yml配置以及与外部数据库的连接设置。"
在 Kubernetes 集群中部署 DolphinScheduler 3.1.2 版本时,首先需要满足一些基础要求,如 Helm 3.1.0 或更高版本,Kubernetes 集群版本至少为 1.12,以及需要持久卷(PV)支持来确保数据的持久化。在进行部署前,可能需要从公共仓库拉取完整的DolphinScheduler镜像,然后将其上传至内网的Harbor私有仓库。如果需要使用MySQL代替PostgreSQL,或者S3代替HDFS,或者支持Python3,可能需要修改Dockerfile并重新构建镜像。
部署步骤包括:
1. 在服务器上创建一个特定的目录,用于存放Dockerfile文件,例如`/opt/ds-server`。在这里,你可以根据需求定制Dockerfile,如添加或修改环境变量、依赖等。
2. 解压DolphinScheduler的源码包到指定目录,并进入`/deploy/kubernetes/dolphinscheduler`子目录,这是部署配置所在的位置。
3. 使用`kubectl`创建一个命名空间,命名空间是Kubernetes中逻辑隔离的单元,用于组织相关的资源和服务。例如,可以创建一个名为`dolphinscheduler`的命名空间。
4. 修改`values.yml`文件,这是Helm部署的配置文件。你需要设定镜像的注册表地址(如Harbor)、标签和拉取策略。拉取策略设为"Always"意味着每次启动时都会尝试拉取最新镜像。
5. 如果DolphinScheduler需要连接外部的MySQL数据库,需要在`values.yaml`中关闭内置的PostgreSQL服务(将`postgresql.enabled`设为`false`),并提供外部数据库的配置,包括主机名、用户名和密码。
6. 部署DolphinScheduler时,使用Helm命令,例如`helm install dolphinscheduler . --namespace dolphinscheduler --values values.yaml`,这会在`dolphinscheduler`命名空间内安装DolphinScheduler。
在整个过程中,需要注意的是,DolphinScheduler的配置可以根据实际环境进行调整,包括但不限于数据库连接、资源存储、服务端口等。此外,监控、日志收集和安全性设置也是部署时需要考虑的重要方面。在Kubernetes环境中,可以利用Ingress进行访问控制,设置ServiceAccount和RoleBinding以实现权限管理,以及使用Horizontal Pod Autoscaler (HPA)来自动调整Pod的数量以应对负载变化。同时,定期备份和更新策略也是保持系统稳定性和安全性的关键步骤。
227 浏览量
155 浏览量
849 浏览量
2023-08-09 上传
2013-10-23 上传
2011-10-14 上传
2012-07-11 上传
![](https://profile-avatar.csdnimg.cn/113b2f2ef87a4e779dcd7d05e7769fd2_weixin_44284982.jpg!1)
满眼醉意
- 粉丝: 6
最新资源
- 设计模式:面向对象软件的复用基础与实例解析
- 开发指南:Microsoft Office 2007与Windows SharePoint Services
- DB2 Version 9 Command Reference for Linux, UNIX, Windows
- EJB技术详解:Java与J2EE架构中的企业级组件
- Spring整合JDO与Hibernate:Kodo的使用教程
- PS/2鼠标接口详解:物理连接与协议介绍
- SQL触发器全解析:经典语法与应用场景
- 在线优化Apache Web服务器响应时间
- Delphi函数全解析:AnsiResemblesText, AnsiContainsText等
- 基于SoC架构的Network on Chip技术简介
- MyEclipse 6 Java开发完全指南
- VBA编程基础:关键指令与工作簿工作表操作
- Oracle学习与DBA守则:通往成功的道路
- Windows Server 2003 DNS配置教程
- 整合JSF, Spring与Hibernate:构建实战Web应用
- 在Eclipse中使用HibernateSynchronizer插件提升开发效率