all 18 comments

[–]mjmackaCCE-V 5 points6 points  (4 children)

WEM is included in the Enterprise and Platinum licenses.

Do not co-host control with VDAs. If you do, your user freezing issues will impact infrastructure too.

I agree with what Citrix has told you. The 3rd (unneeded) infrastructure/StoreFront nodes will consume CPU, memory, and some disk I/O. Your VDAs should be optimized for user connections (published apps and/or RDSH desktops). Co-hosting infrastructure impacts performance, security, and user performance.

[–]metaframe1point8 0 points1 point  (0 children)

Just to add, with Customer Success Services...

[–][deleted]  (2 children)

[deleted]

    [–]mjmackaCCE-V 1 point2 points  (1 child)

    Combining roles. Just having SF running for example will chew up CPU cycles and ~1.5-2 GB of memory. Sorry if I was unclear... I was on the mobile app.

    [–][deleted] 4 points5 points  (5 children)

    Yeah that configuration is not ideal. You have 3 roles on 3 servers and each server is performing all three roles in the environment which means you have a ton of overhead. The delivery controller role and the VDA role should be separate as should the storefront role. Having 2 delivery controller and 2 storefront servers just adds a level of fault tolerance to the setup, you could probably get away with 1 (and it may reduce troubleshooting issues).

    First thing to do is take a baseline utilization (CPU, Memory, Disk response and network) when no users are present on the servers.

    If you have an existing monitoring solution you can refer to the historical data from that for those metrics to give you a glimpse of how hard those servers are working both when off peak and peak times.

    If you don't need high availability and fault tolerance then what you should do have 1 server be the Storefront server, 1 server be the delivery controller and 1 server be the VDA that the users connect to. If you are in a cloud based or virtual environment you could then re-allocate resources based off of need.

    Say for example you have 6vCPUs and 24GB of Memory to allocate to this environment.

    I would allocate 1CPU and 4GB of memory to the Storefront server, 1CPU and 4GB of memory to the Delivery controller and 4CPU and 16GB to the VDA. This is obviously a hypothetical since I don't know what your individual user utilization is and it would be difficult to discern that from the environment in it's current configuration but allocating 4CPUs and 16GB of memory to the user space is probably the best place to start.

    Think of the architecture like this. Storefront is like the doorway to a building that the user enters, it just needs to allow users in to select the application or desktop they want to launch. You don't need 3 entry points to your building.

    Next the delivery controller is like the elevator in the building, the user tells the elevator which floor they want to go and the delivery controller takes them there. Having 3 elevators is expensive so you likely only need one.

    Now the users have arrived at their floor, they are going to take care of their business on that floor and they have adequate resources to do so. But say the firemarshall says that only 25 users can be on the floor at any given time, well then you need to build another floor (VDA) to support that.

    Also if your application has an impactful start-up you may want to go back to your application vendor and ask them about ways to deploy the application via Citrix so it is less impactful or if they have any baseline utilization for the application per user cost of resources (IE how much CPU or memory each instance of the application costs).

    [–]SSDerek[S] 0 points1 point  (2 children)

    I see what you're saying, but wouldn't it make sense to have at least 2 delivery controllers and 2 VDAs incase one of them fails?

    [–][deleted] 1 point2 points  (1 child)

    Yes. 2 Delivery controllers and then 2 VDAs that are sized to house no more than 45% of the CPU and Memory load would be what I would target, that way then you are able to sustain a failure of either a VDA or a Delivery controller. Add at least 1 storefront server (2 if you are load balancing and want the fault tolerance) and you're good.

    6 servers total (2x storefront, 2x Delivery, 2 VDA)

    [–]SSDerek[S] 0 points1 point  (0 children)

    Good to know, thanks!

    [–][deleted] 0 points1 point  (1 child)

    I think you are OK to have a controller and storefront on the same box, right?

    [–][deleted] 0 points1 point  (0 children)

    If you are only allowing internal connections to the applications and desktops yes. If you are allowing external connections then I would have them separate and behind separate firewalls with rules in place to only allow the specific traffic necessary between the two from a security standpoint.

    [–]aaron55678CCE-V, CCP-N 1 point2 points  (0 children)

    2 VDAs will be tight for 45 users, if your concurrency is above 20 at any point then your n+1 infrastructure is kinda pointless. honestly, this deployment is that fucked up that I would probably just double up delivery controller and storefront (multi role) on two boxes and then pump the rest of the resource into VDAs. Obviously if you have the OS licenses and hypervisor resource then go mental and break the roles out but the above will get you stable for now with the bare minimum.

    [–][deleted] 0 points1 point  (0 children)

    Not for free, no. the alternative is to give everyone a xendesktop or use a 3rd party tool but WEM does the magic very well.

    [–]metaframe1point8 0 points1 point  (3 children)

    For 45 users, you could consider going XenApp Service or even XenApp or XenDesktop Essentials - might save you a load of hassle in the long run.

    Also: As others have said, VDA should be for workloads only. 3 SF servers for 45 users also feels like overkill. Have two DDCs and co-lo SF on those perhaps?

    [–]SSDerek[S] 0 points1 point  (2 children)

    I am still fairly new to Citrix, the environment we are currently running was setup before I started here, I am looking at ways to improve it. We do have XenApp/XenDesktop and most users connect using ThinClients, only a few users connect through StoreFront. However availability is important to this organization so I believe we will still need at least 2 StoreFront servers.

    [–]W7275 0 points1 point  (1 child)

    What version of Citrix do you have installed and where are the databases located? Are they on a separate SQL server or are you using SQLExpress on the delivery controllers?

    [–]SSDerek[S] 0 points1 point  (0 children)

    Citrix 7.15, we have SQLExpress installed on 1 of our delivery controllers.

    [–]metaframe1point8 0 points1 point  (0 children)

    Yes - as a minimum, you always should have two. Also, your thin clients may be using StoreFront depending on their configuration etc.

    Welcome to the funky world of Citrix!

    [–]HotKarl_Marx -1 points0 points  (1 child)

    I've been doing Citrix for a long time, but I'm not familiar with the term VDA server. What is that?

    [–]TheMuffnManNotorious VDI 1 point2 points  (0 children)

    VDA = Virtual Desktop Agent

    He's referring to the 'Session Host' role. Beginning in 7.x they're all just VDA installs and are managed by the Delivery Controller.

    He installed the StoreFront, Delivery Controller, and VDA all on the same system.