CKA02-Ingress
Task:
如下创建新的 Ingress 资源:
名称: echo
Namespace: sound-repeater
使用 Service 端口 8080 在 http://example.org/echo 上公开 echoserver-service Service。
可以使用以下命令检查 echoserver-service Service 的可用性,该命令应返回 Hello World _:
candidate@master01:~$ curl http://example.org/echo
题目拆解:
1、创建名为echo的ing
2、service端口8080在url上公开echoserver-service Service
基础:
request–ingress–service–kube proxy–pod
Reference:
概念–服务、负载均衡和联网–Ingress The Ingress resource
一个最小的 Ingress 资源示例
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: minimal-ingress 这里
ns:这里
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
ingressClassName: nginx-example 这里
rules:
- host: 这里
- http: 这里去掉-
paths:- path: /testpath 这里
pathType: Prefix
backend:
service:
name: test 这里
port:
number: 80 这里
- path: /testpath 这里
Action:
最小资源示例中- http取消-
查询 ingressClassName,发现名字为 nginx,这个下面要用到
kubectl get ingressclasses.networking.k8s.io
vim ingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: echo
namespace: sound-repeater
annotations:
nginx.ingress.kubernetes.io/rewrite-target: / #这两行要写,为了将请求的 URL 路径重定向到/,配合下面的 path: “/echo” 使用,即访问/下的/echo。
spec:
ingressClassName: nginx #这里写上一步查询到的名字
rules:
- host: “example.org” #填写题目要求的域名,题目要求 http://example.org/echo,所以这里需要写域名 example.org
http:
paths: - path: /echo #填写题目要求的 URL 路径,题目要求 http://example.org/echo,所以这里需要写域名后面的/echo
pathType: Prefix
backend:
service:
name: echoserver-service #填写题目要求的 Service
port:
number: 8080 #填写题目要求的端口
kubectl apply -f ingress.yaml
检查效果curl http://example.org/echo
exit