亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

【容器云 UK8S】服務(wù)發(fā)現(xiàn):通過(guò)外網(wǎng)ULB訪問(wèn)Service教程

Tecode / 2678人閱讀

摘要:通過(guò)外網(wǎng)訪問(wèn)使用提醒請(qǐng)勿修改由創(chuàng)建的及的名稱和備注,否則會(huì)導(dǎo)致異常無(wú)法訪問(wèn)。通過(guò)外網(wǎng)暴露服務(wù)以后的插件,外網(wǎng)同時(shí)支持和兩種協(xié)議,下文示例中,對(duì)外暴露了三個(gè)端口,其中端口使用協(xié)議,和使用協(xié)議。是否支持多協(xié)議目前同時(shí)支持和協(xié)議。

通過(guò)外網(wǎng)ULB訪問(wèn)Service

1、使用提醒

  1. 請(qǐng)勿修改由UK8S創(chuàng)建的ULB及Vserver的名稱和備注,否則會(huì)導(dǎo)致Service異常無(wú)法訪問(wèn)。
  2. 除外網(wǎng)EIP外,ULB相關(guān)參數(shù)目前均不支持Update,如不確認(rèn)如何填寫,請(qǐng)咨詢UCloud 技術(shù)支持。

2、使用UDP協(xié)議前必讀

  1. 目前ULB4針對(duì)UDP協(xié)議的健康檢查支持ping和port兩種模式,默認(rèn)為ping,強(qiáng)烈推薦改為port;
  2. port健康檢查的后端實(shí)現(xiàn)是對(duì)UDP端口發(fā)送UDP報(bào)文( "Health Check" 字符串)和針對(duì)RS IP發(fā)送ICMP Ping報(bào)文。 如果超時(shí)時(shí)間內(nèi)回復(fù)了UDP報(bào)文則認(rèn)為健康;如果超時(shí)時(shí)間沒(méi)收到UDP回包,則以Ping的探測(cè)結(jié)果為準(zhǔn)。因此您的應(yīng)用程序需要響應(yīng)UDP健康檢查報(bào)文。
  3. 需要注意的是UDP回包長(zhǎng)度不要超過(guò)1440,以避免可能的分片導(dǎo)致ULB4無(wú)法收到健康檢查響應(yīng),導(dǎo)致健康檢查失敗。

3、選擇UL4還是ULB7

外網(wǎng)模式下,ULB支持“報(bào)文轉(zhuǎn)發(fā)(ULB4)”及“請(qǐng)求代理(ULB7)”兩種轉(zhuǎn)發(fā)模式,推薦使用ULB4,因?yàn)閁LB4的性能更好;

4、操作指南

4.1、通過(guò)外網(wǎng)ULB4暴露服務(wù)(TCP)

使用外網(wǎng)ULB4來(lái)暴露服務(wù)非常簡(jiǎn)單,對(duì)于TCP協(xié)議,可不填寫任何 annotations。
apiVersion: v1
kind: Service
metadata:
  name: ucloud-nginx-out-tcp-new
  labels:
    app: ucloud-nginx-out-tcp-new
  annotations:
    "service.beta.kubernetes.io/ucloud-load-balancer-type": "outer"
    # 代表ULB網(wǎng)絡(luò)類型,outer為外網(wǎng),inner為內(nèi)網(wǎng);outer為默認(rèn)值,此處可省略。
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocol": "tcp"
    # 表示ULB協(xié)議類型,tcp與udp等價(jià),表示ULB4;http與httpS等價(jià),表示ULB7;tcp為默認(rèn)值,此處可省略。
    "service.beta.kubernetes.io/ucloud-load-balancer-eip-bandwidth": "2" 
    # bandwidth下默認(rèn)為2Mpbs建議顯式聲明帶寬大小,避免費(fèi)用超標(biāo)。
    "service.beta.kubernetes.io/ucloud-load-balancer-eip-chargetype": "month" 
    # 付費(fèi)模式,支持month,year,dynamic,默認(rèn)為month
    "service.beta.kubernetes.io/ucloud-load-balancer-eip-quantity": "1" 
    # 付費(fèi)時(shí)長(zhǎng),默認(rèn)為1,chargetype為dynimic時(shí)無(wú)效    
