「NETBOX」- Helm Chart | on Kubernetes

该笔记将记录:与 NetBox 安装及升级相关的内容,以及相关问题的解决办法;

认识

官网:https://github.com/bootc/netbox-chart

应用

# 07/24/2022 服务部署

经过如下系列查找,我们找到通过 Helm 部署 NetBox 的方法:
1)Installing NetBox – NetBox Documentation
2)NetBox Community
3)netbox-community/netbox-docker: Docker Image of NetBox
4)Home · netbox-community/netbox-docker Wiki
5)Deployment · netbox-community/netbox-docker Wiki
6)bootc/netbox-chart: A Helm chart for NetBox

部署信息:

数据库:我们使用外部的 PostgreSQL 14 / Redis 6 服务;

文件存储:我们使用共享文件系统(NFS/ceph-filesystem)。若使用块存储类型,则会 House Keep 会无法挂载 netbox-media 存储而停滞。

现在(07/24/2022),最新版本:NetBox v3.2.7

部署服务:

# helm repo add bootc https://charts.boo.tc
# helm repo update

# helm pull bootc/netbox                                                        # CHART 4.1.0, APP v3.2.6
# helm show values ./netbox-4.1.0.tgz > netbox-4.1.0.helm-values.yaml

# vim netbox-4.1.0.helm-values.yaml
...(1)PostgreSQL: 10+
...(2)Redis: tasksRedis and cachingRedis
...(3)StorageClass:
...(4)Ingress:

# helm --namespace infra-netbox                                                \
    install netbox ./netbox-4.1.0.tgz                                          \
    -f netbox-4.1.0.helm-values.yaml                                           \
    --create-namespace

# helm --namespace infra-netbox                                                \
    upgrade netbox ./netbox-4.1.0.tgz                                          \
    -f netbox-4.1.0.helm-values.yaml

# 11/03/2023 服务升级

# 11/03/2023 现在最新 v3.6.4 版本,但是 bootc Helm Chart 最新 3.2.8 版本,所以我们就升级到 3.2.8 版本

v3.2.6 ⇒ v3.2.8

helm pull bootc/netbox                                                        # CHART 4.1.1, APP v3.2.8
helm show values ./netbox-4.1.1.tgz > netbox-4.1.1.helm-values.yaml

...                                                                           # 比对文件(迁移配置)

helm upgrade --install                                     \
    --namespace infra-netbox --create-namespace            \
    netbox ./netbox-4.1.1.tgz -f netbox-4.1.1.helm-values.yaml

# 01/03/2024 服务升级

我们已部署 bootc/netbox 4.1.1 (Chart)版本,其为 Netbox v3.2.8 (Application) 版本。

现在,NetBox 官方 v3.7.0 版本,但是 bootc 仓库暂未发布新版本 Chart 包。

但是,根据 bootc/netbox-chart 仓库,This chart works with NetBox 3.5.0+ (3.6.4+ recommended)。

所以,我们决定更新到最新的 v3.7.0 版本。

参考
NetBox Documentation/Upgrading NetBox 文档,获取有关升级的说明。

其要求 PostgreSQL 12+ and Redis v4.0+ 版本,我们使用 PostgreSQL 14 and Redis 6.2.7 满足其要求。

另外,针对版本升级,如果主版本号发生变更,则要先升级到该主版本号的最新版本,然后再升级到下一个版本。

修改 netbox-4.1.1.helm-values.yaml 的 image.tag 标签,并执行 helm upgrade 逐步升级。

v3.3 => v3.4 => v3.5 => 3.6 => 3.7

当完成升级后,该页面有下角显示当前版本。2024-01-03 02:26 UTC netbox-78bb8fb8d8-fmrml (v3.7.0)

注意,其升级过程涉及数据库变更,需耐心等待升级完成。

注意,若页面出现错误,通过 kubectl logs 查看错误日志。如果无错误日志,则可能是因为程序未完成启动,耐心等待。

# 02/05/2024 服务升级

现部署版本:Netbox v3.7.0, Helm Chart bootc/netbox 4.1.1
现最新版本:Netbox v3.7.1, Helm Chart bootc/netbox 4.1.1

根据 bootc/netbox-chart 仓库,This chart works with NetBox 3.5.0+ (3.6.4+ recommended),所以我们继续升级到 v3.7.1 版本。

升级过程:
1)修改镜像标签,使用 v3.7.1 版本;
2)执行 helm upgrade 进行升级;
3)访问 Web 界面,确保升级到 v3.7.1 版本;

# 03/05/2024 服务升级

现部署版本:Netbox v3.7.1, Helm Chart bootc/netbox 4.1.1

现最新版本:Netbox v3.7.3, helm search repo bootc/netbox => Helm Chart bootc/netbox 4.1.1 v3.2.8

计划升级版本:

Netbox v3.7.3, Helm Chart bootc/netbox 4.1.1

升级过程:

1)修改镜像标签,使用 v3.7.3 版本;

2)执行 helm upgrade 进行升级;

3)访问 Web 界面,确保已升级到最新版本;

# 04/03/2024 服务升级

现部署版本:Netbox v3.7.3, Helm Chart bootc/netbox 4.1.1

现最新版本:Netbox v3.7.4, Helm Chart bootc/netbox 4.1.1 v3.2.8

将升级版本:Netbox v3.7.4, Helm Chart bootc/netbox 4.1.1

升级的过程:

1)修改镜像标签,使用 v3.7.4 版本;

2)执行 helm upgrade 进行升级;

3)访问 Web 界面,确保已升级到最新版本;

# 04/03/2024 服务升级

现部署版本:Netbox v3.7.4, Helm Chart bootc/netbox 4.1.1

现最新版本:Netbox v4.0.0, Helm Chart bootc/netbox 4.1.1

将升级版本:Netbox v4.0.0, Helm Chart bootc/netbox 4.1.1

升级的过程:v3.7.4 -> v3.7.8 -> v4.0.0

1)修改镜像标签;

2)执行 helm upgrade 进行升级;

3)访问 Web 界面,确保已升级到最新版本;