private CephRbdConnectionManager(CephRbdInfo config, String poolName) {
   try {
     LOG.trace("Opening a new connection to Ceph cluster pool=" + poolName);
     rados = new Rados(config.getCephUser());
     rados.confSet(KEYRING, config.getCephKeyringFile());
     rados.confReadFile(new File(config.getCephConfigFile()));
     rados.connect();
     pool = poolName;
     ioContext = rados.ioCtxCreate(pool);
     rbd = new Rbd(ioContext);
   } catch (RadosException e) {
     disconnect();
     LOG.warn("Unable to connect to Ceph cluster");
     throw new EucalyptusCephException(
         "Failed to connect to pool "
             + poolName
             + " in Ceph cluster. Verify Ceph cluster health, privileges of Ceph user assigned to Eucalyptus, Ceph parameters configured in Eucalyptus "
             + config.toString()
             + " and retry operation",
         e);
   }
 }