bitnamicharts/flinkApache Flink 是一个用于无界和有界数据流上有状态计算的框架和分布式处理引擎。Bitnami Helm Chart 为 Apache Flink 提供了在 Kubernetes 集群上的便捷部署方案,简化了配置、扩展和管理流程,适用于开发和生产环境中的流处理应用部署。
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/flink
添加 Bitnami Helm 仓库(若未添加):
consolehelm repo add bitnami [***] helm repo update
安装 Chart:
consolehelm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/flink
说明:需替换
REGISTRY_NAME和REPOSITORY_NAME为实际仓库地址。Bitnami 官方仓库示例:REGISTRY_NAME=registry-1.docker.io,REPOSITORY_NAME=bitnamicharts。
验证部署:
consolehelm list # 查看已部署的 release kubectl get pods # 确认 JobManager 和 TaskManager pods 运行正常
通过 resources 参数配置容器资源,生产环境建议显式设置请求(requests)和限制(limits):
yamljobmanager: resources: requests: cpu: 500m memory: 1Gi limits: cpu: 1000m memory: 2Gi taskmanager: resources: requests: cpu: 1000m memory: 2Gi limits: cpu: 2000m memory: 4Gi
提示:可使用
resourcesPreset参数快速应用预设资源配置(如small、medium),但生产环境建议手动调整以适配实际 workload。
latest):自动更新至最新版本,适用于开发环境。1.17.0-debian-11-r10):版本固定,避免意外更新,强烈建议生产环境使用。Bitnami 会通过更新 Chart 版本同步容器镜像,确保包含安全补丁和功能更新。
使用 Velero 工具备份和恢复 Flink 部署:
consolevelero backup create flink-backup --include-namespaces <namespace>
consolevelero restore create --from-backup flink-backup
详细步骤参考 Bitnami 备份恢复指南。
通过以下方式为 JobManager/TaskManager 添加环境变量:
yamljobmanager: extraEnvVars: - name: FLINK_LOG_LEVEL value: INFO taskmanager: extraEnvVars: - name: FLINK_TASK_SLOTS value: "4"
yamljobmanager: extraEnvVarsCM: existing-configmap-name # 现有 ConfigMap 名称 extraEnvVarsSecret: existing-secret-name # 现有 Secret 名称
在 Flink pod 中添加额外容器(如日志收集器、监控代理):
yamljobmanager: sidecars: - name: log-exporter image: busybox:latest command: ["sh", "-c", "tail -f /opt/bitnami/flink/log/*.log"] volumeMounts: - name: flink-logs mountPath: /opt/bitnami/flink/log
若边车容器需要暴露端口,通过 service.extraPorts 配置:
yamlservice: extraPorts: - name: metrics port: 9090 targetPort: 9090
通过 affinity 参数自定义 Pod 亲和性,或使用预设策略:
yamltaskmanager: podAntiAffinityPreset: soft # 软反亲和性,避免 TaskManager 调度到同一节点 nodeAffinityPreset: type: required key: workload values: ["flink-task"] # 仅调度到带有 workload=flink-task 标签的节点
预设策略参考 bitnami/common 文档。
Flink 作业元数据和检查点(checkpoints)通过 PVC 持久化。默认配置使用集群默认 StorageClass,可通过以下参数自定义:
yamljobmanager: persistence: enabled: true storageClass: "fast-storage" # 指定 StorageClass size: 10Gi # PV 大小
| 参数名 | 描述 | 默认值 |
|---|---|---|
global.imageRegistry | 全局 Docker 镜像仓库 | "" |
global.imagePullSecrets | 镜像拉取密钥数组 | [] |
global.defaultStorageClass | 全局默认存储类 | "" |
global.security.allowInsecureImages | 允许跳过镜像验证 | false |
global.compatibility.openshift.adaptSecurityContext | 适配 OpenShift 安全上下文(auto/force/disabled) | auto |
| 参数名 | 描述 | 默认值 |
|---|---|---|
nameOverride | 覆盖资源名称前缀 | "" |
fullnameOverride | 完全覆盖资源全名 | "" |
kubeVersion | 目标 Kubernetes 版本 | "" |
commonLabels | 所有资源通用标签 | {} |
diagnosticMode.enabled | 启用诊断模式(禁用探针,覆盖命令) | false |
| 参数名 | 描述 | 默认值 |
|---|---|---|
image.registry | Flink 镜像仓库 | REGISTRY_NAME |
image.repository | Flink 镜像路径 | REPOSITORY_NAME/flink |
image.pullPolicy | 镜像拉取策略 | IfNotPresent |
image.debug | 启用镜像调试模式 | false |
| 参数名 | 描述 | 默认值 |
|---|---|---|
jobmanager.replicaCount | JobManager 副本数 | 1 |
jobmanager.livenessProbe.enabled | 启用存活探针 | true |
jobmanager.livenessProbe.initialDelaySeconds | 存活探针初始延迟(秒) | 20 |
jobmanager.readinessProbe.enabled | 启用就绪探针 | true |
jobmanager.resources | 资源请求与限制 | {} |
jobmanager.extraEnvVars | 额外环境变量 | [] |
注意:完整参数列表请参考 Bitnami Flink Chart 文档。
自 2025 年 8 月 28 日起,Bitnami 将升级公共镜像目录,推出 Bitnami Secure Images 计划,主要变更包括:
docker.io/bitnamilegacy 仓库,且不再更新。详细信息参考 Bitnami Secure Images 公告。



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务