WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud
  • Tanzu
    • Application Modernization
    • Tanzu services
    • Tanzu Community Edition
    • Tanzu Kubernetes Grid
    • vSphere with Tanzu
  • Home Lab
  • Nested Virtualization
  • Apple

Create Windows 11 Virtual Appliance using Tiny 11 with only 2GB memory

02.15.2023 by William Lam // Leave a Comment

I recently came to learn about a really cool project called Tiny 11 which is a stripped down version of Windows 11 Pro 22H2 that can run with just 2GB of memory and 8GB of storage. While you would probably not use this for production workloads, it could be interesting for those with homelabs and can even for demo purposes.

It's finally here!
Based off of Windows 11 Pro 22H2, tiny11 has everything you need for a comfortable computing experience without the bloat and clutter of a standard Windows installation.
https://t.co/yM1Ip2ljjB pic.twitter.com/Tg5PWUZU1Q

— NTDEV @*protected email* (@NTDEV_) February 2, 2023

Disclaimer: Tiny 11 is not an official project from Microsoft, use at your own risk. If you are interested in creating an optimized Windows 10 or 11 image, you can also check out these VMware resources here and here to produce a similiar size image using official Microsoft tools and images.

UPDATE (02/16/23) - There is now an Arm version for Tiny 11, which is great for anyone using the ESXi-Arm Fling and the technique in this blog post would also apply.

🙌 Updated Tiny 11 Arm64 (tiny11a64 r1.iso) now works perfectly with @esxi_arm 💪

Thanks @NTDEV_ for the Arm version & quick fix!#ESXionARM pic.twitter.com/03TV69wMIq

— William Lam (@*protected email*) (@lamw) February 16, 2023

After performing a manual installation of Tiny 11, I thought it would be neat if I could build a Virtual Appliance (OVA) for Tiny 11 and also add custom OVF properties, which would allow anyone to customize the OS further without having to rely on any external tooling.

In fact, I had demonstrated this concept back in 2019 using Windows Server 2016 in this blog post and I figure it should be easy enough to also do the same for Tiny 11 or even standard Windows 11! With a bit of trial/error, I was indeed able to create a simple Tiny 11 OVA that includes the following OVF properties as shown in the screenshot below.


My initial goal was to fully automate the building of a Tiny 11 OVA with custom OVF properties using Packer. However, after many attempts, I was not able to figure out the correct autoattended.xml configuration and decided on a semi-manual approach which is detailed in the instructions below. If anyone is able to figure out how to get Tiny 11 installed via Packer, then I may revisit this topic and automate the remainder of the setup.

Note: The instructions below are not specific to Tiny 11 in any way and is also applicable to standard Windows 10 or 11 image.

[Read more...]

Categories // Automation, Home Lab, OVFTool, PowerCLI, vSphere Tags // homelab, Tiny 11, virtual appliance, windows 11

Packer reference for building PhotonOS Virtual Appliance using OVF properties 

11.25.2019 by William Lam // 1 Comment

I was introduced to HashiCorp Packer several years back by Timo  Tsugliani, who if you are not following on Twitter, you are missing a TON of really useful nuggets which this guys shares both VMware/IT related and cool stuff. I am constantly learning about new things things from Timo and this guys is just a wealth of knowledge if you get the chance to work with him. At the time, I had played with Packer for a bit but did not have an actual use case for it, so I mostly forgot about it.

Fast forward a few years later and with recent projects like the vCenter Event Broker Appliance (VEBA) Fling, I have really spent time learning about Packer in greater depth and I now realize how powerful Packer is for building various artifacts including VMware-based templates that is not only easy but consistently from source control.  It took me awhile to get to the aha moment but now I use Packer for so many different things to help simplify my life.

