敢说敢作敢为, 无怨无恨无悔。这篇文章主要讲述k8s nginx-ingress部署相关的知识,希望能为你提供帮助。
两种方式部署k8s nginx-ingress:?
?1.heml源安装
2.yaml安装?
Heml安装ingress-nginx:目前测试集群1.17.17,最新版的ingress-nginx是安装不了的。
文章图片
ingress所支持的k8s版本:https://github.com/kubernetes/ingress-nginx?git拉取kubernetes-ingress仓库:[root@master ingress-nginx]# git clone https://github.com/nginxinc/kubernetes-ingress/
文章图片
添加nginx-stable源:[root@master helm-chart]# helm repo add nginx-stable https://helm.nginx.com/stable
"nginx-stable" has been added to your repositories
通过helm安装nginx-ingress:[root@master helm-chart]# pwd
/root/ingress/ingress-nginx/kubernetes-ingress/deployments/helm-chart
[root@master helm-chart]# helm install my-release nginx-stable/nginx-ingress
NAME: my-release
LAST DEPLOYED: Thu Sep 2 22:48:22 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
The NGINX Ingress Controller has been installed.
文章图片
安装时可以指定参数:[root@master helm-chart]# helm install nginx-ingress nginx-stable/nginx-ingress --set rbac.create=true,--set controller.service.loadBalancerIPs[0]=10.40.42.103,--namespace=ingress-nginx
Error: expected at most two arguments, unexpected arguments: controller.service.loadBalancerIPs[0]=10.40.42.103,--namespace=ingress-nginx
[root@master helm-chart]# helm install nginx-ingress nginx-stable/nginx-ingress --set rbac.create=true,--namespace=ingress-nginx
NAME: nginx-ingress
LAST DEPLOYED: Fri Sep 3 02:23:54 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
The NGINX Ingress Controller has been installed.
文章图片
通过github yaml文件安装:V11目录代表安装ingress 1.11版本,自己建的方便区分.
切换到一下目录:
/root/v11/kubernetes-ingress/deployments/helm-chart
修改values.yaml配置文件:参数根据个人需要调整。
执行安装:【k8s nginx-ingress部署】helm install my-release .?
查看当前ingress-contro的ingress-class:[root@master helm-chart]# kubectl get deploy -n default -o yaml | grep class
- -ingress-class=nginx-test
- -use-ingress-class-only=false
查看ingress service状态:[root@master ~]# kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 < none> 443/TCP 3d7h
my-release-nginx-ingress LoadBalancer 10.97.160.13 10.40.42.103 80:32419/TCP,443:31679/TCP 118m
文章图片
安装测试应用nginx:[root@master nginx-app]# kubectl apply -f base.yaml
namespace/nginx-example created
deployment.apps/nginx-deployment created
service/my-nginx created
文章图片
查看nginx pod状态:[root@master nginx-app]# kubectl get pod -A | grep nginx-example
nginx-example nginx-deployment-7cd5ddccc7-5vw2b 1/1 Running 0 53s
nginx-example nginx-deployment-7cd5ddccc7-84x6q 1/1 Running 0 53s
查看nginx service状态:[root@master nginx-app]# kubectl get svc -A | grep nginx-example
nginx-example my-nginx ClusterIP 10.106.91.145 < none> 80/TCP 62s
文章图片
创建nginx测试的案例的ingress:[root@master ~]# kubectl apply -f ingresstest.yaml
ingress.extensions/ingress-test created
[root@master ~]# cat ingresstest.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-test
namespace: nginx-example
annotations:
kubernetes.io/ingress.class: "nginx-test"
ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: test2.example.com
http:
paths:
- path: /
backend:
serviceName: mys-nginx
servicePort: 80
文章图片
查看ingress的状态:[root@master ~]# kubectl get ing -A
NAMESPACE NAME HOSTS ADDRESS PORTS AGE
nginx-example ingress-test test2.example.com 10.40.42.103 80 32m
文章图片
本地配置解析:10.40.42.103 test2.example.com
浏览器测试访问:
文章图片
推荐阅读
- 高可用延迟队列设计与实现
- tigervnc远程桌面连接教程-linux
- 如何为Android应用程序创建WordPress REST API
- 如何仅为我的cpt”投资组合”创建单独的”存档小部件”()
- 如何在我的代码中的第3列之后创建新行
- 如何计算一个月前的作者帖子
- 如何通过WordPress主题正确实现基本的联系方式()
- 如何在functions.php中为自定义表单正确创建链接
- 如何控制WordPress的AWE主题的滑块速度()