spec:
  type: LoadBalancer
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
  selector:
    app: ucloud-nginx-out-tcp-new
---
apiVersion: v1
kind: Pod
metadata:
  name: test-nginx-out-tcp
  labels:
    app: ucloud-nginx-out-tcp-new
spec:
  containers:
  - name: nginx
    image: uhub.service.ucloud.cn/ucloud/nginx:1.9.2
    ports:
    - containerPort: 80
      protocol: TCP

4.2、通過(guò)外網(wǎng)ULB4暴露服務(wù)(UDP協(xié)議)

相對(duì)于TCP應(yīng)用,務(wù)必在annotations中顯式聲明健康檢查的類型為port,否則ULB可能將正常工作的Pod認(rèn)為不健康,導(dǎo)致流量轉(zhuǎn)發(fā)異常。

apiVersion: v1
kind: Service
metadata:
  name: ucloud-out-udp-new
  labels:
    app: ucloud-out-udp-new
  annotations:
    "service.beta.kubernetes.io/ucloud-load-balancer-type": "outer"
    # 代表ULB網(wǎng)絡(luò)類型,outer為外網(wǎng),inner為內(nèi)網(wǎng);outer為默認(rèn)值,此處可省略。
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocol": "udp"
    # 表示ULB協(xié)議類型,tcp與udp等價(jià),表示ULB4;http與httpS等價(jià),表示ULB7;tcp為默認(rèn)值,此處可省略。
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-monitor-type": "port"
     # 對(duì)于ULB4而言,不論容器端口類型是tcp還是udp,均建議顯式聲明為port。
spec:
  type: LoadBalancer
  ports:
    - name: udp
      protocol: UDP
      port: 53
      targetPort: 53
  selector:
    app: ucloud-out-udp-new
---
apiVersion: v1
kind: Pod
metadata:
  name: test-out-udp
  labels:
    app: ucloud-out-udp-new
spec:
  containers:
  - name: dns
    image:  uhub.service.ucloud.cn/library/coredns:1.4.0
    ports:
    - name: udp
      containerPort: 53
      protocol: UDP 

5、重要說(shuō)明

UK8S的cloudprovider 插件做一個(gè)大更新,大于等于19.05.3的版本支持多端口,指定ULB-id等功能,你可以通過(guò)如下命令查看cloudprovider的版本:

[root@10-9-53-181 ~]# /usr/local/bin/cloudprovider-ucloud version
CloudProvider-UCloud Version:    cloudprovider-19.05.3
Go Version:            go version go1.12.5 linux/amd64
Build Time:            2019-05-30-UTC/06:18:06
Git Commit ID:            2723d13b69a4d6f5b905a7f96bd7eed49617f439

升級(jí)指南即將發(fā)布,如有需求,請(qǐng)聯(lián)系UCloud技術(shù)支持。

通過(guò)外網(wǎng)ULB7暴露服務(wù)(cloudprovider-ucloud version<19.05.3)

老版本的ULB7只支持單種協(xié)議,即HTTP或HTTPS。 下文示例中,對(duì)外暴露2個(gè)端口都使用HTTP協(xié)議。


apiVersion: v1
kind: Service
metadata:
  name: ucloud-nginx-out-tcp-new
  labels:
    app: ucloud-nginx-out-tcp-new
  annotations:
    "service.beta.kubernetes.io/ucloud-load-balancer-type": "outer"
    # 代表ULB類型,outer為外網(wǎng),inner為內(nèi)網(wǎng);outer為默認(rèn)值,此處可省略。
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-listentype": "requestproxy"
    # 代表監(jiān)聽(tīng)器的類型為請(qǐng)求代理,必須填寫。
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocol": "http"
    # 表示Verser的協(xié)議類型,此處為http,則所有的service端口對(duì)應(yīng)的Vserver protocol 都為http,反之亦然。

spec:
  type: LoadBalancer
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
      name: http
    - protocol: TCP
      port: 443
      targetPort: 80
      name: httptoo
  selector:
    app: ucloud-nginx-out-tcp-new
