簡體   English   中英

無法通過 Kube.netes 在 Hazelcast 中創建集群

[英]Unable to create clusters in Hazelcast over the Kubernetes

我正在嘗試在 Kube.netes 上使用 Hazelcast。 為此,Docker 安裝在 Windows 上,Kube.netes 環境在 Docker 上模擬。這是配置文件hazelcast.xml

<?xml version="1.0" encoding="UTF-8"?>
<hazelcast
    xsi:schemaLocation="http://www.hazelcast.com/schema/config hazelcast-config-3.7.xsd"
    xmlns="http://www.hazelcast.com/schema/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <properties>
        <property name="hazelcast.discovery.enabled">true</property>
    </properties>


    <network>
        <join>
            <multicast enabled="false" />
            <tcp-ip enabled="false"/>
                
            <discovery-strategies>
                <discovery-strategy enabled="true"
                    class="com.hazelcast.kubernetes.HazelcastKubernetesDiscoveryStrategy">
                    <!-- 
                <properties>
                    
                    <property name="service-dns">cobrapp.default.endpoints.cluster.local</property>
                    <property name="service-dns-timeout">10</property>
                  </properties>
                  -->
                </discovery-strategy>
              </discovery-strategies>
        </join>
    </network>
</hazelcast>

問題是它無法在模擬環境中創建集群。 根據我的部署文件,它應該創建三個集群。 這是部署配置文件

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-deployment
  labels:
    app: test
spec:
  replicas: 3
  selector:
    matchLabels:
      app: test
  template:
    metadata:
      labels:
        app: test
    spec:
      containers:
      - name: test
        imagePullPolicy: Never
        image: testapp:latest
        ports:
        - containerPort: 5701
        - containerPort: 8085

---
apiVersion: v1
kind: Service
metadata:
  name: test-service
spec:
  selector:
    app: test
  type: LoadBalancer
  ports:
    - name: hazelcast
      port: 5701
    - name: test
      protocol: TCP
      port: 8085
      targetPort: 8085

執行部署文件時的output

Members [1] {
        Member [10.1.0.124]:5701 this
}

然而,預期的 output 是,根據部署文件,它應該包含三個集群。 如果有人可以幫忙?

Hazelcast 的默認多播發現在開箱即用的 Kube.netes 上不起作用。 你需要一個額外的插件。 有兩種選擇,Kube.netes API 和 DNS 查找。

請查看相關文檔以獲取更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM