GeoMesa (Accumulo の GIS 拡張機能) を使用し、このリポジトリのように Docker を使用して仮想化したいと考えています。次に、Java を使用して Accumulo インスタンスに接続します。
Instance i = new ZooKeeperInstance("docker_instance",zkIP:port);
Connector conn = i.getConnector(user, new PasswordToken(password));
接続が確立されず、ハングします (この質問のように)。以下を使用して ZooKeeper インスタンスに接続できます
./zkCli.sh -server ip:port
したがって、instance_name が間違っていると思います。最初にリンクされたレポに記載されているものを使用しました。ただし、必要な instance_name を確認する方法がわかりません。
私の問題を再現可能にするために、必要なすべての依存関係と蓄積を備えたデジタルオーシャンサーバーをセットアップしました。zkCli を使用して Zookeeper への接続が可能であることをテストしaccumulo shell
、サーバーで使用して資格情報を確認しました。
Instance i = new ZooKeeperInstance("DIGITAL_OCEAN","46.101.199.216:2181");
// WARN org.apache.accumulo.core.client.ClientConfiguration - Found no client.conf in default paths. Using default client configuration values.
System.out.println("This is reached");
Connector conn = i.getConnector("root", new PasswordToken("mypassw"));
System.out.println("This is not reached");