Skip to main content
版本:v1.1

配置网关

开始之前

⚠️ 需要你的集群已安装 Ingress 控制器

字段说明

vela show ingress
# Properties
+--------+------------------------------------------------------------------------------+----------------+----------+---------+
| NAME | DESCRIPTION | TYPE | REQUIRED | DEFAULT |
+--------+------------------------------------------------------------------------------+----------------+----------+---------+
| http | Specify the mapping relationship between the http path and the workload port | map[string]int | true | |
| domain | Specify the domain you want to expose | string | true | |
+--------+------------------------------------------------------------------------------+----------------+----------+---------+

如何使用

# vela-app.yaml
apiVersion: core.oam.dev/v1beta1
kind: Application
metadata:
name: first-vela-app
spec:
components:
- name: express-server
type: webservice
properties:
image: crccheck/hello-world
port: 8000
traits:
- type: ingress
properties:
domain: testsvc.example.com
http:
"/": 8000

部署到集群后,检查应用状态为 running,并且状态是 healthy:

kubectl get application first-vela-app -w
NAME             COMPONENT        TYPE         PHASE            HEALTHY   STATUS   AGE
first-vela-app express-server webservice healthChecking 14s
first-vela-app express-server webservice running true 42s

如果你的集群带有云厂商的负载均衡机制可以通过 Application 查看到访问的 IP:

kubectl get application first-vela-app -o yaml
apiVersion: core.oam.dev/v1beta1
kind: Application
metadata:
name: first-vela-app
namespace: default
spec:
...
services:
- healthy: true
name: express-server
traits:
- healthy: true
message: 'Visiting URL: testsvc.example.com, IP: 47.111.233.220'
type: ingress
status: running
...

然后就能够通过这个 IP,来访问该应用程序了。

curl -H "Host:testsvc.example.com" http://<your ip address>/
<xmp>
Hello World


## .
## ## ## ==
## ## ## ## ## ===
/""""""""""""""""\___/ ===
~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~
\______ o _,/
\ \ _,'
`'--.._\..--''
</xmp>