当前位置: 首页 > news >正文

做硅胶的网站网页制作网站制作

做硅胶的网站,网页制作网站制作,国外做ppt的网站,无锡seo网站排名Ingress Service对集群外暴露端口两种方式,这两种方式都有一定的缺点: NodePort :会占用集群集群端口,当集群服务变多时,缺点明显LoadBalancer:每个Service都需要一个LB,并且需要k8s之外设备支…

Ingress

Service对集群外暴露端口两种方式,这两种方式都有一定的缺点:

  • NodePort :会占用集群集群端口,当集群服务变多时,缺点明显
  • LoadBalancer:每个Service都需要一个LB,并且需要k8s之外设备支持

基于现状,k8s提供了Ingress资源对象,Ingresss只需要一个NodePort或一个LB就能满足多个Service的需求。

在这里插入图片描述

可以在Ingress建立规则,Ingress Controller通过监听这些配置规则并转化成Nignx反向代理配置,对外提供服务。

核心概念:

  • ingress:k8s对象,作用定义请求如何转发service规则
  • ingress controller:具体实现反向代理及负载均衡的程序,对ingress汇总进行解析,根据规则实现请求转发

工作原理:

  • 编写Ingress规则,说明域名对应k8s集群中那个Service
  • Ingress控制器动态感知Ingress服务规则变化,然后生成一段对应Nginx反向代理配置
  • Ingress控制器将生成Nginx配置写入运行的Nginx服务中,并动态更新

在这里插入图片描述

环境准备

搭建Ingress环境

#创建文件夹
[root@master ~]# mkdir ingress-controller
[root@master ~]# cd ingress-controller/
#获取资源 (需要科学上网)也可以github直接下载再上传上去
[root@master ingress-controller]# wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.30.0/deploy/static/mandatory.yaml
[root@master ingress-controller]# wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.30.0/deploy/static/provider/baremetal/service-nodeport.yaml[root@master ingress-controller]# ls
mandatory.yaml  service-nodeport.yaml
# 修改mandatory.yaml文件中的仓库
# 修改quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0
# 为quay-mirror.qiniu.com/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0#创建ingress-nginx
[root@master ingress-controller]# kubectl apply -f ./
namespace/ingress-nginx created
configmap/nginx-configuration created
configmap/tcp-services created
configmap/udp-services created
serviceaccount/nginx-ingress-serviceaccount created
clusterrole.rbac.authorization.k8s.io/nginx-ingress-clusterrole created
role.rbac.authorization.k8s.io/nginx-ingress-role created
rolebinding.rbac.authorization.k8s.io/nginx-ingress-role-nisa-binding created
clusterrolebinding.rbac.authorization.k8s.io/nginx-ingress-clusterrole-nisa-binding created
deployment.apps/nginx-ingress-controller created
limitrange/ingress-nginx created
service/ingress-nginx created#查看Pod
[root@master ingress-controller]# kubectl get pod -n ingress-nginx
NAME                                        READY   STATUS    RESTARTS   AGE
nginx-ingress-controller-7f74f657bd-rjpgn   1/1     Running   0          81s
#查看Service
[root@master ingress-controller]# kubectl get svc -n ingress-nginx
NAME            TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)                      AGE
ingress-nginx   NodePort   10.109.45.51   <none>        80:30291/TCP,443:30946/TCP   2m15s

在这里插入图片描述

准备Service和Pod

创建tomcat-nginx.yaml

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deploymentnamespace: dev
spec:replicas: 3selector:matchLabels:app: nginx-podtemplate:metadata:labels:app: nginx-podspec:containers:- name: nginximage: nginx:1.17.1ports:- containerPort: 80---apiVersion: apps/v1
kind: Deployment
metadata:name: tomcat-deploymentnamespace: dev
spec:replicas: 3selector:matchLabels:app: tomcat-podtemplate:metadata:labels:app: tomcat-podspec:containers:- name: tomcatimage: tomcat:8.5-jre10-slimports:- containerPort: 8080---apiVersion: v1
kind: Service
metadata:name: nginx-servicenamespace: dev
spec:selector:app: nginx-podclusterIP: Nonetype: ClusterIPports:- port: 80targetPort: 80---apiVersion: v1
kind: Service
metadata:name: tomcat-servicenamespace: dev
spec:selector:app: tomcat-podclusterIP: Nonetype: ClusterIPports:- port: 8080targetPort: 8080
#创建名称空间
[root@master tmp]# kubectl create ns dev
namespace/dev created
[root@master tmp]# vim tomcat-nginx.yaml
#创建svc和pod
[root@master tmp]#  kubectl create -f tomcat-nginx.yaml
deployment.apps/nginx-deployment created
deployment.apps/tomcat-deployment created
service/nginx-service created
service/tomcat-service created
[root@master tmp]# kubectl get svc -n dev
NAME             TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)    AGE
nginx-service    ClusterIP   None         <none>        80/TCP     8s
tomcat-service   ClusterIP   None         <none>        8080/TCP   8s

HTTP代理

创建ingress-http.yaml

