mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Cleanup of Xen and XenServer terms. Cloned xen plugin creating a xenserver plugin, then removed xen plugin
Signed-off-by: Tim Mackey <tmackey@gmail.com> Signed-off-by: Sebastien Goasguen <runseb@gmail.com>
This commit is contained in:
parent
303e6ffc1e
commit
a8212d9ef4
@ -377,7 +377,7 @@ public class ApiConstants {
|
||||
public static final String SECURITY_GROUP_EANBLED = "securitygroupenabled";
|
||||
public static final String LOCAL_STORAGE_ENABLED = "localstorageenabled";
|
||||
public static final String GUEST_IP_TYPE = "guestiptype";
|
||||
public static final String XEN_NETWORK_LABEL = "xennetworklabel";
|
||||
public static final String XENSERVER_NETWORK_LABEL = "xenservernetworklabel";
|
||||
public static final String KVM_NETWORK_LABEL = "kvmnetworklabel";
|
||||
public static final String VMWARE_NETWORK_LABEL = "vmwarenetworklabel";
|
||||
public static final String HYPERV_NETWORK_LABEL = "hypervnetworklabel";
|
||||
|
||||
@ -55,7 +55,7 @@ public class AddTrafficTypeCmd extends BaseAsyncCreateCmd {
|
||||
@Parameter(name = ApiConstants.TRAFFIC_TYPE, type = CommandType.STRING, required = true, description = "the trafficType to be added to the physical network")
|
||||
private String trafficType;
|
||||
|
||||
@Parameter(name = ApiConstants.XEN_NETWORK_LABEL,
|
||||
@Parameter(name = ApiConstants.XENSERVER_NETWORK_LABEL,
|
||||
type = CommandType.STRING,
|
||||
description = "The network name label of the physical device dedicated to this traffic on a XenServer host")
|
||||
private String xenLabel;
|
||||
|
||||
@ -45,7 +45,7 @@ public class UpdateTrafficTypeCmd extends BaseAsyncCmd {
|
||||
@Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = TrafficTypeResponse.class, required = true, description = "traffic type id")
|
||||
private Long id;
|
||||
|
||||
@Parameter(name = ApiConstants.XEN_NETWORK_LABEL,
|
||||
@Parameter(name = ApiConstants.XENSERVER_NETWORK_LABEL,
|
||||
type = CommandType.STRING,
|
||||
description = "The network name label of the physical device dedicated to this traffic on a XenServer host")
|
||||
private String xenLabel;
|
||||
|
||||
@ -40,7 +40,7 @@ public class TrafficTypeResponse extends BaseResponse {
|
||||
@Param(description = "the physical network this belongs to")
|
||||
private String physicalNetworkId;
|
||||
|
||||
@SerializedName(ApiConstants.XEN_NETWORK_LABEL)
|
||||
@SerializedName(ApiConstants.XENSERVER_NETWORK_LABEL)
|
||||
@Param(description = "The network name label of the physical device dedicated to this traffic on a XenServer host")
|
||||
private String xenNetworkLabel;
|
||||
|
||||
|
||||
@ -2007,9 +2007,9 @@ public class EC2Engine extends ManagerBase {
|
||||
ec2Image.setState(temp.getIsReady() ? "available" : "pending");
|
||||
ec2Image.setDomainId(temp.getDomainId());
|
||||
if (temp.getHyperVisor().equalsIgnoreCase("xenserver"))
|
||||
ec2Image.setHypervisor("xen");
|
||||
ec2Image.setHypervisor("xenserver");
|
||||
else if (temp.getHyperVisor().equalsIgnoreCase("ovm"))
|
||||
ec2Image.setHypervisor("ovm"); // valid values for hypervisor is 'ovm' and 'xen'
|
||||
ec2Image.setHypervisor("ovm"); // valid values for hypervisor is 'ovm' and 'xenserver'
|
||||
else
|
||||
ec2Image.setHypervisor("");
|
||||
if (temp.getDisplayText() == null)
|
||||
@ -2614,7 +2614,7 @@ public class EC2Engine extends ManagerBase {
|
||||
*/
|
||||
private String mapToAmazonHypervisorType(String hypervisor) {
|
||||
if (hypervisor.equalsIgnoreCase("Xenserver"))
|
||||
return ("xen");
|
||||
return ("xenserver");
|
||||
else if (hypervisor.equalsIgnoreCase("Ovm"))
|
||||
return ("ovm");
|
||||
else
|
||||
|
||||
@ -1258,7 +1258,7 @@ label.weekly=Weekly
|
||||
label.welcome.cloud.console=Welcome to Management Console
|
||||
label.welcome=Welcome
|
||||
label.what.is.cloudstack=What is CloudStack&\#8482?
|
||||
label.xen.traffic.label=XenServer traffic label
|
||||
label.xenserver.traffic.label=XenServer traffic label
|
||||
label.yes=Yes
|
||||
label.zone.details=Zone details
|
||||
label.zone.id=Zone ID
|
||||
|
||||
@ -1476,7 +1476,7 @@ label.welcome.cloud.console=Bienvenue dans la Console d\\'Administration
|
||||
label.what.is.cloudstack=Qu\\'est-ce-que CloudStack&\#8482; ?
|
||||
label.xenserver.tools.version.61.plus=XenServer Tools Version 6.1\\+
|
||||
label.Xenserver.Tools.Version61plus=XenServer Tools Version 6.1\\+
|
||||
label.xen.traffic.label=Libell\u00e9 trafic XenServer
|
||||
label.xenserver.traffic.label=Libell\u00e9 trafic XenServer
|
||||
label.yes=Oui
|
||||
label.zone.dedicated=Zone d\u00e9di\u00e9e
|
||||
label.zone.details=D\u00e9tails de la zone
|
||||
|
||||
@ -621,7 +621,7 @@ label.vsmctrlvlanid=VLAN ID di Controllo
|
||||
label.vsmpktvlanid=VLAN ID del Pacchetto
|
||||
label.vsmstoragevlanid=VLAN ID di Storage
|
||||
label.what.is.cloudstack=Che cosa \u00e8 CloudStack&\#8482?
|
||||
label.xen.traffic.label=Etichetta del traffico via XenServer
|
||||
label.xenserver.traffic.label=Etichetta del traffico via XenServer
|
||||
label.yes=S\u00ec
|
||||
label.zone.details=Dettagli della Zona
|
||||
label.zone.name=Nome Zona
|
||||
|
||||
@ -1453,7 +1453,7 @@ label.welcome=\u3088\u3046\u3053\u305d
|
||||
label.what.is.cloudstack=CloudStack&\#8482; \u306b\u3064\u3044\u3066
|
||||
label.xenserver.tools.version.61.plus=XenServer Tools Version 6.1 \u4ee5\u964d
|
||||
label.Xenserver.Tools.Version61plus=XenServer Tools Version 6.1 \u4ee5\u964d
|
||||
label.xen.traffic.label=XenServer \u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af \u30e9\u30d9\u30eb
|
||||
label.xenserver.traffic.label=XenServer \u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af \u30e9\u30d9\u30eb
|
||||
label.yes=\u306f\u3044
|
||||
label.zone.dedicated=\u5c02\u7528\u30be\u30fc\u30f3
|
||||
label.zone.details=\u30be\u30fc\u30f3\u306e\u8a73\u7d30
|
||||
|
||||
@ -1133,7 +1133,7 @@ label.weekly=\ub9e4\uc8fc
|
||||
label.welcome.cloud.console=\uad00\ub9ac \ucf58\uc194\uc5d0 \uc624\uc2e0\uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4\!
|
||||
label.welcome=\uc5b4\uc11c \uc624\uc2ed\uc2dc\uc624
|
||||
label.what.is.cloudstack=CloudStack\u2122 \uc815\ubcf4
|
||||
label.xen.traffic.label=XenServer \ud2b8\ub798\ud53d \ub77c\ubca8
|
||||
label.xenserver.traffic.label=XenServer \ud2b8\ub798\ud53d \ub77c\ubca8
|
||||
label.yes=\uc608
|
||||
label.zone.details=Zone \uc0c1\uc138
|
||||
label.zone.id=Zone ID
|
||||
|
||||
@ -921,7 +921,7 @@ label.weekly=Ukentlig
|
||||
label.welcome.cloud.console=Velkommen til administrasjonskonsollet
|
||||
label.welcome=Velkommen
|
||||
label.what.is.cloudstack=Hva er CloudStack&\#8482?
|
||||
label.xen.traffic.label=XenServer trafikketikett
|
||||
label.xenserver.traffic.label=XenServer trafikketikett
|
||||
label.yes=Ja
|
||||
label.zone.details=Sonedetaljer
|
||||
label.zone.id=Sone ID
|
||||
|
||||
@ -1246,7 +1246,7 @@ label.weekly=Wekelijks
|
||||
label.welcome.cloud.console=Welkom op de Management Console
|
||||
label.welcome=Welkom
|
||||
label.what.is.cloudstack=Wat is CloudStack&\#8482?
|
||||
label.xen.traffic.label=XenServer verkeerslabel
|
||||
label.xenserver.traffic.label=XenServer verkeerslabel
|
||||
label.yes=Ja
|
||||
label.zone.details=Zone details
|
||||
label.zone.id=Zone ID
|
||||
|
||||
@ -1248,7 +1248,7 @@ label.weekly=Semanal
|
||||
label.welcome=Bem-Vindo
|
||||
label.welcome.cloud.console=Painel de Controle
|
||||
label.what.is.cloudstack=O que \u00e9 o CloudStack&\#8482?
|
||||
label.xen.traffic.label=Etiqueta de tr\u00e1fego XenServer
|
||||
label.xenserver.traffic.label=Etiqueta de tr\u00e1fego XenServer
|
||||
label.yes=Sim
|
||||
label.zone.details=Detalhes de zona
|
||||
label.zone.id=ID da Zona
|
||||
|
||||
@ -1203,7 +1203,7 @@ label.weekly=\u0415\u0436\u0435\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u043e
|
||||
label.welcome.cloud.console=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f
|
||||
label.welcome=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c
|
||||
label.what.is.cloudstack=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 CloudStack?
|
||||
label.xen.traffic.label=\u041c\u0435\u0442\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 XenServer
|
||||
label.xenserver.traffic.label=\u041c\u0435\u0442\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 XenServer
|
||||
label.yes=\u0414\u0430
|
||||
label.zone.details=\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0437\u043e\u043d\u044b
|
||||
label.zone.id=ID \u0437\u043e\u043d\u044b
|
||||
|
||||
@ -1453,7 +1453,7 @@ label.welcome=\u6b22\u8fce
|
||||
label.what.is.cloudstack=\u4ec0\u4e48\u662f CloudStack&\#8482?
|
||||
label.xenserver.tools.version.61.plus=XenServer Tools \u7248\u672c 6.1\\+
|
||||
label.Xenserver.Tools.Version61plus=XenServer Tools \u7248\u672c 6.1\\+
|
||||
label.xen.traffic.label=XenServer \u6d41\u91cf\u6807\u7b7e
|
||||
label.xenserver.traffic.label=XenServer \u6d41\u91cf\u6807\u7b7e
|
||||
label.yes=\u662f
|
||||
label.zone.dedicated=\u8d44\u6e90\u57df\u5df2\u4e13\u7528
|
||||
label.zone.details=\u533a\u57df\u8be6\u60c5
|
||||
|
||||
@ -147,7 +147,7 @@
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-plugin-hypervisor-xen</artifactId>
|
||||
<artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
||||
@ -528,7 +528,7 @@
|
||||
<!--
|
||||
Discovers
|
||||
-->
|
||||
<bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer">
|
||||
<bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer">
|
||||
<property name="name" value="XCP Agent"/>
|
||||
</bean>
|
||||
|
||||
|
||||
@ -48,7 +48,7 @@ public class PhysicalNetworkTrafficTypeVO implements PhysicalNetworkTrafficType
|
||||
@Enumerated(value = EnumType.STRING)
|
||||
TrafficType trafficType;
|
||||
|
||||
@Column(name = "xen_network_label")
|
||||
@Column(name = "xenserver_network_label")
|
||||
private String xenNetworkLabel;
|
||||
|
||||
@Column(name = "kvm_network_label")
|
||||
|
||||
@ -58,7 +58,7 @@
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-plugin-hypervisor-xen</artifactId>
|
||||
<artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
@ -52,7 +52,7 @@ import com.cloud.host.dao.HostDao;
|
||||
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||
import com.cloud.hypervisor.kvm.resource.LibvirtComputingResource;
|
||||
import com.cloud.hypervisor.vmware.VmwareServerDiscoverer;
|
||||
import com.cloud.hypervisor.xen.resource.XcpOssResource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XcpOssResource;
|
||||
import com.cloud.resource.ServerResource;
|
||||
import com.cloud.utils.component.ManagerBase;
|
||||
import com.cloud.utils.exception.CloudRuntimeException;
|
||||
|
||||
@ -85,17 +85,17 @@ public class DirectAgentTest extends CloudStackTestNGBase {
|
||||
|
||||
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), getHostGateway(), getHostCidr(), 8, "test");
|
||||
pod = podDao.persist(pod);
|
||||
// create xen cluster
|
||||
// create xenserver cluster
|
||||
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
|
||||
cluster.setHypervisorType(HypervisorType.XenServer.toString());
|
||||
cluster.setClusterType(ClusterType.CloudManaged);
|
||||
cluster.setManagedState(ManagedState.Managed);
|
||||
cluster = clusterDao.persist(cluster);
|
||||
clusterId = cluster.getId();
|
||||
// create xen host
|
||||
// create xenserver host
|
||||
|
||||
host = new HostVO(getHostGuid());
|
||||
host.setName("devcloud xen host");
|
||||
host.setName("devcloud xenserver host");
|
||||
host.setType(Host.Type.Routing);
|
||||
host.setHypervisorType(HypervisorType.XenServer);
|
||||
host.setPrivateIpAddress(getHostIp());
|
||||
|
||||
@ -158,7 +158,7 @@ public class EndpointSelectorTest {
|
||||
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), "10.223.0.1", "10.233.2.2/25", 8, "test");
|
||||
pod = podDao.persist(pod);
|
||||
podId = pod.getId();
|
||||
// create xen cluster
|
||||
// create xenserver cluster
|
||||
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
|
||||
cluster.setHypervisorType(Hypervisor.HypervisorType.XenServer.toString());
|
||||
cluster.setClusterType(Cluster.ClusterType.CloudManaged);
|
||||
@ -230,7 +230,7 @@ public class EndpointSelectorTest {
|
||||
public HostVO createHost(Hypervisor.HypervisorType hypervisorType) {
|
||||
String uuid = UUID.randomUUID().toString();
|
||||
HostVO host = new HostVO(uuid);
|
||||
host.setName("devcloud xen host");
|
||||
host.setName("devcloud xenserver host");
|
||||
host.setType(Host.Type.Routing);
|
||||
host.setPrivateIpAddress(uuid);
|
||||
host.setDataCenterId(dcId);
|
||||
|
||||
@ -191,17 +191,17 @@ public class SnapshotTest extends CloudStackTestNGBase {
|
||||
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test");
|
||||
pod = podDao.persist(pod);
|
||||
podId = pod.getId();
|
||||
// create xen cluster
|
||||
// create xenserver cluster
|
||||
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
|
||||
cluster.setHypervisorType(this.getHypervisor().toString());
|
||||
cluster.setClusterType(ClusterType.CloudManaged);
|
||||
cluster.setManagedState(ManagedState.Managed);
|
||||
cluster = clusterDao.persist(cluster);
|
||||
clusterId = cluster.getId();
|
||||
// create xen host
|
||||
// create xenserver host
|
||||
|
||||
host = new HostVO(this.getHostGuid());
|
||||
host.setName("devcloud xen host");
|
||||
host.setName("devcloud xenserver host");
|
||||
host.setType(Host.Type.Routing);
|
||||
host.setPrivateIpAddress(this.getHostIp());
|
||||
host.setDataCenterId(dc.getId());
|
||||
|
||||
@ -157,7 +157,7 @@ public class SnapshotTestWithFakeData {
|
||||
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), "10.223.0.1", "10.233.2.2/25", 8, "test");
|
||||
pod = podDao.persist(pod);
|
||||
podId = pod.getId();
|
||||
// create xen cluster
|
||||
// create xenserver cluster
|
||||
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
|
||||
cluster.setHypervisorType(Hypervisor.HypervisorType.XenServer.toString());
|
||||
cluster.setClusterType(Cluster.ClusterType.CloudManaged);
|
||||
|
||||
@ -148,17 +148,17 @@ public class VolumeServiceTest extends CloudStackTestNGBase {
|
||||
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test");
|
||||
pod = podDao.persist(pod);
|
||||
podId = pod.getId();
|
||||
// create xen cluster
|
||||
// create xenserver cluster
|
||||
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
|
||||
cluster.setHypervisorType(HypervisorType.XenServer.toString());
|
||||
cluster.setClusterType(ClusterType.CloudManaged);
|
||||
cluster.setManagedState(ManagedState.Managed);
|
||||
cluster = clusterDao.persist(cluster);
|
||||
clusterId = cluster.getId();
|
||||
// create xen host
|
||||
// create xenserver host
|
||||
|
||||
host = new HostVO(this.getHostGuid());
|
||||
host.setName("devcloud xen host");
|
||||
host.setName("devcloud xenserver host");
|
||||
host.setType(Host.Type.Routing);
|
||||
host.setPrivateIpAddress(this.getHostIp());
|
||||
host.setDataCenterId(dc.getId());
|
||||
|
||||
@ -167,17 +167,17 @@ public class VolumeTest extends CloudStackTestNGBase {
|
||||
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test");
|
||||
pod = podDao.persist(pod);
|
||||
podId = pod.getId();
|
||||
// create xen cluster
|
||||
// create xenserver cluster
|
||||
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
|
||||
cluster.setHypervisorType(this.getHypervisor().toString());
|
||||
cluster.setClusterType(ClusterType.CloudManaged);
|
||||
cluster.setManagedState(ManagedState.Managed);
|
||||
cluster = clusterDao.persist(cluster);
|
||||
clusterId = cluster.getId();
|
||||
// create xen host
|
||||
// create xenserver host
|
||||
|
||||
host = new HostVO(this.getHostGuid());
|
||||
host.setName("devcloud xen host");
|
||||
host.setName("devcloud xenserver host");
|
||||
host.setType(Host.Type.Routing);
|
||||
host.setPrivateIpAddress(this.getHostIp());
|
||||
host.setDataCenterId(dc.getId());
|
||||
|
||||
@ -109,7 +109,7 @@
|
||||
</bean>
|
||||
|
||||
|
||||
<bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer">
|
||||
<bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer">
|
||||
<property name="name" value="XCP Agent"/>
|
||||
</bean>
|
||||
|
||||
|
||||
@ -150,7 +150,7 @@ public class DefaultEndPointSelector implements EndPointSelector {
|
||||
}
|
||||
|
||||
protected EndPoint findEndPointForImageMove(DataStore srcStore, DataStore destStore) {
|
||||
// find any xen/kvm host in the scope
|
||||
// find any xenserver/kvm host in the scope
|
||||
Scope srcScope = srcStore.getScope();
|
||||
Scope destScope = destStore.getScope();
|
||||
Scope selectedScope = null;
|
||||
|
||||
@ -70,9 +70,9 @@
|
||||
</display>
|
||||
</interface>
|
||||
<class id="6" corner="BOTTOM_RIGHT" language="java"
|
||||
name="org.apache.cloudstack.storage.datastore.configurator.xen.XenNfsConfigurator"
|
||||
name="org.apache.cloudstack.storage.datastore.configurator.xenserver.XenNfsConfigurator"
|
||||
project="cloud-engine-storage-volume"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenNfsConfigurator.java"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xenserver/XenNfsConfigurator.java"
|
||||
binary="false">
|
||||
<position height="-1" width="-1" x="1482" y="448"/>
|
||||
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">
|
||||
@ -81,9 +81,9 @@
|
||||
</display>
|
||||
</class>
|
||||
<class id="7" corner="BOTTOM_RIGHT" language="java"
|
||||
name="org.apache.cloudstack.storage.datastore.configurator.xen.AbstractXenConfigurator"
|
||||
name="org.apache.cloudstack.storage.datastore.configurator.xenserver.AbstractXenConfigurator"
|
||||
project="cloud-engine-storage-volume"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/AbstractXenConfigurator.java"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xenserver/AbstractXenConfigurator.java"
|
||||
binary="false">
|
||||
<position height="-1" width="-1" x="1536" y="278"/>
|
||||
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">
|
||||
@ -134,9 +134,9 @@
|
||||
</display>
|
||||
</class>
|
||||
<class id="12" corner="BOTTOM_RIGHT" language="java"
|
||||
name="org.apache.cloudstack.storage.datastore.lifecycle.DefaultXenPrimaryDataStoreLifeCycle"
|
||||
name="org.apache.cloudstack.storage.datastore.lifecycle.DefaultXenServerPrimaryDataStoreLifeCycle"
|
||||
project="cloud-engine-storage-volume"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/lifecycle/DefaultXenPrimaryDataStoreLifeCycle.java"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/lifecycle/DefaultXenServerPrimaryDataStoreLifeCycle.java"
|
||||
binary="false">
|
||||
<position height="-1" width="-1" x="724" y="1502"/>
|
||||
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">
|
||||
@ -156,9 +156,9 @@
|
||||
</display>
|
||||
</class>
|
||||
<class id="14" corner="BOTTOM_RIGHT" language="java"
|
||||
name="org.apache.cloudstack.storage.datastore.configurator.xen.XenIscsiConfigurator"
|
||||
name="org.apache.cloudstack.storage.datastore.configurator.xenserver.XenServerIscsiConfigurator"
|
||||
project="cloud-engine-storage-volume"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenIscsiConfigurator.java"
|
||||
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xenserver/XenServerIscsiConfigurator.java"
|
||||
binary="false">
|
||||
<position height="-1" width="-1" x="1817" y="450"/>
|
||||
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">
|
||||
|
||||
@ -11,8 +11,8 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>cloud-plugin-hypervisor-xen</artifactId>
|
||||
<name>Apache CloudStack Plugin - Hypervisor Xen</name>
|
||||
<artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
|
||||
<name>Apache CloudStack Plugin - Hypervisor XenServer</name>
|
||||
<parent>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloudstack-plugins</artifactId>
|
||||
@ -18,7 +18,7 @@
|
||||
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
|
||||
|
||||
<bean id="XcpServerDiscoverer"
|
||||
class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer">
|
||||
class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer">
|
||||
<property name="name" value="XCP Agent" />
|
||||
</bean>
|
||||
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.discoverer;
|
||||
package com.cloud.hypervisor.xenserver.discoverer;
|
||||
|
||||
import com.cloud.agent.AgentManager;
|
||||
import com.cloud.agent.Listener;
|
||||
@ -43,20 +43,20 @@ import com.cloud.host.HostVO;
|
||||
import com.cloud.host.Status;
|
||||
import com.cloud.hypervisor.Hypervisor;
|
||||
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||
import com.cloud.hypervisor.xen.resource.CitrixResourceBase;
|
||||
import com.cloud.hypervisor.xen.resource.XcpOssResource;
|
||||
import com.cloud.hypervisor.xen.resource.XcpServer16Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XcpServerResource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer56FP1Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer56Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer56SP2Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer600Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer602Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer610Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer620Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer620SP1Resource;
|
||||
import com.cloud.hypervisor.xen.resource.XenServerConnectionPool;
|
||||
import com.cloud.hypervisor.xen.resource.Xenserver625Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.CitrixResourceBase;
|
||||
import com.cloud.hypervisor.xenserver.resource.XcpOssResource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XcpServer16Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XcpServerResource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer56FP1Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer56Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer56SP2Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer600Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer602Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer610Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer620Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer620SP1Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServerConnectionPool;
|
||||
import com.cloud.hypervisor.xenserver.resource.Xenserver625Resource;
|
||||
import com.cloud.resource.Discoverer;
|
||||
import com.cloud.resource.DiscovererBase;
|
||||
import com.cloud.resource.ResourceStateAdapter;
|
||||
@ -347,8 +347,8 @@ public class XcpServerDiscoverer extends DiscovererBase implements Discoverer, L
|
||||
params.put("wait", Integer.toString(_wait));
|
||||
details.put("wait", Integer.toString(_wait));
|
||||
params.put("migratewait", _configDao.getValue(Config.MigrateWait.toString()));
|
||||
params.put(Config.XenMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenMaxNics.toString()));
|
||||
params.put(Config.XenHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenHeartBeatInterval.toString()));
|
||||
params.put(Config.XenServerMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenServerMaxNics.toString()));
|
||||
params.put(Config.XenServerHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenServerHeartBeatInterval.toString()));
|
||||
params.put(Config.InstanceName.toString().toLowerCase(), _instance);
|
||||
details.put(Config.InstanceName.toString().toLowerCase(), _instance);
|
||||
try {
|
||||
@ -455,7 +455,7 @@ public class XcpServerDiscoverer extends DiscovererBase implements Discoverer, L
|
||||
}
|
||||
|
||||
protected void serverConfig() {
|
||||
String value = _params.get(Config.XenSetupMultipath.key());
|
||||
String value = _params.get(Config.XenServerSetupMultipath.key());
|
||||
_setupMultipath = Boolean.parseBoolean(value);
|
||||
}
|
||||
|
||||
@ -464,23 +464,23 @@ public class XcpServerDiscoverer extends DiscovererBase implements Discoverer, L
|
||||
super.configure(name, params);
|
||||
serverConfig();
|
||||
|
||||
_publicNic = _params.get(Config.XenPublicNetwork.key());
|
||||
_privateNic = _params.get(Config.XenPrivateNetwork.key());
|
||||
_publicNic = _params.get(Config.XenServerPublicNetwork.key());
|
||||
_privateNic = _params.get(Config.XenServerPrivateNetwork.key());
|
||||
|
||||
_storageNic1 = _params.get(Config.XenStorageNetwork1.key());
|
||||
_storageNic2 = _params.get(Config.XenStorageNetwork2.key());
|
||||
_storageNic1 = _params.get(Config.XenServerStorageNetwork1.key());
|
||||
_storageNic2 = _params.get(Config.XenServerStorageNetwork2.key());
|
||||
|
||||
_guestNic = _params.get(Config.XenGuestNetwork.key());
|
||||
_guestNic = _params.get(Config.XenServerGuestNetwork.key());
|
||||
|
||||
String value = _params.get(Config.XapiWait.toString());
|
||||
_wait = NumbersUtil.parseInt(value, Integer.parseInt(Config.XapiWait.getDefaultValue()));
|
||||
|
||||
_instance = _params.get(Config.InstanceName.key());
|
||||
|
||||
value = _params.get(Config.XenSetupMultipath.key());
|
||||
value = _params.get(Config.XenServerSetupMultipath.key());
|
||||
Boolean.parseBoolean(value);
|
||||
|
||||
value = _params.get("xen.check.hvm");
|
||||
value = _params.get("xenserver.check.hvm");
|
||||
_checkHvm = false;
|
||||
_connPool = XenServerConnectionPool.getInstance();
|
||||
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import com.cloud.agent.IAgentControl;
|
||||
import com.cloud.agent.api.Answer;
|
||||
@ -291,10 +291,10 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
protected int _pollingIntervalInSeconds = 60;
|
||||
|
||||
//Hypervisor specific params with generic value, may need to be overridden for specific versions
|
||||
long _xsMemoryUsed = 128 * 1024 * 1024L; // xen hypervisor used 128 M
|
||||
long _xsMemoryUsed = 128 * 1024 * 1024L; // xenserver hypervisor used 128 M
|
||||
double _xsVirtualizationFactor = 63.0 / 64.0; // 1 - virtualization overhead
|
||||
|
||||
//static min values for guests on xen
|
||||
//static min values for guests on xenserver
|
||||
private static final long mem_128m = 134217728L;
|
||||
|
||||
protected boolean _canBridgeFirewall = false;
|
||||
@ -1490,8 +1490,8 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
vm.setPlatform(conn, platform);
|
||||
}
|
||||
}
|
||||
String xentoolsversion = details.get("hypervisortoolsversion");
|
||||
if (xentoolsversion == null || !xentoolsversion.equalsIgnoreCase("xenserver61")) {
|
||||
String xenservertoolsversion = details.get("hypervisortoolsversion");
|
||||
if (xenservertoolsversion == null || !xenservertoolsversion.equalsIgnoreCase("xenserver61")) {
|
||||
Map<String, String> platform = vm.getPlatform(conn);
|
||||
platform.remove("device_id");
|
||||
vm.setPlatform(conn, platform);
|
||||
@ -2706,13 +2706,13 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
return convertToState(vm.getPowerState(conn));
|
||||
}
|
||||
} catch (final BadServerResponse e) {
|
||||
// There is a race condition within xen such that if a vm is
|
||||
// There is a race condition within xenserver such that if a vm is
|
||||
// deleted and we
|
||||
// happen to ask for it, it throws this stupid response. So
|
||||
// if this happens,
|
||||
// we take a nap and try again which then avoids the race
|
||||
// condition because
|
||||
// the vm's information is now cleaned up by xen. The error
|
||||
// the vm's information is now cleaned up by xenserver. The error
|
||||
// is as follows
|
||||
// com.xensource.xenapi.Types$BadServerResponse
|
||||
// [HANDLE_INVALID, VM,
|
||||
@ -3292,9 +3292,9 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
|
||||
/**
|
||||
* When Dynamic Memory Control (DMC) is enabled -
|
||||
* xen allows scaling the guest memory while the guest is running
|
||||
* xenserver allows scaling the guest memory while the guest is running
|
||||
*
|
||||
* By default this is disallowed, override the specific xen resource
|
||||
* By default this is disallowed, override the specific xenserver resource
|
||||
* if this is enabled
|
||||
*/
|
||||
protected boolean isDmcEnabled(Connection conn, Host host) throws XenAPIException, XmlRpcException {
|
||||
@ -4907,11 +4907,11 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
host.setTags(conn, hr.tags);
|
||||
return true;
|
||||
} catch (XenAPIException e) {
|
||||
String msg = "Xen setup failed due to " + e.toString();
|
||||
String msg = "XenServer setup failed due to " + e.toString();
|
||||
s_logger.warn(msg, e);
|
||||
throw new CloudRuntimeException("Unable to get host information " + e.toString(), e);
|
||||
} catch (XmlRpcException e) {
|
||||
String msg = "Xen setup failed due to " + e.getMessage();
|
||||
String msg = "XenServer setup failed due to " + e.getMessage();
|
||||
s_logger.warn(msg, e);
|
||||
throw new CloudRuntimeException("Unable to get host information ", e);
|
||||
}
|
||||
@ -5718,7 +5718,7 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
_storageNetworkName1 = (String)params.get("storage.network.device1");
|
||||
_storageNetworkName2 = (String)params.get("storage.network.device2");
|
||||
|
||||
_heartbeatInterval = NumbersUtil.parseInt((String)params.get("xen.heartbeat.interval"), 60);
|
||||
_heartbeatInterval = NumbersUtil.parseInt((String)params.get("xenserver.heartbeat.interval"), 60);
|
||||
|
||||
String value = (String)params.get("wait");
|
||||
_wait = NumbersUtil.parseInt(value, 600);
|
||||
@ -5726,7 +5726,7 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
value = (String)params.get("migratewait");
|
||||
_migratewait = NumbersUtil.parseInt(value, 3600);
|
||||
|
||||
_maxNics = NumbersUtil.parseInt((String)params.get("xen.nics.max"), 7);
|
||||
_maxNics = NumbersUtil.parseInt((String)params.get("xenserver.nics.max"), 7);
|
||||
|
||||
if (_pod == null) {
|
||||
throw new ConfigurationException("Unable to get the pod");
|
||||
@ -7279,11 +7279,11 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
}
|
||||
|
||||
if (s_logger.isTraceEnabled()) {
|
||||
s_logger.trace("VM " + vm + ": xen has state " + newState + " and we have state " + (oldState != null ? oldState.toString() : "null"));
|
||||
s_logger.trace("VM " + vm + ": xenserver has state " + newState + " and we have state " + (oldState != null ? oldState.toString() : "null"));
|
||||
}
|
||||
|
||||
if (vm.startsWith("migrating")) {
|
||||
s_logger.warn("Migrating from xen detected. Skipping");
|
||||
s_logger.warn("Migrating from xenserver detected. Skipping");
|
||||
continue;
|
||||
}
|
||||
if (oldState == null) {
|
||||
@ -7328,7 +7328,7 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
||||
String host_uuid = entry.getValue().first();
|
||||
|
||||
if (s_logger.isTraceEnabled()) {
|
||||
s_logger.trace("VM " + vm + " is now missing from xen so reporting stopped");
|
||||
s_logger.trace("VM " + vm + " is now missing from xenserver so reporting stopped");
|
||||
}
|
||||
|
||||
if (oldState == State.Stopping) {
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
@ -17,7 +17,7 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
public class XcpServer16Resource extends XcpServerResource {
|
||||
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
@ -139,7 +139,7 @@ public class XcpServerResource extends CitrixResourceBase {
|
||||
cause the sum of all the dynamic-min values to exceed the total
|
||||
host memory (taking into account various memory overheads).
|
||||
|
||||
cf: http://wiki.xen.org/wiki/XCP_FAQ_Dynamic_Memory_Control
|
||||
cf: https://wiki.xenserver.org/index.php?title=XCP_FAQ_Dynamic_Memory_Control
|
||||
*/
|
||||
@Override
|
||||
protected void setMemory(Connection conn, VM vm, long minMemsize, long maxMemsize) throws XmlRpcException, XenAPIException {
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
@ -151,7 +151,7 @@ public class XenServer56FP1Resource extends XenServer56Resource {
|
||||
|
||||
/**
|
||||
* When Dynamic Memory Control (DMC) is enabled -
|
||||
* xen allows scaling the guest memory while the guest is running
|
||||
* xenserver allows scaling the guest memory while the guest is running
|
||||
*
|
||||
* This is determined by the 'restrict_dmc' option on the host.
|
||||
* When false, scaling is allowed hence DMC is enabled
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import com.cloud.agent.api.Answer;
|
||||
import com.cloud.agent.api.CheckOnHostAnswer;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
import javax.ejb.Local;
|
||||
import org.apache.log4j.Logger;
|
||||
import com.cloud.resource.ServerResource;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
import com.xensource.xenapi.Connection;
|
||||
import com.xensource.xenapi.Host;
|
||||
import com.xensource.xenapi.HostPatch;
|
||||
@ -16,7 +16,7 @@
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
@ -14,7 +14,7 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@ -16,7 +16,7 @@
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import static com.cloud.utils.ReflectUtil.flattenProperties;
|
||||
import static com.google.common.collect.Lists.newArrayList;
|
||||
@ -63,7 +63,7 @@ import com.cloud.agent.api.to.S3TO;
|
||||
import com.cloud.agent.api.to.StorageFilerTO;
|
||||
import com.cloud.agent.api.to.SwiftTO;
|
||||
import com.cloud.exception.InternalErrorException;
|
||||
import com.cloud.hypervisor.xen.resource.CitrixResourceBase.SRType;
|
||||
import com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.SRType;
|
||||
import com.cloud.storage.DataStoreRole;
|
||||
import com.cloud.storage.Storage.ImageFormat;
|
||||
import com.cloud.storage.Storage.StoragePoolType;
|
||||
@ -1142,7 +1142,7 @@ public class XenServerStorageProcessor implements StorageProcessor {
|
||||
String result = null;
|
||||
try {
|
||||
result =
|
||||
hypervisorResource.callHostPluginAsync(conn, "swiftxen", "swift", wait, "op", "upload", "url", swift.getUrl(), "account", swift.getAccount(), "username",
|
||||
hypervisorResource.callHostPluginAsync(conn, "swiftxenserver", "swift", wait, "op", "upload", "url", swift.getUrl(), "account", swift.getAccount(), "username",
|
||||
swift.getUserName(), "key", swift.getKey(), "container", container, "ldir", ldir, "lfilename", lfilename, "isISCSI", isISCSI.toString());
|
||||
if (result != null && result.equals("true")) {
|
||||
return true;
|
||||
@ -1192,7 +1192,7 @@ public class XenServerStorageProcessor implements StorageProcessor {
|
||||
|
||||
parameters.addAll(Arrays.asList("operation", "put", "filename", dir + "/" + filename, "iSCSIFlag", iSCSIFlag.toString(), "bucket", s3.getBucketName(), "key",
|
||||
key, "https", s3.isHttps() != null ? s3.isHttps().toString() : "null", "maxSingleUploadSizeInBytes", String.valueOf(s3.getMaxSingleUploadSizeInBytes())));
|
||||
final String result = hypervisorResource.callHostPluginAsync(connection, "s3xen", "s3", wait, parameters.toArray(new String[parameters.size()]));
|
||||
final String result = hypervisorResource.callHostPluginAsync(connection, "s3xenserver", "s3", wait, parameters.toArray(new String[parameters.size()]));
|
||||
|
||||
if (result != null && result.equals("true")) {
|
||||
return key;
|
||||
@ -16,7 +16,7 @@
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
@ -16,7 +16,7 @@
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import java.io.File;
|
||||
import java.net.URI;
|
||||
@ -36,7 +36,7 @@ import com.xensource.xenapi.Types.XenAPIException;
|
||||
import com.xensource.xenapi.VM;
|
||||
|
||||
import com.cloud.agent.api.StartupCommand;
|
||||
import com.cloud.hypervisor.xen.resource.XenServer620SP1Resource;
|
||||
import com.cloud.hypervisor.xenserver.resource.XenServer620SP1Resource;
|
||||
import com.cloud.utils.Pair;
|
||||
import com.cloud.utils.exception.CloudRuntimeException;
|
||||
import com.cloud.vm.VirtualMachine;
|
||||
@ -17,7 +17,7 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
package com.cloud.hypervisor.xen.resource;
|
||||
package com.cloud.hypervisor.xenserver.resource;
|
||||
|
||||
import static org.junit.Assert.fail;
|
||||
import static org.mockito.Mockito.doNothing;
|
||||
@ -50,7 +50,7 @@ import com.cloud.agent.api.ScaleVmAnswer;
|
||||
import com.cloud.agent.api.ScaleVmCommand;
|
||||
import com.cloud.agent.api.to.IpAddressTO;
|
||||
import com.cloud.agent.api.to.VirtualMachineTO;
|
||||
import com.cloud.hypervisor.xen.resource.CitrixResourceBase.XsHost;
|
||||
import com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.XsHost;
|
||||
|
||||
public class CitrixResourceBaseTest {
|
||||
|
||||
@ -109,7 +109,7 @@ under the License.
|
||||
<adapter name="KVMGuru" class="com.cloud.hypervisor.KVMGuru"/>
|
||||
</adapters>
|
||||
<adapters key="com.cloud.resource.Discoverer">
|
||||
<adapter name="XCP Agent" class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer"/>
|
||||
<adapter name="XCP Agent" class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer"/>
|
||||
<adapter name="SecondaryStorage" class="com.cloud.storage.secondary.SecondaryStorageDiscoverer"/>
|
||||
<adapter name="KVM Agent" class="com.cloud.hypervisor.kvm.discoverer.KvmServerDiscoverer"/>
|
||||
<adapter name="Bare Metal Agent" class="com.cloud.baremetal.BareMetalDiscoverer"/>
|
||||
|
||||
@ -46,7 +46,7 @@
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-plugin-hypervisor-xen</artifactId>
|
||||
<artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
@ -49,7 +49,7 @@
|
||||
<module>host-allocators/random</module>
|
||||
<module>dedicated-resources</module>
|
||||
<module>hypervisors/ovm</module>
|
||||
<module>hypervisors/xen</module>
|
||||
<module>hypervisors/xenserver</module>
|
||||
<module>hypervisors/kvm</module>
|
||||
<module>event-bus/rabbitmq</module>
|
||||
<module>event-bus/inmemory</module>
|
||||
|
||||
@ -1144,7 +1144,7 @@
|
||||
<File Id="fil4573D848D63904E25199DFC7C5F3C630" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\perfmon.py" />
|
||||
</Component>
|
||||
<Component Id="cmpD76E671ADB5BD6A4D78727948C10979D" Guid="{EA4A8C61-6B09-4489-ACE6-00B9A0F1A4BC}">
|
||||
<File Id="filD3A7AE13D824593E31FF5468A9B764AB" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\s3xen" />
|
||||
<File Id="filD3A7AE13D824593E31FF5468A9B764AB" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\s3xenserver" />
|
||||
</Component>
|
||||
<Component Id="cmpA5ACE2ABDAD485164B610A43CF7260AC" Guid="{D6BC09D7-775E-4DBE-8E97-603B00B26BC2}">
|
||||
<File Id="filA1C0191B48050912F371A13BC75AD95A" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\setupxenserver.sh" />
|
||||
@ -1165,7 +1165,7 @@
|
||||
<File Id="fil5C88104CC07D3894D5C6618F2480D894" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\swift" />
|
||||
</Component>
|
||||
<Component Id="cmp29E6175F9E42A05F0ACA5E9DEC427DA9" Guid="{08A3A34A-662E-40F5-AC4C-6224AF8E3204}">
|
||||
<File Id="fil30689D2F97C68DD797DC8681851DC4A0" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\swiftxen" />
|
||||
<File Id="fil30689D2F97C68DD797DC8681851DC4A0" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\swiftxenserver" />
|
||||
</Component>
|
||||
<Component Id="cmp795E37CA1E2B235A5F5500D0CFC92E07" Guid="{4CAFC2DE-B603-485C-B8ED-A6A016962788}">
|
||||
<File Id="filAD37A67E4680F1FFC939AE9759EA6193" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\upgrade_snapshot.sh" />
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
rotate 20
|
||||
}
|
||||
|
||||
/var/log/cloud/ovstunnel.log /var/log/cloud/ovs-pvlan.log /var/log/cloud/swiftxen.log /var/log/cloud/s3xen /var/log/cloud/storageplugin {
|
||||
/var/log/cloud/ovstunnel.log /var/log/cloud/ovs-pvlan.log /var/log/cloud/swiftxenserver.log /var/log/cloud/s3xenserver /var/log/cloud/storageplugin {
|
||||
daily
|
||||
size 1M
|
||||
rotate 2
|
||||
|
||||
@ -497,7 +497,7 @@ public class FirstFitAllocator extends AdapterBase implements HostAllocator {
|
||||
if (allocationAlgorithm != null) {
|
||||
_allocationAlgorithm = allocationAlgorithm;
|
||||
}
|
||||
String value = configs.get("xen.check.hvm");
|
||||
String value = configs.get("xenserver.check.hvm");
|
||||
_checkHvm = value == null ? true : Boolean.parseBoolean(value);
|
||||
}
|
||||
return true;
|
||||
|
||||
@ -1078,17 +1078,17 @@ public enum Config {
|
||||
OvmGuestNetwork("Hidden", ManagementServer.class, String.class, "ovm.guest.network.device", null, "Specify the private bridge on host for private network", null),
|
||||
|
||||
// XenServer
|
||||
XenPublicNetwork(
|
||||
XenServerPublicNetwork(
|
||||
"Hidden",
|
||||
ManagementServer.class,
|
||||
String.class,
|
||||
"xen.public.network.device",
|
||||
"xenserver.public.network.device",
|
||||
null,
|
||||
"[ONLY IF THE PUBLIC NETWORK IS ON A DEDICATED NIC]:The network name label of the physical device dedicated to the public network on a XenServer host",
|
||||
null),
|
||||
XenStorageNetwork1("Hidden", ManagementServer.class, String.class, "xen.storage.network.device1", null, "Specify when there are storage networks", null),
|
||||
XenStorageNetwork2("Hidden", ManagementServer.class, String.class, "xen.storage.network.device2", null, "Specify when there are storage networks", null),
|
||||
XenPrivateNetwork("Hidden", ManagementServer.class, String.class, "xen.private.network.device", null, "Specify when the private network name is different", null),
|
||||
XenServerStorageNetwork1("Hidden", ManagementServer.class, String.class, "xenserver.storage.network.device1", null, "Specify when there are storage networks", null),
|
||||
XenServerStorageNetwork2("Hidden", ManagementServer.class, String.class, "xenserver.storage.network.device2", null, "Specify when there are storage networks", null),
|
||||
XenServerPrivateNetwork("Hidden", ManagementServer.class, String.class, "xenserver.private.network.device", null, "Specify when the private network name is different", null),
|
||||
NetworkGuestCidrLimit(
|
||||
"Network",
|
||||
NetworkOrchestrationService.class,
|
||||
@ -1097,32 +1097,32 @@ public enum Config {
|
||||
"22",
|
||||
"size limit for guest cidr; can't be less than this value",
|
||||
null),
|
||||
XenSetupMultipath("Advanced", ManagementServer.class, String.class, "xen.setup.multipath", "false", "Setup the host to do multipath", null),
|
||||
XenBondStorageNic("Advanced", ManagementServer.class, String.class, "xen.bond.storage.nics", null, "Attempt to bond the two networks if found", null),
|
||||
XenHeartBeatInterval(
|
||||
XenServerSetupMultipath("Advanced", ManagementServer.class, String.class, "xenserver.setup.multipath", "false", "Setup the host to do multipath", null),
|
||||
XenServerBondStorageNic("Advanced", ManagementServer.class, String.class, "xenserver.bond.storage.nics", null, "Attempt to bond the two networks if found", null),
|
||||
XenServerHeartBeatInterval(
|
||||
"Advanced",
|
||||
ManagementServer.class,
|
||||
Integer.class,
|
||||
"xen.heartbeat.interval",
|
||||
"xenserver.heartbeat.interval",
|
||||
"60",
|
||||
"heartbeat to use when implementing XenServer Self Fencing",
|
||||
null),
|
||||
XenGuestNetwork("Hidden", ManagementServer.class, String.class, "xen.guest.network.device", null, "Specify for guest network name label", null),
|
||||
XenMaxNics("Advanced", AgentManager.class, Integer.class, "xen.nics.max", "7", "Maximum allowed nics for Vms created on Xen", null),
|
||||
XenPVdriverVersion(
|
||||
XenServerGuestNetwork("Hidden", ManagementServer.class, String.class, "xenserver.guest.network.device", null, "Specify for guest network name label", null),
|
||||
XenServerMaxNics("Advanced", AgentManager.class, Integer.class, "xenserver.nics.max", "7", "Maximum allowed nics for Vms created on XenServer", null),
|
||||
XenServerPVdriverVersion(
|
||||
"Advanced",
|
||||
ManagementServer.class,
|
||||
String.class,
|
||||
"xen.pvdriver.version",
|
||||
"xenserver.pvdriver.version",
|
||||
"xenserver61",
|
||||
"default Xen PV driver version for registered template, valid value:xenserver56,xenserver61 ",
|
||||
"xenserver56,xenserver61"),
|
||||
XenServerHotFix("Advanced",
|
||||
ManagementServer.class,
|
||||
Boolean.class,
|
||||
"xen.hotfix.enabled",
|
||||
"xenserver.hotfix.enabled",
|
||||
"false",
|
||||
"Enable/Disable xenserver hot fix",
|
||||
"Enable/Disable XenServer hot fix",
|
||||
null),
|
||||
|
||||
// VMware
|
||||
@ -1365,7 +1365,7 @@ public enum Config {
|
||||
"Hidden",
|
||||
ManagementServer.class,
|
||||
Boolean.class,
|
||||
"xen.create.pools.in.pod",
|
||||
"xenserver.create.pools.in.pod",
|
||||
"false",
|
||||
"Should we automatically add XenServers into pools that are inside a Pod",
|
||||
null),
|
||||
|
||||
@ -362,7 +362,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
|
||||
configValuesForValidation.add("storage.stats.interval");
|
||||
configValuesForValidation.add("storage.cleanup.interval");
|
||||
configValuesForValidation.add("wait");
|
||||
configValuesForValidation.add("xen.heartbeat.interval");
|
||||
configValuesForValidation.add("xenserver.heartbeat.interval");
|
||||
configValuesForValidation.add("incorrect.login.attempts.allowed");
|
||||
}
|
||||
|
||||
@ -506,7 +506,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
|
||||
}
|
||||
|
||||
PreparedStatement pstmt = null;
|
||||
if (Config.XenGuestNetwork.key().equalsIgnoreCase(name)) {
|
||||
if (Config.XenServerGuestNetwork.key().equalsIgnoreCase(name)) {
|
||||
String sql = "update host_details set value=? where name=?";
|
||||
try {
|
||||
pstmt = txn.prepareAutoCloseStatement(sql);
|
||||
@ -517,7 +517,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
|
||||
} catch (Throwable e) {
|
||||
throw new CloudRuntimeException("Failed to update guest.network.device in host_details due to exception ", e);
|
||||
}
|
||||
} else if (Config.XenPrivateNetwork.key().equalsIgnoreCase(name)) {
|
||||
} else if (Config.XenServerPrivateNetwork.key().equalsIgnoreCase(name)) {
|
||||
String sql = "update host_details set value=? where name=?";
|
||||
try {
|
||||
pstmt = txn.prepareAutoCloseStatement(sql);
|
||||
@ -528,7 +528,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
|
||||
} catch (Throwable e) {
|
||||
throw new CloudRuntimeException("Failed to update private.network.device in host_details due to exception ", e);
|
||||
}
|
||||
} else if (Config.XenPublicNetwork.key().equalsIgnoreCase(name)) {
|
||||
} else if (Config.XenServerPublicNetwork.key().equalsIgnoreCase(name)) {
|
||||
String sql = "update host_details set value=? where name=?";
|
||||
try {
|
||||
pstmt = txn.prepareAutoCloseStatement(sql);
|
||||
@ -539,7 +539,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
|
||||
} catch (Throwable e) {
|
||||
throw new CloudRuntimeException("Failed to update public.network.device in host_details due to exception ", e);
|
||||
}
|
||||
} else if (Config.XenStorageNetwork1.key().equalsIgnoreCase(name)) {
|
||||
} else if (Config.XenServerStorageNetwork1.key().equalsIgnoreCase(name)) {
|
||||
String sql = "update host_details set value=? where name=?";
|
||||
try {
|
||||
pstmt = txn.prepareAutoCloseStatement(sql);
|
||||
@ -550,7 +550,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
|
||||
} catch (Throwable e) {
|
||||
throw new CloudRuntimeException("Failed to update storage.network.device1 in host_details due to exception ", e);
|
||||
}
|
||||
} else if (Config.XenStorageNetwork2.key().equals(name)) {
|
||||
} else if (Config.XenServerStorageNetwork2.key().equals(name)) {
|
||||
String sql = "update host_details set value=? where name=?";
|
||||
try {
|
||||
pstmt = txn.prepareAutoCloseStatement(sql);
|
||||
|
||||
@ -3640,16 +3640,16 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService {
|
||||
String xenLabel = null;
|
||||
switch (trafficType) {
|
||||
case Public:
|
||||
xenLabel = _configDao.getValue(Config.XenPublicNetwork.key());
|
||||
xenLabel = _configDao.getValue(Config.XenServerPublicNetwork.key());
|
||||
break;
|
||||
case Guest:
|
||||
xenLabel = _configDao.getValue(Config.XenGuestNetwork.key());
|
||||
xenLabel = _configDao.getValue(Config.XenServerGuestNetwork.key());
|
||||
break;
|
||||
case Storage:
|
||||
xenLabel = _configDao.getValue(Config.XenStorageNetwork1.key());
|
||||
xenLabel = _configDao.getValue(Config.XenServerStorageNetwork1.key());
|
||||
break;
|
||||
case Management:
|
||||
xenLabel = _configDao.getValue(Config.XenPrivateNetwork.key());
|
||||
xenLabel = _configDao.getValue(Config.XenServerPrivateNetwork.key());
|
||||
break;
|
||||
case Control:
|
||||
xenLabel = "cloud_link_local_network";
|
||||
|
||||
@ -45,7 +45,7 @@ import java.util.Map;
|
||||
*
|
||||
*/
|
||||
public interface VirtualNetworkApplianceManager extends Manager, VirtualNetworkApplianceService {
|
||||
static final String RouterTemplateXenCK = "router.template.xen";
|
||||
static final String RouterTemplateXenCK = "router.template.xenserver";
|
||||
static final String RouterTemplateKvmCK = "router.template.kvm";
|
||||
static final String RouterTemplateVmwareCK = "router.template.vmware";
|
||||
static final String RouterTemplateHyperVCK = "router.template.hyperv";
|
||||
|
||||
@ -135,8 +135,8 @@ public abstract class DiscovererBase extends AdapterBase implements Discoverer {
|
||||
params.put("secondary.storage.vm", "false");
|
||||
params.put("max.template.iso.size", _configDao.getValue(Config.MaxTemplateAndIsoSize.toString()));
|
||||
params.put("migratewait", _configDao.getValue(Config.MigrateWait.toString()));
|
||||
params.put(Config.XenMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenMaxNics.toString()));
|
||||
params.put(Config.XenHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenHeartBeatInterval.toString()));
|
||||
params.put(Config.XenServerMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenServerMaxNics.toString()));
|
||||
params.put(Config.XenServerHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenServerHeartBeatInterval.toString()));
|
||||
params.put("router.aggregation.command.each.timeout", _configDao.getValue(Config.RouterAggregationCommandEachTimeout.toString()));
|
||||
|
||||
return params;
|
||||
|
||||
@ -361,12 +361,12 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio
|
||||
@Override
|
||||
public void doInTransactionWithoutResult(TransactionStatus status) {
|
||||
TransactionLegacy txn = TransactionLegacy.currentTxn();
|
||||
String pvdriverversion = Config.XenPVdriverVersion.getDefaultValue();
|
||||
String pvdriverversion = Config.XenServerPVdriverVersion.getDefaultValue();
|
||||
PreparedStatement pstmt = null;
|
||||
ResultSet rs1 = null;
|
||||
ResultSet rs2 = null;
|
||||
try {
|
||||
String oldValue = _configDao.getValue(Config.XenPVdriverVersion.key());
|
||||
String oldValue = _configDao.getValue(Config.XenServerPVdriverVersion.key());
|
||||
if (oldValue == null) {
|
||||
String sql = "select resource from host where hypervisor_type='XenServer' and removed is null and status not in ('Error', 'Removed') group by resource";
|
||||
pstmt = txn.prepareAutoCloseStatement(sql);
|
||||
@ -375,17 +375,17 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio
|
||||
String resouce = rs1.getString(1); //resource column
|
||||
if (resouce == null)
|
||||
continue;
|
||||
if (resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer56Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer56FP1Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer56SP2Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer600Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer602Resource")) {
|
||||
if (resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer56Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer56FP1Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer56SP2Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer600Resource")
|
||||
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer602Resource")) {
|
||||
pvdriverversion = "xenserver56";
|
||||
break;
|
||||
}
|
||||
}
|
||||
_configDao.getValueAndInitIfNotExist(Config.XenPVdriverVersion.key(), Config.XenPVdriverVersion.getCategory(), pvdriverversion,
|
||||
Config.XenPVdriverVersion.getDescription());
|
||||
_configDao.getValueAndInitIfNotExist(Config.XenServerPVdriverVersion.key(), Config.XenServerPVdriverVersion.getCategory(), pvdriverversion,
|
||||
Config.XenServerPVdriverVersion.getDescription());
|
||||
sql = "select id from vm_template where hypervisor_type='XenServer' and format!='ISO' and removed is null";
|
||||
pstmt = txn.prepareAutoCloseStatement(sql);
|
||||
rs2 = pstmt.executeQuery();
|
||||
|
||||
@ -231,7 +231,7 @@ public abstract class TemplateAdapterBase extends AdapterBase implements Templat
|
||||
if (hypervisorType.equals(Hypervisor.HypervisorType.XenServer)) {
|
||||
if (details == null || !details.containsKey("hypervisortoolsversion") || details.get("hypervisortoolsversion") == null ||
|
||||
((String)details.get("hypervisortoolsversion")).equalsIgnoreCase("none")) {
|
||||
String hpvs = _configDao.getValue(Config.XenPVdriverVersion.key());
|
||||
String hpvs = _configDao.getValue(Config.XenServerPVdriverVersion.key());
|
||||
if (hpvs != null) {
|
||||
if (details == null) {
|
||||
details = new HashMap<String, String>();
|
||||
|
||||
@ -408,7 +408,7 @@ public class PodZoneConfig {
|
||||
String defaultXenStorageNetworkLabel = getDefaultXenNetworkLabel(TrafficType.Storage);
|
||||
String defaultXenGuestNetworkLabel = getDefaultXenNetworkLabel(TrafficType.Guest);
|
||||
|
||||
String insertTraficType = "INSERT INTO `cloud`.`physical_network_traffic_types` " + "(physical_network_id, traffic_type, xen_network_label) VALUES ( ?, ?, ?)";
|
||||
String insertTraficType = "INSERT INTO `cloud`.`physical_network_traffic_types` " + "(physical_network_id, traffic_type, xenserver_network_label) VALUES ( ?, ?, ?)";
|
||||
|
||||
try {
|
||||
PreparedStatement stmt = txn.prepareAutoCloseStatement(insertTraficType);
|
||||
@ -444,16 +444,16 @@ public class PodZoneConfig {
|
||||
String configName = null;
|
||||
switch (trafficType) {
|
||||
case Public:
|
||||
configName = "xen.public.network.device";
|
||||
configName = "xenserver.public.network.device";
|
||||
break;
|
||||
case Guest:
|
||||
configName = "xen.guest.network.device";
|
||||
configName = "xenserver.guest.network.device";
|
||||
break;
|
||||
case Storage:
|
||||
configName = "xen.storage.network.device1";
|
||||
configName = "xenserver.storage.network.device1";
|
||||
break;
|
||||
case Management:
|
||||
configName = "xen.private.network.device";
|
||||
configName = "xenserver.private.network.device";
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@ -142,7 +142,7 @@
|
||||
<adapter name="ClusterService" class="com.cloud.cluster.ClusterServiceServletAdapter" />
|
||||
</adapters>
|
||||
<adapters key="com.cloud.resource.Discoverer">
|
||||
<adapter name="XenServer" class="com.cloud.resource.xen.XenServerDiscoverer" />
|
||||
<adapter name="XenServer" class="com.cloud.resource.xenserver.XenServerDiscoverer" />
|
||||
<adapter name="SecondaryStorage"
|
||||
class="com.cloud.storage.secondary.SecondaryStorageDiscoverer" />
|
||||
<adapter name="DummyHostServer" class="com.cloud.resource.DummyHostDiscoverer" />
|
||||
|
||||
@ -2091,7 +2091,7 @@ CREATE TABLE `cloud`.`physical_network_traffic_types` (
|
||||
`uuid` varchar(40),
|
||||
`physical_network_id` bigint unsigned NOT NULL COMMENT 'id of the physical network',
|
||||
`traffic_type` varchar(32) NOT NULL COMMENT 'type of traffic going through this network',
|
||||
`xen_network_label` varchar(255) COMMENT 'The network name label of the physical device dedicated to this traffic on a XenServer host',
|
||||
`xenserver_network_label` varchar(255) COMMENT 'The network name label of the physical device dedicated to this traffic on a XenServer host',
|
||||
`kvm_network_label` varchar(255) DEFAULT 'cloudbr0' COMMENT 'The network name label of the physical device dedicated to this traffic on a KVM host',
|
||||
`vmware_network_label` varchar(255) DEFAULT 'vSwitch0' COMMENT 'The network name label of the physical device dedicated to this traffic on a VMware host',
|
||||
`simulator_network_label` varchar(255) COMMENT 'The name labels needed for identifying the simulator',
|
||||
|
||||
@ -19,4 +19,15 @@
|
||||
-- Schema cleanup from 4.4.0 to 4.5.0
|
||||
--
|
||||
|
||||
UPDATE `cloud`.`configuration`
|
||||
SET name = 'router.template.xenserver'
|
||||
Where name = 'router.template.xen';
|
||||
|
||||
UPDATE `cloud`.`configuration`
|
||||
SET name = 'xenserver.nics.max',
|
||||
description = 'Maximum allowed nics for Vms created on XenServer'
|
||||
Where name = 'xen.nics.max';
|
||||
|
||||
UPDATE `cloud`.`configuration`
|
||||
SET value = 'XenServer'
|
||||
Where value = 'Xen';
|
||||
@ -223,3 +223,6 @@ CREATE VIEW `cloud`.`volume_view` AS
|
||||
`cloud`.`async_job` ON async_job.instance_id = volumes.id
|
||||
and async_job.instance_type = 'Volume'
|
||||
and async_job.job_status = 0;
|
||||
|
||||
/* As part of the separation of Xen and XenServer, update the column for the network labels */
|
||||
ALTER TABLE `cloud`.`physical_network_traffic_types` CHANGE `xen_network_label` `xenserver_network_label` varchar(255) COMMENT 'The network name label of the physical device dedicated to this traffic on a XenServer host'
|
||||
@ -23,6 +23,6 @@ INSERT INTO `cloud`.`domain` (id, uuid, name, parent, path, owner) VALUES (1, UU
|
||||
/* Configuration Table */
|
||||
|
||||
INSERT INTO `cloud`.`configuration` (category, instance, component, name, value, description) VALUES ('Hidden', 'DEFAULT', 'none', 'init', null, null);
|
||||
-- INSERT INTO `cloud`.`configuration` (category, instance, component, name, value, description) VALUES ('Advanced', 'DEFAULT', 'AgentManager', 'xen.public.network.device', 'public-network', "[OPTIONAL]The name of the Xen network containing the physical network interface that is connected to the public network ");
|
||||
-- INSERT INTO `cloud`.`configuration` (category, instance, component, name, value, description) VALUES ('Advanced', 'DEFAULT', 'AgentManager', 'xenserver.public.network.device', 'public-network', "[OPTIONAL]The name of the XenServer network containing the physical network interface that is connected to the public network ");
|
||||
|
||||
|
||||
|
||||
@ -42,7 +42,7 @@ Note, gem may require gcc-4.2, make sure link exists:
|
||||
|
||||
# How to build SystemVMs automatically
|
||||
|
||||
Just run build.sh, it will export archived appliances for KVM, Xen,
|
||||
Just run build.sh, it will export archived appliances for KVM, XenServer,
|
||||
VMWare and HyperV in `dist`:
|
||||
|
||||
sh build.sh [systemvmtemplate|systemvmtemplate64]
|
||||
|
||||
@ -73,7 +73,7 @@ vboxmanage modifyhd $hdd_uuid --compact
|
||||
rm -fr dist *.ova *.vhd *.vdi *.qcow* *.bz2 *.vmdk *.ovf
|
||||
mkdir dist
|
||||
|
||||
# Export for Xen
|
||||
# Export for XenServer
|
||||
which faketime >/dev/null 2>&1 && which vhd-util >/dev/null 2>&1
|
||||
if [ $? == 0 ]; then
|
||||
set -e
|
||||
@ -82,9 +82,9 @@ if [ $? == 0 ]; then
|
||||
faketime '2010-01-01' vhd-util convert -s 1 -t 2 -i stagefixed.vhd -o $appliance-$branch-xen.vhd
|
||||
rm *.bak
|
||||
bzip2 $appliance-$branch-xen.vhd
|
||||
echo "$appliance exported for Xen: dist/$appliance-$branch-xen.vhd.bz2"
|
||||
echo "$appliance exported for XenServer: dist/$appliance-$branch-xen.vhd.bz2"
|
||||
else
|
||||
echo "** Skipping $appliance export for Xen: faketime or vhd-util command is missing. **"
|
||||
echo "** Skipping $appliance export for XenServer: faketime or vhd-util command is missing. **"
|
||||
echo "** faketime source code is available from https://github.com/wolfcw/libfaketime **"
|
||||
fi
|
||||
|
||||
|
||||
@ -32,11 +32,11 @@
|
||||
"name": "eth0",
|
||||
"traffictypes": [
|
||||
{
|
||||
"xen": "Pool-wide network associated with eth0",
|
||||
"xenserver": "Pool-wide network associated with eth0",
|
||||
"typ": "Management"
|
||||
},
|
||||
{
|
||||
"xen": "Pool-wide network associated with eth0",
|
||||
"xenserver": "Pool-wide network associated with eth0",
|
||||
"typ": "Guest"
|
||||
}
|
||||
],
|
||||
@ -56,7 +56,7 @@
|
||||
"name": "eth1",
|
||||
"traffictypes": [
|
||||
{
|
||||
"xen": "Pool-wide network associated with eth1",
|
||||
"xenserver": "Pool-wide network associated with eth1",
|
||||
"typ": "Public"
|
||||
}
|
||||
],
|
||||
|
||||
@ -32,11 +32,11 @@
|
||||
"name": "eth0",
|
||||
"traffictypes": [
|
||||
{
|
||||
"xen": "Pool-wide network associated with eth0",
|
||||
"xenserver": "Pool-wide network associated with eth0",
|
||||
"typ": "Management"
|
||||
},
|
||||
{
|
||||
"xen": "Pool-wide network associated with eth0",
|
||||
"xenserver": "Pool-wide network associated with eth0",
|
||||
"typ": "Guest"
|
||||
}
|
||||
],
|
||||
@ -56,7 +56,7 @@
|
||||
"name": "eth1",
|
||||
"traffictypes": [
|
||||
{
|
||||
"xen": "Pool-wide network associated with eth1",
|
||||
"xenserver": "Pool-wide network associated with eth1",
|
||||
"typ": "Public"
|
||||
}
|
||||
],
|
||||
|
||||
@ -102,7 +102,7 @@ def cobblerHomeResolve(ip_address, param="gateway"):
|
||||
|
||||
def configureManagementServer(mgmt_host):
|
||||
"""
|
||||
We currently configure all mgmt servers on a single xen HV. In the future
|
||||
We currently configure all mgmt servers on a single xenserver HV. In the future
|
||||
replace this by launching instances via the API on a IaaS cloud using
|
||||
desired template
|
||||
"""
|
||||
@ -123,15 +123,15 @@ def configureManagementServer(mgmt_host):
|
||||
bash("puppet cert clean %s.%s"%(mgmt_host, DOMAIN))
|
||||
|
||||
#Start VM on xenserver
|
||||
xenssh = \
|
||||
sshClient.SshClient(macinfo["infraxen"]["address"],
|
||||
xenserverssh = \
|
||||
sshClient.SshClient(macinfo["infraxenserver"]["address"],
|
||||
22, "root",
|
||||
macinfo["infraxen"]["password"])
|
||||
macinfo["infraxenserver"]["password"])
|
||||
|
||||
logging.debug("bash vm-uninstall.sh -n %s"%(mgmt_host))
|
||||
xenssh.execute("xe vm-uninstall force=true vm=%s"%mgmt_host)
|
||||
xenserverssh.execute("xe vm-uninstall force=true vm=%s"%mgmt_host)
|
||||
logging.debug("bash vm-start.sh -n %s -m %s"%(mgmt_host, mgmt_vm["ethernet"]))
|
||||
out = xenssh.execute("bash vm-start.sh -n %s -m %s"%(mgmt_host,
|
||||
out = xenserverssh.execute("bash vm-start.sh -n %s -m %s"%(mgmt_host,
|
||||
mgmt_vm["ethernet"]))
|
||||
|
||||
logging.info("started mgmt server with uuid: %s. Waiting for services .."%out);
|
||||
@ -179,7 +179,7 @@ def seedSecondaryStorage(cscfg, hypervisor):
|
||||
bash("echo '/bin/bash /root/redeploy.sh -s %s -h %s' >> /etc/puppet/modules/cloudstack/files/secseeder.sh"%(spath, hypervisor))
|
||||
bash("chmod +x /etc/puppet/modules/cloudstack/files/secseeder.sh")
|
||||
|
||||
def refreshHosts(cscfg, hypervisor="xen", profile="xen602"):
|
||||
def refreshHosts(cscfg, hypervisor="xenserver", profile="xenserver602"):
|
||||
"""
|
||||
Removes cobbler system from previous run.
|
||||
Creates a new system for current run.
|
||||
@ -354,7 +354,7 @@ if __name__ == '__main__':
|
||||
dest="distro", help="management server distro")
|
||||
parser.add_argument("-v", "--hypervisor", action="store",
|
||||
dest="hypervisor", help="hypervisor type")
|
||||
parser.add_argument("-p", "--profile", action="store", default="xen602",
|
||||
parser.add_argument("-p", "--profile", action="store", default="xenserver602",
|
||||
dest="profile", help="cobbler profile for hypervisor")
|
||||
parser.add_argument("-e","--environment", help="environment properties file",
|
||||
dest="system", action="store")
|
||||
|
||||
@ -48,8 +48,8 @@ pip -q install lib/python2.7/site-packages/marvin/
|
||||
#Deploy the configuration - yes/no
|
||||
if [[ $DEPLOY == "yes" ]]; then
|
||||
cd cloud-autodeploy
|
||||
if [[ $hypervisor == 'xen' ]];then
|
||||
profile='xen602'
|
||||
if [[ $hypervisor == 'xenserver' ]];then
|
||||
profile='xenserver602'
|
||||
else
|
||||
profile='rhel63-kvm'
|
||||
fi
|
||||
|
||||
@ -1233,7 +1233,7 @@ dictionary = {
|
||||
'label.welcome.cloud.console': '<fmt:message key="label.welcome.cloud.console" />',
|
||||
'label.welcome': '<fmt:message key="label.welcome" />',
|
||||
'label.what.is.cloudstack': '<fmt:message key="label.what.is.cloudstack" />',
|
||||
'label.xen.traffic.label': '<fmt:message key="label.xen.traffic.label" />',
|
||||
'label.xenserver.traffic.label': '<fmt:message key="label.xenserver.traffic.label" />',
|
||||
'label.yes': '<fmt:message key="label.yes" />',
|
||||
'label.zone.details': '<fmt:message key="label.zone.details" />',
|
||||
'label.zone': '<fmt:message key="label.zone" />',
|
||||
|
||||
@ -335,7 +335,7 @@ cloudStack.docs = {
|
||||
externalLink: ''
|
||||
},
|
||||
helpDiskOfferingHypervisorSnapshotReserve: {
|
||||
desc: 'Hypervisor snapshot reserve space as a percent of a volume (for managed storage using Xen or VMware) (Ex. The value 25 means 25%.)).',
|
||||
desc: 'Hypervisor snapshot reserve space as a percent of a volume (for managed storage using XenServer or VMware) (Ex. The value 25 means 25%.)).',
|
||||
},
|
||||
helpDiskOfferingCacheMode: {
|
||||
desc: 'The write caching mode to use for disks created with this disk offering. This can improve write performance.',
|
||||
|
||||
@ -127,8 +127,8 @@
|
||||
}
|
||||
});
|
||||
|
||||
if (trafficType.xennetworklabel == null || trafficType.xennetworklabel == 0)
|
||||
trafficType.xennetworklabel = dictionary[ 'label.network.label.display.for.blank.value'];
|
||||
if (trafficType.xenservernetworklabel == null || trafficType.xenservernetworklabel == 0)
|
||||
trafficType.xenservernetworklabel = dictionary[ 'label.network.label.display.for.blank.value'];
|
||||
if (trafficType.kvmnetworklabel == null || trafficType.kvmnetworklabel == 0)
|
||||
trafficType.kvmnetworklabel = dictionary[ 'label.network.label.display.for.blank.value'];
|
||||
if (trafficType.vmwarenetworklabel == null || trafficType.vmwarenetworklabel == 0)
|
||||
@ -145,8 +145,8 @@
|
||||
|
||||
var updateTrafficLabels = function (trafficType, labels, complete) {
|
||||
var array1 =[];
|
||||
if (labels.xennetworklabel != dictionary[ 'label.network.label.display.for.blank.value'])
|
||||
array1.push("&xennetworklabel=" + labels.xennetworklabel);
|
||||
if (labels.xenservernetworklabel != dictionary[ 'label.network.label.display.for.blank.value'])
|
||||
array1.push("&xenservernetworklabel=" + labels.xenservernetworklabel);
|
||||
if (labels.kvmnetworklabel != dictionary[ 'label.network.label.display.for.blank.value'])
|
||||
array1.push("&kvmnetworklabel=" + labels.kvmnetworklabel);
|
||||
if (labels.vmwarenetworklabel != dictionary[ 'label.network.label.display.for.blank.value'])
|
||||
@ -581,8 +581,8 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
xennetworklabel: {
|
||||
label: 'label.xen.traffic.label',
|
||||
xenservernetworklabel: {
|
||||
label: 'label.xenserver.traffic.label',
|
||||
isEditable: true
|
||||
},
|
||||
kvmnetworklabel: {
|
||||
@ -619,7 +619,7 @@
|
||||
selectedPublicNetworkObj = items[0];
|
||||
|
||||
// Include traffic labels
|
||||
selectedPublicNetworkObj.xennetworklabel = trafficType.xennetworklabel;
|
||||
selectedPublicNetworkObj.xenservernetworklabel = trafficType.xenservernetworklabel;
|
||||
selectedPublicNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel;
|
||||
selectedPublicNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel;
|
||||
selectedPublicNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel;
|
||||
@ -889,8 +889,8 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
xennetworklabel: {
|
||||
label: 'label.xen.traffic.label',
|
||||
xenservernetworklabel: {
|
||||
label: 'label.xenserver.traffic.label',
|
||||
isEditable: true
|
||||
},
|
||||
kvmnetworklabel: {
|
||||
@ -925,7 +925,7 @@
|
||||
var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Storage');
|
||||
selectedPublicNetworkObj = items[0];
|
||||
|
||||
selectedPublicNetworkObj.xennetworklabel = trafficType.xennetworklabel;
|
||||
selectedPublicNetworkObj.xenservernetworklabel = trafficType.xenservernetworklabel;
|
||||
selectedPublicNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel;
|
||||
selectedPublicNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel;
|
||||
selectedPublicNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel;
|
||||
@ -1101,8 +1101,8 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
xennetworklabel: {
|
||||
label: 'label.xen.traffic.label',
|
||||
xenservernetworklabel: {
|
||||
label: 'label.xenserver.traffic.label',
|
||||
isEditable: true
|
||||
},
|
||||
kvmnetworklabel: {
|
||||
@ -1135,7 +1135,7 @@
|
||||
|
||||
var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Management');
|
||||
|
||||
selectedManagementNetworkObj.xennetworklabel = trafficType.xennetworklabel;
|
||||
selectedManagementNetworkObj.xenservernetworklabel = trafficType.xenservernetworklabel;
|
||||
selectedManagementNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel;
|
||||
selectedManagementNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel;
|
||||
selectedManagementNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel;
|
||||
@ -1290,8 +1290,8 @@
|
||||
},
|
||||
{
|
||||
//updateTrafficType API
|
||||
xennetworklabel: {
|
||||
label: 'label.xen.traffic.label',
|
||||
xenservernetworklabel: {
|
||||
label: 'label.xenserver.traffic.label',
|
||||
isEditable: true
|
||||
},
|
||||
kvmnetworklabel: {
|
||||
@ -1343,10 +1343,10 @@
|
||||
}*/
|
||||
|
||||
//traffic type
|
||||
var xentrafficlabel, kvmtrafficlabel, vmwaretrafficlabel;
|
||||
var xenservertrafficlabel, kvmtrafficlabel, vmwaretrafficlabel;
|
||||
var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Guest');
|
||||
//refresh Guest traffic type
|
||||
selectedPhysicalNetworkObj[ "xennetworklabel"] = trafficType.xennetworklabel;
|
||||
selectedPhysicalNetworkObj[ "xenservernetworklabel"] = trafficType.xenservernetworklabel;
|
||||
selectedPhysicalNetworkObj[ "kvmnetworklabel"] = trafficType.kvmnetworklabel;
|
||||
selectedPhysicalNetworkObj[ "vmwarenetworklabel"] = trafficType.vmwarenetworklabel;
|
||||
selectedPhysicalNetworkObj[ "ovmnetworklabel"] = trafficType.ovmnetworklabel;
|
||||
|
||||
@ -242,7 +242,7 @@
|
||||
$.ajax({
|
||||
url: createURL('listConfigurations'),
|
||||
data: {
|
||||
name: 'xen.pvdriver.version'
|
||||
name: 'xenserver.pvdriver.version'
|
||||
},
|
||||
async: false,
|
||||
success: function (json) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user