121 lines
2.0 KiB
Markdown
121 lines
2.0 KiB
Markdown
|
**创建一个Ingress**
|
|||
|
|
|||
|
````
|
|||
|
apiVersion: networking.k8s.io/v1beta1
|
|||
|
kind: Ingress
|
|||
|
metadata:
|
|||
|
name: simple-fanout-example
|
|||
|
annotations:
|
|||
|
kubernetes.io/ingress.class: "nginx" # 不同的controller,ingress.class可能不一致
|
|||
|
spec:
|
|||
|
rules:
|
|||
|
- host: foo.bar.com
|
|||
|
http:
|
|||
|
paths:
|
|||
|
- path: /foo
|
|||
|
pathType: Prefix
|
|||
|
backend:
|
|||
|
serviceName: service1
|
|||
|
servicePort: 4200
|
|||
|
- path: /bar
|
|||
|
pathType: ImplementationSpecific
|
|||
|
backend:
|
|||
|
serviceName: service2
|
|||
|
servicePort: 8080
|
|||
|
|
|||
|
````
|
|||
|
|
|||
|
**Ingress v1**
|
|||
|
|
|||
|
````
|
|||
|
apiVersion: networking.k8s.io/v1 # 1.19+
|
|||
|
kind: Ingress
|
|||
|
metadata:
|
|||
|
name: simple-fanout-example
|
|||
|
spec:
|
|||
|
ingressClassName: nginx
|
|||
|
rules:
|
|||
|
- host: foo.bar.com
|
|||
|
http:
|
|||
|
paths:
|
|||
|
- path: /foo
|
|||
|
backend:
|
|||
|
service
|
|||
|
name: service1
|
|||
|
port:
|
|||
|
number: 4200
|
|||
|
````
|
|||
|
|
|||
|
**单域名**
|
|||
|
|
|||
|
````
|
|||
|
apiVersion: networking.k8s.io/v1beta1
|
|||
|
kind: Ingress
|
|||
|
metadata:
|
|||
|
name: simple-fanout-example
|
|||
|
annotations:
|
|||
|
nginx.ingress.kubernetes.io/rewrite-target: /
|
|||
|
spec:
|
|||
|
rules:
|
|||
|
- host: foo.bar.com
|
|||
|
http:
|
|||
|
paths:
|
|||
|
- path: /foo
|
|||
|
backend:
|
|||
|
serviceName: service1
|
|||
|
servicePort: 4200
|
|||
|
- path: /bar
|
|||
|
backend:
|
|||
|
serviceName: service2
|
|||
|
servicePort: 8080
|
|||
|
|
|||
|
````
|
|||
|
|
|||
|
**多域名**
|
|||
|
|
|||
|
````
|
|||
|
apiVersion: networking.k8s.io/v1beta1
|
|||
|
kind: Ingress
|
|||
|
metadata:
|
|||
|
name: name-virtual-host-ingress
|
|||
|
spec:
|
|||
|
rules:
|
|||
|
- host: foo.bar.com
|
|||
|
http:
|
|||
|
paths:
|
|||
|
- backend:
|
|||
|
serviceName: service1
|
|||
|
servicePort: 80
|
|||
|
- host: bar.foo.com
|
|||
|
http:
|
|||
|
paths:
|
|||
|
- backend:
|
|||
|
serviceName: service2
|
|||
|
servicePort: 80
|
|||
|
|
|||
|
````
|
|||
|
|
|||
|
**TLS**
|
|||
|
|
|||
|
````
|
|||
|
apiVersion: networking.k8s.io/v1beta1
|
|||
|
kind: Ingress
|
|||
|
metadata:
|
|||
|
name: nginx-https-test
|
|||
|
namespace: default
|
|||
|
annotations:
|
|||
|
kubernetes.io/ingress.class: "nginx"
|
|||
|
spec:
|
|||
|
rules:
|
|||
|
- host: https-test.com
|
|||
|
http:
|
|||
|
paths:
|
|||
|
- backend:
|
|||
|
serviceName: nginx-svc
|
|||
|
servicePort: 80
|
|||
|
tls:
|
|||
|
- secretName: nginx-test-tls
|
|||
|
|
|||
|
````
|
|||
|
|