在 java s3 api 中指定多个端点供 ceph 连接到 ceph 集群?

specify more than one endpoint in java s3 api for ceph to connect to ceph cluster?

大家好,我刚开始接触 ceph 对象存储,即 radosgateway,为此目的,我已经创建了一个非常基本的单节点 ceph/daemon docker 容器,它工作得很好对于 s3cmd 和 java s3 API(尽管在发出命令 ceph mgr module enable dashboard 时容器关闭,但 mgr 仪表板不起作用)但我似乎无法弄清楚的一件事是我们如何指定我们的 java s3 客户端有多个端点连接到我们的集群?它与 HTTP 前端有什么关系吗?请需要一些指针或示例示例 great.Following 是我连接到使用 ceph/daemon 图像的 docker 容器构建的单节点 ceph 集群的代码。

String accessKey = "demoKey";
String secretKey = "demoKey";
            try {

                ClientConfiguration clientConfig = new ClientConfiguration();
                clientConfig.setProtocol(Protocol.HTTP);
                System.setProperty(SDKGlobalConfiguration.DISABLE_CERT_CHECKING_SYSTEM_PROPERTY,"true");
                if (SDKGlobalConfiguration.isCertCheckingDisabled())
                {
                  System.out.println("Cert checking is disabled");
                }
            AWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
            AmazonS3 conn = new AmazonS3Client(credentials);
            conn.setEndpoint("http://ubuntu:8080"); //more than one endpoint ??
            List<Bucket> buckets = conn.listBuckets();
            for (Bucket bucket : buckets) {
                    System.out.println(bucket.getName() + "\t" +
                            StringUtils.fromDate(bucket.getCreationDate()));
            }
    }catch(Exception ex)
            {
                ex.printStackTrace();
            }

终于是我的ceph版本了 ceph 版本 14.2.4 nautilus(稳定)

Ceph Object Gateway 可以有多个实例。这些由一些负载平衡器组合。您有一个端点将负载分配到 ceph 对象网关实例上。负载均衡器本身也可以扩展(即循环 DNS 或诸如此类)。

我找到了一个很好的用例here。也许有帮助。看一下媒体存储架构。