You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ra...@apache.org on 2013/12/27 10:48:40 UTC
[01/12] git commit: updated refs/heads/master to ea09c04
Updated Branches:
refs/heads/master 84bf5b3e5 -> ea09c0435
CLOUDSTACK-5321 Added default guest template centos 6.4-x64 and modified hyperv systemvm template download url
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/d37ce1e7
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/d37ce1e7
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/d37ce1e7
Branch: refs/heads/master
Commit: d37ce1e7c15f17f2b766315fb3b4f7faae5c93f0
Parents: 84bf5b3
Author: Rajesh Battala <ra...@citrix.com>
Authored: Thu Dec 5 16:12:47 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:45:55 2013 +0530
----------------------------------------------------------------------
setup/db/templates.sql | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/d37ce1e7/setup/db/templates.sql
----------------------------------------------------------------------
diff --git a/setup/db/templates.sql b/setup/db/templates.sql
index e5a653c..0f7958f 100755
--- a/setup/db/templates.sql
+++ b/setup/db/templates.sql
@@ -37,7 +37,10 @@ INSERT INTO `cloud`.`vm_template` (id, uuid, unique_name, name, public, created,
VALUES (8, UUID(), 'routing-8', 'SystemVM Template (vSphere)', 0, now(), 'SYSTEM', 0, 32, 1, 'http://download.cloud.com/templates/4.2/systemvmtemplate-4.2-vh7.ova', '8fde62b1089e5844a9cd3b9b953f9596', 0, 'SystemVM Template (vSphere)', 'OVA', 15, 0, 1, 'VMware' );
INSERT INTO `cloud`.`vm_template` (id, uuid, unique_name, name, public, created, type, hvm, bits, account_id, url, checksum, enable_password, display_text, format, guest_os_id, featured, cross_zones, hypervisor_type)
- VALUES (9, UUID(), 'routing-9', 'SystemVM Template (HyperV)', 0, now(), 'SYSTEM', 0, 32, 1, 'http://download.cloud.com/templates/4.2/systemvmtemplate-2013-06-12-master-xen.vhd.bz2', 'fb1b6e032a160d86f2c28feb5add6d83', 0, 'SystemVM Template (HyperV)', 'VHD', 15, 0, 1, 'Hyperv' );
+ VALUES (9, UUID(), 'routing-9', 'SystemVM Template (HyperV)', 0, now(), 'SYSTEM', 0, 64, 1, 'http://download.cloud.com/templates/4.3/systemvm64template-2013-12-04-hyperv.vhd.bz2', 'fb1b6e032a160d86f2c28feb5add6d83', 0, 'SystemVM Template (HyperV)', 'VHD', 15, 0, 1, 'Hyperv' );
+
+INSERT INTO `cloud`.`vm_template` (id, uuid, unique_name, name, public, created, type, hvm, bits, account_id, url, checksum, enable_password, display_text, format, guest_os_id, featured, cross_zones, hypervisor_type, extractable)
+ VALUES (6, UUID(), 'centos64-x64', 'CentOS 6.4(64-bit) no GUI (Hyperv)', 1, now(), 'BUILTIN', 0, 64, 1, 'http://download.cloud.com/releases/4.3/centos6_4_64bit.vhd.bz2', '89d124c4e7c93b88638b2a0e286c54f2', 0, 'CentOS 6.4 (64-bit) no GUI (Hyperv)', 'VHD', 182, 1, 1, 'Hyperv', 1);
INSERT INTO `cloud`.`guest_os_category` (id, uuid, name) VALUES (1, UUID(), 'CentOS');
INSERT INTO `cloud`.`guest_os_category` (id, uuid, name) VALUES (2, UUID(), 'Debian');
[04/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5559 Add CIFS support in ssvm-check script
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/dde7a5f4
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/dde7a5f4
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/dde7a5f4
Branch: refs/heads/master
Commit: dde7a5f43e9b3522db5bbb1a577daa97ee70e890
Parents: bd639bf
Author: Rajesh Battala <ra...@citrix.com>
Authored: Thu Dec 19 17:42:37 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:49:26 2013 +0530
----------------------------------------------------------------------
systemvm/scripts/ssvm-check.sh | 20 +++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dde7a5f4/systemvm/scripts/ssvm-check.sh
----------------------------------------------------------------------
diff --git a/systemvm/scripts/ssvm-check.sh b/systemvm/scripts/ssvm-check.sh
index 7b83c98..2ab51c5 100644
--- a/systemvm/scripts/ssvm-check.sh
+++ b/systemvm/scripts/ssvm-check.sh
@@ -34,6 +34,10 @@ do
esac
done
+isCifs() {
+ mount | grep "type cifs" > /dev/null
+ echo $?
+}
# ping dns server
echo ================================================
@@ -67,12 +71,18 @@ fi
# check to see if we have the NFS volume mounted
echo ================================================
-mount|grep -v sunrpc|grep -v rpc_pipefs|grep nfs 1> /dev/null 2>&1
+storage="cifs"
+if [ $(isCifs) -ne 0 ] ;
+ then
+ storage="nfs"
+fi
+
+mount|grep -v sunrpc|grep -v rpc_pipefs|grep $storage 1> /dev/null 2>&1
if [ $? -eq 0 ]
then
- echo "NFS is currently mounted"
+ echo "$storage is currently mounted"
# check for write access
- for MOUNTPT in `mount|grep -v sunrpc|grep -v rpc_pipefs|grep nfs| awk '{print $3}'`
+ for MOUNTPT in `mount|grep -v sunrpc|grep -v rpc_pipefs|grep $storage| awk '{print $3}'`
do
if [ $MOUNTPT != "/proc/xen" ] # mounted by xen
then
@@ -96,9 +106,9 @@ else
ping -c 2 $NFSSERVER
if [ $? -eq 0 ]
then
- echo "Good: Can ping NFS server"
+ echo "Good: Can ping $storage server"
else
- echo "WARNING: cannot ping NFS server"
+ echo "WARNING: cannot ping $storage server"
echo routing table follows
route -n
fi
[12/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5193 [Hyper-V] VHDs not deleted post VM destroy and expunge
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/ea09c043
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/ea09c043
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/ea09c043
Branch: refs/heads/master
Commit: ea09c0435f50af42aa3ec2916484ce2a8a7e1f49
Parents: 31969e9
Author: Rajesh Battala <ra...@citrix.com>
Authored: Thu Dec 26 16:10:49 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:59:57 2013 +0530
----------------------------------------------------------------------
.../HypervResource/HypervResourceController.cs | 58 ++++++++++++++++++++
1 file changed, 58 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ea09c043/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
index c24e177..287f9f2 100644
--- a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
+++ b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
@@ -419,6 +419,64 @@ namespace HypervResource
}
}
+ // POST api/HypervResource/DeleteCommand
+ [HttpPost]
+ [ActionName(CloudStackTypes.DeleteCommand)]
+ public JContainer DeleteCommand([FromBody]dynamic cmd)
+ {
+ using (log4net.NDC.Push(Guid.NewGuid().ToString()))
+ {
+ logger.Info(CloudStackTypes.DestroyCommand + cmd.ToString());
+
+ string details = null;
+ bool result = false;
+
+ try
+ {
+ // Assert
+ String errMsg = "No 'volume' details in " + CloudStackTypes.DestroyCommand + " " + cmd.ToString();
+ VolumeObjectTO destVolumeObjectTO = VolumeObjectTO.ParseJson(cmd.data);
+
+ if (destVolumeObjectTO.name == null)
+ {
+ logger.Error(errMsg);
+ throw new ArgumentException(errMsg);
+ }
+
+ String path = destVolumeObjectTO.FullFileName;
+ if (!File.Exists(path))
+ {
+ logger.Info(CloudStackTypes.DestroyCommand + ", but volume at pass already deleted " + path);
+ }
+
+ string vmName = (string)cmd.vmName;
+ if (!string.IsNullOrEmpty(vmName) && File.Exists(path))
+ {
+ // Make sure that this resource is removed from the VM
+ wmiCallsV2.DetachDisk(vmName, path);
+ }
+
+ File.Delete(path);
+ result = true;
+ }
+ catch (Exception sysEx)
+ {
+ details = CloudStackTypes.DestroyCommand + " failed due to " + sysEx.Message;
+ logger.Error(details, sysEx);
+ }
+
+ object ansContent = new
+ {
+ result = result,
+ details = details,
+ contextMap = contextMap
+ };
+
+ return ReturnCloudStackTypedJArray(ansContent, CloudStackTypes.Answer);
+ }
+ }
+
+
private static JArray ReturnCloudStackTypedJArray(object ansContent, string ansType)
{
JObject ansObj = Utils.CreateCloudStackObject(ansType, ansContent);
[09/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5602 cloudstack-release file in systemvm for hyperv is showing the release as 4.2. It should be 4.3
CLOUDSTACK-5538 additional libraries requires in systemvm for console proxy to work in HyperV
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/fc306d13
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/fc306d13
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/fc306d13
Branch: refs/heads/master
Commit: fc306d13bf00d8039f36b329ea5dbf252b31c817
Parents: 238eda3
Author: Rajesh Battala <ra...@citrix.com>
Authored: Sun Dec 22 18:10:24 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:58:23 2013 +0530
----------------------------------------------------------------------
tools/appliance/definitions/systemvm64template/postinstall.sh | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/fc306d13/tools/appliance/definitions/systemvm64template/postinstall.sh
----------------------------------------------------------------------
diff --git a/tools/appliance/definitions/systemvm64template/postinstall.sh b/tools/appliance/definitions/systemvm64template/postinstall.sh
index 4b43eee..8bd7a52 100644
--- a/tools/appliance/definitions/systemvm64template/postinstall.sh
+++ b/tools/appliance/definitions/systemvm64template/postinstall.sh
@@ -19,7 +19,7 @@ set -x
ROOTPW=password
HOSTNAME=systemvm
-CLOUDSTACK_RELEASE=4.2.0
+CLOUDSTACK_RELEASE=4.3.0
add_backports () {
sed -i '/backports/d' /etc/apt/sources.list
@@ -79,6 +79,8 @@ install_packages() {
# Download the hv kvp daemon
wget http://people.apache.org/~rajeshbattala/hv-kvp-daemon_3.1_amd64.deb
dpkg -i hv-kvp-daemon_3.1_amd64.deb
+ #libraries required for rdp client (Hyper-V)
+ apt-get --no-install-recommends -q -y --force-yes install libtcnative-1 libssl-dev libapr1-dev
# vmware tools
apt-get --no-install-recommends -q -y --force-yes install open-vm-tools
@@ -236,6 +238,7 @@ configure_services() {
chkconfig --add cloud
chkconfig cloud off
chkconfig xl2tpd off
+ chkconfig hv_kvp_daemon off
}
do_signature() {
[10/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5584 fix the issue to configure the systemvm's in hyperv consistently
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/3f59780e
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/3f59780e
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/3f59780e
Branch: refs/heads/master
Commit: 3f59780e91f8b8683953a79005e7d58e557562cd
Parents: fc306d1
Author: Rajesh Battala <ra...@citrix.com>
Authored: Sun Dec 22 22:15:29 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:58:56 2013 +0530
----------------------------------------------------------------------
.../DotNet/ServerResource/HypervResource/WmiCallsV2.cs | 12 ++----------
1 file changed, 2 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/3f59780e/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
index 23a5dd3..f0f7f7b 100644
--- a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
+++ b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
@@ -445,13 +445,6 @@ namespace HypervResource
String bootargs = bootArgs;
AddUserData(vm, bootargs);
-
- // Get existing KVP
- //var vmSettings = GetVmSettings(vm);
- //var kvpInfo = GetKvpSettings(vmSettings);
- //logger.DebugFormat("Boot Args presisted on the VM are ", kvpInfo);
- //AddUserData(vm, bootargs);
-
// Verify key added to subsystem
//kvpInfo = GetKvpSettings(vmSettings);
@@ -475,17 +468,16 @@ namespace HypervResource
if (vmName.StartsWith("r-") || vmName.StartsWith("s-") || vmName.StartsWith("v-"))
{
System.Threading.Thread.Sleep(90000);
- SetState(newVm, RequiredState.Reset);
// wait for the second boot and then return with sucesss
//if publicIPAddress is empty or null don't ping the ip
- if (publicIpAddress.Equals("") == true)
+ /*if (publicIpAddress.Equals("") == true)
{
System.Threading.Thread.Sleep(90000);
}
else
{
pingResource(publicIpAddress);
- }
+ }*/
}
logger.InfoFormat("Started VM {0}", vmName);
return newVm;
[08/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5592 ssh should run on eth1 interface in ssvm/cpvm running in HyperV
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/238eda30
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/238eda30
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/238eda30
Branch: refs/heads/master
Commit: 238eda30ae1cfa56bf28818dceaecd15900f2963
Parents: dcf8ddf
Author: Rajesh Battala <ra...@citrix.com>
Authored: Sun Dec 22 17:59:46 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:57:52 2013 +0530
----------------------------------------------------------------------
.../patches/debian/config/etc/init.d/cloud-early-config | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/238eda30/systemvm/patches/debian/config/etc/init.d/cloud-early-config
----------------------------------------------------------------------
diff --git a/systemvm/patches/debian/config/etc/init.d/cloud-early-config b/systemvm/patches/debian/config/etc/init.d/cloud-early-config
index 05661fc..d6dc8f0 100755
--- a/systemvm/patches/debian/config/etc/init.d/cloud-early-config
+++ b/systemvm/patches/debian/config/etc/init.d/cloud-early-config
@@ -29,6 +29,8 @@
PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"
#set -x
#exec 3>&0 4>&1 > /var/log/test.log 2>&1
+#start hv_kvp daemon
+/usr/sbin/hv_kvp_daemon
# Fix haproxy directory issue
mkdir -p /var/lib/haproxy
@@ -134,7 +136,9 @@ get_boot_params() {
# Hyper-V is recognized as virtualpc hypervisor type. Boot args are passed using KVP Daemon
#waiting for the hv_kvp_daemon to start up
#sleep 30 need to fix the race condition of hv_kvp_daemon and cloud-early-config
+ sleep 5
cp -f /var/opt/hyperv/.kvp_pool_0 /var/cache/cloud/cmdline
+ cat /dev/null > /var/opt/hyperv/.kvp_pool_0
;;
esac
@@ -987,7 +991,7 @@ EOF
fi
if [ -n "$MGMTNET" -a -n "$LOCAL_GW" ]
then
- if [ "$hyp" == "vmware" ]
+ if [ "$hyp" == "vmware" ] || [ "$hyp" == "hyperv" ];
then
ip route add $MGMTNET via $LOCAL_GW dev eth0
@@ -1087,7 +1091,7 @@ setup_secstorage() {
cp /etc/iptables/iptables-secstorage /etc/iptables/rules.v4
cp /etc/iptables/iptables-secstorage /etc/iptables/rules
- if [ "$hyp" == "vmware" ]; then
+ if [ "$hyp" == "vmware" ] || [ "$hyp" == "hyperv" ]; then
setup_sshd $ETH1_IP "eth1"
else
setup_sshd $ETH0_IP "eth0"
@@ -1113,7 +1117,7 @@ setup_console_proxy() {
echo "$public_ip $NAME" >> /etc/hosts
cp /etc/iptables/iptables-consoleproxy /etc/iptables/rules.v4
cp /etc/iptables/iptables-consoleproxy /etc/iptables/rules
- if [ "$hyp" == "vmware" ]; then
+ if [ "$hyp" == "vmware" ] || [ "$hyp" == "hyperv" ]; then
setup_sshd $ETH1_IP "eth1"
else
setup_sshd $ETH0_IP "eth0"
[03/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5520 CLOUDSTACK-5418 Script errors seen when trying to seed the 64 bit Xenserver templates.
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/bd639bf1
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/bd639bf1
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/bd639bf1
Branch: refs/heads/master
Commit: bd639bf145b06436d326cd27a52dbac6cd69daa2
Parents: 18fd015
Author: Rajesh Battala <ra...@citrix.com>
Authored: Wed Dec 18 15:32:39 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:46:55 2013 +0530
----------------------------------------------------------------------
scripts/storage/secondary/createtmplt.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/bd639bf1/scripts/storage/secondary/createtmplt.sh
----------------------------------------------------------------------
diff --git a/scripts/storage/secondary/createtmplt.sh b/scripts/storage/secondary/createtmplt.sh
index 05874b4..6b31232 100755
--- a/scripts/storage/secondary/createtmplt.sh
+++ b/scripts/storage/secondary/createtmplt.sh
@@ -174,7 +174,7 @@ isCifs() {
#then check if the template file is from cifs using df -P filename
#Currently only cifs is supported in hyperv zone.
mount | grep "type cifs" > /dev/null
- return $?
+ echo $?
}
if [ "$tflag$nflag$fflag$sflag" != "1111" ]
@@ -204,7 +204,7 @@ rollback_if_needed $tmpltfs $? "tar archives not supported\n"
if [ ${tmpltname%.vhd} != ${tmpltname} ]
then
- if [ isCifs -ne 0 ] ;
+ if [ $(isCifs) -ne 0 ] ;
then
if which vhd-util &>/dev/null
then
[05/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5592
ssh should run on eth1 interface in ssvm/cpvm running in HyperV.
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/ab304d28
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/ab304d28
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/ab304d28
Branch: refs/heads/master
Commit: ab304d28213c6e0957624dcd406f99e0b4fdc27b
Parents: dde7a5f
Author: Rajesh Battala <ra...@citrix.com>
Authored: Sun Dec 22 17:00:48 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:50:08 2013 +0530
----------------------------------------------------------------------
server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java | 5 +++++
.../cloud/storage/secondary/SecondaryStorageManagerImpl.java | 5 +++++
2 files changed, 10 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ab304d28/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
index 3b23715..9e5c0b3 100755
--- a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
+++ b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
@@ -1440,6 +1440,11 @@ public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxy
controlNic = managementNic;
}
+ // verify ssh access on management nic for system vm running on HyperV
+ if(profile.getHypervisorType() == HypervisorType.Hyperv) {
+ controlNic = managementNic;
+ }
+
CheckSshCommand check = new CheckSshCommand(profile.getInstanceName(), controlNic.getIp4Address(), 3922);
cmds.addCommand("checkSsh", check);
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ab304d28/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
index 99de391..114d06f 100755
--- a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
+++ b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
@@ -1141,6 +1141,11 @@ public class SecondaryStorageManagerImpl extends ManagerBase implements Secondar
controlNic = managementNic;
}
+ // verify ssh access on management nic for system vm running on HyperV
+ if(profile.getHypervisorType() == HypervisorType.Hyperv) {
+ controlNic = managementNic;
+ }
+
CheckSshCommand check = new CheckSshCommand(profile.getInstanceName(), controlNic.getIp4Address(), 3922);
cmds.addCommand("checkSsh", check);
[07/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5340 [Hyper-V] Control IPs are not getting released when VRs are in stopped state
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/dcf8ddfb
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/dcf8ddfb
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/dcf8ddfb
Branch: refs/heads/master
Commit: dcf8ddfb2487d7cee02c92459d6c1d1e4a397289
Parents: 67d1a88
Author: Rajesh Battala <ra...@citrix.com>
Authored: Sun Dec 22 17:08:42 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:56:02 2013 +0530
----------------------------------------------------------------------
server/src/com/cloud/network/guru/ControlNetworkGuru.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dcf8ddfb/server/src/com/cloud/network/guru/ControlNetworkGuru.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/guru/ControlNetworkGuru.java b/server/src/com/cloud/network/guru/ControlNetworkGuru.java
index 1de12b7..b8e1f20 100755
--- a/server/src/com/cloud/network/guru/ControlNetworkGuru.java
+++ b/server/src/com/cloud/network/guru/ControlNetworkGuru.java
@@ -173,8 +173,8 @@ public class ControlNetworkGuru extends PodBasedNetworkGuru implements NetworkGu
@Override
public boolean release(NicProfile nic, VirtualMachineProfile vm, String reservationId) {
assert nic.getTrafficType() == TrafficType.Control;
-
- if (vm.getHypervisorType() == HypervisorType.VMware && isRouterVm(vm)) {
+ HypervisorType hType = vm.getHypervisorType();
+ if ( ( (hType == HypervisorType.VMware) || (hType == HypervisorType.Hyperv) )&& isRouterVm(vm)) {
long dcId = vm.getVirtualMachine().getDataCenterId();
DataCenterVO dcVo = _dcDao.findById(dcId);
if (dcVo.getNetworkType() != NetworkType.Basic) {
[02/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5365 added route for mgmt cidr in the VR running on HyperV
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/18fd0157
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/18fd0157
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/18fd0157
Branch: refs/heads/master
Commit: 18fd0157a5bda6ddc96eb2dff8fd9658d1323f57
Parents: d37ce1e
Author: Rajesh Battala <ra...@citrix.com>
Authored: Tue Dec 17 16:39:26 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:46:28 2013 +0530
----------------------------------------------------------------------
.../cloud/network/router/VirtualNetworkApplianceManagerImpl.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/18fd0157/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
index cc66199..ee412b3 100755
--- a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
+++ b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
@@ -2044,7 +2044,7 @@ public class VirtualNetworkApplianceManagerImpl extends ManagerBase implements V
} else if (nic.getTrafficType() == TrafficType.Control) {
controlNic = nic;
// DOMR control command is sent over management server in VMware
- if (dest.getHost().getHypervisorType() == HypervisorType.VMware) {
+ if (dest.getHost().getHypervisorType() == HypervisorType.VMware || dest.getHost().getHypervisorType() == HypervisorType.Hyperv) {
s_logger.info("Check if we need to add management server explicit route to DomR. pod cidr: " + dest.getPod().getCidrAddress() + "/" +
dest.getPod().getCidrSize() + ", pod gateway: " + dest.getPod().getGateway() + ", management host: " + ClusterManager.ManagementHostIPAdr.value());
[06/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5603 support Monitoring VR services when VR running on Hyper-V
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/67d1a888
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/67d1a888
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/67d1a888
Branch: refs/heads/master
Commit: 67d1a888800683c201ab331edbf9a1fa6c529918
Parents: ab304d2
Author: Rajesh Battala <ra...@citrix.com>
Authored: Sun Dec 22 17:03:55 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:55:16 2013 +0530
----------------------------------------------------------------------
.../resource/HypervDirectConnectResource.java | 40 ++++++++++++++++++--
1 file changed, 36 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/67d1a888/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/resource/HypervDirectConnectResource.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/resource/HypervDirectConnectResource.java b/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/resource/HypervDirectConnectResource.java
index 99e21e4..e60ac00 100644
--- a/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/resource/HypervDirectConnectResource.java
+++ b/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/resource/HypervDirectConnectResource.java
@@ -19,6 +19,7 @@ package com.cloud.hypervisor.hyperv.resource;
import java.io.File;
import java.io.IOException;
import java.net.ConnectException;
+import java.net.InetSocketAddress;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
@@ -79,6 +80,7 @@ import com.cloud.agent.api.routing.NetworkElementCommand;
import com.cloud.agent.api.routing.SavePasswordCommand;
import com.cloud.agent.api.routing.SetFirewallRulesAnswer;
import com.cloud.agent.api.routing.SetFirewallRulesCommand;
+import com.cloud.agent.api.routing.SetMonitorServiceCommand;
import com.cloud.agent.api.routing.SetPortForwardingRulesAnswer;
import com.cloud.agent.api.routing.SetPortForwardingRulesCommand;
import com.cloud.agent.api.routing.SetSourceNatAnswer;
@@ -381,7 +383,9 @@ public class HypervDirectConnectResource extends ServerResourceBase implements S
} else if (clazz == CheckS2SVpnConnectionsCommand.class) {
answer = execute((CheckS2SVpnConnectionsCommand)cmd);
} else if (clazz == SetStaticRouteCommand.class) {
- answer = execute((SetStaticRouteCommand)cmd);
+ answer = execute((SetStaticRouteCommand) cmd);
+ } else if (clazz == SetMonitorServiceCommand.class) {
+ answer = execute((SetMonitorServiceCommand) cmd);
} else {
if (clazz == StartCommand.class) {
VirtualMachineTO vmSpec = ((StartCommand)cmd).getVirtualMachine();
@@ -1450,6 +1454,35 @@ public class HypervDirectConnectResource extends ServerResourceBase implements S
return stats;
}
+ protected Answer execute(SetMonitorServiceCommand cmd) {
+ if (s_logger.isInfoEnabled()) {
+ s_logger.info("Executing resource SetMonitorServiceCommand: " + s_gson.toJson(cmd));
+ }
+
+ String controlIp = getRouterSshControlIp(cmd);
+ String config = cmd.getConfiguration();
+
+ String args = "";
+
+ args += " -c " + config;
+
+ try {
+ Pair<Boolean, String> result = SshHelper.sshExecute(controlIp, DEFAULT_DOMR_SSHPORT, "root", getSystemVMKeyFile(), null, "/opt/cloud/bin/monitor_service.sh " + args);
+
+ if (!result.first()) {
+ String msg= "monitor_service.sh failed on domain router " + controlIp + " failed " + result.second();
+ s_logger.error(msg);
+ return new Answer(cmd, false, msg);
+ }
+
+ return new Answer(cmd);
+
+ } catch (Throwable e) {
+ s_logger.error("Unexpected exception: " + e.toString(), e);
+ return new Answer(cmd, false, "SetMonitorServiceCommand failed due to " + e);
+ }
+ }
+
protected CheckSshAnswer execute(CheckSshCommand cmd) {
String vmName = cmd.getName();
String privateIp = cmd.getIp();
@@ -1666,10 +1699,9 @@ public class HypervDirectConnectResource extends ServerResourceBase implements S
sch = SocketChannel.open();
sch.configureBlocking(true);
sch.socket().setSoTimeout(5000);
- // we need to connect to the public ip address to check the status of the VM
- /*
+ // we need to connect to the control ip address to check the status of the system vm
InetSocketAddress addr = new InetSocketAddress(ipAddress, port);
- sch.connect(addr);*/
+ sch.connect(addr);
return null;
} catch (IOException e) {
s_logger.info("Could not connect to " + ipAddress + " due to " + e.toString());
[11/12] git commit: updated refs/heads/master to ea09c04
Posted by ra...@apache.org.
CLOUDSTACK-5595 add vlan to storage nic to vnic for ssvm
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/31969e99
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/31969e99
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/31969e99
Branch: refs/heads/master
Commit: 31969e993ece4a13ab52be409964e2d08e3ed129
Parents: 3f59780
Author: Rajesh Battala <ra...@citrix.com>
Authored: Tue Dec 24 16:56:12 2013 +0530
Committer: Rajesh Battala <ra...@citrix.com>
Committed: Fri Dec 27 14:59:31 2013 +0530
----------------------------------------------------------------------
.../DotNet/ServerResource/HypervResource/WmiCallsV2.cs | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/31969e99/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
index f0f7f7b..06730e0 100644
--- a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
+++ b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
@@ -390,9 +390,17 @@ namespace HypervResource
string mac = nic.mac;
string vlan = null;
string isolationUri = nic.isolationUri;
- if (isolationUri != null && isolationUri.StartsWith("vlan://") && !isolationUri.Equals("vlan://untagged"))
+ string broadcastUri = nic.broadcastUri;
+ if ( (broadcastUri != null ) || (isolationUri != null && isolationUri.StartsWith("vlan://")) && !isolationUri.Equals("vlan://untagged"))
{
- vlan = isolationUri.Substring("vlan://".Length);
+ if (broadcastUri != null && broadcastUri.StartsWith("storage"))
+ {
+ vlan = broadcastUri.Substring("storage://".Length);
+ }
+ else
+ {
+ vlan = isolationUri.Substring("vlan://".Length);
+ }
int tmp;
if (!int.TryParse(vlan, out tmp))
{