目录
免费获取题库配套 CKA_v1.31_模拟系统
一、题目
二、核心考点
Ingress 资源定义
Ingress Controller 依赖
服务暴露验证
网络层次关系
三、搭建模拟环境
1.创建命名空间
2.安装ingress ingress-nginx-controller
3.创建hello.yaml并部署
四、总结
免费获取题库配套 CKA_v1.31_模拟系统
一、题目
您必须在以下Cluster/Node上完成此考题:
Cluster Master node Worker node
hk8s master node01
设置配置环境:
[candidate@node01]$ kubectl config use-context hk8s
.
Context
将外部流量按照ingress规则引入内部服务
.
Task
如下创建一个新的 nginx Ingress 资源:
.
name : ping
namespace : ing-internal
.
使用服务端口 5678 在路径 /hello 上公开服务 hello 。 可以使用以下命令检查服务 hello 的可用性,该命令应返回 hello :
.
curl -kL INTERNAL_IP/hello
二、核心考点
-
Ingress 资源定义
-
名称与命名空间规范:
name: ping
,namespace: ing-internal
-
路径与服务端口映射:
/hello
→service hello:5678
-
-
Ingress Controller 依赖
-
必须部署 Nginx Ingress Controller
-
控制器与 Ingress 资源的关联机制
-
-
服务暴露验证
-
获取 Ingress 访问端点(INTERNAL_IP)
-
使用
curl -kL
测试路径响应
-
-
网络层次关系
三、搭建模拟环境
1.创建命名空间
kubectl create ns ing-internal
2.安装ingress ingress-nginx-controller
#下载ingress-nginx-controller.yaml文件
wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.9.6/deploy/static/provider/cloud/deploy.yaml
mv deploy.yaml ingress-nginx-controller.yaml
#将yaml文件中的namespace设置变更成题目要求的namespace
apiVersion: v1
kind: Namespace
metadata:
labels:
app.kubernetes.io/instance: ingress-nginx
app.kubernetes.io/name: ingress-nginx
name: ing-internal
#然后所有
namespace: ing-internal
#将此行注释掉
externalTrafficPolicy: Local
#将service ingress-nginx-controller的type: LoadBalancer将慈航改成ClusterIP才能按照题目要求配置完ingress策略后出现IP
type: ClusterIP
---
#题目中无IngressClass,故将类模块注释掉
#apiVersion: networking.k8s.io/v1
#kind: IngressClass
#metadata:
# labels:
# app.kubernetes.io/component: controller
# app.kubernetes.io/instance: ingress-nginx
# app.kubernetes.io/name: ingress-nginx
# app.kubernetes.io/part-of: ingress-nginx
# app.kubernetes.io/version: 1.9.6
# name: nginx
#spec:
# controller: k8s.io/ingress-nginx
---
#应用yaml文件,开始安装
kubectl apply -f ingress-nginx-controller.yaml
3.创建hello.yaml并部署
hello.yaml文件
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello
namespace: ing-internal
labels:
name: hello
spec:
replicas: 1
selector:
matchLabels:
name: hello
template:
metadata:
labels:
name: hello
spec:
containers:
- name: hello
image: hello-world:2.0
ports:
- containerPort: 80
name: http-web-svc
---
apiVersion: v1
kind: Service
metadata:
name: hello
namespace: ing-internal
spec:
selector:
name: hello
ports:
- name: hello-of-service-port
protocol: TCP
port: 5678
targetPort: http-web-svc
部署yaml文件
kubectl apply -f hello.yaml
四、总结
1.题库主要考察的是Ingress策略,所以必须部署Ingress controller
2.考试环境中是没有ingressclass的,需要自己创建一个默认类就可以,但是Ingress controller是默认带了的,为了题目效果要注释掉。
3.service ingress-nginx-controller的type: LoadBalancer将慈航改成ClusterIP才能按照题目要求配置完ingress策略后出现IP
CKA高仿真环境简单演示视频