2014-11-14 146 views
1

在Google Container Engine 4.0.2版中,我可以在高端口8080,9000等上創建服務,但是當我嘗試降低端口80,81等時,該服務不起作用。我檢查了防火牆規則並嘗試了一個全新的項目,但沒有成功。我檢查了發行說明,並且有一個阻止兩個服務引用相同端口的錯誤,但事實並非如此。任何可能發生的暗示?端口80上的服務

+0

端口80被認爲是爲HTTP服務器保留的。你有沒有在你的系統上運行的程序?此外,[這篇文章](http://stackoverflow.com/questions/1694144/can-two-applications-listen-to-the-same-port)可能會回答你關於服務共享一個端口的問題。 – 2014-11-14 21:31:20

+0

問題是關於谷歌kubernetes容器引擎,而不是標準的TCP/IP網絡。我指的是一個kubernetes服務,而不是一個節點上運行的標準服務(例如Linux機器) – 2014-11-14 21:48:10

回答

2

您目前無法綁定到低端口(1-1024),因爲tcp代理服務作爲非特權用戶運行。如果你看看你的日誌,你應該看到類似於如下的錯誤:

E1030 07:10:54.345547 05091 proxier.go:411]無法獲得操場的套接字:listen tcp 0.0.0.0:80:bind:permission被拒絕

這就是爲什麼這些例子都使用高數字端口。

對於標準非特權http/s端口,您可以嘗試端口8080或8443,直到GKE支持綁定到低編號端口。

+0

在0.5版本中,您應該能夠綁定到任何端口。 – 2014-11-20 02:49:30