Virtualization, technology, and random rantings with a focus on Citrix and VMware.

Author: Kris Davis

Something Mandatory This Way Comes….

 

So, you have found that you have the dreaded, evil, painful, Mandatory Upgrade message…. This has happened to me a few times. I’ve spoken with Citrix support (which was very good about this btw) to get fixed a couple of times. The third time, I tried my hand at re-creating the sorcery that was shown to me. I pulled a Sorceror’s Apprentice fail for a bit. After arguing with my hand against my forehead and maybe some choice angry words of frustration dipped in a rainbow of expression, I finally got it. I got the order of operations right. I got the thingie to come back to me without resorting to percussive maintenance. That would be quite difficult since they are virtual. It would’ve been as effective as a flame-proof candle. But, I share with you below what I did to bring it back from the dreaded error….

 

Go ahead and close Studio and log out at that point. You need the account that was used to build the farm. I tried other accounts, and they just didn’t have the power. This account also needed SA on the SQL server to register all the instances. So that is what I found prerequisite. Then, open some sweet, sweet Powershell ISE as administrator.  Copy and paste this into the ISE. Run the first two lines to see the count of instances. There should be 60 per controller for 7.15LTSR. There is one line commented out. Run that line and only that line on ONE controller, otherwise you are starting the process over again. Once you run it on the first controller, comment it back out and run that beautiful bean footage from “Get-Service Citrix* | Stop-Service -Force” onward. You will have to repeat the process sans the commented out line on the rest of the Delivery Controllers.

 

asnp Citrix*

Get-ConfigRegisteredServiceInstance | measure

Get-Service Citrix* | Stop-Service -Force
Get-Service Citrix* | Start-Service

#Get-ConfigRegisteredServiceInstance | Unregister-ConfigRegisteredServiceInstance

Get-AdminServiceInstance | register-configserviceInstance
Get-AcctServiceInstance | register-configserviceInstance
Get-ApplibServiceInstance | register-configserviceInstance
Get-BrokerServiceInstance | register-configserviceInstance
Get-ConfigRegisteredServiceInstance | register-configserviceInstance
Get-ConfigServiceInstance | register-configserviceInstance
Get-EnvTestServiceInstance | register-configserviceInstance
Get-HypServiceInstance | register-configserviceInstance
Get-LogServiceInstance | register-configserviceInstance
Get-MonitorServiceInstance | register-configserviceInstance
Get-ProvServiceInstance | register-configserviceInstance
Get-SfServiceInstance | register-configserviceInstance
Get-TrustServiceInstance | register-configserviceInstance
Get-OrchServiceInstance | register-configserviceInstance

Get-ConfigRegisteredServiceInstance -servicetype config | Reset-AdminServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-AcctServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-ApplibServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-BrokerServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-ConfigServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-EnvTestServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-HypServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-LogServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-MonitorServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-ProvServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-SfServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-TrustServiceGroupMembership
Get-ConfigRegisteredServiceInstance -servicetype config | Reset-OrchServiceGroupMembership

 

After you run this, you should be able to run the “Get-ConfigRegisteredServiceInstance | measure” command again to see the proper number of instances. You can run this after you run the above on a controller and see if the number increments properly. Sometimes you have to reboot the Controller after doing the fix. If you have 4 Delivery Controllers, it will look like below:

 

You should be able to open Studio now and it looks all pretty and pristine!

Let me know if this helps you out! Tune in for next blog’s episode, “Something, Something, Something Dark Side.”

 

 

 

 

 

First Thoughts on Workspace-ed Out!

Just started using the new Workspace / Receiver. I still am partial to using just the web portion of it. I connect to multiple sites and I like to have browser separation on them. I have played around with the Workspace “proper” as well. I’m noticing things are launching faster either way with this new client. I’m pleasantly surprised to see it. I’m looking forward to checking more of it out and comparing performance to my previous client. I’ll update after I have had more time with it!

SQL Requirements for XenApp 7.15LTSR

Here are the requirements I ran across needing for the SQL backend portion for XenApp 7.15LTSR. I had to initially get full sa permission so that XenApp could setup it’s 3 databases. We couldn’t get it to work otherwise. After that, we were able to step down the permission as listed below.

 

