0

我在Google Container Engine上使用Kubernetes,並能夠使用公開的LoadBalancer端口建立服務。我可以「捲曲」暴露的IP /端口,並從以外的任何位置(例如,從我的桌面連接到互聯網)獲得成功的響應。Kubenetes服務LoadBalancer暴露的IP /端口無法從gcloud shell訪問,但可從羣集外部訪問

我的問題是,當我從「curl」我的gcloud外殼的時,我得到一個超時。

以下是我的配置,可能有助於診斷問題。

$ kubectl get services 

NAME   CLUSTER-IP  EXTERNAL-IP  PORT(S)   AGE 
some-service 10.3.255.17 104.198.60.137 6884:32318/TCP 5h 

下面是我的「捲曲」的命令:

curl 104.198.60.137:6884/testing 

這裏是我的防火牆規則:

NETWORK SRC_RANGES   RULES       SRC_TAGS TARGET_TAGS 
default-allow-icmp      default 0.0.0.0/0   icmp 
default-allow-internal     default 10.128.0.0/9  tcp:0-65535,udp:0-65535,icmp 
default-allow-rdp      default 0.0.0.0/0   tcp:3389 
default-allow-ssh      default 0.0.0.0/0   tcp:22 
gke-cluster-1-d18be73f-all    default 10.0.0.0/14  tcp,udp,icmp,esp,ah,sctp 
gke-cluster-1-d18be73f-ssh    default 35.188.121.142/32 tcp:22         gke-cluster-1-d18be73f-node 
gke-cluster-1-d18be73f-vms    default 10.128.0.0/9  tcp:1-65535,udp:1-65535,icmp    gke-cluster-1-d18be73f-node 
k8s-fw-a313ec7ec45fb11e794e942010a8001a default 0.0.0.0/0   tcp:6881         gke-cluster-1-d18be73f-node 
k8s-fw-a3305409545fb11e794e942010a8001a default 0.0.0.0/0   tcp:6882         gke-cluster-1-d18be73f-node 
k8s-fw-a342a4afb45fb11e794e942010a8001a default 0.0.0.0/0   tcp:6883         gke-cluster-1-d18be73f-node 
k8s-fw-a3547a17b45fb11e794e942010a8001a default 0.0.0.0/0   tcp:6884         gke-cluster-1-d18be73f-node 
k8s-fw-a36214ad945fb11e794e942010a8001a default 0.0.0.0/0   tcp:6885         gke-cluster-1-d18be73f-node 
k8s-fw-a3736208545fb11e794e942010a8001a default 0.0.0.0/0   tcp:6886         gke-cluster-1-d18be73f-node 
k8s-fw-l7--2b2b408525a44e47    default 130.211.0.0/22  tcp:31949,tcp:32190,tcp:31936   gke-cluster-1-1e73cc9b-node 
k8s-fw-l7--858a1dc8bb79c2ef    default 130.211.0.0/22  tcp:30169,tcp:30621      gke-cluster-1-5494a47a-node 
+0

你可以使用'-vv'標誌增加'curl'命令的詳細程度嗎?這個'gcloud shell'位於哪裏? –

回答

0

如果您是在集羣內也許那就使用羣集意義IP。你能檢查它是否像那樣工作?

+0

我試圖測試服務LoadBalancer,看它是否工作,並有兩個測試用例:(1)從外部連接到互聯網的筆記本電腦(等),和,(2)從gcloud外殼。通常我首先從gcloud shell中測試一些東西,因爲它立即可用並且容易實現。通常情況下,我希望服務的LoadBalance的任何「外部」連接都可以從兩者中獲得。但是,如果我使用ClusterIP,那麼我將無法從外部訪問該功能 –