Search in sources :

Example 16 with DrUtil

use of com.emc.storageos.coordinator.client.service.DrUtil in project coprhd-controller by CoprHD.

the class DbDowntimeTracker method run.

/**
 * Monitor dbsvc and geodbsvc online/offline event and record downtime in ZK
 */
public void run() {
    DrUtil drUtil = new DrUtil(coordinator.getCoordinatorClient());
    if (drUtil.isStandby()) {
        log.info("Current site is standby, no need to monitor dbsvc and geodbsvc status");
        return;
    }
    log.info("Monitoring dbsvc and geodbsvc status");
    try (AutoCloseable lock = getTrackerLock()) {
        for (Site site : drUtil.listSites()) {
            updateSiteDbsvcStatus(site);
        }
    } catch (Exception e) {
        log.warn("Failed to monitor db status", e);
    }
}
Also used : Site(com.emc.storageos.coordinator.client.model.Site) DrUtil(com.emc.storageos.coordinator.client.service.DrUtil)

Example 17 with DrUtil

use of com.emc.storageos.coordinator.client.service.DrUtil in project coprhd-controller by CoprHD.

the class IpsecService method updateTargetSiteInfo.

private void updateTargetSiteInfo(long vdcConfigVersion) {
    DrUtil drUtil = new DrUtil(coordinator);
    for (Site site : drUtil.listSites()) {
        SiteInfo siteInfo;
        String siteId = site.getUuid();
        SiteInfo currentSiteInfo = coordinator.getTargetInfo(siteId, SiteInfo.class);
        if (currentSiteInfo != null) {
            siteInfo = new SiteInfo(vdcConfigVersion, SiteInfo.IPSEC_OP_ROTATE_KEY, currentSiteInfo.getTargetDataRevision(), SiteInfo.ActionScope.VDC);
        } else {
            siteInfo = new SiteInfo(vdcConfigVersion, SiteInfo.IPSEC_OP_ROTATE_KEY, SiteInfo.ActionScope.VDC);
        }
        coordinator.setTargetInfo(siteId, siteInfo);
        log.info("VDC target version updated to {} for site {}", siteInfo.getVdcConfigVersion(), siteId);
    }
}
Also used : Site(com.emc.storageos.coordinator.client.model.Site) SiteInfo(com.emc.storageos.coordinator.client.model.SiteInfo) DrUtil(com.emc.storageos.coordinator.client.service.DrUtil)

Example 18 with DrUtil

use of com.emc.storageos.coordinator.client.service.DrUtil in project coprhd-controller by CoprHD.

the class BackupOps method getNodesInfo.

public Map<String, URI> getNodesInfo() throws URISyntaxException {
    List<Service> services = coordinatorClient.locateAllServices(((CoordinatorClientImpl) coordinatorClient).getSysSvcName(), ((CoordinatorClientImpl) coordinatorClient).getSysSvcVersion(), null, null);
    // get URL schema and port
    Service svc = services.get(0);
    URI uri = svc.getEndpoint();
    int port = uri.getPort();
    String scheme = uri.getScheme();
    DrUtil util = new DrUtil();
    util.setCoordinator(coordinatorClient);
    Site localSite = util.getLocalSite();
    Map<String, String> addresses = localSite.getHostIPv4AddressMap();
    if (!localSite.isUsingIpv4()) {
        addresses = localSite.getHostIPv6AddressMap();
    }
    Map<String, URI> nodesInfo = new HashMap();
    for (Map.Entry<String, String> addr : addresses.entrySet()) {
        String nodeUri = scheme + "://" + addr.getValue() + ":" + port + "/";
        nodesInfo.put(addr.getKey(), new URI(nodeUri));
    }
    return nodesInfo;
}
Also used : Site(com.emc.storageos.coordinator.client.model.Site) DrUtil(com.emc.storageos.coordinator.client.service.DrUtil) Service(com.emc.storageos.coordinator.common.Service) URI(java.net.URI) CoordinatorClientInetAddressMap(com.emc.storageos.coordinator.client.service.impl.CoordinatorClientInetAddressMap)

Example 19 with DrUtil

