<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.kitsnet.us/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=2603%3A7000%3A9800%3A4742%3A1C0E%3A867B%3AD1B3%3A7776</id>
	<title>KitsNet - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kitsnet.us/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=2603%3A7000%3A9800%3A4742%3A1C0E%3A867B%3AD1B3%3A7776"/>
	<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/wiki/Special:Contributions/2603:7000:9800:4742:1C0E:867B:D1B3:7776"/>
	<updated>2026-10-07T07:00:35Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.kitsnet.us/w/index.php?title=Linux:Samba_AD_Factory&amp;diff=54</id>
		<title>Linux:Samba AD Factory</title>
		<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/w/index.php?title=Linux:Samba_AD_Factory&amp;diff=54"/>
		<updated>2021-05-15T20:29:14Z</updated>

		<summary type="html">&lt;p&gt;2603:7000:9800:4742:1C0E:867B:D1B3:7776: /* Build CentOS 8 / Rocky Linux 8 Base System for Factory */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To use [https://www.samba.org/ Samba] as an Active Directory Domain Controller, Samba must be built from source. While various RPM distros have been made available in the past (and continue to do so today), relying upon these for continued support of these build packages is an operational hazard. Instead, KitsNet has a formalized process to operate a Samba AD &amp;quot;Factory&amp;quot;, where [https://www.samba.org/samba/download/ source kits] will be downloaded and built into binaries under the &amp;lt;code&amp;gt;/usr/local/samba&amp;lt;/code&amp;gt; directory tree. The resulting binary tree will be packaged into a tarball and subsequently deployed to the Active Directory Domain Controllers for the &#039;&#039;knada.lan.kitsnet.us&#039;&#039; domain. &lt;br /&gt;
&lt;br /&gt;
== Build CentOS 8 / Rocky Linux 8 Base System for Factory ==&lt;br /&gt;
Build a basic Linux Virtual Server Guest&amp;lt;ref&amp;gt;[[KVM:guests#Making_a_Guest|KVM:guests#Making_a_Guest]]&amp;lt;/ref&amp;gt; with 1.5&amp;amp;nbsp;GB RAM, 4 vCPU and two disks:&lt;br /&gt;
&lt;br /&gt;
* T0 disk0 10&amp;amp;nbsp;GB (V0uv000 /tmp 1024&amp;amp;nbsp;MB, /swap 512&amp;amp;nbsp;MB, /boot 1&amp;amp;nbsp;GB, and the rest for /)&lt;br /&gt;
* T3 disk1 16&amp;amp;nbsp;GB (V3uv000 /var 3&amp;amp;nbsp;GB, /usr/local 13&amp;amp;nbsp;GB)&lt;br /&gt;
&lt;br /&gt;
When running the Anaconda installer, add to &amp;lt;u&amp;gt;Software Selection&amp;lt;/u&amp;gt;,  &amp;lt;u&amp;gt;Additional software for Selected Environment&amp;lt;/u&amp;gt;:  &#039;&#039;Development Tools&#039;&#039; .&lt;/div&gt;</summary>
		<author><name>2603:7000:9800:4742:1C0E:867B:D1B3:7776</name></author>
	</entry>
	<entry>
		<id>https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=53</id>
		<title>KVM:guests</title>
		<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=53"/>
		<updated>2021-05-15T20:24:12Z</updated>

		<summary type="html">&lt;p&gt;2603:7000:9800:4742:1C0E:867B:D1B3:7776: /* Serial Console */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A KVM guest instance will be one of the following:&lt;br /&gt;
&lt;br /&gt;
* a Linux virtual server (uv###)&lt;br /&gt;
* a Windows virtual desktop (wv9##)&lt;br /&gt;
* a Windows virtual server (ws8##)&lt;br /&gt;
&lt;br /&gt;
=== Linux Virtual Server ===&lt;br /&gt;
A Linux guest can run most any Linux OS, though KitsNet natively supports CentOS 7 and CentOS 8 and implements local repo mirrors for these versions. Once RockyLinux 8 is production-ready, support will be added for that distro as well.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Desktop ===&lt;br /&gt;
Windows Virtual Desktop systems may be deployed in the environment with both 32 bit and 64 bit implementations supported. Though versions as old as Windows XP have been supported, Windows 10 should be used in the general case. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Desktop systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Server ===&lt;br /&gt;
Windows Virtual Server systems may be deployed in the environment with Windows Server 2008 R2 having been tested. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Server systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
== Making a Guest ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Configuration ===&lt;br /&gt;
In this example, assume that the guest will be named &#039;&#039;uv051&#039;&#039; and that the first MAC address will be &#039;&#039;00:16:3e:01:07:30&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Disk Storage ====&lt;br /&gt;
Disk storage for guests will usually be implemented using paravirtualized virtio drivers against Logical Volumes (LVs) providing the storage for each virtual disk of the guest. The names of the LVs will reflect the name of the VM and the relative disk number within. For example, &amp;lt;code&amp;gt;/dev/T0/uv051-disk0&amp;lt;/code&amp;gt; is an LV created in the &amp;lt;code&amp;gt;T0&amp;lt;/code&amp;gt; Volume Group (VG) on the KVM host for VM &amp;lt;code&amp;gt;uv051&amp;lt;/code&amp;gt; as its first storage device (&amp;lt;code&amp;gt;disk0&amp;lt;/code&amp;gt;) from which it will also boot. This naming scheme permits easy isolation of the LVs for a particular guest in any display. It also allows usage of the &amp;lt;code&amp;gt;diskmon&amp;lt;/code&amp;gt; command on the KVM host to quickly identify the source of any IO peaks, down the to guest VM and its internal VG.&lt;br /&gt;
&lt;br /&gt;
Within the VM, volume groups will be created reflective of the physical storage tier and the name of the VM. In the previous example, the resulting VG would be named &amp;lt;code&amp;gt;V0uv051&amp;lt;/code&amp;gt;. This naming scheme ensures that al VG names will be unique across all guest VMs. This ensures that it is possible to access guest storage from the KVM host, activate the VGs contained therein and then mount the underlying LVs. This technique is useful for emergency repair as well as backup operations where guest filesystem visibility is required.&lt;br /&gt;
&lt;br /&gt;
==== Optical Storage ====&lt;br /&gt;
Later....&lt;br /&gt;
&lt;br /&gt;
==== Graphics Console ====&lt;br /&gt;
A VNC connection will be allocated to facilitate GUI-driven install of the OS in the Guest VM and ongoing access to the graphical console of the Guest VM, though Linux guests will have the primary console set to serial. The VNC connection will be served on the KVM host only from loopback (127.0.0.1), so an ssh tunnel to the KVM host will be required. &lt;br /&gt;
&lt;br /&gt;
==== Serial Console ====&lt;br /&gt;
For a Linux Virtual Server, the [https://www.redhat.com/sysadmin/getting-started-socat socat] utility will be used to serve up a TCP listener on the KVM host that will connect to the serial console of the guest. The local service socat&amp;amp;#8209;kvm is used to stop and start all these listeners. The TCP port for the listener for a give Guest VM is stored in the file &amp;lt;code&amp;gt;/kvm/socat&amp;amp;#8209;kvm/uv###&amp;lt;/code&amp;gt; . To create the file for &#039;&#039;uv051&#039;&#039; specifying the listening port as &#039;&#039;7951&#039;&#039;, use the command &amp;lt;code&amp;gt;echo 7951 &amp;gt; /kvm/socat&amp;amp;#8209;kvm/uv051&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Once the parameter file is created, it will be necessary to add entries to the start and stop sections of &amp;lt;code&amp;gt;/etc/rc.d/init.d/socat&amp;amp;#8209;kvm&amp;lt;/code&amp;gt; For &#039;&#039;uv051&#039;&#039;, these would be  &amp;lt;code&amp;gt;__console_start uv051&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;__console_stop uv051&amp;lt;/code&amp;gt; respectively. After the guest VM is created, use &amp;lt;code&amp;gt;systemctl stop socat&amp;amp;#8209;kvm&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;systemctl start socat&amp;amp;#8209;kvm&amp;lt;/code&amp;gt; to bring up the additional listener.&lt;br /&gt;
&lt;br /&gt;
==== Network ====&lt;br /&gt;
Each guest will be allocated a block of 16 MAC addresses, though only the first in the sequence will typically be used. (e.g. &amp;lt;code&amp;gt;00:16:3e:01:07:30&amp;lt;/code&amp;gt;). These will be configured within the guest VM with the virtio driver and connected to the &amp;lt;code&amp;gt;kvm-guests&amp;lt;/code&amp;gt; bridge on the Open&amp;amp;nbsp;vSwitch.&lt;br /&gt;
&lt;br /&gt;
=== Create the Guest VM &amp;amp; Install OS ===&lt;br /&gt;
Start the creation process with entering the reservation for the new Guest VM on the [http://radix.kitsnet.us/cgi-bin/luci/admin/network/dhcp DHCP server]. For systems that will be domain joined, the &#039;&#039;&#039;Hostname&#039;&#039;&#039; part of the reservation should be of the form &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;.knada&amp;lt;/code&amp;gt;, while all others will be simply &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt;. Once the reservation is entered and saved to the table, it will ne necessary to [http://radix.kitsnet.us/cgi-bin/luci/admin/system/startup restart dnsmasq] to ensure the reservation is active. &lt;br /&gt;
&lt;br /&gt;
With the DHCP reservation in place, one of the available make scripts can be used..... &lt;br /&gt;
&lt;br /&gt;
Connect to the newly created guest via VNC through a tunnel in the current ssh session. For our example creating the Guest VM &#039;&#039;uv051&#039;&#039;, the VNC listener will be running on the port &#039;&#039;5951&#039;&#039; on localhost. Create the tunnel within &#039;&#039;&#039;PuTTY&#039;&#039;&#039; from the &amp;lt;u&amp;gt;Change settings...&amp;lt;/u&amp;gt; menu option, navigate to &amp;lt;u&amp;gt;Connection&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;SSH&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;Tunnels&amp;lt;/u&amp;gt; and then add a &amp;lt;code&amp;gt;local&amp;lt;/code&amp;gt; destination forwarded port for source port &amp;lt;code&amp;gt;5951&amp;lt;/code&amp;gt; and destination &amp;lt;code&amp;gt;localhost:5951&amp;lt;/code&amp;gt;. &#039;&#039;&#039;vncviewer&#039;&#039;&#039; can then be used to connect to l&amp;lt;code&amp;gt;ocalhost::5951&amp;lt;/code&amp;gt; to gain direct access to the Guest VM graphics console. Upon connection, the Guest VM instance should have already started the OS installation process.&lt;br /&gt;
&lt;br /&gt;
For CentOS, the [https://docs.centos.org/en-US/centos/install-guide/Graphical_Installation-x86/ Anaconda installer] is started from the network install ISO to complete this process. Standard settings for KitsNet installations include:&lt;br /&gt;
&lt;br /&gt;
* Network Configuration: enter the FQDN (i.e.&amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;.lan.kitsnet.us&amp;lt;/code&amp;gt;), Apply, then turn on the NIC&lt;br /&gt;
* Installation Source: &amp;lt;code&amp;gt;wort/CentOS/8/BaseOS/x86_64/os&amp;lt;/code&amp;gt; &lt;br /&gt;
* Software Selection &lt;br /&gt;
** Base Environment: &#039;&#039;Minimal Install&#039;&#039; &lt;br /&gt;
** Additional software for Selected Environment: &#039;&#039;Headless Management&#039;&#039;, &#039;&#039;Guest Agent&#039;&#039;&lt;br /&gt;
* Advanced...&lt;br /&gt;
** Create user &amp;lt;code&amp;gt;psmode&amp;lt;/code&amp;gt;, specify group manually as &amp;lt;code&amp;gt;5000&amp;lt;/code&amp;gt; , make the user an administrator (adds to &amp;lt;code&amp;gt;wheel&amp;lt;/code&amp;gt;) and add &amp;lt;code&amp;gt;kitsnet_adm (5000)&amp;lt;/code&amp;gt; to the group list&lt;br /&gt;
&lt;br /&gt;
Guest OS installation should end with a full shutdown of the guest instance. Use the &amp;lt;code&amp;gt;virsh start &amp;lt;&#039;&#039;guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt; command to start the Guest VM and perform a normal boot of the Guest OS.&lt;br /&gt;
&lt;br /&gt;
=== KVM Configuration Updates ===&lt;br /&gt;
autostart&lt;br /&gt;
&lt;br /&gt;
Description&lt;br /&gt;
&lt;br /&gt;
description -config &lt;br /&gt;
&lt;br /&gt;
=== Provisioning KitsNet Environment for the Guest ===&lt;br /&gt;
OS instances, virtual or physical, will be setup in the same fashion. Upon login after the first boot of the instance, configuration of the Guest OS instance should be carried out, according to the OS-specific standard&amp;lt;ref&amp;gt;[[KVM:guests:Linux:KitsNet Standard]]&amp;lt;/ref&amp;gt;&lt;/div&gt;</summary>
		<author><name>2603:7000:9800:4742:1C0E:867B:D1B3:7776</name></author>
	</entry>
	<entry>
		<id>https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=52</id>
		<title>KVM:guests</title>
		<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=52"/>
		<updated>2021-05-15T20:24:00Z</updated>

		<summary type="html">&lt;p&gt;2603:7000:9800:4742:1C0E:867B:D1B3:7776: /* Serial Console */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A KVM guest instance will be one of the following:&lt;br /&gt;
&lt;br /&gt;
* a Linux virtual server (uv###)&lt;br /&gt;
* a Windows virtual desktop (wv9##)&lt;br /&gt;
* a Windows virtual server (ws8##)&lt;br /&gt;
&lt;br /&gt;
=== Linux Virtual Server ===&lt;br /&gt;
A Linux guest can run most any Linux OS, though KitsNet natively supports CentOS 7 and CentOS 8 and implements local repo mirrors for these versions. Once RockyLinux 8 is production-ready, support will be added for that distro as well.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Desktop ===&lt;br /&gt;
Windows Virtual Desktop systems may be deployed in the environment with both 32 bit and 64 bit implementations supported. Though versions as old as Windows XP have been supported, Windows 10 should be used in the general case. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Desktop systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Server ===&lt;br /&gt;
Windows Virtual Server systems may be deployed in the environment with Windows Server 2008 R2 having been tested. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Server systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
== Making a Guest ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Configuration ===&lt;br /&gt;
In this example, assume that the guest will be named &#039;&#039;uv051&#039;&#039; and that the first MAC address will be &#039;&#039;00:16:3e:01:07:30&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Disk Storage ====&lt;br /&gt;
Disk storage for guests will usually be implemented using paravirtualized virtio drivers against Logical Volumes (LVs) providing the storage for each virtual disk of the guest. The names of the LVs will reflect the name of the VM and the relative disk number within. For example, &amp;lt;code&amp;gt;/dev/T0/uv051-disk0&amp;lt;/code&amp;gt; is an LV created in the &amp;lt;code&amp;gt;T0&amp;lt;/code&amp;gt; Volume Group (VG) on the KVM host for VM &amp;lt;code&amp;gt;uv051&amp;lt;/code&amp;gt; as its first storage device (&amp;lt;code&amp;gt;disk0&amp;lt;/code&amp;gt;) from which it will also boot. This naming scheme permits easy isolation of the LVs for a particular guest in any display. It also allows usage of the &amp;lt;code&amp;gt;diskmon&amp;lt;/code&amp;gt; command on the KVM host to quickly identify the source of any IO peaks, down the to guest VM and its internal VG.&lt;br /&gt;
&lt;br /&gt;
Within the VM, volume groups will be created reflective of the physical storage tier and the name of the VM. In the previous example, the resulting VG would be named &amp;lt;code&amp;gt;V0uv051&amp;lt;/code&amp;gt;. This naming scheme ensures that al VG names will be unique across all guest VMs. This ensures that it is possible to access guest storage from the KVM host, activate the VGs contained therein and then mount the underlying LVs. This technique is useful for emergency repair as well as backup operations where guest filesystem visibility is required.&lt;br /&gt;
&lt;br /&gt;
==== Optical Storage ====&lt;br /&gt;
Later....&lt;br /&gt;
&lt;br /&gt;
==== Graphics Console ====&lt;br /&gt;
A VNC connection will be allocated to facilitate GUI-driven install of the OS in the Guest VM and ongoing access to the graphical console of the Guest VM, though Linux guests will have the primary console set to serial. The VNC connection will be served on the KVM host only from loopback (127.0.0.1), so an ssh tunnel to the KVM host will be required. &lt;br /&gt;
&lt;br /&gt;
==== Serial Console ====&lt;br /&gt;
For a Linux Virtual Server, the [https://www.redhat.com/sysadmin/getting-started-socat socat] utility will be used to serve up a TCP listener on the KVM host that will connect to the serial console of the guest. The local service socat&amp;amp;#8209;kvm is used to stop and start all these listeners. The TCP port for the listener for a give Guest VM is stored in the file &amp;lt;code&amp;gt;/kvm/socat&amp;amp;#8209;kvm/uv###&amp;lt;/code&amp;gt; . To create the file for &#039;&#039;uv051&#039;&#039; specifying the listening port as &#039;&#039;7951&#039;&#039;, use the command &amp;lt;code&amp;gt;echo 7951 &amp;gt; /kvm/socat-kvm/uv051&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Once the parameter file is created, it will be necessary to add entries to the start and stop sections of &amp;lt;code&amp;gt;/etc/rc.d/init.d/socat&amp;amp;#8209;kvm&amp;lt;/code&amp;gt; For &#039;&#039;uv051&#039;&#039;, these would be  &amp;lt;code&amp;gt;__console_start uv051&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;__console_stop uv051&amp;lt;/code&amp;gt; respectively. After the guest VM is created, use &amp;lt;code&amp;gt;systemctl stop socat&amp;amp;#8209;kvm&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;systemctl start socat&amp;amp;#8209;kvm&amp;lt;/code&amp;gt; to bring up the additional listener.&lt;br /&gt;
&lt;br /&gt;
==== Network ====&lt;br /&gt;
Each guest will be allocated a block of 16 MAC addresses, though only the first in the sequence will typically be used. (e.g. &amp;lt;code&amp;gt;00:16:3e:01:07:30&amp;lt;/code&amp;gt;). These will be configured within the guest VM with the virtio driver and connected to the &amp;lt;code&amp;gt;kvm-guests&amp;lt;/code&amp;gt; bridge on the Open&amp;amp;nbsp;vSwitch.&lt;br /&gt;
&lt;br /&gt;
=== Create the Guest VM &amp;amp; Install OS ===&lt;br /&gt;
Start the creation process with entering the reservation for the new Guest VM on the [http://radix.kitsnet.us/cgi-bin/luci/admin/network/dhcp DHCP server]. For systems that will be domain joined, the &#039;&#039;&#039;Hostname&#039;&#039;&#039; part of the reservation should be of the form &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;.knada&amp;lt;/code&amp;gt;, while all others will be simply &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt;. Once the reservation is entered and saved to the table, it will ne necessary to [http://radix.kitsnet.us/cgi-bin/luci/admin/system/startup restart dnsmasq] to ensure the reservation is active. &lt;br /&gt;
&lt;br /&gt;
With the DHCP reservation in place, one of the available make scripts can be used..... &lt;br /&gt;
&lt;br /&gt;
Connect to the newly created guest via VNC through a tunnel in the current ssh session. For our example creating the Guest VM &#039;&#039;uv051&#039;&#039;, the VNC listener will be running on the port &#039;&#039;5951&#039;&#039; on localhost. Create the tunnel within &#039;&#039;&#039;PuTTY&#039;&#039;&#039; from the &amp;lt;u&amp;gt;Change settings...&amp;lt;/u&amp;gt; menu option, navigate to &amp;lt;u&amp;gt;Connection&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;SSH&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;Tunnels&amp;lt;/u&amp;gt; and then add a &amp;lt;code&amp;gt;local&amp;lt;/code&amp;gt; destination forwarded port for source port &amp;lt;code&amp;gt;5951&amp;lt;/code&amp;gt; and destination &amp;lt;code&amp;gt;localhost:5951&amp;lt;/code&amp;gt;. &#039;&#039;&#039;vncviewer&#039;&#039;&#039; can then be used to connect to l&amp;lt;code&amp;gt;ocalhost::5951&amp;lt;/code&amp;gt; to gain direct access to the Guest VM graphics console. Upon connection, the Guest VM instance should have already started the OS installation process.&lt;br /&gt;
&lt;br /&gt;
For CentOS, the [https://docs.centos.org/en-US/centos/install-guide/Graphical_Installation-x86/ Anaconda installer] is started from the network install ISO to complete this process. Standard settings for KitsNet installations include:&lt;br /&gt;
&lt;br /&gt;
* Network Configuration: enter the FQDN (i.e.&amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;.lan.kitsnet.us&amp;lt;/code&amp;gt;), Apply, then turn on the NIC&lt;br /&gt;
* Installation Source: &amp;lt;code&amp;gt;wort/CentOS/8/BaseOS/x86_64/os&amp;lt;/code&amp;gt; &lt;br /&gt;
* Software Selection &lt;br /&gt;
** Base Environment: &#039;&#039;Minimal Install&#039;&#039; &lt;br /&gt;
** Additional software for Selected Environment: &#039;&#039;Headless Management&#039;&#039;, &#039;&#039;Guest Agent&#039;&#039;&lt;br /&gt;
* Advanced...&lt;br /&gt;
** Create user &amp;lt;code&amp;gt;psmode&amp;lt;/code&amp;gt;, specify group manually as &amp;lt;code&amp;gt;5000&amp;lt;/code&amp;gt; , make the user an administrator (adds to &amp;lt;code&amp;gt;wheel&amp;lt;/code&amp;gt;) and add &amp;lt;code&amp;gt;kitsnet_adm (5000)&amp;lt;/code&amp;gt; to the group list&lt;br /&gt;
&lt;br /&gt;
Guest OS installation should end with a full shutdown of the guest instance. Use the &amp;lt;code&amp;gt;virsh start &amp;lt;&#039;&#039;guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt; command to start the Guest VM and perform a normal boot of the Guest OS.&lt;br /&gt;
&lt;br /&gt;
=== KVM Configuration Updates ===&lt;br /&gt;
autostart&lt;br /&gt;
&lt;br /&gt;
Description&lt;br /&gt;
&lt;br /&gt;
description -config &lt;br /&gt;
&lt;br /&gt;
=== Provisioning KitsNet Environment for the Guest ===&lt;br /&gt;
OS instances, virtual or physical, will be setup in the same fashion. Upon login after the first boot of the instance, configuration of the Guest OS instance should be carried out, according to the OS-specific standard&amp;lt;ref&amp;gt;[[KVM:guests:Linux:KitsNet Standard]]&amp;lt;/ref&amp;gt;&lt;/div&gt;</summary>
		<author><name>2603:7000:9800:4742:1C0E:867B:D1B3:7776</name></author>
	</entry>
	<entry>
		<id>https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=51</id>
		<title>KVM:guests</title>
		<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=51"/>
		<updated>2021-05-15T20:23:18Z</updated>

		<summary type="html">&lt;p&gt;2603:7000:9800:4742:1C0E:867B:D1B3:7776: /* Create the Guest VM &amp;amp; Install OS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A KVM guest instance will be one of the following:&lt;br /&gt;
&lt;br /&gt;
* a Linux virtual server (uv###)&lt;br /&gt;
* a Windows virtual desktop (wv9##)&lt;br /&gt;
* a Windows virtual server (ws8##)&lt;br /&gt;
&lt;br /&gt;
=== Linux Virtual Server ===&lt;br /&gt;
A Linux guest can run most any Linux OS, though KitsNet natively supports CentOS 7 and CentOS 8 and implements local repo mirrors for these versions. Once RockyLinux 8 is production-ready, support will be added for that distro as well.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Desktop ===&lt;br /&gt;
Windows Virtual Desktop systems may be deployed in the environment with both 32 bit and 64 bit implementations supported. Though versions as old as Windows XP have been supported, Windows 10 should be used in the general case. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Desktop systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Server ===&lt;br /&gt;
Windows Virtual Server systems may be deployed in the environment with Windows Server 2008 R2 having been tested. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Server systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
== Making a Guest ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Configuration ===&lt;br /&gt;
In this example, assume that the guest will be named &#039;&#039;uv051&#039;&#039; and that the first MAC address will be &#039;&#039;00:16:3e:01:07:30&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Disk Storage ====&lt;br /&gt;
Disk storage for guests will usually be implemented using paravirtualized virtio drivers against Logical Volumes (LVs) providing the storage for each virtual disk of the guest. The names of the LVs will reflect the name of the VM and the relative disk number within. For example, &amp;lt;code&amp;gt;/dev/T0/uv051-disk0&amp;lt;/code&amp;gt; is an LV created in the &amp;lt;code&amp;gt;T0&amp;lt;/code&amp;gt; Volume Group (VG) on the KVM host for VM &amp;lt;code&amp;gt;uv051&amp;lt;/code&amp;gt; as its first storage device (&amp;lt;code&amp;gt;disk0&amp;lt;/code&amp;gt;) from which it will also boot. This naming scheme permits easy isolation of the LVs for a particular guest in any display. It also allows usage of the &amp;lt;code&amp;gt;diskmon&amp;lt;/code&amp;gt; command on the KVM host to quickly identify the source of any IO peaks, down the to guest VM and its internal VG.&lt;br /&gt;
&lt;br /&gt;
Within the VM, volume groups will be created reflective of the physical storage tier and the name of the VM. In the previous example, the resulting VG would be named &amp;lt;code&amp;gt;V0uv051&amp;lt;/code&amp;gt;. This naming scheme ensures that al VG names will be unique across all guest VMs. This ensures that it is possible to access guest storage from the KVM host, activate the VGs contained therein and then mount the underlying LVs. This technique is useful for emergency repair as well as backup operations where guest filesystem visibility is required.&lt;br /&gt;
&lt;br /&gt;
==== Optical Storage ====&lt;br /&gt;
Later....&lt;br /&gt;
&lt;br /&gt;
==== Graphics Console ====&lt;br /&gt;
A VNC connection will be allocated to facilitate GUI-driven install of the OS in the Guest VM and ongoing access to the graphical console of the Guest VM, though Linux guests will have the primary console set to serial. The VNC connection will be served on the KVM host only from loopback (127.0.0.1), so an ssh tunnel to the KVM host will be required. &lt;br /&gt;
&lt;br /&gt;
==== Serial Console ====&lt;br /&gt;
For a Linux Virtual Server, the [https://www.redhat.com/sysadmin/getting-started-socat socat] utility will be used to serve up a TCP listener on the KVM host that will connect to the serial console of the guest. The local service socat-kvm is used to stop and start all these listeners. The TCP port for the listener for a give Guest VM is stored in the file &amp;lt;code&amp;gt;/kvm/socat-kvm/uv###&amp;lt;/code&amp;gt; . To create the file for &#039;&#039;uv051&#039;&#039; specifying the listening port as &#039;&#039;7951&#039;&#039;, use the command &amp;lt;code&amp;gt;echo 7951 &amp;gt; /kvm/socat-kvm/uv051&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Once the parameter file is created, it will be necessary to add entries to the start and stop sections of &amp;lt;code&amp;gt;/etc/rc.d/init.d/socat-kvm&amp;lt;/code&amp;gt; For &#039;&#039;uv051&#039;&#039;, these would be  &amp;lt;code&amp;gt;__console_start uv051&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;__console_stop uv051&amp;lt;/code&amp;gt; respectively. After the guest VM is created, use &amp;lt;code&amp;gt;systemctl stop socat-kvm&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;systemctl start socat-kvm&amp;lt;/code&amp;gt; to bring up the additional listener.&lt;br /&gt;
&lt;br /&gt;
==== Network ====&lt;br /&gt;
Each guest will be allocated a block of 16 MAC addresses, though only the first in the sequence will typically be used. (e.g. &amp;lt;code&amp;gt;00:16:3e:01:07:30&amp;lt;/code&amp;gt;). These will be configured within the guest VM with the virtio driver and connected to the &amp;lt;code&amp;gt;kvm-guests&amp;lt;/code&amp;gt; bridge on the Open&amp;amp;nbsp;vSwitch.&lt;br /&gt;
&lt;br /&gt;
=== Create the Guest VM &amp;amp; Install OS ===&lt;br /&gt;
Start the creation process with entering the reservation for the new Guest VM on the [http://radix.kitsnet.us/cgi-bin/luci/admin/network/dhcp DHCP server]. For systems that will be domain joined, the &#039;&#039;&#039;Hostname&#039;&#039;&#039; part of the reservation should be of the form &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;.knada&amp;lt;/code&amp;gt;, while all others will be simply &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt;. Once the reservation is entered and saved to the table, it will ne necessary to [http://radix.kitsnet.us/cgi-bin/luci/admin/system/startup restart dnsmasq] to ensure the reservation is active. &lt;br /&gt;
&lt;br /&gt;
With the DHCP reservation in place, one of the available make scripts can be used..... &lt;br /&gt;
&lt;br /&gt;
Connect to the newly created guest via VNC through a tunnel in the current ssh session. For our example creating the Guest VM &#039;&#039;uv051&#039;&#039;, the VNC listener will be running on the port &#039;&#039;5951&#039;&#039; on localhost. Create the tunnel within &#039;&#039;&#039;PuTTY&#039;&#039;&#039; from the &amp;lt;u&amp;gt;Change settings...&amp;lt;/u&amp;gt; menu option, navigate to &amp;lt;u&amp;gt;Connection&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;SSH&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;Tunnels&amp;lt;/u&amp;gt; and then add a &amp;lt;code&amp;gt;local&amp;lt;/code&amp;gt; destination forwarded port for source port &amp;lt;code&amp;gt;5951&amp;lt;/code&amp;gt; and destination &amp;lt;code&amp;gt;localhost:5951&amp;lt;/code&amp;gt;. &#039;&#039;&#039;vncviewer&#039;&#039;&#039; can then be used to connect to l&amp;lt;code&amp;gt;ocalhost::5951&amp;lt;/code&amp;gt; to gain direct access to the Guest VM graphics console. Upon connection, the Guest VM instance should have already started the OS installation process.&lt;br /&gt;
&lt;br /&gt;
For CentOS, the [https://docs.centos.org/en-US/centos/install-guide/Graphical_Installation-x86/ Anaconda installer] is started from the network install ISO to complete this process. Standard settings for KitsNet installations include:&lt;br /&gt;
&lt;br /&gt;
* Network Configuration: enter the FQDN (i.e.&amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new&amp;amp;#8209;guest&#039;&#039;&amp;gt;.lan.kitsnet.us&amp;lt;/code&amp;gt;), Apply, then turn on the NIC&lt;br /&gt;
* Installation Source: &amp;lt;code&amp;gt;wort/CentOS/8/BaseOS/x86_64/os&amp;lt;/code&amp;gt; &lt;br /&gt;
* Software Selection &lt;br /&gt;
** Base Environment: &#039;&#039;Minimal Install&#039;&#039; &lt;br /&gt;
** Additional software for Selected Environment: &#039;&#039;Headless Management&#039;&#039;, &#039;&#039;Guest Agent&#039;&#039;&lt;br /&gt;
* Advanced...&lt;br /&gt;
** Create user &amp;lt;code&amp;gt;psmode&amp;lt;/code&amp;gt;, specify group manually as &amp;lt;code&amp;gt;5000&amp;lt;/code&amp;gt; , make the user an administrator (adds to &amp;lt;code&amp;gt;wheel&amp;lt;/code&amp;gt;) and add &amp;lt;code&amp;gt;kitsnet_adm (5000)&amp;lt;/code&amp;gt; to the group list&lt;br /&gt;
&lt;br /&gt;
Guest OS installation should end with a full shutdown of the guest instance. Use the &amp;lt;code&amp;gt;virsh start &amp;lt;&#039;&#039;guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt; command to start the Guest VM and perform a normal boot of the Guest OS.&lt;br /&gt;
&lt;br /&gt;
=== KVM Configuration Updates ===&lt;br /&gt;
autostart&lt;br /&gt;
&lt;br /&gt;
Description&lt;br /&gt;
&lt;br /&gt;
description -config &lt;br /&gt;
&lt;br /&gt;
=== Provisioning KitsNet Environment for the Guest ===&lt;br /&gt;
OS instances, virtual or physical, will be setup in the same fashion. Upon login after the first boot of the instance, configuration of the Guest OS instance should be carried out, according to the OS-specific standard&amp;lt;ref&amp;gt;[[KVM:guests:Linux:KitsNet Standard]]&amp;lt;/ref&amp;gt;&lt;/div&gt;</summary>
		<author><name>2603:7000:9800:4742:1C0E:867B:D1B3:7776</name></author>
	</entry>
	<entry>
		<id>https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=50</id>
		<title>KVM:guests</title>
		<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/w/index.php?title=KVM:guests&amp;diff=50"/>
		<updated>2021-05-15T20:22:26Z</updated>

		<summary type="html">&lt;p&gt;2603:7000:9800:4742:1C0E:867B:D1B3:7776: /* Serial Console */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A KVM guest instance will be one of the following:&lt;br /&gt;
&lt;br /&gt;
* a Linux virtual server (uv###)&lt;br /&gt;
* a Windows virtual desktop (wv9##)&lt;br /&gt;
* a Windows virtual server (ws8##)&lt;br /&gt;
&lt;br /&gt;
=== Linux Virtual Server ===&lt;br /&gt;
A Linux guest can run most any Linux OS, though KitsNet natively supports CentOS 7 and CentOS 8 and implements local repo mirrors for these versions. Once RockyLinux 8 is production-ready, support will be added for that distro as well.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Desktop ===&lt;br /&gt;
Windows Virtual Desktop systems may be deployed in the environment with both 32 bit and 64 bit implementations supported. Though versions as old as Windows XP have been supported, Windows 10 should be used in the general case. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Desktop systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
=== Windows Virtual Server ===&lt;br /&gt;
Windows Virtual Server systems may be deployed in the environment with Windows Server 2008 R2 having been tested. Installation ISOs are available under the &amp;lt;code&amp;gt;/repo/Windows&amp;lt;/code&amp;gt; path on the KVM host. For installation, it will be necessary to attached a second  virtual optical device with the &amp;lt;code&amp;gt;virtio-win.iso&amp;lt;/code&amp;gt; image mounted to provide access to the virtio drivers for disk and network devices during Windows installation. Windows Virtual Server systems may be standalone or domain-joined to the &#039;&#039;&#039;knada.lan.kitsnet.us&#039;&#039;&#039; Active Directory domain. Once the system is built, Microsoft Remote Desktop will be used for access, though this will need to be permissioned for the user within the guest OS.&lt;br /&gt;
&lt;br /&gt;
== Making a Guest ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Configuration ===&lt;br /&gt;
In this example, assume that the guest will be named &#039;&#039;uv051&#039;&#039; and that the first MAC address will be &#039;&#039;00:16:3e:01:07:30&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Disk Storage ====&lt;br /&gt;
Disk storage for guests will usually be implemented using paravirtualized virtio drivers against Logical Volumes (LVs) providing the storage for each virtual disk of the guest. The names of the LVs will reflect the name of the VM and the relative disk number within. For example, &amp;lt;code&amp;gt;/dev/T0/uv051-disk0&amp;lt;/code&amp;gt; is an LV created in the &amp;lt;code&amp;gt;T0&amp;lt;/code&amp;gt; Volume Group (VG) on the KVM host for VM &amp;lt;code&amp;gt;uv051&amp;lt;/code&amp;gt; as its first storage device (&amp;lt;code&amp;gt;disk0&amp;lt;/code&amp;gt;) from which it will also boot. This naming scheme permits easy isolation of the LVs for a particular guest in any display. It also allows usage of the &amp;lt;code&amp;gt;diskmon&amp;lt;/code&amp;gt; command on the KVM host to quickly identify the source of any IO peaks, down the to guest VM and its internal VG.&lt;br /&gt;
&lt;br /&gt;
Within the VM, volume groups will be created reflective of the physical storage tier and the name of the VM. In the previous example, the resulting VG would be named &amp;lt;code&amp;gt;V0uv051&amp;lt;/code&amp;gt;. This naming scheme ensures that al VG names will be unique across all guest VMs. This ensures that it is possible to access guest storage from the KVM host, activate the VGs contained therein and then mount the underlying LVs. This technique is useful for emergency repair as well as backup operations where guest filesystem visibility is required.&lt;br /&gt;
&lt;br /&gt;
==== Optical Storage ====&lt;br /&gt;
Later....&lt;br /&gt;
&lt;br /&gt;
==== Graphics Console ====&lt;br /&gt;
A VNC connection will be allocated to facilitate GUI-driven install of the OS in the Guest VM and ongoing access to the graphical console of the Guest VM, though Linux guests will have the primary console set to serial. The VNC connection will be served on the KVM host only from loopback (127.0.0.1), so an ssh tunnel to the KVM host will be required. &lt;br /&gt;
&lt;br /&gt;
==== Serial Console ====&lt;br /&gt;
For a Linux Virtual Server, the [https://www.redhat.com/sysadmin/getting-started-socat socat] utility will be used to serve up a TCP listener on the KVM host that will connect to the serial console of the guest. The local service socat-kvm is used to stop and start all these listeners. The TCP port for the listener for a give Guest VM is stored in the file &amp;lt;code&amp;gt;/kvm/socat-kvm/uv###&amp;lt;/code&amp;gt; . To create the file for &#039;&#039;uv051&#039;&#039; specifying the listening port as &#039;&#039;7951&#039;&#039;, use the command &amp;lt;code&amp;gt;echo 7951 &amp;gt; /kvm/socat-kvm/uv051&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Once the parameter file is created, it will be necessary to add entries to the start and stop sections of &amp;lt;code&amp;gt;/etc/rc.d/init.d/socat-kvm&amp;lt;/code&amp;gt; For &#039;&#039;uv051&#039;&#039;, these would be  &amp;lt;code&amp;gt;__console_start uv051&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;__console_stop uv051&amp;lt;/code&amp;gt; respectively. After the guest VM is created, use &amp;lt;code&amp;gt;systemctl stop socat-kvm&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;systemctl start socat-kvm&amp;lt;/code&amp;gt; to bring up the additional listener.&lt;br /&gt;
&lt;br /&gt;
==== Network ====&lt;br /&gt;
Each guest will be allocated a block of 16 MAC addresses, though only the first in the sequence will typically be used. (e.g. &amp;lt;code&amp;gt;00:16:3e:01:07:30&amp;lt;/code&amp;gt;). These will be configured within the guest VM with the virtio driver and connected to the &amp;lt;code&amp;gt;kvm-guests&amp;lt;/code&amp;gt; bridge on the Open&amp;amp;nbsp;vSwitch.&lt;br /&gt;
&lt;br /&gt;
=== Create the Guest VM &amp;amp; Install OS ===&lt;br /&gt;
Start the creation process with entering the reservation for the new Guest VM on the [http://radix.kitsnet.us/cgi-bin/luci/admin/network/dhcp DHCP server]. For systems that will be domain joined, the &#039;&#039;&#039;Hostname&#039;&#039;&#039; part of the reservation should be of the form &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new—guest&#039;&#039;&amp;gt;.knada&amp;lt;/code&amp;gt;, while all others will be simply &amp;lt;code&amp;gt;&amp;lt;&#039;&#039;new-guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt;. Once the reservation is entered and saved to the table, it will ne necessary to [http://radix.kitsnet.us/cgi-bin/luci/admin/system/startup restart dnsmasq] to ensure the reservation is active. &lt;br /&gt;
&lt;br /&gt;
With the DHCP reservation in place, one of the available make scripts can be used..... &lt;br /&gt;
&lt;br /&gt;
Connect to the newly created guest via VNC through a tunnel in the current ssh session. For our example creating the Guest VM &#039;&#039;uv051&#039;&#039;, the VNC listener will be running on the port &#039;&#039;5951&#039;&#039; on localhost. Create the tunnel within &#039;&#039;&#039;PuTTY&#039;&#039;&#039; from the &amp;lt;u&amp;gt;Change settings...&amp;lt;/u&amp;gt; menu option, navigate to &amp;lt;u&amp;gt;Connection&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;SSH&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;Tunnels&amp;lt;/u&amp;gt; and then add a &amp;lt;code&amp;gt;local&amp;lt;/code&amp;gt; destination forwarded port for source port &amp;lt;code&amp;gt;5951&amp;lt;/code&amp;gt; and destination &amp;lt;code&amp;gt;localhost:5951&amp;lt;/code&amp;gt;. &#039;&#039;&#039;vncviewer&#039;&#039;&#039; can then be used to connect to l&amp;lt;code&amp;gt;ocalhost::5951&amp;lt;/code&amp;gt; to gain direct access to the Guest VM graphics console. Upon connection, the Guest VM instance should have already started the OS installation process.&lt;br /&gt;
&lt;br /&gt;
For CentOS, the [https://docs.centos.org/en-US/centos/install-guide/Graphical_Installation-x86/ Anaconda installer] is started from the network install ISO to complete this process. Standard settings for KitsNet installations include:&lt;br /&gt;
&lt;br /&gt;
* Network Configuration: enter the FQDN (i.e.&amp;lt;code&amp;gt;&amp;lt;&#039;&#039;newguest&#039;&#039;&amp;gt;.lan.kitsnet.us&amp;lt;/code&amp;gt;), Apply, then turn on the NIC&lt;br /&gt;
* Installation Source: &amp;lt;code&amp;gt;wort/CentOS/8/BaseOS/x86_64/os&amp;lt;/code&amp;gt; &lt;br /&gt;
* Software Selection &lt;br /&gt;
** Base Environment: &#039;&#039;Minimal Install&#039;&#039; &lt;br /&gt;
** Additional software for Selected Environment: &#039;&#039;Headless Management&#039;&#039;, &#039;&#039;Guest Agent&#039;&#039;&lt;br /&gt;
* Advanced...&lt;br /&gt;
** Create user &amp;lt;code&amp;gt;psmode&amp;lt;/code&amp;gt;, specify group manually as &amp;lt;code&amp;gt;5000&amp;lt;/code&amp;gt; , make the user an administrator (adds to &amp;lt;code&amp;gt;wheel&amp;lt;/code&amp;gt;) and add &amp;lt;code&amp;gt;kitsnet_adm (5000)&amp;lt;/code&amp;gt; to the group list&lt;br /&gt;
&lt;br /&gt;
Guest OS installation should end with a full shutdown of the guest instance. Use the &amp;lt;code&amp;gt;virsh start &amp;lt;&#039;&#039;guest&#039;&#039;&amp;gt;&amp;lt;/code&amp;gt; command to start the Guest VM and perform a normal boot of the Guest OS.&lt;br /&gt;
&lt;br /&gt;
=== KVM Configuration Updates ===&lt;br /&gt;
autostart&lt;br /&gt;
&lt;br /&gt;
Description&lt;br /&gt;
&lt;br /&gt;
description -config &lt;br /&gt;
&lt;br /&gt;
=== Provisioning KitsNet Environment for the Guest ===&lt;br /&gt;
OS instances, virtual or physical, will be setup in the same fashion. Upon login after the first boot of the instance, configuration of the Guest OS instance should be carried out, according to the OS-specific standard&amp;lt;ref&amp;gt;[[KVM:guests:Linux:KitsNet Standard]]&amp;lt;/ref&amp;gt;&lt;/div&gt;</summary>
		<author><name>2603:7000:9800:4742:1C0E:867B:D1B3:7776</name></author>
	</entry>
	<entry>
		<id>https://wiki.kitsnet.us/w/index.php?title=Linux:Samba_AD_Factory&amp;diff=49</id>
		<title>Linux:Samba AD Factory</title>
		<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/w/index.php?title=Linux:Samba_AD_Factory&amp;diff=49"/>
		<updated>2021-05-15T19:44:22Z</updated>

		<summary type="html">&lt;p&gt;2603:7000:9800:4742:1C0E:867B:D1B3:7776: /* Build CentOS 8 / Rocky Linux 8 Base System for Factory */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To use [https://www.samba.org/ Samba] as an Active Directory Domain Controller, Samba must be built from source. While various RPM distros have been made available in the past (and continue to do so today), relying upon these for continued support of these build packages is an operational hazard. Instead, KitsNet has a formalized process to operate a Samba AD &amp;quot;Factory&amp;quot;, where [https://www.samba.org/samba/download/ source kits] will be downloaded and built into binaries under the &amp;lt;code&amp;gt;/usr/local/samba&amp;lt;/code&amp;gt; directory tree. The resulting binary tree will be packaged into a tarball and subsequently deployed to the Active Directory Domain Controllers for the &#039;&#039;knada.lan.kitsnet.us&#039;&#039; domain. &lt;br /&gt;
&lt;br /&gt;
== Build CentOS 8 / Rocky Linux 8 Base System for Factory ==&lt;br /&gt;
Build a basic Linux Virtual Server Guest&amp;lt;ref&amp;gt;[[KVM:guests#Making_a_Guest|KVM:guests#Making_a_Guest]]&amp;lt;/ref&amp;gt; with 1.5&amp;amp;nbsp;GB RAM, 4 vCPU and two disks:&lt;br /&gt;
&lt;br /&gt;
* T0 disk0 10&amp;amp;nbsp;GB (V0uv000 /tmp 1024&amp;amp;nbsp;MB, /swap 512&amp;amp;nbsp;MB, /boot 1&amp;amp;nbsp;GB, and the rest for /)&lt;br /&gt;
* T3 disk1 16&amp;amp;nbsp;GB (V3uv000 /var 3&amp;amp;nbsp;GB, /usr/local 13&amp;amp;nbsp;GB)&lt;br /&gt;
&lt;br /&gt;
asdf&lt;/div&gt;</summary>
		<author><name>2603:7000:9800:4742:1C0E:867B:D1B3:7776</name></author>
	</entry>
	<entry>
		<id>https://wiki.kitsnet.us/w/index.php?title=Linux:Samba_AD_Factory&amp;diff=48</id>
		<title>Linux:Samba AD Factory</title>
		<link rel="alternate" type="text/html" href="https://wiki.kitsnet.us/w/index.php?title=Linux:Samba_AD_Factory&amp;diff=48"/>
		<updated>2021-05-15T19:44:04Z</updated>

		<summary type="html">&lt;p&gt;2603:7000:9800:4742:1C0E:867B:D1B3:7776: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To use [https://www.samba.org/ Samba] as an Active Directory Domain Controller, Samba must be built from source. While various RPM distros have been made available in the past (and continue to do so today), relying upon these for continued support of these build packages is an operational hazard. Instead, KitsNet has a formalized process to operate a Samba AD &amp;quot;Factory&amp;quot;, where [https://www.samba.org/samba/download/ source kits] will be downloaded and built into binaries under the &amp;lt;code&amp;gt;/usr/local/samba&amp;lt;/code&amp;gt; directory tree. The resulting binary tree will be packaged into a tarball and subsequently deployed to the Active Directory Domain Controllers for the &#039;&#039;knada.lan.kitsnet.us&#039;&#039; domain. &lt;br /&gt;
&lt;br /&gt;
== Build CentOS 8 / Rocky Linux 8 Base System for Factory ==&lt;br /&gt;
Build a basic Linux Virtual Server Guest&amp;lt;ref&amp;gt;[[KVM:guests#Making_a_Guest|KVM:guests#Making_a_Guest]]&amp;lt;/ref&amp;gt; with 1.5&amp;amp;amp;nbsp;GB RAM, 4 vCPU and two disks:&lt;br /&gt;
&lt;br /&gt;
* T0 disk0 10&amp;amp;nbsp;GB (V0uv000 /tmp 1024&amp;amp;nbsp;MB, /swap 512&amp;amp;nbsp;MB, /boot 1&amp;amp;nbsp;GB, and the rest for /)&lt;br /&gt;
* T3 disk1 16&amp;amp;nbsp;GB (V3uv000 /var 3&amp;amp;nbsp;GB, /usr/local 13&amp;amp;nbsp;GB)&lt;br /&gt;
&lt;br /&gt;
asdf&lt;/div&gt;</summary>
		<author><name>2603:7000:9800:4742:1C0E:867B:D1B3:7776</name></author>
	</entry>
</feed>