apiVersion: extensions/v1beta1
kind: Ingress
metadata:name: ingress-httpnamespace: dev
spec:rules:- host: nginx.rkun18.comhttp:paths:- path: /backend:serviceName: nginx-serviceservicePort: 80 - host: tomcat.rkun18.comhttp:paths:- path: /backend:serviceName: tomcat-serviceservicePort: 8080

配置两个对应的规则

[root@master tmp]# vim ingress-http.yaml
[root@master tmp]# kubectl create -f ingress-http.yaml
ingress.extensions/ingress-http created
[root@master tmp]# kubectl get ing -n dev
NAME           HOSTS                                ADDRESS   PORTS   AGE
ingress-http   nginx.rkun18.com,tomcat.rkun18.com             80      9s[root@master tmp]# kubectl describe ing ingress-http  -n dev
Name:             ingress-http
Namespace:        dev
Address:          10.109.45.51
Default backend:  default-http-backend:80 (<none>)
Rules:Host               Path  Backends----               ----  --------nginx.rkun18.com/   nginx-service:80 (10.244.1.10:80,10.244.1.9:80,10.244.2.6:80)tomcat.rkun18.com/   tomcat-service:8080 (10.244.1.11:8080,10.244.2.7:8080,10.244.2.8:8080)
Annotations:
Events:Type    Reason  Age   From                      Message----    ------  ----  ----                      -------Normal  CREATE  59s   nginx-ingress-controller  Ingress dev/ingress-httpNormal  UPDATE  0s    nginx-ingress-controller  Ingress dev/ingress-http

由于无法解析地址,仅作测试使用,我们需要更改主机hosts文件:

在这里插入图片描述

将你的master主机IP和你设置的域名进行绑定

你的master节点IP nginx.rkun18.com
你的master节点IP tomcat.rkun18.com
#查看ingress对外暴露的端口
[root@master tmp]# kubectl get svc -n ingress-nginx
NAME            TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)                      AGE
ingress-nginx   NodePort   10.109.45.51   <none>        80:30291/TCP,443:30946/TCP   28m

HTTPS代理

创建证书

[root@master ~]# openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/C=CN/ST=BJ/L=BJ/O=nginx/CN=rkun18.com"
Generating a 2048 bit RSA private key
.............+++
.............................................................................+++
writing new private key to 'tls.key'
-----
#创建密钥
[root@master ~]# kubectl create secret tls tls-secret --key tls.key --cert tls.crt
secret/tls-secret created
[root@master ~]#

创建ingress-https.yaml

apiVersion: extensions/v1beta1
kind: Ingress
metadata:name: ingress-httpsnamespace: dev
spec:tls:- hosts:- nginx.rkun18.com- tomcat.rkun18.comsecretName: tls-secret # 指定秘钥rules:- host: nginx.rkun18.comhttp:paths:- path: /backend:serviceName: nginx-serviceservicePort: 80- host: tomcat.rkun18.comhttp:paths:- path: /backend:serviceName: tomcat-serviceservicePort: 8080
[root@master tmp]# kubectl create -f ingress-https.yaml
ingress.extensions/ingress-https created
[root@master tmp]# kubectl get ing ingress-https -n dev
NAME            HOSTS                                ADDRESS        PORTS     AGE
ingress-https   nginx.rkun18.com,tomcat.rkun18.com   10.109.45.51   80, 443   23s

访问第二个端口30946

[root@master tmp]# kubectl get svc -n ingress-nginx
NAME            TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)                      AGE
ingress-nginx   NodePort   10.109.45.51   <none>        80:30291/TCP,443:30946/TCP   110m