use of com.emc.storageos.coordinator.client.service.DrUtil in project coprhd-controller by CoprHD.

the class DbsvcTestBase method getDbClientBase.

protected static InternalDbClient getDbClientBase(InternalDbClient dbClient) {
    dbClient.setCoordinatorClient(_coordinator);
    dbClient.setDbVersionInfo(sourceVersion);
    dbClient.setBypassMigrationLock(true);
    _encryptionProvider.setCoordinator(_coordinator);
    dbClient.setEncryptionProvider(_encryptionProvider);
    DbClientContext localCtx = new MockDbClientContext();
    localCtx.setClusterName("Test");
    localCtx.setKeyspaceName("Test");
    dbClient.setLocalContext(localCtx);
    dbClient.setDrUtil(new DrUtil(_coordinator));
    VdcUtil.setDbClient(dbClient);
    return dbClient;
}
Also used : DbClientContext(com.emc.storageos.db.client.impl.DbClientContext) DrUtil(com.emc.storageos.coordinator.client.service.DrUtil)

Example 20 with DrUtil

use of com.emc.storageos.coordinator.client.service.DrUtil in project coprhd-controller by CoprHD.

the class LazyLoadTests method setupTest.

@Before
public void setupTest() {
    DbClientImplUnitTester dbClient = new DbClientImplUnitTester();
    dbClient.setCoordinatorClient(_coordinator);
    dbClient.setDbVersionInfo(sourceVersion);
    dbClient.setBypassMigrationLock(true);
    _encryptionProvider.setCoordinator(_coordinator);
    dbClient.setEncryptionProvider(_encryptionProvider);
    DbClientContext localCtx = new DbClientContext();
    localCtx.setClusterName("Test");
    localCtx.setKeyspaceName("Test");
    dbClient.setLocalContext(localCtx);
    VdcUtil.setDbClient(dbClient);
    dbClient.setBypassMigrationLock(false);
    dbClient.setDrUtil(new DrUtil(_coordinator));
    dbClient.start();
    _dbClient = dbClient;
    modelClient = new DbModelClientImpl(_dbClient);
}
Also used : DbClientContext(com.emc.storageos.db.client.impl.DbClientContext) DbModelClientImpl(com.emc.storageos.db.client.impl.DbModelClientImpl) DbClientImplUnitTester(com.emc.storageos.db.server.DbClientTest.DbClientImplUnitTester) DrUtil(com.emc.storageos.coordinator.client.service.DrUtil) Before(org.junit.Before)

Aggregations

DrUtil (com.emc.storageos.coordinator.client.service.DrUtil)26 Site (com.emc.storageos.coordinator.client.model.Site)11 DbClientContext (com.emc.storageos.db.client.impl.DbClientContext)4 SiteInfo (com.emc.storageos.coordinator.client.model.SiteInfo)3 CoordinatorClientInetAddressMap (com.emc.storageos.coordinator.client.service.impl.CoordinatorClientInetAddressMap)3 ConfigurationImpl (com.emc.storageos.coordinator.common.impl.ConfigurationImpl)3 PropertyInfoMapper.decodeFromString (com.emc.storageos.coordinator.mapper.PropertyInfoMapper.decodeFromString)3 SiteState (com.emc.storageos.coordinator.client.model.SiteState)2 CoordinatorClient (com.emc.storageos.coordinator.client.service.CoordinatorClient)2 Configuration (com.emc.storageos.coordinator.common.Configuration)2 Service (com.emc.storageos.coordinator.common.Service)2 APIException (com.emc.storageos.svcs.errorhandling.resources.APIException)2 SysClientException (com.emc.storageos.systemservices.exceptions.SysClientException)2 ClusterInfo (com.emc.vipr.model.sys.ClusterInfo)2 IOException (java.io.IOException)2 HashMap (java.util.HashMap)2 Before (org.junit.Before)2 SiteMapper (com.emc.storageos.api.mapper.SiteMapper)1 DbVersionInfo (com.emc.storageos.coordinator.client.model.DbVersionInfo)1 MigrationStatus (com.emc.storageos.coordinator.client.model.MigrationStatus)1