---
apiVersion: v1
kind: Pod
metadata:
  name: test-nginx-out-tcp
  labels:
    app: ucloud-nginx-out-tcp-new
spec:
  containers:
  - name: nginx
    image: uhub.service.ucloud.cn/ucloud/nginx:1.9.2
    ports:
    - containerPort: 80

通過(guò)外網(wǎng)ULB7暴露服務(wù)(cloudprovider-ucloud version>=19.05.3)

19.05.3以后的插件,外網(wǎng)ULB7同時(shí)支持HTTP和HTTPS兩種協(xié)議,下文示例中,對(duì)外暴露了三個(gè)端口,其中80端口使用HTTP協(xié)議,443和8443使用HTTPS協(xié)議。


apiVersion: v1
kind: Service
metadata:
  name: ucloud-nginx-out-tcp-new
  labels:
    app: ucloud-nginx-out-tcp-new
  annotations:
    "service.beta.kubernetes.io/ucloud-load-balancer-type": "outer"
    # 代表ULB類型,outer為外網(wǎng),inner為內(nèi)網(wǎng);outer為默認(rèn)值,此處可省略。
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-listentype": "requestproxy"
    # 代表監(jiān)聽(tīng)器的類型為請(qǐng)求代理,5月30日后安裝的集群無(wú)需填寫。
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocol": "https"
    # 表示ULB協(xié)議類型,http與https等價(jià),表示ULB7;
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-cert": "ssl-b103etqy"
    # 聲明要綁定的SSL證書Id,需要先將證書上傳至UCloud;
    "service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-port": "4438443"
    # 聲明使用SSL協(xié)議的Service端口,多個(gè)用""分隔;
spec:
  type: LoadBalancer
  ports:
    - protocol: TCP
      port: 443
      targetPort: 80
      name: https
    - protocol: TCP
      port: 8443
      targetPort: 80
      name: ssl
    - protocol: TCP
      port: 80
      targetPort: 80
      name: http
  selector:
    app: ucloud-nginx-out-tcp-new
---
apiVersion: v1
kind: Pod
metadata:
  name: test-nginx-out-tcp
  labels:
    app: ucloud-nginx-out-tcp-new
spec:
  containers:
  - name: nginx
    image: uhub.service.ucloud.cn/ucloud/nginx:1.9.2
    ports:
    - containerPort: 80

HTTPS支持(cloudprovider-ucloud version<19.05.3)

小于19.05.3版本的插件,所有service端口只能是HTTP或HTTPS,不能混合使用。

apiVersion: v1
kind: Service
metadata:
name: ucloud-nginx-out-tcp-new
labels:

app: ucloud-nginx-out-tcp-new

annotations:

"service.beta.kubernetes.io/ucloud-load-balancer-type": "outer"
# 代表ULB類型,outer為外網(wǎng),inner為內(nèi)網(wǎng);outer為默認(rèn)值,此處可省略。
"service.beta.kubernetes.io/ucloud-load-balancer-vserver-listentype": "requestproxy"
# 代表監(jiān)聽(tīng)器的類型為請(qǐng)求代理,插件版本小于19.05.3的版本必須填寫。
"service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocol": "https"
# 表示Verser的協(xié)議類型,此處為https,則所有的service端口對(duì)應(yīng)的Vserver protocol 都為https,反之亦然。
"service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-cert": "ssl-b103etqy"
# 聲明要綁定的SSL證書Id,需要先將證書上傳至UCloud;

spec:
type: LoadBalancer
ports:

- protocol: TCP
  port: 443
  targetPort: 80
  name: https
- protocol: TCP
  port: 80
  targetPort: 80
  name: httpstoo

selector:

app: ucloud-nginx-out-tcp-new

apiVersion: v1
kind: Pod
metadata:
name: test-nginx-out-tcp
labels:

app: ucloud-nginx-out-tcp-new

spec:
containers:

  • name: nginx
    image: uhub.service.ucloud.cn/ucloud/nginx:1.9.2
    ports:

    • containerPort: 80


### HTTPS支持(cloudprovider-ucloud version>=19.05.3)

