Coretek Services Named AppSense 2015 Partner of the Year, Central Region

2017-07-27T00:00:58+00:00 April 12th, 2016|News, Uncategorized|

FARMINGTON HILLS, Mich. and SUNNYVALE, Calif., April 12, 2016Coretek Services, one of the leading IT consulting and systems integrators, and AppSense, the global leader of secure user environment management (UEM), today announced that Coretek Services has been named AppSense 2015 Partner of the Year, Central Region. The award, presented during AppSense’s annual North American Elevate Partner Conference in New Orleans, La., recognized Coretek Services for its exceptional achievement in the areas of customer engagement, revenue growth and implementation innovation.

We really value the relationship we have with AppSense,” said Ray Jaksic, Chief Technology Officer Coretek Services. “They are truly a ‘channel focused’ organization.  It’s the value their products provide within our solutions and their flexibility in doing what it takes to close deals that has resulted in many great wins for both of our organizations and our customers.”

AppSense continues to be a staple within the Coretek virtual desktop suite of solution offerings and has also proven to be a valuable solution to help secure physical endpoints without impeding end user’s ability to do their jobs.  Coretek has leveraged AppSense Environment Manager for years to provide a “persistent” end user experience without requiring a “persistent desktop image” within VDI. In recent years, Coretek has also leveraged the entire DesktopNow suite with its VDI implementations. The company also now leverages

Performance Manager to optimize the performance of VDI desktops when running applications that are either poorly written or have very high I/O or processor requirements.  This has demonstrated particularly significant successes with graphically intense Engineering Applications.

“AppSense has grown within our solution portfolio to help secure and migrate physical endpoints as well,” added Jaksic. “We have been able to use AppSense to lockdown physical endpoints to eliminate the launch of ‘unknown’ executables, and give all users only the minimal rights necessary to do their jobs without providing full administrative access.”

“We are pleased to recognize Coretek Services as our 2015 Partner of the Year, Central Region,” said Jim Airdo, vice president of channel, AppSense. “Coretek Services continues to demonstrate an exceptional commitment to our mutual customers, driving new opportunities for AppSense solutions and providing sales, technical and support excellence. We look forward to our continued partnership in 2016 the years ahead.”

The AppSense Partner of the Year awards were selected following close evaluation of each partners’ annual contributions based on planned expectations in the areas of engagement, revenue and growth. Commitment to AppSense training, dedicated personnel and overall performance was also considered.

 

An AppSense Go+ Platinum Partner, Coretek Services offers a complete suite of AppSense UEM solutions including DesktopNow, DesktopNow Plus, DataNow, Application Manager, and AppSense Insight which enable IT organizations to centralize desktop security, management and personalization policies with a prescriptive view into security-related activity. These solutions allow users to have greater desktop personalization while improving security, performance, desktop consistency, and reliability.

 

About Coretek Services
Coretek Services is a Systems Integration and IT Consulting Company that delivers high value and innovative solutions.  Coretek works with your team to custom-design an IT architecture based on each clients’ unique requirements; the solution encompasses server and desktop virtualization, optimization of a virtual desktop environment, cloud desktop, mobile device management, infrastructure consulting and project management.  Our goal is to help our clients achieve Project Success.  No exceptions. For more information, visit www.coretekservices.com.

 

About AppSense                                                                                                         
AppSense is the leading provider of UEM solutions for the secure endpoint. AppSense user virtualization technology allows IT to secure and simplify workspace control at scale across physical, virtual and cloud-delivered desktops.  AppSense Solutions have been deployed by over 3,600 enterprises worldwide to 9 million endpoints. The company is headquartered in Sunnyvale, CA with offices around the world. For more information, please visit www.appsense.com.

 

###

Media Contacts:

Erin Jones

Avista Public Relations for AppSense

704-664-2170

appsense@avistapr.com

PowerShell – AD Recycle Bin Check or Enable…

2017-07-27T00:00:58+00:00 March 24th, 2016|Uncategorized|

When I begin working with a new customer Active Directory environment, one thing I always like to know is whether or not the AD Recycle Bin is enabled for safety.  If you don’t already know, the Active Directory Recycle Bin is a feature that appeared in the 2008 R2 era, and gave us the not-too-easy ability to save us from our own administrators.  Over the years, especially with Server 2012 R2, the ability to restore AD objects have become as easy as a few clicks.  I won’t say that it’s a “no-brainer”, because there are a couple reasons why you might not want to enable it, but I will say that it only takes deleting a couple objects accidentally to make a compelling argument for implementation.  For some further reading, check out this TechNet Guide.