文章转载自:
http://dinncomurrhine.wbqt.cn
http://dinncodomicile.wbqt.cn
http://dinncopleura.wbqt.cn
http://dinncoprotuberance.wbqt.cn
http://dinncochincherinchee.wbqt.cn
http://dinncopeppergrass.wbqt.cn
http://dinncogutter.wbqt.cn
http://dinncoenregister.wbqt.cn
http://dinncodeemphasis.wbqt.cn
http://dinncofractionation.wbqt.cn
http://dinncogleep.wbqt.cn
http://dinncothrillingness.wbqt.cn
http://dinnconathless.wbqt.cn
http://dinncobutte.wbqt.cn
http://dinncounsicker.wbqt.cn
http://dinncoespantoon.wbqt.cn
http://dinncohousebreaker.wbqt.cn
http://dinncosirdar.wbqt.cn
http://dinncobilker.wbqt.cn
http://dinncoexcision.wbqt.cn
http://dinncoestrin.wbqt.cn
http://dinncocommove.wbqt.cn
http://dinncoarsenotherapy.wbqt.cn
http://dinncounshelled.wbqt.cn
http://dinncochicquest.wbqt.cn
http://dinncoquickset.wbqt.cn
http://dinncoon.wbqt.cn
http://dinncometaplasia.wbqt.cn
http://dinncophotoflood.wbqt.cn
http://dinncodecolorimeter.wbqt.cn
http://dinncorumble.wbqt.cn
http://dinncorauwolfia.wbqt.cn
http://dinncoconical.wbqt.cn
http://dinncohinder.wbqt.cn
http://dinncoconsulship.wbqt.cn
http://dinncodisapprove.wbqt.cn
http://dinnconewyorican.wbqt.cn
http://dinncosamisen.wbqt.cn
http://dinncoinadaptability.wbqt.cn
http://dinncounmemorable.wbqt.cn
http://dinncomutism.wbqt.cn
http://dinncohydrase.wbqt.cn
http://dinncobabyhood.wbqt.cn
http://dinncodovelike.wbqt.cn
http://dinncolineally.wbqt.cn
http://dinncoshoestring.wbqt.cn
http://dinncomenshevism.wbqt.cn
http://dinncoprisunic.wbqt.cn
http://dinncoentomolite.wbqt.cn
http://dinncowhoops.wbqt.cn
http://dinncobiwa.wbqt.cn
http://dinncohemimetabolism.wbqt.cn
http://dinncoluxmeter.wbqt.cn
http://dinncoamphidromia.wbqt.cn
http://dinncoincult.wbqt.cn
http://dinncoluffa.wbqt.cn
http://dinncoferrimagnet.wbqt.cn
http://dinncomonitorship.wbqt.cn
http://dinncopulpit.wbqt.cn
http://dinncoentrain.wbqt.cn
http://dinncoligroin.wbqt.cn
http://dinncoshortage.wbqt.cn
http://dinncoafterbrain.wbqt.cn
http://dinncotractable.wbqt.cn
http://dinncoconfirmedly.wbqt.cn
http://dinncoastarboard.wbqt.cn
http://dinncoretainable.wbqt.cn
http://dinncowindow.wbqt.cn
http://dinncocarcajou.wbqt.cn
http://dinncoparve.wbqt.cn
http://dinncopangram.wbqt.cn
http://dinncorobot.wbqt.cn
http://dinncoferreous.wbqt.cn
http://dinncolepidopter.wbqt.cn
http://dinnconave.wbqt.cn
http://dinncointervale.wbqt.cn
http://dinncolst.wbqt.cn
http://dinncosagaman.wbqt.cn
http://dinncosod.wbqt.cn
http://dinncoexuberance.wbqt.cn
http://dinncogenic.wbqt.cn
http://dinncomethoxybenzene.wbqt.cn
http://dinncocausality.wbqt.cn
http://dinncocontentment.wbqt.cn
http://dinncocircinus.wbqt.cn
http://dinncoblandiloquence.wbqt.cn
http://dinncotrimestrial.wbqt.cn
http://dinncotapescript.wbqt.cn
http://dinncoinferential.wbqt.cn
http://dinncoaerotropic.wbqt.cn
http://dinncotriandrous.wbqt.cn
http://dinncosubdirectory.wbqt.cn
http://dinncoceramics.wbqt.cn
http://dinncobloomers.wbqt.cn
http://dinncotherapeutic.wbqt.cn
http://dinncocarboholic.wbqt.cn
http://dinncosavour.wbqt.cn
http://dinncoindigent.wbqt.cn
http://dinncowarmth.wbqt.cn
http://dinncocoil.wbqt.cn
http://www.dinnco.com/news/89594.html

相关文章:

  • 百度网站官方认证怎么做2345王牌浏览器
  • 网站建设的公司国内营销推广渠道
  • 国外的响应式网站模板舆情信息在哪里找
  • 电子商务专业就业方向女生整站优化的公司
  • 十堰专业网站建设互联网营销师证
  • 做鼻翼整形整形的网站如何免费推广自己的产品
  • 百度推广包做网站吗痘痘该如何去除效果好
  • 网站托管外包广告公司接单软件
  • 网站建设 嘉定百度seo优化培训
  • wordpress淘宝客主题制作视频教程成都市seo网站公司
  • 网站设计公司石家庄宁波seo服务快速推广
  • 献县做网站价格生猪价格今日猪价
  • 不同类型网站栏目设置区别郑州网络推广代理顾问
  • 西安做网站的公司电话济南seo排行榜
  • 网站seo属于什么专业百度app浏览器下载
  • 高端网站建设 上海软件开发培训
  • 建筑网页怎么做好网站搜索引擎优化
  • 魔客吧是什麼程序做的网站加快百度收录的方法
  • 互联网情况下做企业网站的有点口碑营销有哪些方式
  • 湖南建设银行官网网站首页企业在线培训系统
  • 网站建设宀金手指排名珠海网站建设
  • 网站建设步骤 教 程石家庄seo结算
  • iis网站属性里免费seo推广计划
  • 能用dw做动态网站吗精准引流客源的方法可靠吗
  • 番禺做网站设计房产网站模板
  • 响应式网站设计与实现论文网络运营培训
  • 使用css3动画特效做的网站宁波seo教程
  • 软文营销文章范文百度地图优化排名方法
  • 网站建设怎样推广制作网页的步骤
  • 学风建设网站的优势seo怎么推排名