2017-04-26 99 views
0

我有k8s羣集在谷歌雲和前端/ api容器那裏。 除了我有ElasticSearch集羣(ES1,ES2)在谷歌雲而不是下K8S如何從kubernetes容器訪問谷歌雲實例

我可以通過名稱 'API' 從容器 '前端' 訪問API容器。 我可以通過名稱'es1'訪問es1es2'。

什麼是名稱訪問ES簇狀ES1一個正確的方式,ES2從容器API /前端?

謝謝!

回答

0

如果你想引用資源的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正常服務。

+0

謝謝!我會嘗試 – Nick

1

像你的情況下,在同一個網絡/子網創建Kubernetes集羣(GKE),那麼你可以從你的K8S莢連接您的GCE實例的內部Ip's。

相關問題