kubevela.github.io/i18n/zh/docusaurus-plugin-content-docs/current/reference/addons/velaux.md

6.2 KiB
Raw Blame History

title
VelaUX 控制台

Install

vela addon enable velaux --version=v1.4.3

expected output:

Addon: velaux enabled Successfully.

VelaUX needs authentication. The default username is admin and the password is VelaUX12345. Please must set and remember the new password after the first login.

By default, VelaUX didn't have any exposed port.

Visit VelaUX by port-forward

Port forward will work as a proxy to allow visiting VelaUX dashboard by local port.

vela port-forward addon-velaux -n vela-system

Choose > Cluster: local | Namespace: vela-system | Component: velaux | Kind: Service for visit.

Setup with Specified Service Type

There are three service types for VelaUX addon which aligned with Kubernetes service, they're ClusterIP, NodePort and LoadBalancer. By default the service type is ClusterIP for security.

If you want to expose your VelaUX dashboard for convenience, you can specify the service type.

  • LoadBalancer type requires your cluster has cloud LoadBalancer available.
    vela addon enable velaux serviceType=LoadBalancer
    
  • NodePort type requires you can access the Kubernetes Node IP/Port.
    vela addon enable velaux serviceType=NodePort
    

After the service type specified to LoadBalancer or NodePort, you can obtain the access address through vela status:

vela status addon-velaux -n vela-system --endpoint

The expected output:

+----------------------------+----------------------+
|  REF(KIND/NAMESPACE/NAME)  |       ENDPOINT       |
+----------------------------+----------------------+
| Service/vela-system/velaux | http://<IP address> |
+----------------------------+----------------------+

Setup with Ingress domain

If you have ingress and domain available in your cluster, you can also deploy VelaUX by specify a domain like below:

vela addon enable velaux domain=example.doamin.com

The expected output:

I0112 15:23:40.428364   34884 apply.go:106] "patching object" name="addon-velaux" resource="core.oam.dev/v1beta1, Kind=Application"
I0112 15:23:40.676894   34884 apply.go:106] "patching object" name="addon-secret-velaux" resource="/v1, Kind=Secret"
Addon: velaux enabled Successfully.
Please access the velaux from the following endpoints:
+----------------------------+---------------------------+
|  REF(KIND/NAMESPACE/NAME)  |         ENDPOINT          |
+----------------------------+---------------------------+
| Ingress/vela-system/velaux | http://example.doamin.com |
+----------------------------+---------------------------+

If you enabled the traefik addon, you can set the gatewayDriver parameter to use the Gateway API.

vela addon enable velaux domain=example.doamin.com gatewayDriver=traefik

Setup with MongoDB database

VelaUX supports the Kubernetes and MongoDB as the database. the default is Kubernetes. We strongly advise using the MongoDB database to power your production environment.

vela addon enable velaux dbType=mongodb dbURL=mongodb://<MONGODB_USER>:<MONGODB_PASSWORD>@<MONGODB_URL>

Specify the addon image

By default the image repo is docker hub, you can specify the image repo by the repo parameter:

vela addon enable velaux repo=acr.kubevela.net

You can try to specify the acr.kubevela.net image registry as an alternative, It's maintained by KubeVela team, and we will upload/sync the built-in addon image for convenience.

This feature can also help you to build your private installation, just upload all images to your private image registry.

VelaUX 概念

VelaUX 是 KubeVela 的插件,它是一个企业可以开箱即用的云原生应用交付和管理平台。与此同时,也加入了一些企业使用中需要的概念。

alt

项目Project

项目作为在 KubeVela 平台组织人员和资源的业务承载,项目中可以设定成员、权限、应用和分配环境。在项目维度集成外部代码库、制品库,呈现完整 CI/CD Pipeline集成外部需求管理平台呈现项目需求管理集成微服务治理提供多环境业务联调和统一治理能力。项目提供了业务级的资源隔离能力。

环境Environment

环境指通常意义的开发、测试、生产的环境业务描述,它可以包括多个交付目标。环境协调上层应用和底层基础设施的匹配关系,不同的环境对应管控集群的不同 Kubernetes Namespace。处在同一个环境中的应用才能具备内部互访和资源共享能力。

  • 应用环境绑定 应用可绑定多个环境进行发布,对于每一个环境可设置环境级部署差异。

交付目标Target

交付目标用于描述应用的相关资源实际部署的物理空间,对应 Kubernetes 集群或者云的区域Region和专有网络VPC。对于普通应用组件渲染生成的资源会在交付目标指定的 Kubernetes 集群中创建(可以精确到指定集群的 Namespace对于云服务资源创建时会根据交付目标中指定的云厂商的参数创建到对应的区域和专有网络中然后将生成的云资源信息分发到交付目标指定的 Kubernetes 集群中。单个环境可关联多个交付目标,代表该环境需要多集群交付。单个交付目标只能对应一个环境。

应用Application

应用是定义了一个微服务业务单元所包括的制品二进制、Docker 镜像、Helm Chart...)或云服务的交付和管理需求,它由组件运维特征工作流应用策略四部分组成,应用的生命周期操作包括:

  • 创建(Create) 应用是创建元信息,并不会实际部署和运行资源。
  • 部署(Deploy) 指执行指定的工作流, 将应用在某一个环境中完成实例化。
  • 回收(Recycle) 删除应用部署到某一个环境的实例,回收其占用的资源。
  • 删除 应用会删除元数据,前提是应用实例已经完全被回收后才能删除。

VelaUX 应用中其他概念均与 KubeVela 控制器中的概念完全一致。