public static APIQueryPrimaryStorageReply __example__() { APIQueryPrimaryStorageReply reply = new APIQueryPrimaryStorageReply(); PrimaryStorageInventory ps = new PrimaryStorageInventory(); ps.setName("PS1"); ps.setUrl("/zstack_ps"); ps.setType("LocalStorage"); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); reply.setInventories(Collections.singletonList(ps)); return reply; }
PrimaryStorageStatusChangedData d = (PrimaryStorageStatusChangedData) data; if (!PrimaryStorageStatus.Connected.toString().equals(d.getNewStatus())) { return;
public static APIUpdatePrimaryStorageEvent __example__() { APIUpdatePrimaryStorageEvent event = new APIUpdatePrimaryStorageEvent(); PrimaryStorageInventory ps = new PrimaryStorageInventory(); ps.setName("New PS1"); ps.setUrl("/zstack_ps"); ps.setType("LocalStorage"); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); event.setInventory(ps); return event; }
public static APIAddPrimaryStorageEvent __example__() { APIAddPrimaryStorageEvent event = new APIAddPrimaryStorageEvent(); PrimaryStorageInventory ps = new PrimaryStorageInventory(); ps.setName("PS1"); ps.setUrl("/zstack_ps"); ps.setType("LocalStorage"); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); event.setInventory(ps); return event; }
protected boolean changeStatus(PrimaryStorageStatus status) { if (status == self.getStatus()) { return false; } PrimaryStorageStatus oldStatus = self.getStatus(); self.setStatus(status); self = dbf.updateAndRefresh(self); PrimaryStorageStatusChangedData d = new PrimaryStorageStatusChangedData(); d.setInventory(PrimaryStorageInventory.valueOf(self)); d.setPrimaryStorageUuid(self.getUuid()); d.setOldStatus(oldStatus.toString()); d.setNewStatus(status.toString()); evtf.fire(PrimaryStorageCanonicalEvent.PRIMARY_STORAGE_STATUS_CHANGED_PATH, d); logger.debug(String.format("the primary storage[uuid:%s, name:%s] changed status from %s to %s", self.getUuid(), self.getName(), oldStatus, status)); return true; }
public static APIAttachPrimaryStorageToClusterEvent __example__() { APIAttachPrimaryStorageToClusterEvent event = new APIAttachPrimaryStorageToClusterEvent(); PrimaryStorageInventory ps = new PrimaryStorageInventory(); ps.setName("PS1"); ps.setUrl("/zstack_ps"); ps.setType("LocalStorage"); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); event.setInventory(ps); return event; }
public static APIReconnectPrimaryStorageEvent __example__() { APIReconnectPrimaryStorageEvent event = new APIReconnectPrimaryStorageEvent(); PrimaryStorageInventory ps = new PrimaryStorageInventory(); ps.setName("PS1"); ps.setUrl("/zstack_ps"); ps.setType("LocalStorage"); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); event.setInventory(ps); return event; }
@Override public void run(Map tokens, Object data) { if (!evtf.isFromThisManagementNode(tokens)) { return; } PrimaryStorageStatusChangedData d = (PrimaryStorageStatusChangedData) data; if (!PrimaryStorageStatus.Connected.toString().equals(d.getNewStatus())) { return; } SimpleQuery<VolumeVO> q = dbf.createQuery(VolumeVO.class); q.add(VolumeVO_.primaryStorageUuid, Op.EQ, d.getPrimaryStorageUuid()); q.add(VolumeVO_.status, Op.EQ, VolumeStatus.Ready); q.add(VolumeVO_.actualSize, Op.NULL); List<VolumeVO> vols = q.list(); if (vols.isEmpty()) { return; } List<SyncVolumeSizeMsg> msgs = CollectionUtils.transformToList(vols, new Function<SyncVolumeSizeMsg, VolumeVO>() { @Override public SyncVolumeSizeMsg call(VolumeVO arg) { SyncVolumeSizeMsg msg = new SyncVolumeSizeMsg(); msg.setVolumeUuid(arg.getUuid()); bus.makeTargetServiceIdByResourceUuid(msg, VolumeConstant.SERVICE_ID, arg.getUuid()); return msg; } }); bus.send(msgs); } });
public static APIDetachPrimaryStorageFromClusterEvent __example__() { APIDetachPrimaryStorageFromClusterEvent event = new APIDetachPrimaryStorageFromClusterEvent(); PrimaryStorageInventory ps = new PrimaryStorageInventory(); ps.setName("PS1"); ps.setUrl("/zstack_ps"); ps.setType("LocalStorage"); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); event.setInventory(ps); return event; }
public static APIAddMonToCephPrimaryStorageEvent __example__() { APIAddMonToCephPrimaryStorageEvent event = new APIAddMonToCephPrimaryStorageEvent(); CephPrimaryStorageInventory ps = new CephPrimaryStorageInventory(); ps.setName("My Ceph Backup Storage"); ps.setDescription("Public Ceph Backup Storage"); ps.setCreateDate(new Timestamp(org.zstack.header.message.DocUtils.date)); ps.setLastOpDate(new Timestamp(org.zstack.header.message.DocUtils.date)); ps.setType("Ceph"); CephPrimaryStorageMonInventory mon = new CephPrimaryStorageMonInventory(); mon.setMonUuid(uuid()); mon.setMonAddr("10.0.1.2"); ps.setMons(Collections.singletonList(mon)); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); ps.setAvailableCapacity(924L * 1024L * 1024L); ps.setTotalCapacity(1024L * 1024L * 1024L); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); return event; }
public static APIRemoveMonFromCephPrimaryStorageEvent __example__() { APIRemoveMonFromCephPrimaryStorageEvent event = new APIRemoveMonFromCephPrimaryStorageEvent(); CephPrimaryStorageInventory ps = new CephPrimaryStorageInventory(); ps.setName("My Ceph Primary Storage"); ps.setDescription("Public Ceph Primary Storage"); ps.setCreateDate(new Timestamp(org.zstack.header.message.DocUtils.date)); ps.setLastOpDate(new Timestamp(org.zstack.header.message.DocUtils.date)); ps.setType("Ceph"); CephPrimaryStorageMonInventory mon = new CephPrimaryStorageMonInventory(); mon.setMonUuid(uuid()); mon.setMonAddr("10.0.1.2"); ps.setMons(Collections.singletonList(mon)); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); ps.setAvailableCapacity(924L * 1024L * 1024L); ps.setTotalCapacity(1024L * 1024L * 1024L); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); event.setInventory(ps); return event; }
public static APIUpdateCephPrimaryStorageMonEvent __example__() { APIUpdateCephPrimaryStorageMonEvent event = new APIUpdateCephPrimaryStorageMonEvent(); CephPrimaryStorageInventory ps = new CephPrimaryStorageInventory(); ps.setName("My Ceph Primary Storage"); ps.setDescription("Public Ceph Primary Storage"); ps.setCreateDate(new Timestamp(org.zstack.header.message.DocUtils.date)); ps.setLastOpDate(new Timestamp(org.zstack.header.message.DocUtils.date)); ps.setType("Ceph"); CephPrimaryStorageMonInventory mon = new CephPrimaryStorageMonInventory(); mon.setMonUuid(uuid()); mon.setMonAddr("10.0.1.4"); ps.setMons(Collections.singletonList(mon)); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); ps.setAvailableCapacity(924L * 1024L * 1024L); ps.setTotalCapacity(1024L * 1024L * 1024L); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); event.setInventory(ps); return event; }
public static APISyncPrimaryStorageCapacityEvent __example__() { APISyncPrimaryStorageCapacityEvent event = new APISyncPrimaryStorageCapacityEvent(); PrimaryStorageInventory ps = new PrimaryStorageInventory(); ps.setName("PS1"); ps.setUrl("/zstack_ps"); ps.setType("LocalStorage"); ps.setAttachedClusterUuids(Collections.singletonList(uuid())); ps.setState(PrimaryStorageState.Enabled.toString()); ps.setStatus(PrimaryStorageStatus.Connected.toString()); ps.setAvailableCapacity(1024L * 1024L * 928L); ps.setAvailablePhysicalCapacity(1024L * 1024L * 928L); event.setInventory(ps); return event; }
lsInv.setTotalPhysicalCapacity(SizeUnit.GIGABYTE.toByte(300L)); lsInv.setState(PrimaryStorageState.Enabled.toString()); lsInv.setStatus(PrimaryStorageStatus.Connected.toString()); lsInv.setType("LocalStorage"); lsInv.setCreateDate(new Timestamp(org.zstack.header.message.DocUtils.date)); nfsInv.setTotalPhysicalCapacity(SizeUnit.GIGABYTE.toByte(300L)); nfsInv.setState(PrimaryStorageState.Enabled.toString()); nfsInv.setStatus(PrimaryStorageStatus.Connected.toString()); nfsInv.setType("NFS"); nfsInv.setCreateDate(new Timestamp(org.zstack.header.message.DocUtils.date));
@Override protected void run(Map tokens, Object data) { PrimaryStorageCanonicalEvent.PrimaryStorageHostStatusChangeData d = (PrimaryStorageCanonicalEvent.PrimaryStorageHostStatusChangeData)data; PrimaryStorageStatus nfsStatus = Q.New(PrimaryStorageVO.class) .eq(PrimaryStorageVO_.uuid, d.getPrimaryStorageUuid()) .eq(PrimaryStorageVO_.type, NfsPrimaryStorageConstant.NFS_PRIMARY_STORAGE_TYPE) .select(PrimaryStorageVO_.status) .findValue(); boolean recoverConnection = d.getNewStatus() == PrimaryStorageHostStatus.Connected && d.getOldStatus() != PrimaryStorageHostStatus.Connected; if (nfsStatus == null || !recoverConnection) { return; } logger.debug(String.format("NFS[uuid:%s] recover connection to host[uuid:%s]", d.getPrimaryStorageUuid(), d.getHostUuid())); if (nfsStatus != PrimaryStorageStatus.Connected) { // use sync call here to make sure the NFS primary storage connected before continue to the next step ChangePrimaryStorageStatusMsg cmsg = new ChangePrimaryStorageStatusMsg(); cmsg.setPrimaryStorageUuid(d.getPrimaryStorageUuid()); cmsg.setStatus(PrimaryStorageStatus.Connected.toString()); bus.makeTargetServiceIdByResourceUuid(cmsg, PrimaryStorageConstant.SERVICE_ID, d.getPrimaryStorageUuid()); bus.call(cmsg); logger.debug(String.format("connect nfs[uuid:%s] completed", d.getPrimaryStorageUuid())); } recalculateCapacity(d.getPrimaryStorageUuid()); } });
"Connected, current status is %s", ps.getUuid(), ps.getStatus().toString())); return;
protected PrimaryStorageInventory(PrimaryStorageVO vo) { setZoneUuid(vo.getZoneUuid()); setCreateDate(vo.getCreateDate()); setDescription(vo.getDescription()); setLastOpDate(vo.getLastOpDate()); setName(vo.getName()); setState(vo.getState().toString()); setType(vo.getType()); setUrl(vo.getUrl()); setUuid(vo.getUuid()); setMountPath(vo.getMountPath()); setStatus(vo.getStatus().toString()); attachedClusterUuids = new ArrayList<String>(vo.getAttachedClusterRefs().size()); for (PrimaryStorageClusterRefVO ref : vo.getAttachedClusterRefs()) { attachedClusterUuids.add(ref.getClusterUuid()); } if (vo.getCapacity() != null) { setTotalCapacity(vo.getCapacity().getTotalCapacity()); setAvailableCapacity(vo.getCapacity().getAvailableCapacity()); setTotalPhysicalCapacity(vo.getCapacity().getTotalPhysicalCapacity()); setAvailablePhysicalCapacity(vo.getCapacity().getAvailablePhysicalCapacity()); setSystemUsedCapacity(vo.getCapacity().getSystemUsedCapacity()); } }