Add offline installation guide (#517)

* Add offline installation guide

Add a guide on how to install KubeVela in a private cloud without
internet.

Signed-off-by: Zheng Xi Zhou <zzxwill@gmail.com>

* package helm chart

Signed-off-by: Zheng Xi Zhou <zzxwill@gmail.com>

* add links

Signed-off-by: Zheng Xi Zhou <zzxwill@gmail.com>

* address comments

Signed-off-by: Zheng Xi Zhou <zzxwill@gmail.com>

* address comments

Signed-off-by: Zheng Xi Zhou <zzxwill@gmail.com>
This commit is contained in:
Zheng Xi Zhou 2022-03-21 15:25:33 +08:00 committed by GitHub
parent 8d6acf754f
commit 7aa11e850a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 246 additions and 2 deletions

View File

@ -19,6 +19,7 @@ KubeVela relies on Kubernetes as a control plane. The control plane could be any
For local deployment and test, you could use `kind` or `minikube`. For local deployment and test, you could use `kind` or `minikube`.
> For production usage, you could use your Kubernetes cluster or Kubernetes services provided by cloud providers. > For production usage, you could use your Kubernetes cluster or Kubernetes services provided by cloud providers.
> For offline installation, please refer to [KubeVela Offline Installation Guide](./platform-engineers/system-operation/offline-installation).
<Tabs <Tabs
className="unique-tabs" className="unique-tabs"

View File

@ -0,0 +1,60 @@
# KubeVela Offline Installation Guide
KubeVela offline installation includes the installation of KubeVela core and KubeVela Addon.
## KubeVela Core offline installation
### KubeVela chart
- Download Helm Chart package of vela-core
Download `vela-core` Helm Chart package per [Install KubeVela Core](../../install) and unarchive it.
- Modify images which can be configurable
Pull the following images and push them into an image repository in the dedicated environment. Overwrite each image's
information with `-set` when installing by `helm install`.
```shell
$ kubevela git:(master) grep -r repository charts/vela-core/values.yaml -A 1
charts/vela-core/values.yaml: repository: oamdev/vela-core
charts/vela-core/values.yaml- tag: latest
--
charts/vela-core/values.yaml: repository: oamdev/kube-webhook-certgen
charts/vela-core/values.yaml- tag: v2.3
--
charts/vela-core/values.yaml: repository: oamdev/cluster-gateway
charts/vela-core/values.yaml- tag: v1.1.7
--
charts/vela-core/values.yaml: repository: oamdev/hello-world
charts/vela-core/values.yaml- tag: v1
--
charts/vela-core/values.yaml: repository: oamdev/alpine-k8s
charts/vela-core/values.yaml- tag: 1.18.2
```
- Modify images which could not be configurable
The value `enableFluxcdAddon` indicates whether to enable Addon `FluxCD` by default. If it is `true`, the following images
have to be pulled and pushed into an image repository in the dedicated environment in advance. Overwrite each image's information
in the following YAML files.
```shell
$ kubevela git:(master) grep -r -i image: charts/vela-core/templates/addon
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/helm-controller:v0.11.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-automation-controller:v0.14.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-reflector-controller:v0.11.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/kustomize-controller:v0.13.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/source-controller:v0.15.3
$ kubevela git:(master) grep -r -i image: charts/vela-core --exclude-dir=charts/vela-core/templates/addon | grep -v .Values
charts/vela-core/templates/defwithtemplate/nocalhost.yaml: image: "nocalhost-docker.pkg.coding.net/nocalhost/dev-images/golang:latest"
```
- Repackage vela-core Helm Chart
Repackage the Helm Chart package from the modified chart. Install it directly or install it from a dedicated Helm Chart
repository after you pushed the package into the repository.
## KubeVela Addon Offline installation

View File

@ -5,7 +5,8 @@ title: 快速安装
import Tabs from "@theme/Tabs"; import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem"; import TabItem from "@theme/TabItem";
> 如果是要升级现有的 KubeVela请直接阅读 [升级指南](./platform-engineers/advanced-install#升级). > 如果是要升级现有的 KubeVela请直接阅读 [升级指南](./platform-engineers/advanced-install#升级)。
> 如果需要离线安装,请参考 [KubeVela 离线部署手册](./platform-engineers/system-operation/offline-installation)。
## 1. 准备控制平面的 Kubernetes 集群 ## 1. 准备控制平面的 Kubernetes 集群

View File

@ -0,0 +1,60 @@
# KubeVela Offline Installation Guide
KubeVela 离线部署包含 KubeVela Core 和 KubeVela Addon 的离线部署。
## KubeVela Core 离线部署
### KubeVela chart
- 下载 vela-core Helm Chart 包
通过 [Helm Chart 安装 KubeVela Core](../../install)文档下载您希望的 vela-core Chart 包,并解压。
- 修改 values 里可配置的镜像
拉取以下镜像并导入离线环境的镜像仓库, 在 `helm install` 安装命令里通过 `--set` 覆盖每个镜像对应的离线环境镜像仓库里每个镜像的信息。
```shell
$ kubevela git:(master) grep -r repository charts/vela-core/values.yaml -A 1
charts/vela-core/values.yaml: repository: oamdev/vela-core
charts/vela-core/values.yaml- tag: latest
--
charts/vela-core/values.yaml: repository: oamdev/kube-webhook-certgen
charts/vela-core/values.yaml- tag: v2.3
--
charts/vela-core/values.yaml: repository: oamdev/cluster-gateway
charts/vela-core/values.yaml- tag: v1.1.7
--
charts/vela-core/values.yaml: repository: oamdev/hello-world
charts/vela-core/values.yaml- tag: v1
--
charts/vela-core/values.yaml: repository: oamdev/alpine-k8s
charts/vela-core/values.yaml- tag: 1.18.2
```
- 修改无法配置的镜像
Chart 参数 `enableFluxcdAddon` 决定是否默认安装 addon FluxCD 如果参数 `enableFluxcdAddon` 为 true拉取以下镜像并导入离线环境的镜像仓库
更改各个文件中的镜像 registry 地址为离线环境镜像仓库地址。
```shell
$ kubevela git:(master) grep -r -i image: charts/vela-core/templates/addon
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/helm-controller:v0.11.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-automation-controller:v0.14.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-reflector-controller:v0.11.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/kustomize-controller:v0.13.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/source-controller:v0.15.3
$ kubevela git:(master) grep -r -i image: charts/vela-core --exclude-dir=charts/vela-core/templates/addon | grep -v .Values
charts/vela-core/templates/defwithtemplate/nocalhost.yaml: image: "nocalhost-docker.pkg.coding.net/nocalhost/dev-images/golang:latest"
```
- 重新打包 vela-core Helm Chart 包
重新打包上面修改好的 Helm Chart 包,直接安装或者传入离线环境的 Helm Chart 仓库。
## KubeVela Addon 离线部署

View File

@ -5,7 +5,8 @@ title: 快速安装
import Tabs from "@theme/Tabs"; import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem"; import TabItem from "@theme/TabItem";
> 如果是要升级现有的 KubeVela请直接阅读 [升级指南](./platform-engineers/advanced-install#升级). > 如果是要升级现有的 KubeVela请直接阅读 [升级指南](./platform-engineers/advanced-install#升级)。
> 如果需要离线安装,请参考 [KubeVela 离线部署手册](./platform-engineers/system-operation/offline-installation)。
## 1. 准备控制平面的 Kubernetes 集群 ## 1. 准备控制平面的 Kubernetes 集群

View File

@ -0,0 +1,60 @@
# KubeVela Offline Installation Guide
KubeVela 离线部署包含 KubeVela Core 和 KubeVela Addon 的离线部署。
## KubeVela Core 离线部署
### KubeVela chart
- 下载 vela-core Helm Chart 包
通过 [Helm Chart 安装 KubeVela Core](../../install)文档下载您希望的 vela-core Chart 包,并解压。
- 修改 values 里可配置的镜像
拉取以下镜像并导入离线环境的镜像仓库, 在 `helm install` 安装命令里通过 `--set` 覆盖每个镜像对应的离线环境镜像仓库里每个镜像的信息。
```shell
$ kubevela git:(master) grep -r repository charts/vela-core/values.yaml -A 1
charts/vela-core/values.yaml: repository: oamdev/vela-core
charts/vela-core/values.yaml- tag: latest
--
charts/vela-core/values.yaml: repository: oamdev/kube-webhook-certgen
charts/vela-core/values.yaml- tag: v2.3
--
charts/vela-core/values.yaml: repository: oamdev/cluster-gateway
charts/vela-core/values.yaml- tag: v1.1.7
--
charts/vela-core/values.yaml: repository: oamdev/hello-world
charts/vela-core/values.yaml- tag: v1
--
charts/vela-core/values.yaml: repository: oamdev/alpine-k8s
charts/vela-core/values.yaml- tag: 1.18.2
```
- 修改无法配置的镜像
Chart 参数 `enableFluxcdAddon` 决定是否默认安装 addon FluxCD 如果参数 `enableFluxcdAddon` 为 true拉取以下镜像并导入离线环境的镜像仓库
更改各个文件中的镜像 registry 地址为离线环境镜像仓库地址。
```shell
$ kubevela git:(master) grep -r -i image: charts/vela-core/templates/addon
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/helm-controller:v0.11.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-automation-controller:v0.14.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-reflector-controller:v0.11.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/kustomize-controller:v0.13.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/source-controller:v0.15.3
$ kubevela git:(master) grep -r -i image: charts/vela-core --exclude-dir=charts/vela-core/templates/addon | grep -v .Values
charts/vela-core/templates/defwithtemplate/nocalhost.yaml: image: "nocalhost-docker.pkg.coding.net/nocalhost/dev-images/golang:latest"
```
- 重新打包 vela-core Helm Chart 包
重新打包上面修改好的 Helm Chart 包,直接安装或者传入离线环境的 Helm Chart 仓库。
## KubeVela Addon 离线部署

View File

@ -19,6 +19,7 @@ KubeVela relies on Kubernetes as a control plane. The control plane could be any
For local deployment and test, you could use `kind` or `minikube`. For local deployment and test, you could use `kind` or `minikube`.
> For production usage, you could use your Kubernetes cluster or Kubernetes services provided by cloud providers. > For production usage, you could use your Kubernetes cluster or Kubernetes services provided by cloud providers.
> For offline installation, please refer to [KubeVela Offline Installation Guide](./platform-engineers/system-operation/offline-installation).
<Tabs <Tabs
className="unique-tabs" className="unique-tabs"

View File

@ -0,0 +1,60 @@
# KubeVela Offline Installation Guide
KubeVela offline installation includes the installation of KubeVela core and KubeVela Addon.
## KubeVela Core offline installation
### KubeVela chart
- Download Helm Chart package of vela-core
Download `vela-core` Helm Chart package per [Install KubeVela Core](../../install) and unarchive it.
- Modify images which can be configurable
Pull the following images and push them into an image repository in the dedicated environment. Overwrite each image's
information with `-set` when installing by `helm install`.
```shell
$ kubevela git:(master) grep -r repository charts/vela-core/values.yaml -A 1
charts/vela-core/values.yaml: repository: oamdev/vela-core
charts/vela-core/values.yaml- tag: latest
--
charts/vela-core/values.yaml: repository: oamdev/kube-webhook-certgen
charts/vela-core/values.yaml- tag: v2.3
--
charts/vela-core/values.yaml: repository: oamdev/cluster-gateway
charts/vela-core/values.yaml- tag: v1.1.7
--
charts/vela-core/values.yaml: repository: oamdev/hello-world
charts/vela-core/values.yaml- tag: v1
--
charts/vela-core/values.yaml: repository: oamdev/alpine-k8s
charts/vela-core/values.yaml- tag: 1.18.2
```
- Modify images which could not be configurable
The value `enableFluxcdAddon` indicates whether to enable Addon `FluxCD` by default. If it is `true`, the following images
have to be pulled and pushed into an image repository in the dedicated environment in advance. Overwrite each image's information
in the following YAML files.
```shell
$ kubevela git:(master) grep -r -i image: charts/vela-core/templates/addon
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/helm-controller:v0.11.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-automation-controller:v0.14.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/image-reflector-controller:v0.11.0
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/kustomize-controller:v0.13.1
charts/vela-core/templates/addon/fluxcd.yaml: image: fluxcd/source-controller:v0.15.3
$ kubevela git:(master) grep -r -i image: charts/vela-core --exclude-dir=charts/vela-core/templates/addon | grep -v .Values
charts/vela-core/templates/defwithtemplate/nocalhost.yaml: image: "nocalhost-docker.pkg.coding.net/nocalhost/dev-images/golang:latest"
```
- Repackage vela-core Helm Chart
Repackage the Helm Chart package from the modified chart. Install it directly or install it from a dedicated Helm Chart
repository after you pushed the package into the repository.
## KubeVela Addon Offline installation