我有k8s羣集在谷歌雲和前端/ api容器那裏。 除了我有ElasticSearch集羣(ES1,ES2)在谷歌雲而不是下K8S。如何從kubernetes容器訪問谷歌雲實例
我可以通過名稱 'API' 從容器 '前端' 訪問API容器。 我可以通過名稱'es1'訪問es1從es2'。
什麼是名稱訪問ES簇狀ES1一個正確的方式,ES2從容器API /前端?
謝謝!
我有k8s羣集在谷歌雲和前端/ api容器那裏。 除了我有ElasticSearch集羣(ES1,ES2)在谷歌雲而不是下K8S。如何從kubernetes容器訪問谷歌雲實例
我可以通過名稱 'API' 從容器 '前端' 訪問API容器。 我可以通過名稱'es1'訪問es1從es2'。
什麼是名稱訪問ES簇狀ES1一個正確的方式,ES2從容器API /前端?
謝謝!
如果你想引用資源的Kubernetes集羣之外,如果他們是在集羣內部,最簡單的方法可能是每個ElasticSearch實例的靜態IP分配,然後指定Kubernetes服務與人工端點:
https://kubernetes.io/docs/concepts/services-networking/service/#services-without-selectors
您可以爲每個es實例添加一個Endpoint條目。現在,好像他們是在集羣中的吊艙內部羣集DNS將解析和負載平衡的上課情況。
你創建一個這樣的端點(注意服務缺乏選擇的):
kind: Endpoints
apiVersion: v1
metadata:
name: my-service
subsets:
- addresses:
- ip: 1.2.3.4
ports:
- port: 9376
---
kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
ports:
- protocol: TCP
port: 80
targetPort: 9376
現在,您可以訪問使用my-service.my-namespace.svc.cluster.local
正常服務。
像你的情況下,在同一個網絡/子網創建Kubernetes集羣(GKE),那麼你可以從你的K8S莢連接您的GCE實例的內部Ip's。
謝謝!我會嘗試 – Nick