ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

如何为 Bytebase Helm Chart 按摘要固定镜像并从 1.1.4 迁移 bytebase.digest 配置

如何为 Bytebase Helm Chart 按摘要固定镜像并从 1.1.4 迁移 bytebase.digest 配置 如何为 Bytebase Helm Chart 按摘要固定镜像并从 1.1.4 迁移 bytebase.digest 配置【免费下载链接】bytebaseDatabase governance built for humans and agents — controlling changes and access across every major database.项目地址: https://gitcode.com/GitHub_Trending/by/bytebaseBytebase 的 Helm Chart 在 1.1.5 版本中调整了镜像摘要digest的固定方式不再使用单独的bytebase.digest等字段而是要求把摘要直接拼进bytebase.version写成tagsha256:...的组合引用。如果你之前用 chart 1.1.4 部署时配置过bytebase.digest升级到 1.1.5 后这些字段会被 chart 直接拒绝helm install/helm upgrade失败必须先迁移。本文说明如何在新安装中按摘要固定镜像以及如何把 1.1.4 的 digest 配置迁移到新写法。前提条件来自 chart READMEKubernetes 1.24Helm 3.9.0新安装用组合引用固定镜像摘要1.1.5 的 chart 中bytebase.version除了普通的版本 tag 外还接受{VERSION}sha256:{DIGEST}形式的组合引用。Kubernetes 会按 digest 拉取镜像tag 只起文档说明作用。命令中的{VERSION}与{DIGEST}需替换为你要固定的 Bytebase 版本号和对应镜像摘要YOUR_NAMESPACE与RELEASE_NAME替换为你的命名空间和发布名helm repo add bytebase-repo https://bytebase.github.io/bytebase helm repo update helm -n YOUR_NAMESPACE \ --set-string bytebase.version{VERSION}sha256:{DIGEST} \ install RELEASE_NAME bytebase-repo/bytebase如果同时需要外部 PostgreSQL 等常规配置可在此基础上追加--set参数README 的 TL;DR 示例helm -n YOUR_NAMESPACE \ --set bytebase.option.port{PORT} \ --set bytebase.option.externalPg.url{PGDSN} \ --set-string bytebase.version{VERSION}sha256:{DIGEST} \ install RELEASE_NAME bytebase-repo/bytebase其中{PORT}是 Bytebase 服务端口默认 8080{PGDSN}是 Bytebase 元数据库的 PostgreSQL 连接串。可选分支BusyBox init 容器与 Azure MarketplaceBusyBox init 容器仅当启用bytebase.option.externalPg.escapePassword时chart 才会渲染一个 BusyBox init 容器来转义 PostgreSQL 密码。它的镜像 tag 由bytebase.busyboxVersion控制默认1.37.0同样接受组合引用例如1.37.0sha256:abc123此为 README 参数表中的示例值。如果你固定了主镜像摘要通常也需要固定这个 init 容器。Azure Marketplace 部署Azure 注入的global.azure.images.bytebase.tag可以使用同样的tagdigest组合引用来固定摘要。从 1.1.4 迁移 bytebase.digest 配置chart 1.1.5 的模板见 templates/_helpers.tpl对三个旧字段做了硬性检查只要 values 里出现bytebase.digest、bytebase.busyboxDigest或global.azure.images.bytebase.digest渲染阶段就会直接fail报错信息分别为bytebase.digest is no longer supported; append the digest to bytebase.version bytebase.busyboxDigest is no longer supported; append the digest to bytebase.busyboxVersion global.azure.images.bytebase.digest is no longer supported; append the digest to global.azure.images.bytebase.tag这是 chart 有意为之的行为防止升级时 digest 固定被静默丢掉。因此迁移分三步盘点旧配置。在 1.1.4 的 values 文件或 CI 中注入的--set参数里找到三个旧字段记录各自的摘要值bytebase.digest→ 主容器镜像摘要bytebase.busyboxDigest→ BusyBox init 容器镜像摘要global.azure.images.bytebase.digest→ Azure 部署的镜像摘要把摘要拼进对应的版本/tag 值并删除旧字段bytebase.digest的摘要拼到bytebase.version得到3.20.1sha256:...版本部分示例来自 README 安装示例bytebase.busyboxDigest的摘要拼到bytebase.busyboxVersionglobal.azure.images.bytebase.digest的摘要拼到global.azure.images.bytebase.tag。用 helm upgrade 应用新 chart。--set示例沿用 README 的 upgrade 写法并把 digest 拼进bytebase.versionhelm -n YOUR_NAMESPACE \ --set bytebase.option.port{NEW_PORT} \ --set bytebase.option.externalPg.url{NEW_PGDSN} \ --set-string bytebase.version{NEW_VERSION}sha256:{DIGEST} \ --set bytebase.option.external-url{EXTERNAL_URL} \ --set bytebase.persistence.enabled{TRUE/FALSE} \ --set bytebase.persistence.storage{STORAGE_SIZE} \ --set bytebase.persistence.storageClass{STORAGE_CLASS} \ upgrade RELEASE_NAME bytebase-repo/bytebase如果你启用了escapePassword记得同时给bytebase.busyboxVersion加上摘要Azure 部署则同步处理global.azure.images.bytebase.tag。升级后这三个旧字段必须从 values 中彻底移除否则下一次渲染仍会失败。验证迁移结果旧字段残留的失败信号只要 values 中还有旧 digest 字段helm install或helm upgrade会在渲染阶段报出上面三条错误信息之一。看到这些报错就说明字段名没改对或没删干净而不是环境问题。Pod 状态安装/升级成功后按 NOTES.txt 的提示检查 StatefulSetkubectl get statefulset bytebase -n YOUR_NAMESPACE镜像以组合引用渲染后拉取行为由 digest 决定确认 Pod 就绪即说明固定后的镜像可正常拉起。版本核对如果这次升级同时变更了 Bytebase 版本按 升级指南 的“After the upgrade”一节调用GET /v1/actuator/info确认返回的version与replicaCount符合预期。限制与边界本文只覆盖 chart 层面的镜像固定与 digest 字段迁移。chart 本身渲染的是单副本 StatefulSetreplicas: 1不提供多副本 HA 的 Helm 参数多副本拓扑需要在 chart 之外由运维自行管理相关操作见 HA runbook 和 升级指南。bytebase.option.externalPg.escapePassword在 README 参数表中标注为Experimental feature启用前需了解 BusyBox init 容器会随之出现且其镜像也受bytebase.busyboxVersion控制。【免费下载链接】bytebaseDatabase governance built for humans and agents — controlling changes and access across every major database.项目地址: https://gitcode.com/GitHub_Trending/by/bytebase创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表