Citrix Director 7: Feature requests, Database design and Provisioning versioning
The blog about an issue with Citrix director, got well received. I got saw a tweet from Citrix engineering they are looking into it. They might add a functionality to check for stale data. I think that is awesome and shows the commitment of the engineering team working on it. I really get a smile on my face from this kind of tweets. It also makes me think, so today I walked around and thought about the issue I solved yesterday. I’m no Citrix CTP so my channels inside Citrix are limited to some dear friends working there. I thought the easiest way is to write a small blog with a feature request list. Anyone can read it, discuss about it and build on a better product.
I was thinking about the database issue and of course it is great if Citrix will add a feature that checks for stale data in the database. I think the current monitoring and checking ability of the site is limited and should do more tests like a upgrade-dry-run test to see if the database is “clean” and ready for upgrade. The same goes for the stale data. You should have an option to check if the database is still pristine and running smoothly. But there is more to this, the stale data shouldn’t be in the database. Think about it, why would there be stale data in the database?
Citrix offers the possibility to split the databases, if you do a simple setup you get three database;
We see a lot of vendors having a different database for logging as logging can fill up your database depending on settings. Monitoring and Configuration are split as well but that could cause issues when you need data from both databases and you don’t check for consistency. I don’t know why the stale data was in the database but I have a theory; someone for some reason restored a database which was holding old data. As you have three database, restoring one could cause inconsistent data.
Feature Request #1 would be that there is a consistency check to make sure both the Configuration and Monitoring are containing the right data. You could debate if you need to split these databases as it seems the need each other.
Feature Request #2 would be the option to execute a database check to search for missing data and clean up. I would add a upgrade check. Which would make it more Enterprise ready as it makes me nervous to execute an upgrade without testing.
Provisioning Services Versioning
I was teaching a customer to use Citrix Provisioning Services versions to update the golden image vDisk. Things work fine and they updated the image with my execution plan. Next I get a call that the software is not visible in the desktops they start. It took me a few minutes to realize what had happened, the vDisk version was promoted to Production and it was waiting on top. All the desktops running however where connected to the older version. All the desktops with no one logged on also were connected to the older version.
When you create a new version and you promote it to Production nothing happens. It is not like MCS where you have the ability to schedule a replace of all desktops (in use and ready). With Citrix Provisioning Services you either have to reboot all in-active devices yourself or wait until they have been used and reboot. I think there is room for improvement here, a simple checkbox would do.
Feature Request #3 would be that there is a checkbox added to the Promotion feature where you select to reboot all inactive streamed desktops. All in-active streamed desktops would by doing that receive the last version. The option is easy to implement as you already can give power commands from the console.
That’s all I had to say and I hope Citrix and you guys and girls agree with my thoughts. If you don’t agree or think it should be different please let me know.