Community
 
 
 

CloudPlatform 3.x

343 followers
 
Avatar
Erik Godin

Performing actions in CloudPlatform vs XenCenter/XE CLI

I haven't seen this subject addressed before however think it's an important one. What kind of actions shouldn't be done in XenCenter/using XE cli and only done through CloudPlatform's API/GUI on a pool of XenServers (XenServer 6.0.2/CloudPlatform 3.0.6)? More specifically:

- Can I put a host in maintenance mode in CloudPlatform and then manually create a virtual instance on it for testing purposes (after which of course the virtual instance would be deleted before the host is brought out of maintenance). Two new nodes I recently provisioned into the pool are having networking problems so I'd like to provision test VMs while they're in maintenance but at the same time prevent Cloudplatform from provisioning any new VMs on those hosts.

If I were to move around VMs through XenCenter instead of doing it through CloudPlatform's GUI , would that cause a problem? Would CloudPlatform throw some kind of error/alert about the virtual instance not being on the same host it thought it was? I'm wondering if I can enable Dynamic workload Balancing on a XenServer pool managed by CloudPlatform.

TIA.

Erik


4 comments
0

Please sign in to leave a comment.

 
 

Previous 4 comments

Avatar
Administrator
Avatar

Performing actions in CloudPlatform vs XenCenter/XE CLI

It is not advised/recommended to administer a XS cluster that is managed by CCP during normal operations.

There is a requirement though were it may be required to perform some maintenance or similar on XS, like while updating hardware/network or rolling pool upgrade.

In such cases, you should first un-manage the XS cluster from CCP (UI/API) and then perform these activities.

Post completion of these activities the manage the XS cluster from CCP (UI/API). At this time, CCP will sync the latest status of VMs with its database.

I do not believe Dymamic Workload Balancing is supported by CCP 3.x releases. I may be in Campo (4.2), you may double check in the release notes when its available.


Somesh Naidu CITRIX EMPLOYEES
Comment actions Permalink
Avatar
Erik Godin

What about the previous scenario I suggested:

- Put a host in maintenance mode without disconnecting the entire cluster
- Create two VMs for testing purposes
- Delete the VMs when done and take the host out of maintenance

Would that create any kind of problems? I've recently experienced a networking problem (I intend to create another thread to talk about this once I've had a chance to investigate more, but essentially two VMs on the same host had problems talking to each other under certain conditions) and I'd like to ensure no VMs are live migrated or restarted on those problematic hosts while I do my testing.

TIA

Erik


Comment actions Permalink
Avatar
Kurt Bachelder

Hi Erik -

We struggled with the same question early on. For your specific question, "maintenance mode" in XenCenter is NOT the same as "maintenance mode" in CloudPlatform. If you Login to CCP and put a host in maintenance mode, then login to XenCenter and observe the same host, you will notice that CCP will show that the host is in "maintenance" status, but XenCenter does not show that it is in maintenance.

XenCenter's maintenance mode is handled differently, because pools managed by XenCenter can ONLY be XenServer - whereas CCP needs to be agnostic in the Hypervisor, so "maintenance" in XenServer is not the same as in KVM, OVM, baremetal, etc. Maintenance mode in CCP will migrate all the instances off the host(s) in maintenance mode, then it will flag that host as "not valid for deployment" when doing any future provisioning checks for an instance (until you remove it from maintenance).

What it comes down to is that anything that you can do in CCP, you should do in CCP. Patching cannot be done in CCP, but due to the XenServer pools utilizing a pool "master", you must perform the steps outlined in the previous post.

Something to also be aware of - you cannot configure XenServer HA or WLB in XenCenter (or in CCP) - the functionality is not compatible. A XenServer pool's method of HA/WLB will fight with CloudPlatform's method of HA, and can cause unexpected (and unwanted) results. For example, XenServer might relocate a VM to another machine to Load Balance - CCP is unaware of that move, and thinks the VM is down, so it issues a restart. Then, XenServer thinks the VM is down (it is, but because CCP restarted it), and performs another HA action to restart it on another node. Rinse and repeat - it gets ugly.

Definitely not a clear-cut line, but unless you're positive that what you're doing in XenCenter won't impact your CCP setup, stay away from it for anything other than viewing the resources (which is very beneficial by itself!)

HTH

K


Comment actions Permalink
Avatar
Administrator
Avatar

Kurt, that's a very nice explanation, thanks.

To specifically answer erikgo's query about launching VMs externally on a host that is in maintenance mode in CCP, it is likely that vmsync will try to shutdown these VMs.

The intended use for CCP's maintenance mode is to allow for performing maintenance, like updating the hardware, on a host. We do not expect any changes happenig at the pool level outside the knowledge of CCP during this time. Note that while the host is in maintenance in CCP it is still active on XS pool.

So essentially, host maintenance is host level isolation and cluster mange/un-mange is pool level isolation.

Hope that clarifies.


Somesh Naidu CITRIX EMPLOYEES
Comment actions Permalink

Top Contributors