AWS Workspaces with custom image bundle 💻💿

Hello world, couple days ago, I just had customer meeting and we talk about Desktop client or VDI in the cloud which running Windows 10. So simply I said that the solutions is AWS Workspaces. Yes, AWS Workspaces! So the product is close with customer requirement. But, for some reason, they need something like pre-installed software that available for all users. 

Because all of the user need open source solutions for office software, so we need to apply Open Office to all machine. 

That was the head of IT said. So after hear that issue from head of IT, my question just popup in my head, "Is there any way to apply all Open office for all machine?". 

And today, after do some research, I have something to share. Before we get started, we need to create AD to work with AWS Workspaces. I use Simple AD. You can explore Simple AD in this guide. 

Let's explore this! 🤘

#1 Create Simple AD

Go to your AWS Workspace, in the left panel, you'll see Directories in the list. 

directories

Simply hit Set up Directory. 

For testing purpose, I just need small directory size. 

Fill your organization name, Directory DNS name, and administrator password. I leave NetBIOS name option for blank. 

Confirm password, directory description (optional) and Next. 

Choose VPC and your subnet. For this test, I use default VPC and available subnets. Hit Next. 

Review and create, if you're not sure with your options, just scroll down and go to previous button. Finally, just hit Create Directory to continue. 

#2 Setup Workspaces

Hit Launch Workspaces. 

I used my existing directory. Hit Next Step.

Fill the username, first name, last name, and email. Hit Create users to continue.

Make sure your Workspace username was added. 

I picked up Standard Windows 10. 

Scroll down, and hit Next Step. 

I just leave this as default. 

Scroll down and hit Next Step. 

Review and Launch Workspace. 

#3 Login into your Workspaces

After minutes, you'll see your launched workspace. 

Below Workspace ID, you'll see down arrow button. Just hit to expand the 

Copy the Clients Link, and paste to another browser tab.

Download the client. 

Copy and paste registration code. Hit Continue. 

You may upset with the first login. Because sometimes, if we clicked Forgot password then it will goes to recovery password page, and sometimes we got server error message. How do we deal with that? 

Select the workspace, and hit Actions, select Invite User. 

You will have this text. Copy the link from point 1, and open into your new browser tab.

Because I registered, so the registration link would disappear. But if you're new, just copy link from point 1 for register password.

Then fill your password and confirm. 

Now back to your workspace client and login. After you make changes, let's say you already installed Open Office, then logout from the machine. 

Note: 
After install or make some changes, better you reboot the machine so there's no hung process on the machine. 

#4 Create the image

Back to console, and select workspace, then hit Actions, select Create Image. 
Fill the image name, and create image. Please take a note that this process up to 45 mins to complete. 

After the process completed, select the name, hit Actions, and create bundle. You will get a form to fill the name of the bundle, and hardware type. 

I want to make it simple with 2vCPU and 4GB memory for hardware type, and storage settings with Root volume: 80GB and user volume: 50GB

I named the bundle with windows-open-office. Now we can select and launch the workspace from bundle. 

#5 Testing launch from bundle

Now our new machine is launching. 

Login and test your new machine.

#BONUS

By default, your Windows machine is not visible for drive C. Click on Search icon and type regedit. Then click on regedit.

HKEY_LOCAL_MACHINE >> Software >> Microsoft >> Windows >> CurrentVersion >> Policies >> Explorer

Then double-click on NoDrives.

Change Value data to 0.

Restart your machine and wait for 5 mins before login again. 

 

That's all, thanks for reading!