外網(wǎng)ULB支持HTTPS協(xié)議。用戶通過(guò)service.metadata.annotations中的service.beta.kubernetes.io/ucloud-load-balancer-ssl-cert來(lái)指定已經(jīng)上傳的TLS證書ID。

通過(guò)service.metadata.annotations中的service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-port來(lái)指定HTTPS服務(wù)端口,如有多端口,用""分隔。

如果某個(gè)ServicePort 被指定為HTTPS服務(wù)端口,并且已提交TLS證書ID,則該ServicePort所對(duì)應(yīng)的VServer協(xié)議為HTTPS。

使用ULB7的HTTPS協(xié)議模式時(shí),Pod內(nèi)的服務(wù)程序不需要實(shí)現(xiàn)HTTPS協(xié)議服務(wù),只需要提供HTTP服務(wù)即可,ULB7發(fā)往后端的報(bào)文為解密后的HTTP協(xié)議報(bào)文。

apiVersion: v1
kind: Service
metadata:
name: ucloud-nginx-out-tcp-new
labels:

app: ucloud-nginx-out-tcp-new

annotations:

"service.beta.kubernetes.io/ucloud-load-balancer-type": "outer"
# 代表ULB類型,outer為外網(wǎng),inner為內(nèi)網(wǎng);outer為默認(rèn)值,此處可省略。
"service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocol": "http"
# 表示ULB協(xié)議類型,http與https等價(jià),表示ULB7;
"service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-cert": "ssl-b103etqy"
# 聲明要綁定的SSL證書Id,需要先將證書上傳至UCloud;
"service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-port": "443"
# 聲明使用SSL協(xié)議的Service端口,多個(gè)用""分隔;

spec:
type: LoadBalancer
ports:

- protocol: TCP
  port: 443
  targetPort: 80

selector:

app: ucloud-nginx-out-tcp-new

apiVersion: v1
kind: Pod
metadata:
name: test-nginx-out-tcp
labels:

app: ucloud-nginx-out-tcp-new

spec:
containers:

  • name: nginx
    image: uhub.service.ucloud.cn/ucloud/nginx:1.9.2
    ports:

    • containerPort: 80

### 常見(jiàn)問(wèn)題

#### 1. 如何區(qū)別使用ULB4還是ULB7?

通過(guò)service.metadata.annotations中的service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocol值來(lái)聲明使用ULB4還是ULB7。

如果值為tcp或者udp則使用ULB4。

如果是http或者h(yuǎn)ttps,則使用ULB7。

#### 2. 一個(gè)LoadBalancer的Service是否支持多端口?

支持,UK8S會(huì)為service.spec.ports下每個(gè)ServicePort分別創(chuàng)建一個(gè)VServer,VServer端口為Service端口。

#### 3. 是否支持多協(xié)議?

目前UK8S同時(shí)支持HTTP和HTTPS協(xié)議。

#### 4. UK8S的LoadBalancer類型的Service是否支持UDP?

目前已支持,后續(xù)計(jì)劃支持,灰度中。

#### 5. 如果Loadbalancer創(chuàng)建外網(wǎng)ULB后,用戶在ULB控制臺(tái)頁(yè)面綁定了新的EIP,會(huì)被刪除嗎?

只有訪問(wèn)SVC的ExternalIP才能把流量導(dǎo)入后端Pod,訪問(wèn)其他EIP無(wú)效。刪除SVC時(shí),所有EIP都會(huì)被刪除。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/126267.html

