試圖找到阻止使用Istio從互聯網到k8s服務的任何連接的最佳方式。使用Istio阻止從ANY到服務的傳入連接
從Istio的政策中,最佳選擇是什麼?
混合機 - 拒絕或列表 先導 - 路由規則 - 如注射中止故障(400)或目的的策略 - 諸如斷路(最大連接0 ???)
嘗試了上述所有但沒有任何工作,並且其中很少人不太直觀地配置(並且沒有很好的記錄)。
明白,如果一個工作示例將附着
以下是Injecting HTTP fault policy一個例子。
destination: "ratings.default.svc.cluster.local"
route:
- tags:
version:
httpFault:
abort:
percent: 100
httpStatus: 400
httpStatus: 400
首先,Istio要求輸入 「類型」:
Error: Istio doesn't have configuration type , the types are destination-policy, ingress-rule, route-rule
手動添加類型後:
type: route-rule
destination: "ratings.default.svc.cluster.local"
route:
- tags:
version:
httpFault:
abort:
percent: 100
httpStatus: 400
它呼喊有關方法:
I0914 17:44:32.417839 1003 request.go:991] Response Body: 405: Method Not Allowed Error: the server does not allow this method on the requested resource
謝謝
上述兩種方法都適用於某些環境或設置。我目前正在考慮應用「ad-hock」技術,使用已部署的環境即時應用塊,這種環境不容易添加新功能(除非已部署)。 – Zvika
當您知道誰是您的客戶或服務激活使用情況時,Istio身份驗證方法將是完美的。當你想廣泛暴露你的服務時,auth將不適合。 – Zvika
爲了廣泛公開您的服務,您需要爲您想要公開的內容添加入口,並在其上設置Istio混音器規則以限制訪問 –