FAQ: Chef Microsoft Windows Server 2008 R2 Application Migration Program and IIS Site Migration Accelerator


1. Does the solution work for just Microsoft technologies?

Chef Habitat will run on Windows or Linux. It doesn’t have to be a Microsoft technology to package an application with Habitat. It just needs to be compatible with the kernel minimum on Linux and Windows. The kernel needs to be 32 bit or higher, and .NET 2.0 or higher. In addition, the application has to be able to be installed with a silent installer. The Chef Windows Server IIS Site Migration Accelerator is specific to IaaS applications running on Windows Server. We are in the process of building other accelerators. These include Tomcat and Java web applications. 


2. Does the solution just support the Microsoft Azure Cloud, or can it be used with other cloud hosting services?

The solution will run on any cloud and can also be run on-prem. As long as it runs on a server, it will run. Customers can deploy packages to AWS, Google, Azure, Digital Ocean, or wherever else they have a server they are trying to deploy to. 


3. How can we package our DLLs in Chef Habitat?

To package the DLLs, Chef Habitat uses reflection to figure out where all the DLLs are on the system and then bring them into a bin folder. Basically, we’re mapping out all of the DLLSs and then pulling everything together the way that .NET does DLL precedents. The IIS scanner will pull the bin folder first. As long as the DLLs are available, the application can then be installed in its new location. 


4. Can Chef Habitat be used to find dependencies for older applications that are missing documentation and no longer supported by development? 

This is absolutely the goal of the Chef Windows IIS Site Migration Accelerator. In working with customers, we found that doing the associated application forensics to identify supporting dependencies was a major blocker to the migration. It was often taking three to five days to find the dependencies for a single application. It can be very challenging to figure out where all the dependencies are across an undocumented system. The Chef Windows IIS Site Migration Accelerator eliminates these challenges. It automatically identifies the dependencies and then documents them so that the applications can be easily packaged and migrated. 


5. Can you map all the IIS sites on a single box using the accelerator?

Yes, you can pull all the sites and applications off of a single server. By default, it will pull all of the sites associated with an applications out. Or you can use an expression to say ignore apps that have a certain name, or you can only include apps with a certain name. 


6. How do you handle sites with secrets?

Our approach to secrets varies upon how the secrets have been previously handled. Many times, secrets are actually stored in plain text within the web config. If an app was developed well, it may actually have a machine key. We capture how the secrets are currently being handled when we extract the application. In addition, with Chef Habitat, customers can leverage tools like HashiCorp Vault to put their secrets into secret storage so they’re not being transferred across the world in an unsecure way.


7. Does this work for applications you can no longer compile?

Yes, it does work for applications that can no longer be compiled. Examples include, if you have an application that has been completely orphaned, the source code is gone, or a piece of commercial off-the-shelf software where the installer is no longer available or the vendor is no longer in business and all you have is the old version running on that one box the business is still using. You can use Chef Habitat to scan the system, find the dependencies, bundle them together, and then build a plan. You don’t need those source files to this. You won’t be able to make any changes to the compiled code, but you can capture the application and migrate it to a new operating system.


8. How long does a typical assessment take?

Typically, a high-level assessment can be done in less than a day.


9. Is the Chef Windows IIS Site Migration Accelerator only for website apps or could it also be used for console-type apps?

Today, the Chef Windows IIS Site Migration Accelerator only works with websites. However, console-based applications are something we’re looking at supporting and would be something we could work with you to build an accelerator for.


10. Can Chef Habitat be used as a data migration tool?

Chef Habitat is not a data migration tool. You can use whatever tool that you’re most comfortable with to move your data, and then use Chef Habitat to create the configuration points to update your database connections. 


11. What about if the versions of the .NET assemblies aren’t supported?

As long as the application is running on a supported Windows operating system, it doesn’t matter what version of .NET is running. The only exception would be if the .NET version is not supported by the operating system. This typically means the application needs to be .NET 2.0 or higher. In addition, Chef Habitat requires applications to be written in .NET 2.0 or higher.  


12. Where can customers learn how to use Chef Habitat with Microsoft Azure?

The Chef online learning curriculum has free, in-depth learning resources to help you understand how to use Chef Habitat, as well as how to use Chef to manage Microsoft Azure resources. The online learning portal, “Learn Chef Rally”, is available at learn.chef.io. 

To learn about building apps with Chef Habitat, visit https://learn.chef.io/tracks/habitat-build/

To learn about deploying apps with Chef Habitat, visit https://learn.chef.io/tracks/habitat-deploy/

To learn about Chef on Microsoft Azure, check out https://learn.chef.io/tracks/chef-on-azure/