K8s Ingress路径转发

一、目的

验证K8s集群中Ingress的路径转发是否生效,具体指的是:通过HTTP/HTTPS的方式暴露服务,外部除了可以通过域名区分不通的服务外,另外一种方式就是通过路径的方式区分不通的服务,本文通过构建Ingress镜像来验证如何通过路径的方式来访问不同的服务。

二、实施过程

1. 构建镜像

以Nginx镜像为基础构建一个简单的Nginx镜像,Dockerfile如下:

FROM nginx:1.16.0
WORKDIR /usr/local/nginx/html/
RUN mkdir A && echo "

HELLO DOCKER

" > A/index.html RUN mkdir B && echo "

HELLO DOCKER22

" > B/index22.html

构建出来的镜像很简单,只是在nginx的前端页面中新建了两个子目录,用于区分服务A和服务B。保存以上Dockerfile,执行docker build -t nginx:v1 .构建镜像。

2. 验证构建出的镜像

完成镜像的构建后,执行docker run -d -p 80:80 --name mynginx nginx:v1以后台方式运行一个名为mynginx的容器,然后再浏览器中分别通过http://localhost:80/A/index.html可以访问到服务A的内容为我们刚刚构建镜像时写入的内容HELLO DOCKER,通过http://localhost:80/B/index22.html可以访问到服务B的内容为我们刚刚构建镜像时写入的内容HELLO DOCKER22.

3. K8s中HTTPS协议路径访问服务

通过K8s中的Ingress可以完成HTTP协议或者HTTPS协议访问服务,以下分几步创建K8s中的资源对象。

3.1 创建Deployment
ApiVersion: v1

你可能感兴趣的:(K8s Ingress路径转发)