SQL Requirements

  1. SQL server (stand alone or cluster/AG. If cluster/AG, then additional setup is needed.
  2. Five total drives. Two drives for OS and SQL install and one for each DATA, TEMP, and LOG.
  3. Service account to run SQL.
  4. Service account for XenApp server for adds to the farm.
  5. Service account for PVS if using PVS.
  6. Permissions for account: dbowner and securityadmin. Securityadmin is needed to create the machine account access to the database.
  7. SQL Database for Site, ConfigurationLogging, and Monitoring for XenApp.
  8. If you are using Session Recording, you will also need CitrixSessionRecording and CitrixSessionRecordingLogging.

Overview subject to change

Good afternoon and stuff! As promised, I’m going to begin to post the stuff for building a XenApp 7.15 LTSR Enterprise environment. This is subject to change as I run into different issues, requirements, or angry wombats. Below is a skeleton of the requirements I ran into in setting up and Enterprise Citrix environment. I did run into an interesting issue with the Netscaler management interface being on the same VLAN as the data traffic, but that is for another post soon to come. I’ll be addressing the individual components as well as the specifics / issues and resolutions I ran across as well. But for now, here you go!

 

  1. IP range for the Citrix servers.
  2. Dedicated storage LUN(s) / storage cluster.
  3. Dedicated hardware / Vmware cluster.
  4. One license server.
  5. Two – three PVS servers.
  6. One SQL server and instance.
  7. Two – three storefront servers.
  8. Two – three director servers.
  9. Two – three profile servers.
  10. DHCP server.
  11. Two netscalers in HA to support user connections.
  12. SSL certificate for main site.
  13. SSL certificate for StoreFront.
  14. VLAN for Citrix.
  15. AppLayering OVA 4.11.
  16. MAS OVA for netscaler.
  17. Sizing of 3:1 or 4:1 for Citrix on over provisioning of hardware. Some articles list as 2:1, but 3:1 or even 4:1 may be attainable depending on applications.
  18. Four service accounts.

PoSh Spice Be Here!

I want to take a moment… Ok, that moment’s over. Bringing to you from the world of powershell, powercli, and power scripting….. Stuart Yerdon, and the webmaster of https://notesofascripter.com. He has been featured as a vExpert, a connoisseur of all things M:TG (If you have to ask….), and a colleague and friend of mine. Check out his site and all things powershell. If you got a problem, and you can find him (you can at https://notesofascripter.com), you’ll find what you seek.

Linux Receiver for Fedora

So you want to connect to Citrix on Fedora 28 to a Citrix site that uses Entrust certificates? Well, the receiver has a few issues with that idea. So to take care of that, there are some workarounds you need to do. I have a link on the bottom of the screen for what I had to do to get it working. You will need to download the tarball files. I used the 13.8 client. You can do it with the newer 13.9 as well, I had just backtracked to get it working. So below is what I had to do.

  1. Download the tarball to install https://www.citrix.com/downloads/citrix-receiver/linux/receiver-for-linux-latest.html. You will need to sign up for a Citrix account.
  2. Copy the file to /opt.
  3. Switch to the privileged user install.
  4. Follow the install through.
  5. When you are done, go to https://www.entrust.com and download the Entrust root 2048, Entrust root G2, and in my case, the Entrust L1K certificate. You may have a different intermediate certificate depending on what you are using. You will need to save these to /opt/Citrix/ICAClient/keystore/cacerts. I didn’t need the PEM, I only had to download the .cer files.
  6. You should be able to connect and launch now!

From I was finding, this is also what you will need to do if you are using newer versions of Ubuntu such as 18.04.

https://discussions.citrix.com/topic/393904-cannot-connect-to-0002-streetsmart-edge/

SUBST for the substitute win!

Welcome all to the world of an older application that was never meant to be multi-user. The application was designed for a desktop OS and for a single user. One way you can get around application work/temp folders is an old DOS command called subst. You can use it to map a folder location as a drive. An example is subst x: c:\users\%username%. You will need to create a folder in the user folder location. Then you can potentially point the INI file for the application to the x: location and now you have a separated workspace for each user. This has helped with more than one application in the past. Sometimes with terminal services and Citrix you have to get a little creative. With the big push of Windows 10, many older applications are being pushed off the desktop and into a virtualized environment as these antiquated applications are usually mission critical and haven’t been re-architected. Hope this brings some help to you!

Virtually into the world of virtualizing!

Do you want to build a snowman? I mean….. Maybe that’s the wrong place. Oh well. My name is Kris Davis and I’m a techaholic. Wrong meeting. Back to topic. I’ve been working in the tech world for 18 years ish. My primary focus for the past 12 years or so has been in Citrix and related technologies. I’ve worked with Windows, Linux, Citrix, VMware, scripting, networking, and more. I’ll be working to have weekly-ish posts to put things I’ve found that have been helpful and some walk-throughs. Maybe some rantings or musings on a variety of topics. I do aim to release in pieces at first, a document set that encompasses taking a small to medium scale Citrix installation to a full scale, enterprise solution. I’m in process of deploying a large scale installation as we speak, so I have a lot of content to share from what I have weeded through to find the pieces most useful. The current iteration includes XenApp 7.15LTSR-CU2, PVS 7.15, Netscalers, and some more epic tech. I’ll be posting my failings as well as my success so you can learn and grow with me!

Page 12 of 12

Powered by WordPress & Theme by Anders Norén