With the recent open sourcing of our VEBA Fling which includes the use of PhotonOS and Packer, I was reminded of a blog series that I did earlier on how to build your own Linux and/or Windows Virtual Appliance using OVF properties (Part 1, Part 2 and Part 3). I realized it would have been useful to have an actual reference implementation on building a very simple PhotonOS Virtual Appliance that exercises some basic OVF properties so folks could quickly get started beyond the manual steps that were documented.  I was also motivated by a chat I had with Luc Dekens (Godfather of PowerCLI) last week on some of the Automation he was trying to with PhotonOS and I figured this might be something he and others could also benefit from.

[Read more...]

Categories // Automation, OVFTool Tags // guestinfo, linux, ova, ovf, Packer, Photon, vapp, virtual appliance

Building your own Virtual Appliances using OVF properties Part 3

03.19.2019 by William Lam // 3 Comments

To conclude this three-part blog series, we are now going take a look at reference implementation for building your own Microsoft Windows Virtual Appliance (VA). Similar to the Linux VA build, the Windows OVA will also support the ability to customize basic networking configuration including the use of a static or DHCP option.

In addition, to demonstrate the endless possibilities for building your own VA, I have also included an option to automatically join a Microsoft Active Directory Domain as part of the OVA deployment, which is a fairly common operation after deploying a Windows-based system. In the example below, I am using Windows Server 2016 and PowerShell to perform all the required automation.

Step 1 - Create a new VM in vCenter Server and then install Window Server 2016 using the ISO. Once you have completed the OS installation, you may want to apply any patches or packages that you want included as part of your VA. Once that is done, go ahead and shut down the VM.

Step 2 - Select the VM in the vSphere Inventory and then click on Configure->vApp and then check the Enable vApp Options. Once enabled, select OVF environment for the IP allocation scheme. In the OVF Details tab, select VMware Tools for the OVF environment transport. (Optionally) You can specify some additional metadata including appliance name and URLs to help others who maybe consuming your VA once it has been exported to an OVF/OVA.

Step 3 - Next, add the following 9 OVF properties which will be used as input to configure networking within PhotonOS. Click Add and provide a Label, Key and optional Category.

Label Key Category
Hostname guestinfo.hostname Networking
IP Address guestinfo.ipaddress Networking
Netmask guestinfo.netmask Networking
Gateway guestinfo.gateway Networking
DNS Server guestinfo.dns Networking
DNS Domain guestinfo.domain Networking
AD Domain guestinfo.ad_domain Active Directory
AD Username guestinfo.ad_username Active Directory
AD Password guestinfo.ad_password Active Directory


Step 3 - Power back on the VM and once it is available on the network (assuming DHCP), download and copy the sample first boot script customize-windows-server-guest.ps1 to C:\Users\Administrator\Desktop. This script is where all the magic happens and will process the OVF property input and then configure the network settings and if specified, it will also perform the Active Directory domain join. Right now it assumes the networking fields are optional, meaning if they are left blank, it will default the system to DHCP. If you provide all input properties, then it will go ahead and configure a static network address.

[Read more...]

Categories // Automation, OVFTool, vSphere Tags // active directory, guestinfo, ova, ovf, vapp, virtual appliance, windows

  • 1
  • 2
  • 3
  • 4
  • Next Page »

Search

Author

William Lam is a Senior Staff Solution Architect working in the VMware Cloud team within the Cloud Infrastructure Business Group (CIBG) at VMware. He focuses on Cloud Native, Automation, Integration and Operation for the VMware Cloud based Software Defined Datacenters (SDDC) across Private, Hybrid and Public Cloud

Connect

  • Email
  • GitHub
  • LinkedIn
  • RSS
  • Twitter
  • Vimeo

Recent

  • ESXi on ASUS PN64-E1 05/24/2023
  • vSphere Pods using VDS based Supervisor in vSphere with Tanzu? 05/23/2023
  • Frigate NVR with Coral TPU & iGPU passthrough using ESXi on Intel NUC 05/22/2023
  • 96GB SODIMM memory for DDR5 system with ESXi 05/18/2023
  • Refresher on Nested ESXi Networking Requirements 05/17/2023

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2023

 

Loading Comments...