相關(guān)文章

  • 容器 UK8S服務(wù)發(fā)現(xiàn)通過(guò)內(nèi)網(wǎng)ULB訪問(wèn)Service教程

    摘要:通過(guò)內(nèi)網(wǎng)訪問(wèn)使用提醒請(qǐng)勿修改由創(chuàng)建的及的名稱和備注,否則會(huì)導(dǎo)致異常無(wú)法訪問(wèn)??刂苿?chuàng)建所在子網(wǎng),填寫子網(wǎng)通過(guò)內(nèi)網(wǎng)對(duì)外暴露服務(wù)代表類型,為外網(wǎng),為內(nèi)網(wǎng)為默認(rèn)值,此處可省略。通過(guò)內(nèi)網(wǎng)ULB訪問(wèn)Service1、使用提醒請(qǐng)勿修改由UK8S創(chuàng)建的ULB及Vserver的名稱和備注,否則會(huì)導(dǎo)致Service異常無(wú)法訪問(wèn)。除外網(wǎng)EIP外,ULB相關(guān)參數(shù)目前均不支持Update,如不確認(rèn)如何填寫,請(qǐng)咨詢UC...

    Tecode 評(píng)論0 收藏0
  • 容器 UK8S服務(wù)發(fā)現(xiàn):Kubernetes重要概念Service(即服務(wù),本文中兩者等同)以

    摘要:介紹本章節(jié)主要為您簡(jiǎn)要介紹中的一個(gè)重要概念即服務(wù),本文中兩者等同,以及的相關(guān)知識(shí)。在每臺(tái)的固定端口上暴露服務(wù),選擇的服務(wù)類型,集群會(huì)自動(dòng)創(chuàng)建一個(gè)類型的服務(wù),負(fù)責(zé)處理接收到的外部流量。集群外部的可以通過(guò)的方式訪問(wèn)該服務(wù)。Service 介紹本章節(jié)主要為您簡(jiǎn)要介紹 Kubernetes 中的一個(gè)重要概念 Service(即服務(wù),本文中兩者等同),以及ULB的相關(guān)知識(shí)。Service 介紹Serv...

    Tecode 評(píng)論0 收藏0
  • 容器 UK8S服務(wù)發(fā)現(xiàn)通過(guò)ULB暴露Kubernetes Dashboard和Ingress

    摘要:通過(guò)暴露是社區(qū)的一個(gè)開(kāi)源項(xiàng)目,你可以通過(guò)來(lái)部署更新應(yīng)用排查應(yīng)用故障以及管理集群資源。執(zhí)行以下命令安裝,使用的鏡像已經(jīng)去掉了的證書限制。不支持的版本范圍。通過(guò)ULB暴露Kubernetes DashboardDashboard是Kubernetes社區(qū)的一個(gè)Web開(kāi)源項(xiàng)目,你可以通過(guò)Dashboard來(lái)部署更新應(yīng)用、排查應(yīng)用故障以及管理Kubernetes集群資源。另外,Dashboard還提...

    Tecode 評(píng)論0 收藏0
  • 容器 UK8S服務(wù)發(fā)現(xiàn):如何使用已有的ULB

    摘要:指定已有的實(shí)例創(chuàng)建,被刪除后,實(shí)例不會(huì)被刪除,僅刪除對(duì)應(yīng)的。下面我們來(lái)看下如何使用已有的實(shí)例。使用已有的內(nèi)網(wǎng)聲明使用已有的內(nèi)網(wǎng),需要聲明至少兩個(gè)。使用已有的ULB背景UK8S支持在創(chuàng)建LoadBalancer類型的Service時(shí),指定使用已有的ULB實(shí)例,而不是創(chuàng)建一個(gè)新的ULB實(shí)例。也支持多個(gè)Service復(fù)用一個(gè)ULB實(shí)例,但存在以下規(guī)則限制:已有的ULB實(shí)例,必須是你自行創(chuàng)建的ULB...

    Tecode 評(píng)論0 收藏0
  • Service 介紹 容器 UK8S

    摘要:介紹介紹介紹是集群中的一個(gè)資源對(duì)象,用于定義如何訪問(wèn)一組帶有相同特征的。下面我們分別介紹下如何通過(guò)在內(nèi)網(wǎng)外網(wǎng)訪問(wèn)。 Service 介紹本篇目錄1. Service 介紹2. ULB 簡(jiǎn)要介紹本章節(jié)主要為您簡(jiǎn)要介紹 Kubernetes 中的一個(gè)重要概念 Service(即服務(wù),本文中兩者等同),以及ULB的相關(guān)知識(shí)。1. Service 介紹Service 是 Kubernetes 集群中...

    ernest.wang 評(píng)論0 收藏2037

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<