If you want to use PowerShell to check if the AD Recycle Bin is enabled, run the following command to find out (requires that you have the PowerShell AD modules installed):

Get-ADOptionalFeature -Filter 'name -like "Recycle Bin Feature"'

…and if it is NOT enabled, you will see a result something like this in the image below; notice that among the other information, the “Enabled Scopes” is empty.

AdRecycleBinCheck

So if the Recycle Bin is NOT enabled, and you want it enabled, what then?  Well, if your Forest Functional level is already at Server 2008R2, one way is to enable it with the following PowerShell command:

Enable-ADOptionalFeature `
–Identity 'CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=domain,DC=com' `
–Scope ForestOrConfigurationSet `
–Target 'domain.com'

…which looks a bit like this, as I enable the feature and then re-check:

AdRecycleBinEnable

As you can see above, the AD Recycle Bin is now enabled in my lab AD forest.

Note that in the above code example, I’m using “back-ticks” to be able to wrap lines.  However, in my screen cap I put it all on one line.  I’ll go over the back-ticks in a future post, but for now be careful with them, or remove them and include the entire command on one line.

So to recap, when ENABLEDSCOPES isn’t populated (e.g. {} ) it’s off.  If it contains values, then it is enabled!

And remember this: after enabling the AD Recycle Bin, you cannot disable it anymore!

PowerShell – Bulk Convert Global Groups to Domain Local…

2017-07-27T00:00:59+00:00 September 29th, 2015|Uncategorized|

Recently I was working with someone who spent a bunch of time building Active Directory groups for a project I’m working on.  After he was done, I noticed the groups he made were Global type groups (which is the default type in ADUC) instead of Domain Local type groups, which I needed for my project.

Instead of causing the person to panic, I told him we could turn to PowerShell to easily flip the type.  However, there is one caveat… You cannot convert groups directly from Global to Domain Local, so they have to be converted to Universal first.

Fortunately for me, all these groups were in a single OU, and we could fix this with just a few simple commands.  Just read along in the comments for explanations of each line.

# So before we begin to process groups, we set a variable to set your searchbase:

$MySearchBase = "ou=Groups,ou=ABC,dc=lab,dc=local"

# For our first step – we load up a variable with the groups we want (filtered by type):

$MyGroupList = get-adgroup -Filter 'GroupCategory -eq "Security" -and GroupScope -eq "Global"' -SearchBase "$MySearchBase"

# If you want to validate you got the correct groups in the variable, list out the names of your objects in the variable:

$MyGroupList.name

# Now, for every group in the list, we flip the type to Universal:

$MyGroupList | Set-ADGroup -GroupScope Universal

# Now for our second step – we re-load the variable:

$MyGroupList = get-adgroup -Filter 'GroupCategory -eq "Security" -and GroupScope -eq "Universal"' -SearchBase "$MySearchBase"

# Again, if you want to validate you got the correct groups, list them out:

$MyGroupList.name

# Finally, convert them from Universal to Domain Local:

$MyGroupList | Set-ADGroup -GroupScope DomainLocal

And of course, I thought it’d be great to pass it along in case it helps stop some panic in your world…  Enjoy!

Coretek Services Reboot Manager, Pt. 2

2017-07-27T00:00:59+00:00 July 15th, 2015|Uncategorized|

Please see this link for Part 1. 

For Part 2, let’s examine the Coretek Virtual Desktop Enhancement Suite (VDES) Reboot Manager Console in more detail. 

The VDES Management Console, shown in the screenshot below, is a simple interface which is broken down into 3 core areas: License Manager, VDES Farm, and Reboot Manager. 

  • The License Manager is simply where the license code for the components is managed.
  • The VDES Farm section allows the servers to be broken down into functional server types, which is useful to manage one of the other core functionalities of VDES, called XAppNow.  This is a feature which speeds up the reconnect times by 4-5 seconds for double hop published applications running inside a Virtual Desktop.
  • The Reboot manager section allows us to define multiple reboot schedules for the target servers.

Figure 3 - VDES Management Console

Under the VDES Farm node, a server can be configured with the appropriate settings to allow reboot manager to function correctly and enable logging.  The Drain Mode Command(s) can be customized, but are predefined for XenApp workloads.  Logging can be enabled via the Logging Enabled and Log File command for debug logging.  The SMTP configurations can be defined to enable mail notifications to administrators to notify when the servers state changes (for example, drain mode enabled, server reboot started).

Figure 4- VDES Server Settings

When right-clicking on the Reboot Manager node, it is possible to add Reboot Schedules.

Figure 5 - Right Click on Reboot Manager Node

The Reboot Schedule window allows the selection of the day(s) on which to reboot the server, the time at which we would like to start the drain mode, the time of day to force a reboot of the server, and the customized Warning Message to be displayed to the users.

Figure 6 - New Reboot Schedule Window

On the Notifications tab, Email and Event Log notifications can be enabled to give the administrator peace of mind that the server(s) have been properly rebooted.

Figure 7 - Reboot Manager Notifications Tab

After the schedule and notification have been defined, the highlighted schedule under Reboot Manager allows servers to be included or excluded from the selected schedules.  Servers can be added to multiple reboot schedules without issues.

Figure 8 - Reboot Manager Adding Servers

And that’s all there is to it.  Powerful control with simplicity and peace of mind! 

Drop us a line if you are interested in a trial of our Reboot Manager or other compnents of the VDES toolset – we look forward to hearing from you!

Server 2003 EOS, Part 6…

2017-07-27T00:01:00+00:00 July 9th, 2015|Uncategorized|

For previous parts of this blog series, see Parts 1, 2, 3, 4, and 5.

In just a few days it will be July 14th.  And that means End Of Support (EOS) for Windows Server 2003 after more than ten years!  Mind you, I won’t be celebrating; but I might just pause a moment to think of all the critical applications and services that I’ve experienced on Server 2003 throughout the years.  And my, how times have changed since then…

Now, we know there are still some of you out there that have Server 2003 running somwhere in your datacenters, or under a desk, or on a server plastered behind a wall.  It happens.  And we are here to help you. 

So start by checking out our 4-part webinar series on how you might approach different aspects of your migration away from Server 2003, which you can finnd at these links:

If all that’s not good enough, check out Microsoft’s dedicated Server 2003 EOS site for even more detail. 

…and then send us a message from our Contact Page, and let us help you with your critical Server 2003 workloads.  We can’t wait to help you solve your Server 2003 problem and get you back into a fully-supported, modern compute and workload environment.  Talk to you soon!

Coretek Services Reboot Manager, Pt. 1

2017-07-27T00:01:00+00:00 June 24th, 2015|Uncategorized|

At Coretek Services, we have been successfully implementing Virtual Desktop environments since 2008.

A continuous request we receive from our customers is the ability to require a more granular approach to managing reboots and end-user and administrative notifications for reboots.  We originally attempted to script reboot management via PowerShell and had varying levels of success.  We ultimately decided to go our own way; and the end result was the Coretek Services Reboot Manager – now part of the Virtual Desktop Enhancement Suite (VDES).

When working with Virtual Desktop infrastructures – be it VMware Horizon, XenDesktop, or using XenApp to presented desktops or applications – one of the major challenges is the ability to reboot the operating systems with minimal impact to the end-users.  But in environments which have a 24×7 user load, XenApp presented desktops are particularly difficult to drain users and schedule reboots without impacting the users or manual intervention by the administrator. 

Typically, in XenDesktop infrastructures, the DHCP lease times are relatively low.  With a PVS delivered XenDesktop image, this can create a problem with the DHCP conflict detections attempts if this not enabled (http://support.citrix.com/article/CTX135938), since the PVS delivered image will not request a DHCP lease extension.   

Let’s take a look at the XenApp 6.5 Reboot Behavior policies:

The Reboot logon disable time policy provides a maximum of a 60 minute window before a server reboots.  In an environment with users on the servers 24×7, this is inconvenient for the users and disrupts their workflow.  Ideally, you would want to put the server into drain mode to cover an entire shift as to not disrupt the users.

The Reboot warning interval policy can trigger a warning to the users every 1, 3, 5, 10 or 15 minutes.  If the maximum amount of time the server remains in drain mode is 60 minutes, this may not be an issue.  However, if you want to allow the server to persist in drain mode for a longer period of time, a notification every 15 minutes would be quite annoying for the users.

Coretek Services has developed our Reboot Manager tool, a part of our Virtual Desktop Enhancement Suite (VDES), to offer the optimal flexibility for creating and managing the reboot processes for your XenApp and Virtual Desktop environments.  We have designed the Reboot Manager to allow administrators to put servers into a drain mode for up to a 24 hour window. 

Additionally, we allow for notifications to begin at a manually specified time before the servers reboot.  This enables users in a 24×7 environment to reconnect to their existing session for an entire shift and allows the disconnect timers to log users off a server gracefully prior to a reboot.  Users will be drained from the server via attrition as opposed to be forced to log off manually.

In our next post: We dive into the Coretek VDES Reboot Manager Console, and walk through some of the powerful scheduling settings.  See you then!

Ignite 2015 – Download Specific Videos and Slides…

2017-07-27T00:01:00+00:00 May 7th, 2015|Uncategorized|

I was unable to attend the Microsoft Ignite event this year, but I wanted to try and get all the value out of the conference that I could from afar.  I knew I needed to get the session videos and slides, similar to the scripted process that I did for TechEd last year

And while I’ve seen a few download scripts out there, I specifically want just my favorite slides and videos, not a whole category.  Plus, I want the lower-quality MP4s so that the download consumes less space.  And since I’m downloading them while they still post them (the week of the event), I need to permit that they may not yet be available, and that I may re-run it until I get everything I want.

And so here it is, for all my Ignite/TechEd peeps…  It’s a “how-to” to help you grab the content you want, and *only* what you want…

Step 1

First, go to the Ignite 2015 Session catalog at Channel 9 and figure out which session Videos and PowerPoints you want.  Look for the little code by each session, for example FND1451, BRK3505 or BRK2306, etc.

Step 2

Next, create a folder.  I created C:TempGetVideos   …Yes, original, I know. 

Step 3

In that folder you created, make a text file called “MySessionIdList.txt”, and paste in a list of the session IDs, one-per-line, like this:

FND1451
BRK3505
BRK2306

…and so on. 

Step 4

Again, in that same folder, create a text file called something like I did, “GetSessionVideos.ps1”, and paste in the following code:

Import-module bitstransfer
$inputFile = "mySessionIdList.txt"
$mySessionList = Get-Content $inputFile
$myUrlPathParent = "http://video.ch9.ms/sessions/ignite/2015"
$myRestPath = "http://s.ch9.ms/Events/Ignite/2015/RSS/slides"
$myRestComparison = "http://channel9.msdn.com/Events/Ignite/2015"
# For pete's sake, do NOT show this to Don Jones! I can't take that level of criticism! ;)
foreach ( $sessionId in $mySessionList )
{
# Check to see if the file is present before attempting to download
if (!(Test-Path "$sessionId.pptx"))
{
# Yep, the dreaded Write-Host, because I actually want to watch the script run...
# I'm crazy like that...
Write-Host -ForegroundColor GREEN "Getting $sessionId.pptx..."
# Get the PPTX
$MyThing = Invoke-RestMethod $myRestPath | Where-Object link -Contains "$myRestComparison/$sessionId"
if ($MyThing -ne $NULL)
{
$MyPptxUrl = $MyThing.getelementsbytagname('enclosure').url
start-bitstransfer -source "$MyPptxUrl" -destination "$sessionId.pptx"
}
else
{
Write-Host -ForegroundColor CYAN "Sorry, the PPTX for $sessionId is not yet available..."
}
}
else
{
write-host "Already have $sessionId.pptx, skipping..."
}
# Check to see if the file is present before attempting to download
if (!(Test-Path "$sessionId-mobile.mp4"))
{
# Go ahead and revoke my MVP, Don...
Write-Host -ForegroundColor GREEN "Getting $sessionId-mobile.mp4..."
# Get the MP4
start-bitstransfer -source "$myUrlPathParent/$sessionId-mobile.mp4" -destination "$sessionId-mobile.mp4"
}
else
{
write-host "Already have $sessionId-mobile.mp4, skipping..."
}
}

…And run that script in a Powershell session to get your videos! It might look something like this, using my examples above (note that some files were downloaded, some skipped, and some not yet available):

Of course,you can modify the code to suit your tastes, but this simple set of instructions should get you going.

Have fun viewing and learning!

Note: This is an update from my TechEd 2014 download script posted here.  And thanks to THIS POST for the clue on the Rest API call, due to the *horrible* naming convention for the slides this year. 

 

Walk For Wishes 2015 – A Record-Breaking Success!

2017-07-27T00:01:00+00:00 May 6th, 2015|Uncategorized|

http://www.coretekservices.com/sites/default/files/WalkForWishes2015.jpg

What a great event, on what turned out to be a great day!

For 2015, my family and I again joined fellow Coreteker Sarah and her family for a fun way to help out a wonderful cause: the 17th Annual Walk For Wishes® by the Make-A-Wish® Michigan organization.  Sarah and her team are veterans of the Walk, and I’ve been proud and grateful to have a chance to participate with them the last few years.

And as usual, Sarah’s son made an excellent (and patient) tour guide, sharing his wealth of knowledge about the Zoo.  He should run the place!  😉

In the process, we helped to raise our part (thanks to Coretek and other donors) of the event total of more than $445,000.00, with a record-breaking attendance of more than 4,500 walkers!  This amount means the organization will be able to grant wishes to more than 400 Michigan kids this year.  Awesome. 

If you didn’t get the chance to donate before the event but still would like to, please click here to donate with our team.

Thank you!  And see you out there next year…