- ingress 服务在k8s中也是以后台pod的形式存在,需要安装nginx-ingress-controller的镜像。
- 需要单独建立ingress的service,防火墙上发布应用,针对的是此service的端口。
- ingress上发布应用,需要新增单独的ingress配置,配置域名、端口、后台对应的service等。
1. 先安装nginx-ingress-controller相关的pod。
kubectl apply -f mandatory.yaml
其中mandatory.yaml的内容如下,会自动建ns,
apiVersion: v1
kind: Namespace
metadata:
name: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
---
kind: ConfigMap
apiVersion: v1
metadata:
name: nginx-configuration
namespace: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
---
kind: ConfigMap
apiVersion: v1
metadata:
name: tcp-services
namespace: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
---
kind: ConfigMap
apiVersion: v1
metadata:
name: udp-services
namespace: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: nginx-ingress-serviceaccount
namespace: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRole
metadata:
name: nginx-ingress-clusterrole
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
rules:
- apiGroups:
- ""
resources:
- configmaps
- endpoints
- nodes
- pods
- secrets
verbs:
- list
- watch
- apiGroups:
- ""
resources:
- nodes
verbs:
- get
- apiGroups:
- ""
resources:
- services
verbs:
- get
- list
- watch
- apiGroups:
- ""
resources:
- events
verbs:
- create
- patch
- apiGroups:
- "extensions"
- "networking.k8s.io"
resources:
- ingresses
verbs:
- get
- list
- watch
- apiGroups:
- "extensions"
- "networkin

本文详细介绍了如何在Kubernetes环境中安装和配置ingress。首先,通过kubectl应用mandatory.yaml文件来安装nginx-ingress-controller。接着,创建一个ingress service,采用nodeport模式,并针对2.0版K8S进行配置。最后,通过kubectl部署nginx-ingress-backend的配置,用于发布网站并链接到后端service。
最低0.47元/天 解锁文章
2214

被折叠的 条评论
为什么被折叠?



