<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.dersllc.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin</id>
	<title>DER&#039;s LLC - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.dersllc.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin"/>
	<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php/Special:Contributions/Admin"/>
	<updated>2026-05-05T20:42:50Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=SpectroCloud/VertexInstall&amp;diff=344</id>
		<title>SpectroCloud/VertexInstall</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=SpectroCloud/VertexInstall&amp;diff=344"/>
		<updated>2024-11-26T15:41:30Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Vertex UI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Vertex Installation Instructions=&lt;br /&gt;
==Vertex Installation==&lt;br /&gt;
===Pre Requisites===&lt;br /&gt;
====1. Needed Downloads====&lt;br /&gt;
* Binaries: airgap-base-ova (ex. spectro-airgap-podman-v3.1.4.ova)&lt;br /&gt;
* Binaries: airgap-fips (ex. airgap-vertex-v4.5.11.bin)&lt;br /&gt;
* Binaries: airgap-fips-scar-zip (ex. scar-airgap-vertex-v4.5.11.zip)&lt;br /&gt;
* Capi OS Image: k8s_fips (ex. u-2004-0-k-1305-fips.ova)&lt;br /&gt;
* Airgap Binaries: kubernetes-&amp;lt;version&amp;gt; (ex. airgap-vertex-pack-kubernetes-1.30.5.bin)&lt;br /&gt;
* Airgap Binaries: kubernetes-&amp;lt;version&amp;gt; (ex. airgap-vertex-pack-kubernetes-1.29.9.bin)&lt;br /&gt;
&lt;br /&gt;
====2. vCenter Prep ====&lt;br /&gt;
* Tag the DataCenter with k8s-region&lt;br /&gt;
* Tag the Cluster with k8s-zone&lt;br /&gt;
* Create a VM Folder called spectro-templates&lt;br /&gt;
* Create a VM Folder called spectro-vms&lt;br /&gt;
* Import the k8s_fips OVA (ex. u-2004-0-k-1305-fips.ova)&lt;br /&gt;
** Rename Image to &amp;quot;r_u-2004-0-k-&amp;lt;version&amp;gt;-fips&amp;quot; (ex. r_u-2004-0-k-1305-fips)&lt;br /&gt;
** Convert VM to Template.&lt;br /&gt;
&lt;br /&gt;
====3. Harbor Prep====&lt;br /&gt;
* Create a new Public Project (spectro-images)&lt;br /&gt;
&lt;br /&gt;
====4. OVA Setup====&lt;br /&gt;
DOCS REFERENCE: https://docs.spectrocloud.com/vertex/install-palette-vertex/install-on-vmware/airgap-install/environment-setup/vmware-vsphere-airgap-instructions/&lt;br /&gt;
* Deploy the OVA to vCenter (airgap-base-ova).&lt;br /&gt;
 1. Machine name: &amp;lt;strong&amp;gt;sc-deploy&amp;lt;/strong&amp;gt;&lt;br /&gt;
 2. Folder: &amp;lt;strong&amp;gt;spectro-vms&amp;lt;/strong&amp;gt;&lt;br /&gt;
 3. Acknowledge the certificate.&lt;br /&gt;
 4. Storage: &amp;lt;strong&amp;gt;DERS-HDD&amp;lt;/strong&amp;gt;&lt;br /&gt;
 5. Network: &amp;lt;strong&amp;gt;DERS-87&amp;lt;/strong&amp;gt;&lt;br /&gt;
 6. Set SSH Public Key: &amp;lt;strong&amp;gt;&amp;lt;opsman-key&amp;gt;&amp;lt;/strong&amp;gt;&lt;br /&gt;
 7. Default User Password: &amp;lt;strong&amp;gt;&amp;lt;ders&amp;gt;&amp;lt;/strong&amp;gt;&lt;br /&gt;
* Copy the vertex bin to the sc-deploy vm.&lt;br /&gt;
 export SC_DEPLOY_IP=&amp;quot;172.16.87.51&amp;quot;&lt;br /&gt;
 scp -i ~/.ssh/opsman /nfs/Download/airgap-vertex-v4.5.11.bin ubuntu@$SC_DEPLOY_IP:/tmp/&lt;br /&gt;
 scp -i ~/.ssh/opsman /nfs/Download/airgap-vertex-pack-kubernetes-1.30.5.bin ubuntu@$SC_DEPLOY_IP:/tmp/&lt;br /&gt;
 scp -i ~/.ssh/opsman /nfs/Download/airgap-vertex-pack-kubernetes-1.29.9.bin ubuntu@$SC_DEPLOY_IP:/tmp/&lt;br /&gt;
* SSH to the sc-deploy VM.&lt;br /&gt;
 ssh -i ~/.ssh/opsman ubuntu@$SC_DEPLOY_IP&lt;br /&gt;
 sudo --login&lt;br /&gt;
* Run the BIN Files&lt;br /&gt;
 #################&lt;br /&gt;
 # SET VARIABLES #&lt;br /&gt;
 #################&lt;br /&gt;
 export OCI_IMAGE_REGISTRY=harbor.dersllc.com&lt;br /&gt;
 export OCI_PACK_BASE=spectro-images&lt;br /&gt;
 export OCI_PACK_REGISTRY=harbor.dersllc.com&lt;br /&gt;
 export OCI_IMAGE_BASE=spectro-images&lt;br /&gt;
 export SC_VERSION=&#039;v4.5.11&#039;&lt;br /&gt;
 &lt;br /&gt;
 ####################&lt;br /&gt;
 # Trust DERS Certs #&lt;br /&gt;
 ####################&lt;br /&gt;
 sudo curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /usr/local/share/ca-certificates/ders-star-ca.crt&lt;br /&gt;
 sudo curl --insecure https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/DERS-CA-CERT/ders-ca.cer &amp;gt; /usr/local/share/ca-certificates/ders-ssca.crt&lt;br /&gt;
 sudo update-ca-certificates&lt;br /&gt;
 &lt;br /&gt;
 ###################&lt;br /&gt;
 # Log-in via ORAS #&lt;br /&gt;
 ###################&lt;br /&gt;
 oras login harbor.dersllc.com --username &#039;admin&#039; --password &#039;&amp;lt;Password&amp;gt;&#039;&lt;br /&gt;
 &lt;br /&gt;
 ##################################&lt;br /&gt;
 # Setup NFS Mount (NOT REQUIRED) #&lt;br /&gt;
 ##################################&lt;br /&gt;
 apt-get -y install snapd unzip nfs-common ca-certificates&lt;br /&gt;
 echo &amp;quot;172.16.85.15:/Download      /nfs/Download    nfs vers=4.0    0 0&amp;quot; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 mkdir -p /nfs/Download&lt;br /&gt;
 mount -a&lt;br /&gt;
 &lt;br /&gt;
 #################################&lt;br /&gt;
 # Import Containers into Harbor #&lt;br /&gt;
 #################################&lt;br /&gt;
 chmod +x /tmp/airgap-vertex-*&lt;br /&gt;
 /tmp/airgap-vertex-$SC_VERSION.bin --nodiskspace --target /nfs/Download/airgap-vertex-$SC_VERSION/&lt;br /&gt;
 # If Setting up CLI is not present in the output run the following:&lt;br /&gt;
 source /nfs/Download/airgap-vertex-$SC_VERSION/bin/functions.sh; cli_copy&lt;br /&gt;
 /tmp/airgap-vertex-pack-kubernetes-*&lt;br /&gt;
 &lt;br /&gt;
 ####################################################################&lt;br /&gt;
 # UNZIP Manifest in /var/www/html/manifests/&amp;lt;Version&amp;gt; on ders-plex #&lt;br /&gt;
 ####################################################################&lt;br /&gt;
 # ssh to ders-plex&lt;br /&gt;
 export SC_VERSION=&#039;v4.5.11&#039;&lt;br /&gt;
 mkdir -p /var/www/html/manifests/${SC_VERSION}&lt;br /&gt;
 mv /nfs/Download/scar-airgap-vertex-${SC_VERSION}.zip /var/www/html/manifests/${SC_VERSION}&lt;br /&gt;
 cd /var/www/html/manifests/${SC_VERSION}&lt;br /&gt;
 unzip scar-airgap-vertex-${SC_VERSION}.zip&lt;br /&gt;
 systemctl restart httpd&lt;br /&gt;
 &lt;br /&gt;
 curl http://172.16.84.22:8710/manifests/${SC_VERSION}/roar/nickfury/versions.yaml&lt;br /&gt;
===Vertex Install Steps===&lt;br /&gt;
 # SSH to sc-deploy and run:&lt;br /&gt;
 palette ec install&lt;br /&gt;
 &lt;br /&gt;
 # No palette CLI config file detected. One will be created.&lt;br /&gt;
 # Management Plane Type: &lt;br /&gt;
     &amp;lt;strong&amp;gt; Palette VerteX &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Operating System: &lt;br /&gt;
     &amp;lt;strong&amp;gt; ubuntu &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Enable Ubuntu Pro (required for production)? [y/N]: &amp;lt;strong&amp;gt; Yes &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Ubuntu Pro token: &amp;lt;strong&amp;gt; C12HPMun5ibCKAqtW%cqBpaL66RNjd &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # enabling experimental podman provider&lt;br /&gt;
 # No kind clusters found.&lt;br /&gt;
 # Cloud Type: &lt;br /&gt;
     &amp;lt;strong&amp;gt; VMware vSphere &amp;lt;/strong&amp;gt;&lt;br /&gt;
 ##########################################################&lt;br /&gt;
 # Spectro Cloud Artifact Repository (SCAR) Configuration #                                                                                                             &lt;br /&gt;
 ##########################################################                                                                                                                                                                                                                                                                                &lt;br /&gt;
 # SCAR location: &lt;br /&gt;
     &amp;lt;strong&amp;gt; http://172.16.84.22:8710/manifests/v4.5.11/ &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # SCAR username: &lt;br /&gt;
     &amp;lt;strong&amp;gt; admin &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # SCAR password: &lt;br /&gt;
     &amp;lt;strong&amp;gt; ******** &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Allow Insecure Connection (Bypass x509 Verification)? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt; Yes &amp;lt;/strong&amp;gt;&lt;br /&gt;
 ###################################&lt;br /&gt;
 # Enter Environment Configuration #&lt;br /&gt;
 ###################################&lt;br /&gt;
 # HTTPS Proxy (optional, hit enter to skip): &lt;br /&gt;
 # HTTP Proxy (optional, hit enter to skip): &lt;br /&gt;
 # Pod CIDR: 192.168.0.0/16&lt;br /&gt;
 # Service IP Range: 10.96.0.0/12&lt;br /&gt;
 # Retrieved version metadata. Using Spectro Cloud Version: 4.5.11&lt;br /&gt;
 #######################&lt;br /&gt;
 # Collecting Metadata #&lt;br /&gt;
 #######################&lt;br /&gt;
 # Kind Cluster Name: &lt;br /&gt;
     &amp;lt;strong&amp;gt; spectro-mgmt-cluster &amp;lt;/strong&amp;gt;&lt;br /&gt;
 #############################################&lt;br /&gt;
 # Enter Pack &amp;amp; Image Registry Configuration #&lt;br /&gt;
 #############################################                                                                                                                  &lt;br /&gt;
 # Registry Type: &lt;br /&gt;
     &amp;lt;strong&amp;gt; OCI &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Name: &lt;br /&gt;
     &amp;lt;strong&amp;gt;harbor.dersllc.com &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Endpoint: &lt;br /&gt;
     &amp;lt;strong&amp;gt;https://harbor.dersllc.com &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Base Content Path (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-images&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Allow Insecure Connection (Bypass x509 Verification)? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Yes&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Username (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;admin&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Password (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;*********&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Enter &#039;Y&#039; to pull images from public registries or &#039;N&#039; to specify an OCI image registry&lt;br /&gt;
 # Pull images from public registries? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;No&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Use the same OCI Registry for packs &amp;amp; images? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Yes&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Base Content Path (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-images&amp;lt;/strong&amp;gt;&lt;br /&gt;
 #####################################&lt;br /&gt;
 # Enter vSphere Account Information #&lt;br /&gt;
 #####################################&lt;br /&gt;
 # vSphere Endpoint: &lt;br /&gt;
     &amp;lt;strong&amp;gt;vcenter.dersllc.com&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # vSphere Username (with domain): &lt;br /&gt;
     &amp;lt;strong&amp;gt;administrator@ders.lab&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # vSphere Password: &lt;br /&gt;
     &amp;lt;strong&amp;gt;*********&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Allow Insecure Connection (Bypass x509 Verification)? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Yes&amp;lt;/strong&amp;gt;&lt;br /&gt;
 ##################################################&lt;br /&gt;
 # Enter vSphere Enterprise Cluster configuration #&lt;br /&gt;
 ##################################################                                                                                                               &lt;br /&gt;
 # Datacenter: &lt;br /&gt;
     &amp;lt;strong&amp;gt;DERSLLC&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # VM Folder: &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-vms&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Image Template Folder: &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-templates&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Cluster for Fault Domain: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Lab&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Network: &lt;br /&gt;
     &amp;lt;strong&amp;gt;DERS-87&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Resource Pool: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Default (root resource pool for cluster: Lab)&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Select specific Datastore or use a VM Storage Policy: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Datastore&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Datastore: &lt;br /&gt;
     &amp;lt;strong&amp;gt;DERS-HDD&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Unable to add another Fault Domain as no Clusters remain in Datacenter DERSLLC&lt;br /&gt;
 # NTP servers (comma-separated domain names or IP addresses, optional) (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.84.21&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Configure SSH public key(s)&lt;br /&gt;
     &amp;lt;strong&amp;gt;ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDngCrc1Na1xES5nnSBHxw1MMcwEwFL4TpwbSTq4BlcKb4WUGE4AOXr4W4RenB6OTyLkHOeLNc2ptILF3PZQG44SZ+uZMBLhx82DYbMq75F6WDSd7wnHA0cL90ncXGoLnwk+UnNEg59zmhYbrMEVM5OS3k0Ll/EXUb9PUsE+SdEoKDG+84OiwCQnQ+DWr9R79NHwLKflOvIMtoZuFwjObQ7xbsTO27FhL8wbcUDqygVqq+6r6adyZ1yEuqhXRkzUgQWv/rIzATaLTZp5r3kCGRe+EkB6AlapwE1O139ZGuY4m/FlIeXO1Ty0mmF88dI0CsbFUJcKKnO07nzSBhQevRr&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Specify a static IP range for assigning static IPs to cluster node(s).&lt;br /&gt;
 # The IP range must contain at least 5 IPs.	&lt;br /&gt;
 # Start IP: &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.85.200&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # End IP: &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.85.220&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Network Prefix: &lt;br /&gt;
     &amp;lt;strong&amp;gt;22&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Gateway IP Address: &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.84.1&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Name servers (comma-separated IP addresses): &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.84.10&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Name server search suffixes (Optional) (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;dersllc.com&amp;lt;/strong&amp;gt;&lt;br /&gt;
 ###################################################################&lt;br /&gt;
 #  Enter vSphere Machine configuration for the Enterprise Cluster #&lt;br /&gt;
 ###################################################################&lt;br /&gt;
 # Select combination: &lt;br /&gt;
     &amp;lt;strong&amp;gt;S: 16 CPU, 32 GB memory, 60 GB storage, 20 GB database with 4 CPU limit and 8 GB memory limit&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Node Affinity: Enter &#039;y&#039; to schedule all Palette pods on control plane nodes? [y/N]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;No&amp;lt;/strong&amp;gt;&lt;br /&gt;
===Vertex UI===&lt;br /&gt;
 https://vertex.dersllc.com/system&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
===spectro mgmt self link creation is still pending===&lt;br /&gt;
Error:&lt;br /&gt;
 spectro mgmt self link creation is still pending&lt;br /&gt;
Fix:&lt;br /&gt;
 Restart the spectrocluster Deployment&lt;br /&gt;
===Failed to apply cert renewal plan for first time push of certs===&lt;br /&gt;
Error:&lt;br /&gt;
 Failed to apply cert renewal plan for first time push of certs&lt;br /&gt;
Fix:&lt;br /&gt;
 Restart the Palette-Controller-Manager Deployment&lt;br /&gt;
===No Helm Charts Showing up in Profile creation===&lt;br /&gt;
Error:&lt;br /&gt;
 Helm results empty&lt;br /&gt;
Fix:&lt;br /&gt;
 Navigate to &amp;quot;Tenant Settings&amp;quot; -&amp;gt; Platform -&amp;gt; Platform Settings&lt;br /&gt;
 Enable &amp;quot;Allow non-FIPS packs&amp;quot;&lt;br /&gt;
 Enable &amp;quot;Allow non-FIPS features&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* ??Download Certs&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /opt/spectro/ssl/server.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /opt/spectro/ssl/server.key&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=SpectroCloud/VertexInstall&amp;diff=343</id>
		<title>SpectroCloud/VertexInstall</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=SpectroCloud/VertexInstall&amp;diff=343"/>
		<updated>2024-11-26T15:41:13Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Vertex Install Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Vertex Installation Instructions=&lt;br /&gt;
==Vertex Installation==&lt;br /&gt;
===Pre Requisites===&lt;br /&gt;
====1. Needed Downloads====&lt;br /&gt;
* Binaries: airgap-base-ova (ex. spectro-airgap-podman-v3.1.4.ova)&lt;br /&gt;
* Binaries: airgap-fips (ex. airgap-vertex-v4.5.11.bin)&lt;br /&gt;
* Binaries: airgap-fips-scar-zip (ex. scar-airgap-vertex-v4.5.11.zip)&lt;br /&gt;
* Capi OS Image: k8s_fips (ex. u-2004-0-k-1305-fips.ova)&lt;br /&gt;
* Airgap Binaries: kubernetes-&amp;lt;version&amp;gt; (ex. airgap-vertex-pack-kubernetes-1.30.5.bin)&lt;br /&gt;
* Airgap Binaries: kubernetes-&amp;lt;version&amp;gt; (ex. airgap-vertex-pack-kubernetes-1.29.9.bin)&lt;br /&gt;
&lt;br /&gt;
====2. vCenter Prep ====&lt;br /&gt;
* Tag the DataCenter with k8s-region&lt;br /&gt;
* Tag the Cluster with k8s-zone&lt;br /&gt;
* Create a VM Folder called spectro-templates&lt;br /&gt;
* Create a VM Folder called spectro-vms&lt;br /&gt;
* Import the k8s_fips OVA (ex. u-2004-0-k-1305-fips.ova)&lt;br /&gt;
** Rename Image to &amp;quot;r_u-2004-0-k-&amp;lt;version&amp;gt;-fips&amp;quot; (ex. r_u-2004-0-k-1305-fips)&lt;br /&gt;
** Convert VM to Template.&lt;br /&gt;
&lt;br /&gt;
====3. Harbor Prep====&lt;br /&gt;
* Create a new Public Project (spectro-images)&lt;br /&gt;
&lt;br /&gt;
====4. OVA Setup====&lt;br /&gt;
DOCS REFERENCE: https://docs.spectrocloud.com/vertex/install-palette-vertex/install-on-vmware/airgap-install/environment-setup/vmware-vsphere-airgap-instructions/&lt;br /&gt;
* Deploy the OVA to vCenter (airgap-base-ova).&lt;br /&gt;
 1. Machine name: &amp;lt;strong&amp;gt;sc-deploy&amp;lt;/strong&amp;gt;&lt;br /&gt;
 2. Folder: &amp;lt;strong&amp;gt;spectro-vms&amp;lt;/strong&amp;gt;&lt;br /&gt;
 3. Acknowledge the certificate.&lt;br /&gt;
 4. Storage: &amp;lt;strong&amp;gt;DERS-HDD&amp;lt;/strong&amp;gt;&lt;br /&gt;
 5. Network: &amp;lt;strong&amp;gt;DERS-87&amp;lt;/strong&amp;gt;&lt;br /&gt;
 6. Set SSH Public Key: &amp;lt;strong&amp;gt;&amp;lt;opsman-key&amp;gt;&amp;lt;/strong&amp;gt;&lt;br /&gt;
 7. Default User Password: &amp;lt;strong&amp;gt;&amp;lt;ders&amp;gt;&amp;lt;/strong&amp;gt;&lt;br /&gt;
* Copy the vertex bin to the sc-deploy vm.&lt;br /&gt;
 export SC_DEPLOY_IP=&amp;quot;172.16.87.51&amp;quot;&lt;br /&gt;
 scp -i ~/.ssh/opsman /nfs/Download/airgap-vertex-v4.5.11.bin ubuntu@$SC_DEPLOY_IP:/tmp/&lt;br /&gt;
 scp -i ~/.ssh/opsman /nfs/Download/airgap-vertex-pack-kubernetes-1.30.5.bin ubuntu@$SC_DEPLOY_IP:/tmp/&lt;br /&gt;
 scp -i ~/.ssh/opsman /nfs/Download/airgap-vertex-pack-kubernetes-1.29.9.bin ubuntu@$SC_DEPLOY_IP:/tmp/&lt;br /&gt;
* SSH to the sc-deploy VM.&lt;br /&gt;
 ssh -i ~/.ssh/opsman ubuntu@$SC_DEPLOY_IP&lt;br /&gt;
 sudo --login&lt;br /&gt;
* Run the BIN Files&lt;br /&gt;
 #################&lt;br /&gt;
 # SET VARIABLES #&lt;br /&gt;
 #################&lt;br /&gt;
 export OCI_IMAGE_REGISTRY=harbor.dersllc.com&lt;br /&gt;
 export OCI_PACK_BASE=spectro-images&lt;br /&gt;
 export OCI_PACK_REGISTRY=harbor.dersllc.com&lt;br /&gt;
 export OCI_IMAGE_BASE=spectro-images&lt;br /&gt;
 export SC_VERSION=&#039;v4.5.11&#039;&lt;br /&gt;
 &lt;br /&gt;
 ####################&lt;br /&gt;
 # Trust DERS Certs #&lt;br /&gt;
 ####################&lt;br /&gt;
 sudo curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /usr/local/share/ca-certificates/ders-star-ca.crt&lt;br /&gt;
 sudo curl --insecure https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/DERS-CA-CERT/ders-ca.cer &amp;gt; /usr/local/share/ca-certificates/ders-ssca.crt&lt;br /&gt;
 sudo update-ca-certificates&lt;br /&gt;
 &lt;br /&gt;
 ###################&lt;br /&gt;
 # Log-in via ORAS #&lt;br /&gt;
 ###################&lt;br /&gt;
 oras login harbor.dersllc.com --username &#039;admin&#039; --password &#039;&amp;lt;Password&amp;gt;&#039;&lt;br /&gt;
 &lt;br /&gt;
 ##################################&lt;br /&gt;
 # Setup NFS Mount (NOT REQUIRED) #&lt;br /&gt;
 ##################################&lt;br /&gt;
 apt-get -y install snapd unzip nfs-common ca-certificates&lt;br /&gt;
 echo &amp;quot;172.16.85.15:/Download      /nfs/Download    nfs vers=4.0    0 0&amp;quot; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 mkdir -p /nfs/Download&lt;br /&gt;
 mount -a&lt;br /&gt;
 &lt;br /&gt;
 #################################&lt;br /&gt;
 # Import Containers into Harbor #&lt;br /&gt;
 #################################&lt;br /&gt;
 chmod +x /tmp/airgap-vertex-*&lt;br /&gt;
 /tmp/airgap-vertex-$SC_VERSION.bin --nodiskspace --target /nfs/Download/airgap-vertex-$SC_VERSION/&lt;br /&gt;
 # If Setting up CLI is not present in the output run the following:&lt;br /&gt;
 source /nfs/Download/airgap-vertex-$SC_VERSION/bin/functions.sh; cli_copy&lt;br /&gt;
 /tmp/airgap-vertex-pack-kubernetes-*&lt;br /&gt;
 &lt;br /&gt;
 ####################################################################&lt;br /&gt;
 # UNZIP Manifest in /var/www/html/manifests/&amp;lt;Version&amp;gt; on ders-plex #&lt;br /&gt;
 ####################################################################&lt;br /&gt;
 # ssh to ders-plex&lt;br /&gt;
 export SC_VERSION=&#039;v4.5.11&#039;&lt;br /&gt;
 mkdir -p /var/www/html/manifests/${SC_VERSION}&lt;br /&gt;
 mv /nfs/Download/scar-airgap-vertex-${SC_VERSION}.zip /var/www/html/manifests/${SC_VERSION}&lt;br /&gt;
 cd /var/www/html/manifests/${SC_VERSION}&lt;br /&gt;
 unzip scar-airgap-vertex-${SC_VERSION}.zip&lt;br /&gt;
 systemctl restart httpd&lt;br /&gt;
 &lt;br /&gt;
 curl http://172.16.84.22:8710/manifests/${SC_VERSION}/roar/nickfury/versions.yaml&lt;br /&gt;
===Vertex Install Steps===&lt;br /&gt;
 # SSH to sc-deploy and run:&lt;br /&gt;
 palette ec install&lt;br /&gt;
 &lt;br /&gt;
 # No palette CLI config file detected. One will be created.&lt;br /&gt;
 # Management Plane Type: &lt;br /&gt;
     &amp;lt;strong&amp;gt; Palette VerteX &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Operating System: &lt;br /&gt;
     &amp;lt;strong&amp;gt; ubuntu &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Enable Ubuntu Pro (required for production)? [y/N]: &amp;lt;strong&amp;gt; Yes &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Ubuntu Pro token: &amp;lt;strong&amp;gt; C12HPMun5ibCKAqtW%cqBpaL66RNjd &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # enabling experimental podman provider&lt;br /&gt;
 # No kind clusters found.&lt;br /&gt;
 # Cloud Type: &lt;br /&gt;
     &amp;lt;strong&amp;gt; VMware vSphere &amp;lt;/strong&amp;gt;&lt;br /&gt;
 ##########################################################&lt;br /&gt;
 # Spectro Cloud Artifact Repository (SCAR) Configuration #                                                                                                             &lt;br /&gt;
 ##########################################################                                                                                                                                                                                                                                                                                &lt;br /&gt;
 # SCAR location: &lt;br /&gt;
     &amp;lt;strong&amp;gt; http://172.16.84.22:8710/manifests/v4.5.11/ &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # SCAR username: &lt;br /&gt;
     &amp;lt;strong&amp;gt; admin &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # SCAR password: &lt;br /&gt;
     &amp;lt;strong&amp;gt; ******** &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Allow Insecure Connection (Bypass x509 Verification)? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt; Yes &amp;lt;/strong&amp;gt;&lt;br /&gt;
 ###################################&lt;br /&gt;
 # Enter Environment Configuration #&lt;br /&gt;
 ###################################&lt;br /&gt;
 # HTTPS Proxy (optional, hit enter to skip): &lt;br /&gt;
 # HTTP Proxy (optional, hit enter to skip): &lt;br /&gt;
 # Pod CIDR: 192.168.0.0/16&lt;br /&gt;
 # Service IP Range: 10.96.0.0/12&lt;br /&gt;
 # Retrieved version metadata. Using Spectro Cloud Version: 4.5.11&lt;br /&gt;
 #######################&lt;br /&gt;
 # Collecting Metadata #&lt;br /&gt;
 #######################&lt;br /&gt;
 # Kind Cluster Name: &lt;br /&gt;
     &amp;lt;strong&amp;gt; spectro-mgmt-cluster &amp;lt;/strong&amp;gt;&lt;br /&gt;
 #############################################&lt;br /&gt;
 # Enter Pack &amp;amp; Image Registry Configuration #&lt;br /&gt;
 #############################################                                                                                                                  &lt;br /&gt;
 # Registry Type: &lt;br /&gt;
     &amp;lt;strong&amp;gt; OCI &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Name: &lt;br /&gt;
     &amp;lt;strong&amp;gt;harbor.dersllc.com &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Endpoint: &lt;br /&gt;
     &amp;lt;strong&amp;gt;https://harbor.dersllc.com &amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Base Content Path (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-images&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Allow Insecure Connection (Bypass x509 Verification)? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Yes&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Username (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;admin&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Password (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;*********&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Enter &#039;Y&#039; to pull images from public registries or &#039;N&#039; to specify an OCI image registry&lt;br /&gt;
 # Pull images from public registries? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;No&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Use the same OCI Registry for packs &amp;amp; images? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Yes&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Registry Base Content Path (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-images&amp;lt;/strong&amp;gt;&lt;br /&gt;
 #####################################&lt;br /&gt;
 # Enter vSphere Account Information #&lt;br /&gt;
 #####################################&lt;br /&gt;
 # vSphere Endpoint: &lt;br /&gt;
     &amp;lt;strong&amp;gt;vcenter.dersllc.com&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # vSphere Username (with domain): &lt;br /&gt;
     &amp;lt;strong&amp;gt;administrator@ders.lab&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # vSphere Password: &lt;br /&gt;
     &amp;lt;strong&amp;gt;*********&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Allow Insecure Connection (Bypass x509 Verification)? [Y/n]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Yes&amp;lt;/strong&amp;gt;&lt;br /&gt;
 ##################################################&lt;br /&gt;
 # Enter vSphere Enterprise Cluster configuration #&lt;br /&gt;
 ##################################################                                                                                                               &lt;br /&gt;
 # Datacenter: &lt;br /&gt;
     &amp;lt;strong&amp;gt;DERSLLC&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # VM Folder: &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-vms&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Image Template Folder: &lt;br /&gt;
     &amp;lt;strong&amp;gt;spectro-templates&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Cluster for Fault Domain: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Lab&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Network: &lt;br /&gt;
     &amp;lt;strong&amp;gt;DERS-87&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Resource Pool: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Default (root resource pool for cluster: Lab)&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Select specific Datastore or use a VM Storage Policy: &lt;br /&gt;
     &amp;lt;strong&amp;gt;Datastore&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Datastore: &lt;br /&gt;
     &amp;lt;strong&amp;gt;DERS-HDD&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Unable to add another Fault Domain as no Clusters remain in Datacenter DERSLLC&lt;br /&gt;
 # NTP servers (comma-separated domain names or IP addresses, optional) (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.84.21&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Configure SSH public key(s)&lt;br /&gt;
     &amp;lt;strong&amp;gt;ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDngCrc1Na1xES5nnSBHxw1MMcwEwFL4TpwbSTq4BlcKb4WUGE4AOXr4W4RenB6OTyLkHOeLNc2ptILF3PZQG44SZ+uZMBLhx82DYbMq75F6WDSd7wnHA0cL90ncXGoLnwk+UnNEg59zmhYbrMEVM5OS3k0Ll/EXUb9PUsE+SdEoKDG+84OiwCQnQ+DWr9R79NHwLKflOvIMtoZuFwjObQ7xbsTO27FhL8wbcUDqygVqq+6r6adyZ1yEuqhXRkzUgQWv/rIzATaLTZp5r3kCGRe+EkB6AlapwE1O139ZGuY4m/FlIeXO1Ty0mmF88dI0CsbFUJcKKnO07nzSBhQevRr&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Specify a static IP range for assigning static IPs to cluster node(s).&lt;br /&gt;
 # The IP range must contain at least 5 IPs.	&lt;br /&gt;
 # Start IP: &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.85.200&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # End IP: &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.85.220&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Network Prefix: &lt;br /&gt;
     &amp;lt;strong&amp;gt;22&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Gateway IP Address: &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.84.1&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Name servers (comma-separated IP addresses): &lt;br /&gt;
     &amp;lt;strong&amp;gt;172.16.84.10&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Name server search suffixes (Optional) (optional, hit enter to skip): &lt;br /&gt;
     &amp;lt;strong&amp;gt;dersllc.com&amp;lt;/strong&amp;gt;&lt;br /&gt;
 ###################################################################&lt;br /&gt;
 #  Enter vSphere Machine configuration for the Enterprise Cluster #&lt;br /&gt;
 ###################################################################&lt;br /&gt;
 # Select combination: &lt;br /&gt;
     &amp;lt;strong&amp;gt;S: 16 CPU, 32 GB memory, 60 GB storage, 20 GB database with 4 CPU limit and 8 GB memory limit&amp;lt;/strong&amp;gt;&lt;br /&gt;
 # Node Affinity: Enter &#039;y&#039; to schedule all Palette pods on control plane nodes? [y/N]: &lt;br /&gt;
     &amp;lt;strong&amp;gt;No&amp;lt;/strong&amp;gt;&lt;br /&gt;
===Vertex UI===&lt;br /&gt;
 https://vertex.dersllc.com&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
===spectro mgmt self link creation is still pending===&lt;br /&gt;
Error:&lt;br /&gt;
 spectro mgmt self link creation is still pending&lt;br /&gt;
Fix:&lt;br /&gt;
 Restart the spectrocluster Deployment&lt;br /&gt;
===Failed to apply cert renewal plan for first time push of certs===&lt;br /&gt;
Error:&lt;br /&gt;
 Failed to apply cert renewal plan for first time push of certs&lt;br /&gt;
Fix:&lt;br /&gt;
 Restart the Palette-Controller-Manager Deployment&lt;br /&gt;
===No Helm Charts Showing up in Profile creation===&lt;br /&gt;
Error:&lt;br /&gt;
 Helm results empty&lt;br /&gt;
Fix:&lt;br /&gt;
 Navigate to &amp;quot;Tenant Settings&amp;quot; -&amp;gt; Platform -&amp;gt; Platform Settings&lt;br /&gt;
 Enable &amp;quot;Allow non-FIPS packs&amp;quot;&lt;br /&gt;
 Enable &amp;quot;Allow non-FIPS features&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* ??Download Certs&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /opt/spectro/ssl/server.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /opt/spectro/ssl/server.key&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/TKGm&amp;diff=69</id>
		<title>VMware/TKGm</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/TKGm&amp;diff=69"/>
		<updated>2023-08-14T19:45:49Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Add another workload cluster */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Tanzu Kubernetes Grid (Multi-Cloud)= &lt;br /&gt;
== Prep TKGm Install ==&lt;br /&gt;
 cd /data&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt;&amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/DERS-CA-CERT/ders-ca.cer &amp;gt; /data/ders-priv-ca.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /data/ders-ca.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /data/ders-star.key&lt;br /&gt;
 cat ders-priv-ca.crt &amp;gt;&amp;gt; ders-star-chain.crt&lt;br /&gt;
 cat /data/ders-priv-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 cp /data/ders-star-chain.crt /data/ders-star-chain.pem&lt;br /&gt;
 cat /data/ders-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 &lt;br /&gt;
 docker login harbor.dersllc.com &lt;br /&gt;
 &lt;br /&gt;
 #arcas --load_tanzu_image_to_harbor --repo_name tanzu_210 --tkg_binaries_path /opt/vmware/arcas/tools/tanzu21.tar&lt;br /&gt;
&lt;br /&gt;
== Installing TKGm ==&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/tkgm-on-vlan-87.json &amp;gt; /data/tkgm-on-vlan-87.json&lt;br /&gt;
 arcas --env vsphere --file /data/tkgm-on-vlan-87.json --verbose --avi_configuration&lt;br /&gt;
 arcas --env vsphere --file /data/tkgm-on-vlan-87.json --verbose --skip_precheck --tkg_mgmt_configuration --shared_service_configuration --workload_preconfig --workload_deploy --deploy_extensions&lt;br /&gt;
&lt;br /&gt;
== Installing Tanzu Package Applications ==&lt;br /&gt;
 &lt;br /&gt;
 tanzu package install cert-manager -n tanzu-package-repo-global -p cert-manager.tanzu.vmware.com -v 1.7.2+vmware.1-tkg.1&lt;br /&gt;
 tanzu package install contour -n tanzu-package-repo-global -p contour.tanzu.vmware.com -v 1.20.2+vmware.1-tkg.1 -f /data/contour-default-values.yaml&lt;br /&gt;
 tanzu package install prometheus -n tanzu-package-repo-global -p prometheus.tanzu.vmware.com -v 2.36.2+vmware.1-tkg.1&lt;br /&gt;
 tanzu package install grafana -n tanzu-package-repo-global -p grafana.tanzu.vmware.com -v 7.5.16+vmware.1-tkg.1&lt;br /&gt;
&lt;br /&gt;
== Setup Pinniped for Key Cloak Authentication ==&lt;br /&gt;
=== Setup KeyCloak ===&lt;br /&gt;
1. Apache Proxy Configured as SSO.DERSLLC.COM&lt;br /&gt;
 &amp;lt;VirtualHost *:443&amp;gt;&lt;br /&gt;
   ServerName sso.dersllc.com&lt;br /&gt;
   RequestHeader set X-Forwarded-Proto &amp;quot;https&amp;quot;&lt;br /&gt;
   RemoteIPHeader X-Forwarded-For&lt;br /&gt;
   ProxyPass / http://172.16.87.22:8080/&lt;br /&gt;
   ProxyPassReverse / http://172.16.87.22:8080/&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
2. Run Container&lt;br /&gt;
 docker stop keycloak&lt;br /&gt;
 docker rm keycloak&lt;br /&gt;
 docker run -d --name keycloak -p 8080:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:20.0.2 start --proxy edge --hostname-strict=false&lt;br /&gt;
3. Update the Admin Password&lt;br /&gt;
4. Create a Client Connection &lt;br /&gt;
 Open the Keycloak Admin Console&lt;br /&gt;
 Click &#039;Clients&#039;&lt;br /&gt;
 Click &#039;Create client&#039;&lt;br /&gt;
 Fill in the form with the following values:&lt;br /&gt;
 Client type: OpenID Connect&lt;br /&gt;
 Client ID: tkgm&lt;br /&gt;
 Name: TKGm &lt;br /&gt;
 Click &#039;Next&#039;&lt;br /&gt;
 Check &#039;Client authentication&#039;&lt;br /&gt;
 Check &#039;Authorization&#039;&lt;br /&gt;
 Make sure &#039;Standard flow&#039; is enabled&lt;br /&gt;
 Click &#039;Save&#039;&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
 https://www.keycloak.org/getting-started/getting-started-docker&lt;br /&gt;
&lt;br /&gt;
== Default Pods that have CURL ==&lt;br /&gt;
=== kube-system ===&lt;br /&gt;
1. vsphere-csi-node - vsphere-csi-node&lt;br /&gt;
 kubectl exec -it -n kube-system vsphere-csi-node-{{highlight|4bf25}} -c vsphere-csi-node -- bash&lt;br /&gt;
2. vsphere-csi-controller -c vsphere-csi-controller&lt;br /&gt;
 kubectl exec -it -n kube-system vsphere-csi-controller-{{highlight|74f44b74c5-2t2zh}} -c vsphere-csi-controller -- bash&lt;br /&gt;
&lt;br /&gt;
== Upgrade vSphere Cluster Hardware ==&lt;br /&gt;
 &lt;br /&gt;
 Frank Escaros-Buechsel&lt;br /&gt;
     easiest would be to enable EVC on the cluster now&lt;br /&gt;
     then add the new hosts to said cluster and migrate over with vmotion&lt;br /&gt;
     depending on rack space and network layout of course&lt;br /&gt;
     this way you dont need to update any references and you still have a more or less seamless migration (edited)&lt;br /&gt;
&lt;br /&gt;
== Change TKGm node Resources (CPU / Memory / Datastore) ==&lt;br /&gt;
&lt;br /&gt;
References: &lt;br /&gt;
 https://veducate.co.uk/tkg-kubectl-scale-vertically/&lt;br /&gt;
 https://vmwire.com/2021/11/22/scaling-tkgm-control-plane-nodes-vertically/&lt;br /&gt;
==REFERENCES==&lt;br /&gt;
 https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-mgmt-clusters-airgapped-environments.html&lt;br /&gt;
https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-mgmt-clusters-airgapped-environments.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Add Trusted CA to TKG Management Cluster==&lt;br /&gt;
&lt;br /&gt;
 kubectl config use-context tanzu-mgmt-admin@tanzu-mgmt&lt;br /&gt;
 kubectl edit Kubeadmconfigtemplates -n tkg-system tanzu-mgmt-md-0-bootstrap-72bfm&lt;br /&gt;
           &lt;br /&gt;
 spec:&lt;br /&gt;
  template:&lt;br /&gt;
    spec:&lt;br /&gt;
      files:&lt;br /&gt;
      - content: |&lt;br /&gt;
          -----BEGIN CERTIFICATE-----&lt;br /&gt;
          MIIFmjCCA4KgAwIBAgIJAKVK2W1HOS0NMA0GCSqGSIb3DQEBCwUAMGsxCzAJBgNV&lt;br /&gt;
          ......&lt;br /&gt;
          l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3&lt;br /&gt;
          smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg==&lt;br /&gt;
          -----END CERTIFICATE-----&lt;br /&gt;
        owner: root:root&lt;br /&gt;
        path: /etc/ssl/certs/tkg-custom-ca.pem&lt;br /&gt;
        permissions: &amp;quot;0644&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Add another workload cluster==&lt;br /&gt;
 cp .config/tanzu/tkg/clusterconfigs/work.yaml test.yaml&lt;br /&gt;
 &lt;br /&gt;
 # Change the name of the cluster throughout the file. &lt;br /&gt;
 vi test.yaml&lt;br /&gt;
 &lt;br /&gt;
 tanzu cluster create work-1 -f test.yaml&lt;br /&gt;
 tanzu cluster kubeconfig get --admin  work-1&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/TKGm&amp;diff=68</id>
		<title>VMware/TKGm</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/TKGm&amp;diff=68"/>
		<updated>2023-08-14T19:44:34Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Add Trusted CA to TKG Management Cluster */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Tanzu Kubernetes Grid (Multi-Cloud)= &lt;br /&gt;
== Prep TKGm Install ==&lt;br /&gt;
 cd /data&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt;&amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/DERS-CA-CERT/ders-ca.cer &amp;gt; /data/ders-priv-ca.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /data/ders-ca.crt&lt;br /&gt;
 curl --insecure https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /data/ders-star.key&lt;br /&gt;
 cat ders-priv-ca.crt &amp;gt;&amp;gt; ders-star-chain.crt&lt;br /&gt;
 cat /data/ders-priv-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 cp /data/ders-star-chain.crt /data/ders-star-chain.pem&lt;br /&gt;
 cat /data/ders-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 &lt;br /&gt;
 docker login harbor.dersllc.com &lt;br /&gt;
 &lt;br /&gt;
 #arcas --load_tanzu_image_to_harbor --repo_name tanzu_210 --tkg_binaries_path /opt/vmware/arcas/tools/tanzu21.tar&lt;br /&gt;
&lt;br /&gt;
== Installing TKGm ==&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/tkgm-on-vlan-87.json &amp;gt; /data/tkgm-on-vlan-87.json&lt;br /&gt;
 arcas --env vsphere --file /data/tkgm-on-vlan-87.json --verbose --avi_configuration&lt;br /&gt;
 arcas --env vsphere --file /data/tkgm-on-vlan-87.json --verbose --skip_precheck --tkg_mgmt_configuration --shared_service_configuration --workload_preconfig --workload_deploy --deploy_extensions&lt;br /&gt;
&lt;br /&gt;
== Installing Tanzu Package Applications ==&lt;br /&gt;
 &lt;br /&gt;
 tanzu package install cert-manager -n tanzu-package-repo-global -p cert-manager.tanzu.vmware.com -v 1.7.2+vmware.1-tkg.1&lt;br /&gt;
 tanzu package install contour -n tanzu-package-repo-global -p contour.tanzu.vmware.com -v 1.20.2+vmware.1-tkg.1 -f /data/contour-default-values.yaml&lt;br /&gt;
 tanzu package install prometheus -n tanzu-package-repo-global -p prometheus.tanzu.vmware.com -v 2.36.2+vmware.1-tkg.1&lt;br /&gt;
 tanzu package install grafana -n tanzu-package-repo-global -p grafana.tanzu.vmware.com -v 7.5.16+vmware.1-tkg.1&lt;br /&gt;
&lt;br /&gt;
== Setup Pinniped for Key Cloak Authentication ==&lt;br /&gt;
=== Setup KeyCloak ===&lt;br /&gt;
1. Apache Proxy Configured as SSO.DERSLLC.COM&lt;br /&gt;
 &amp;lt;VirtualHost *:443&amp;gt;&lt;br /&gt;
   ServerName sso.dersllc.com&lt;br /&gt;
   RequestHeader set X-Forwarded-Proto &amp;quot;https&amp;quot;&lt;br /&gt;
   RemoteIPHeader X-Forwarded-For&lt;br /&gt;
   ProxyPass / http://172.16.87.22:8080/&lt;br /&gt;
   ProxyPassReverse / http://172.16.87.22:8080/&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
2. Run Container&lt;br /&gt;
 docker stop keycloak&lt;br /&gt;
 docker rm keycloak&lt;br /&gt;
 docker run -d --name keycloak -p 8080:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:20.0.2 start --proxy edge --hostname-strict=false&lt;br /&gt;
3. Update the Admin Password&lt;br /&gt;
4. Create a Client Connection &lt;br /&gt;
 Open the Keycloak Admin Console&lt;br /&gt;
 Click &#039;Clients&#039;&lt;br /&gt;
 Click &#039;Create client&#039;&lt;br /&gt;
 Fill in the form with the following values:&lt;br /&gt;
 Client type: OpenID Connect&lt;br /&gt;
 Client ID: tkgm&lt;br /&gt;
 Name: TKGm &lt;br /&gt;
 Click &#039;Next&#039;&lt;br /&gt;
 Check &#039;Client authentication&#039;&lt;br /&gt;
 Check &#039;Authorization&#039;&lt;br /&gt;
 Make sure &#039;Standard flow&#039; is enabled&lt;br /&gt;
 Click &#039;Save&#039;&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
 https://www.keycloak.org/getting-started/getting-started-docker&lt;br /&gt;
&lt;br /&gt;
== Default Pods that have CURL ==&lt;br /&gt;
=== kube-system ===&lt;br /&gt;
1. vsphere-csi-node - vsphere-csi-node&lt;br /&gt;
 kubectl exec -it -n kube-system vsphere-csi-node-{{highlight|4bf25}} -c vsphere-csi-node -- bash&lt;br /&gt;
2. vsphere-csi-controller -c vsphere-csi-controller&lt;br /&gt;
 kubectl exec -it -n kube-system vsphere-csi-controller-{{highlight|74f44b74c5-2t2zh}} -c vsphere-csi-controller -- bash&lt;br /&gt;
&lt;br /&gt;
== Upgrade vSphere Cluster Hardware ==&lt;br /&gt;
 &lt;br /&gt;
 Frank Escaros-Buechsel&lt;br /&gt;
     easiest would be to enable EVC on the cluster now&lt;br /&gt;
     then add the new hosts to said cluster and migrate over with vmotion&lt;br /&gt;
     depending on rack space and network layout of course&lt;br /&gt;
     this way you dont need to update any references and you still have a more or less seamless migration (edited)&lt;br /&gt;
&lt;br /&gt;
== Change TKGm node Resources (CPU / Memory / Datastore) ==&lt;br /&gt;
&lt;br /&gt;
References: &lt;br /&gt;
 https://veducate.co.uk/tkg-kubectl-scale-vertically/&lt;br /&gt;
 https://vmwire.com/2021/11/22/scaling-tkgm-control-plane-nodes-vertically/&lt;br /&gt;
==REFERENCES==&lt;br /&gt;
 https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-mgmt-clusters-airgapped-environments.html&lt;br /&gt;
https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-mgmt-clusters-airgapped-environments.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Add Trusted CA to TKG Management Cluster==&lt;br /&gt;
&lt;br /&gt;
 kubectl config use-context tanzu-mgmt-admin@tanzu-mgmt&lt;br /&gt;
 kubectl edit Kubeadmconfigtemplates -n tkg-system tanzu-mgmt-md-0-bootstrap-72bfm&lt;br /&gt;
           &lt;br /&gt;
 spec:&lt;br /&gt;
  template:&lt;br /&gt;
    spec:&lt;br /&gt;
      files:&lt;br /&gt;
      - content: |&lt;br /&gt;
          -----BEGIN CERTIFICATE-----&lt;br /&gt;
          MIIFmjCCA4KgAwIBAgIJAKVK2W1HOS0NMA0GCSqGSIb3DQEBCwUAMGsxCzAJBgNV&lt;br /&gt;
          ......&lt;br /&gt;
          l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3&lt;br /&gt;
          smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg==&lt;br /&gt;
          -----END CERTIFICATE-----&lt;br /&gt;
        owner: root:root&lt;br /&gt;
        path: /etc/ssl/certs/tkg-custom-ca.pem&lt;br /&gt;
        permissions: &amp;quot;0644&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Add another workload cluster==&lt;br /&gt;
&lt;br /&gt;
 cp .config/tanzu/tkg/clusterconfigs/work.yaml test.yaml&lt;br /&gt;
 vi test.yaml&lt;br /&gt;
 tanzu cluster create work-1 -f test.yaml&lt;br /&gt;
 tanzu cluster kubeconfig get --admin  work-1&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/TMConEKS&amp;diff=67</id>
		<title>VMware/TMConEKS</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/TMConEKS&amp;diff=67"/>
		<updated>2023-07-21T19:40:30Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Install TMC */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= TMC on EKS Setup =&lt;br /&gt;
&lt;br /&gt;
== Create Harbor on AWS==&lt;br /&gt;
=== SSH to Harbor-AWS EC2 Instance ===&lt;br /&gt;
 #On Plex&lt;br /&gt;
 ssh -i ~/.ssh/aws-keypair.pem ec2-user@ec2-54-91-52-46.compute-1.amazonaws.com&lt;br /&gt;
&lt;br /&gt;
=== Install Harbor-AWS ===&lt;br /&gt;
 #THIS IS JUST PULLING IN MY STAR CERT and KEY FOR DERSLLC&lt;br /&gt;
 mkdir /data&lt;br /&gt;
 cd /data&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt;&amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 cp /data/ders-star-chain.crt /data/ders-star-chain.pem&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /data/ders-ca.crt&lt;br /&gt;
 cat /data/ders-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /data/ders-star.key&lt;br /&gt;
 &lt;br /&gt;
 yum -y install docker&lt;br /&gt;
 service docker start&lt;br /&gt;
 systemctl enable docker&lt;br /&gt;
 &lt;br /&gt;
 wget https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-linux-x86_64 -O /usr/local/bin/docker-compose&lt;br /&gt;
 chmod +x /usr/local/bin/docker-compose&lt;br /&gt;
 wget https://github.com/goharbor/harbor/releases/download/v2.8.1/harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 tar -zxvf harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 cd harbor&lt;br /&gt;
 cp harbor.yml.tmpl harbor.yml&lt;br /&gt;
 vi harbor.yml&lt;br /&gt;
 # add Hostname and certs and location&lt;br /&gt;
 #### harbor-aws.dersllc.com&lt;br /&gt;
 #### /data/ders-star-chain.crt&lt;br /&gt;
 #### /data/ders-star.key&lt;br /&gt;
 #### /data/harbor-data&lt;br /&gt;
 &lt;br /&gt;
 ./install.sh --with-trivy --with-notary&lt;br /&gt;
&lt;br /&gt;
== Load Harbor with Images ==&lt;br /&gt;
 # On a Jumpbox...&lt;br /&gt;
 docker login harbor-aws.dersllc.com&lt;br /&gt;
 #################################&lt;br /&gt;
 #     Set Install Variables     #&lt;br /&gt;
 #################################&lt;br /&gt;
 export IMGPKG_REGISTRY_HOSTNAME_0=&amp;quot;harbor-aws.dersllc.com&amp;quot;&lt;br /&gt;
 export IMGPKG_REGISTRY_USERNAME_0=&amp;quot;admin&amp;quot;&lt;br /&gt;
 export IMGPKG_REGISTRY_PASSWORD_0=&amp;lt;PASSWORD&amp;gt;&lt;br /&gt;
 export PRIVATE_IMAGE_REGISTRY_CA_PATH=&amp;quot;/data/ders-ca.crt&amp;quot;&lt;br /&gt;
 export PRIVATE_IMAGE_REGISTRY=&amp;quot;harbor-aws.dersllc.com&amp;quot;&lt;br /&gt;
 export TKG_IMAGE_REGISTRY=&amp;quot;projects.registry.vmware.com/tkg&amp;quot;&lt;br /&gt;
 export TKG_REPO_VERSION=&amp;quot;v2.2.0_update.1&amp;quot;&lt;br /&gt;
 export TMC_HARBOR_PROJECT=&amp;quot;tmc-sm-1.0.0&amp;quot;&lt;br /&gt;
 export TMC_BUNDLE=&amp;quot;tmc-self-managed-1.0.0&amp;quot;&lt;br /&gt;
 #########################&lt;br /&gt;
 #     Prep TMC Bits     #&lt;br /&gt;
 #########################&lt;br /&gt;
 mkdir tmc&lt;br /&gt;
 tar -xf $TMC_BUNDLE.tar -C tmc&lt;br /&gt;
 chmod +x /usr/local/bin/tmc&lt;br /&gt;
 tmc/tmc-sm push-images harbor --project $IMGPKG_REGISTRY_HOSTNAME_0/$TMC_HARBOR_PROJECT --username $IMGPKG_REGISTRY_USERNAME_0 --password $IMGPKG_REGISTRY_PASSWORD_0&lt;br /&gt;
 ############################################################&lt;br /&gt;
 #     Upload Tanzu Standard Packages for TMC into Reop     #&lt;br /&gt;
 ############################################################&lt;br /&gt;
 imgpkg copy --registry-ca-cert-path $PRIVATE_IMAGE_REGISTRY_CA_PATH \&lt;br /&gt;
 -b $TKG_IMAGE_REGISTRY/packages/standard/repo:$TKG_REPO_VERSION \&lt;br /&gt;
 --to-repo $PRIVATE_IMAGE_REGISTRY/$TMC_HARBOR_PROJECT/498533941640.dkr.ecr.us-west-2.amazonaws.com/packages/standard/repo&lt;br /&gt;
&lt;br /&gt;
== Setup EKS Cluster ==&lt;br /&gt;
 #########################&lt;br /&gt;
 #     AWS AUTH INFO     #&lt;br /&gt;
 #########################&lt;br /&gt;
 export AWS_ACCESS_KEY_ID=&amp;lt;AWS_ACCESS_KEY_ID&amp;gt;&lt;br /&gt;
 export AWS_SECRET_ACCESS_KEY=&amp;lt;AWS_SECRET_ACCESS_KEY&amp;gt;&lt;br /&gt;
 export AWS_SESSION_TOKEN=&amp;lt;AWS_SESSION_TOKEN&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 ##########################&lt;br /&gt;
 #     INSTALL AWSCLI     #&lt;br /&gt;
 ##########################&lt;br /&gt;
 curl &amp;quot;https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip&amp;quot; -o &amp;quot;awscliv2.zip&amp;quot;&lt;br /&gt;
 unzip awscliv2.zip&lt;br /&gt;
 sudo ./aws/install&lt;br /&gt;
 aws --version&lt;br /&gt;
 &lt;br /&gt;
 ##########################&lt;br /&gt;
 #     Install EKSCLI     #&lt;br /&gt;
 ##########################&lt;br /&gt;
 curl --silent --location &amp;quot;https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz&amp;quot; | tar xz -C /tmp&lt;br /&gt;
 sudo mv /tmp/eksctl /usr/local/bin&lt;br /&gt;
 &lt;br /&gt;
 export eks_region=us-east-2&lt;br /&gt;
 export eks_cluster_name=ders-tmc-sm&lt;br /&gt;
 export eks_nodegroup_size=m5.xlarge&lt;br /&gt;
 &lt;br /&gt;
 eksctl create cluster --name $eks_cluster_name -r $eks_region -t $eks_nodegroup_size --nodes 3 --nodes-min 3 --nodes-max 11&lt;br /&gt;
 #Wait for Status Complete....... &lt;br /&gt;
 &lt;br /&gt;
 #Get Kubeconfig for EKS if needed&lt;br /&gt;
 #aws eks update-kubeconfig --region $eks_region --name $eks_cluster_name&lt;br /&gt;
 &lt;br /&gt;
 #Add another Node group if needed&lt;br /&gt;
 #export eks_nodegroup_name=ders-tmc-nodes&lt;br /&gt;
 #eksctl create nodegroup -c $eks_cluster_name -r $eks_region -n $eks_nodegroup_name -t $eks_nodegroup_size --nodes 3 --nodes-min 3 --nodes-max 11&lt;br /&gt;
&lt;br /&gt;
== Prepare EKS for TMC Deploy ==&lt;br /&gt;
 # Prep the EBS CSI&lt;br /&gt;
 eksctl utils associate-iam-oidc-provider \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --cluster=$eks_cluster_name \&lt;br /&gt;
  --approve&lt;br /&gt;
 &lt;br /&gt;
 eksctl create iamserviceaccount \&lt;br /&gt;
  --name ebs-csi-controller-sa \&lt;br /&gt;
  --namespace kube-system \&lt;br /&gt;
  --cluster $eks_cluster_name \&lt;br /&gt;
  --attach-policy-arn arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy \&lt;br /&gt;
  --approve \&lt;br /&gt;
  --role-only \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --role-name AmazonEKS_EBS_CSI_DriverRole&lt;br /&gt;
 &lt;br /&gt;
 eksctl create addon --name aws-ebs-csi-driver \&lt;br /&gt;
  --cluster $eks_cluster_name \&lt;br /&gt;
  --service-account-role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/AmazonEKS_EBS_CSI_DriverRole \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --force&lt;br /&gt;
&lt;br /&gt;
== Create CA Cert for Cert-Manager ==&lt;br /&gt;
 ################################################&lt;br /&gt;
 #     Create Config for CA SSL Certificate     #&lt;br /&gt;
 ################################################&lt;br /&gt;
 mkdir -p /tmp/ssl&lt;br /&gt;
 cd /tmp/ssl&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; ca.cnf&lt;br /&gt;
 [ req ]&lt;br /&gt;
 default_bits = 2048&lt;br /&gt;
 default_md = sha256&lt;br /&gt;
 prompt = no&lt;br /&gt;
 encrypt_key = no&lt;br /&gt;
 distinguished_name = dn&lt;br /&gt;
 [ dn ]&lt;br /&gt;
 countryName = US&lt;br /&gt;
 stateOrProvinceName = Ohio&lt;br /&gt;
 localityName = Beavercreek&lt;br /&gt;
 organizationName = DER&#039;s LLC&lt;br /&gt;
 organizationalUnitName = IT&lt;br /&gt;
 commonName = ca.dersllc.com&lt;br /&gt;
 [ext]&lt;br /&gt;
 keyUsage=critical,keyCertSign,cRLSign&lt;br /&gt;
 basicConstraints=critical,CA:true,pathlen:1&lt;br /&gt;
 subjectAltName=DNS:ca.dersllc.com &lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 ###############################################################&lt;br /&gt;
 #     Create a Self-Signed CA Cert Using the Config Above     #&lt;br /&gt;
 ###############################################################&lt;br /&gt;
 openssl req -x509 -nodes -newkey rsa:4096 -sha256 -days 3650 -nodes -keyout ders-ca.key -out ders-ca.cer -extensions ext -config ca.cnf&lt;br /&gt;
 &lt;br /&gt;
 ########################################################################################&lt;br /&gt;
 #     Get Base64 encoded PEM and KEY for the K8S Issuer YAML Used in the Next Step     #&lt;br /&gt;
 ########################################################################################&lt;br /&gt;
 cat ders-ca.cer | base64 -w0&lt;br /&gt;
 cat ders-ca.key | base64 -w0&lt;br /&gt;
&lt;br /&gt;
== Install TMC ==&lt;br /&gt;
 ################################################&lt;br /&gt;
 #     Setup TMC Namespace and Cert-Manager     #&lt;br /&gt;
 ################################################&lt;br /&gt;
 kubectl create ns tmc-local&lt;br /&gt;
 # Deploy Cert-Manager into EKS Cluster&lt;br /&gt;
 kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.12.0/cert-manager.yaml&lt;br /&gt;
 sleep 60&lt;br /&gt;
 # Add ders-ca issuer (this is referenced in the tmc-eks-values.yaml)&lt;br /&gt;
 kubectl apply -f https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/TMC%20on%20TKGm/tmc-issuer.yaml &lt;br /&gt;
 &lt;br /&gt;
 ################################################################&lt;br /&gt;
 #     Setup Harbor Credentials For The tmc-local Namespace     #&lt;br /&gt;
 ################################################################&lt;br /&gt;
 kubectl create secret generic regcred --from-file=.dockerconfigjson=/root/.docker/config.json --type=kubernetes.io/dockerconfigjson -n tmc-local&lt;br /&gt;
 kubectl patch serviceaccount default -p &amp;quot;{\&amp;quot;imagePullSecrets\&amp;quot;: [{\&amp;quot;name\&amp;quot;: \&amp;quot;regcred\&amp;quot;}]}&amp;quot; -n tmc-local&lt;br /&gt;
 &lt;br /&gt;
 ##################################&lt;br /&gt;
 #     Create TMC Values File     #&lt;br /&gt;
 ##################################&lt;br /&gt;
 #tmc/tmc-sm generate-values-schema --output-file tmc-eks-values.yaml  #(Depending on the version or TMC you will use this or the next command.)&lt;br /&gt;
 #tmc/tmc-sm show-values-schema --output-filet tmc-eks-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 #############################################&lt;br /&gt;
 #     Pull TMC Values File and Validate     #&lt;br /&gt;
 #############################################&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/TMC/tmc-eks-values.yaml &amp;gt; tmc-eks-values.yaml&lt;br /&gt;
 tmc/tmc-sm validate-values tmc-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 ############################################&lt;br /&gt;
 #     Finally Install TMC Self-Managed     #&lt;br /&gt;
 ############################################&lt;br /&gt;
 tmc/tmc-sm deploy --image-prefix $PRIVATE_IMAGE_REGISTRY/$TMC_HARBOR_PROJECT --kubeconfig ~/.kube/config --values=tmc-eks-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 ###############################################################&lt;br /&gt;
 #     During Install get the LB IP/Name and add it to DNS     #&lt;br /&gt;
 ###############################################################&lt;br /&gt;
 kubectl get service -n tmc-local contour-envoy -o jsonpath=&#039;{.status.loadBalancer.ingress[0].hostname}&#039;&lt;br /&gt;
&lt;br /&gt;
== Uninstall TMC ==&lt;br /&gt;
 tmc/tmc-local uninstall --kubeconfig ~/.kube/config&lt;br /&gt;
&lt;br /&gt;
== Setup Inspection Images ==&lt;br /&gt;
Run the below command to create the download script.&lt;br /&gt;
 cat &amp;gt; ./inspection-images.sh &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
    #!/bin/bash&lt;br /&gt;
    &lt;br /&gt;
    # https://github.com/vmware-tanzu/sonobuoy/releases&lt;br /&gt;
    VERSION=${1:-&amp;quot;v0.56.16&amp;quot;}&lt;br /&gt;
    LATEST_RELEASE=${2:-&amp;quot;sonobuoy_0.56.16_linux_amd64.tar.gz&amp;quot;}&lt;br /&gt;
    CUSTOM_REGISTRY=${3:-&amp;quot;harbor-aws.dersllc.com/tmc-1.0.0-beta.2-rc.3&amp;quot;}&lt;br /&gt;
    DOCKER_PROXY=${4:-&amp;quot;harbor.tanzu.io:8443/dockerhub-proxy-cache&amp;quot;} # optional argument&lt;br /&gt;
    CUSTOM_TMC_REPO=&amp;quot;${CUSTOM_REGISTRY}/498533941640.dkr.ecr.us-west-2.amazonaws.com&amp;quot;&lt;br /&gt;
    &lt;br /&gt;
    # https://kubernetes.io/releases/patch-releases/&lt;br /&gt;
    k8s_versions=(v1.23.8 v1.24.10)&lt;br /&gt;
    &lt;br /&gt;
    wget &amp;quot;https://github.com/vmware-tanzu/sonobuoy/releases/download/${VERSION}/${LATEST_RELEASE}&amp;quot;&lt;br /&gt;
    tar -xvf ${LATEST_RELEASE}&lt;br /&gt;
    &lt;br /&gt;
    for i in &amp;quot;${k8s_versions[@]}&amp;quot;&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;================CHECKING K8S: $i=======================&amp;quot;&lt;br /&gt;
    ./sonobuoy images list --kubernetes-version $i &amp;gt; images_$i.txt&lt;br /&gt;
    &lt;br /&gt;
    while read image&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;================CHECKING IMAGE: $image==================&amp;quot;&lt;br /&gt;
    base=$(basename &amp;quot;$image&amp;quot;)&lt;br /&gt;
    output=${image#*/*}&lt;br /&gt;
    &lt;br /&gt;
    if [[ $image == *&amp;quot;docker&amp;quot;* &amp;amp;&amp;amp; -n $DOCKER_PROXY ]];&lt;br /&gt;
    then&lt;br /&gt;
        docker pull $DOCKER_PROXY/$output&lt;br /&gt;
        docker tag $DOCKER_PROXY/$output ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    else&lt;br /&gt;
        docker pull $image&lt;br /&gt;
        docker tag $image ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    fi&lt;br /&gt;
    &lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    echo &amp;quot;===================PUSHING: ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base ===========&amp;quot;&lt;br /&gt;
    done &amp;lt; images_$i.txt&lt;br /&gt;
    done&lt;br /&gt;
    &lt;br /&gt;
    # not part of sonobuoy image list, install manually, update these as images are found&lt;br /&gt;
    docker pull k8s.gcr.io/e2e-test-images/agnhost:2.31&lt;br /&gt;
    docker pull k8s.gcr.io/pause:3.9&lt;br /&gt;
    docker tag k8s.gcr.io/e2e-test-images/agnhost:2.31 ${CUSTOM_TMC_REPO}/extensions/inspection-images/agnhost:2.31&lt;br /&gt;
    docker tag k8s.gcr.io/pause:3.9 ${CUSTOM_TMC_REPO}/extensions/inspection-images/pause:3.9&lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/agnhost:2.31&lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/pause:3.9&lt;br /&gt;
    &lt;br /&gt;
    # clean up text files and sonobuoy tar&lt;br /&gt;
    rm images_*&lt;br /&gt;
    rm sonobuoy_*&lt;br /&gt;
 EOF&lt;br /&gt;
Edit the file and set the Variables at the top. (VERSION, LATEST_RELEASE, CUSTOM_REGISTRY, and k8s_versions)&lt;br /&gt;
 vi inspection-images.sh&lt;br /&gt;
Save the file and change the permissions&lt;br /&gt;
 chmod +x inspection-images.sh&lt;br /&gt;
Run the Script&lt;br /&gt;
 ./inspection-images.sh&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/TMConEKS&amp;diff=66</id>
		<title>VMware/TMConEKS</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/TMConEKS&amp;diff=66"/>
		<updated>2023-07-21T18:47:25Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Setup EKS Cluster */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= TMC on EKS Setup =&lt;br /&gt;
&lt;br /&gt;
== Create Harbor on AWS==&lt;br /&gt;
=== SSH to Harbor-AWS EC2 Instance ===&lt;br /&gt;
 #On Plex&lt;br /&gt;
 ssh -i ~/.ssh/aws-keypair.pem ec2-user@ec2-54-91-52-46.compute-1.amazonaws.com&lt;br /&gt;
&lt;br /&gt;
=== Install Harbor-AWS ===&lt;br /&gt;
 #THIS IS JUST PULLING IN MY STAR CERT and KEY FOR DERSLLC&lt;br /&gt;
 mkdir /data&lt;br /&gt;
 cd /data&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt;&amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 cp /data/ders-star-chain.crt /data/ders-star-chain.pem&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /data/ders-ca.crt&lt;br /&gt;
 cat /data/ders-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /data/ders-star.key&lt;br /&gt;
 &lt;br /&gt;
 yum -y install docker&lt;br /&gt;
 service docker start&lt;br /&gt;
 systemctl enable docker&lt;br /&gt;
 &lt;br /&gt;
 wget https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-linux-x86_64 -O /usr/local/bin/docker-compose&lt;br /&gt;
 chmod +x /usr/local/bin/docker-compose&lt;br /&gt;
 wget https://github.com/goharbor/harbor/releases/download/v2.8.1/harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 tar -zxvf harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 cd harbor&lt;br /&gt;
 cp harbor.yml.tmpl harbor.yml&lt;br /&gt;
 vi harbor.yml&lt;br /&gt;
 # add Hostname and certs and location&lt;br /&gt;
 #### harbor-aws.dersllc.com&lt;br /&gt;
 #### /data/ders-star-chain.crt&lt;br /&gt;
 #### /data/ders-star.key&lt;br /&gt;
 #### /data/harbor-data&lt;br /&gt;
 &lt;br /&gt;
 ./install.sh --with-trivy --with-notary&lt;br /&gt;
&lt;br /&gt;
== Load Harbor with Images ==&lt;br /&gt;
 # On a Jumpbox...&lt;br /&gt;
 docker login harbor-aws.dersllc.com&lt;br /&gt;
 #################################&lt;br /&gt;
 #     Set Install Variables     #&lt;br /&gt;
 #################################&lt;br /&gt;
 export IMGPKG_REGISTRY_HOSTNAME_0=&amp;quot;harbor-aws.dersllc.com&amp;quot;&lt;br /&gt;
 export IMGPKG_REGISTRY_USERNAME_0=&amp;quot;admin&amp;quot;&lt;br /&gt;
 export IMGPKG_REGISTRY_PASSWORD_0=&amp;lt;PASSWORD&amp;gt;&lt;br /&gt;
 export PRIVATE_IMAGE_REGISTRY_CA_PATH=&amp;quot;/data/ders-ca.crt&amp;quot;&lt;br /&gt;
 export PRIVATE_IMAGE_REGISTRY=&amp;quot;harbor-aws.dersllc.com&amp;quot;&lt;br /&gt;
 export TKG_IMAGE_REGISTRY=&amp;quot;projects.registry.vmware.com/tkg&amp;quot;&lt;br /&gt;
 export TKG_REPO_VERSION=&amp;quot;v2.2.0_update.1&amp;quot;&lt;br /&gt;
 export TMC_HARBOR_PROJECT=&amp;quot;tmc-sm-1.0.0&amp;quot;&lt;br /&gt;
 export TMC_BUNDLE=&amp;quot;tmc-self-managed-1.0.0&amp;quot;&lt;br /&gt;
 #########################&lt;br /&gt;
 #     Prep TMC Bits     #&lt;br /&gt;
 #########################&lt;br /&gt;
 mkdir tmc&lt;br /&gt;
 tar -xf $TMC_BUNDLE.tar -C tmc&lt;br /&gt;
 chmod +x /usr/local/bin/tmc&lt;br /&gt;
 tmc/tmc-sm push-images harbor --project $IMGPKG_REGISTRY_HOSTNAME_0/$TMC_HARBOR_PROJECT --username $IMGPKG_REGISTRY_USERNAME_0 --password $IMGPKG_REGISTRY_PASSWORD_0&lt;br /&gt;
 ############################################################&lt;br /&gt;
 #     Upload Tanzu Standard Packages for TMC into Reop     #&lt;br /&gt;
 ############################################################&lt;br /&gt;
 imgpkg copy --registry-ca-cert-path $PRIVATE_IMAGE_REGISTRY_CA_PATH \&lt;br /&gt;
 -b $TKG_IMAGE_REGISTRY/packages/standard/repo:$TKG_REPO_VERSION \&lt;br /&gt;
 --to-repo $PRIVATE_IMAGE_REGISTRY/$TMC_HARBOR_PROJECT/498533941640.dkr.ecr.us-west-2.amazonaws.com/packages/standard/repo&lt;br /&gt;
&lt;br /&gt;
== Setup EKS Cluster ==&lt;br /&gt;
 #########################&lt;br /&gt;
 #     AWS AUTH INFO     #&lt;br /&gt;
 #########################&lt;br /&gt;
 export AWS_ACCESS_KEY_ID=&amp;lt;AWS_ACCESS_KEY_ID&amp;gt;&lt;br /&gt;
 export AWS_SECRET_ACCESS_KEY=&amp;lt;AWS_SECRET_ACCESS_KEY&amp;gt;&lt;br /&gt;
 export AWS_SESSION_TOKEN=&amp;lt;AWS_SESSION_TOKEN&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 ##########################&lt;br /&gt;
 #     INSTALL AWSCLI     #&lt;br /&gt;
 ##########################&lt;br /&gt;
 curl &amp;quot;https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip&amp;quot; -o &amp;quot;awscliv2.zip&amp;quot;&lt;br /&gt;
 unzip awscliv2.zip&lt;br /&gt;
 sudo ./aws/install&lt;br /&gt;
 aws --version&lt;br /&gt;
 &lt;br /&gt;
 ##########################&lt;br /&gt;
 #     Install EKSCLI     #&lt;br /&gt;
 ##########################&lt;br /&gt;
 curl --silent --location &amp;quot;https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz&amp;quot; | tar xz -C /tmp&lt;br /&gt;
 sudo mv /tmp/eksctl /usr/local/bin&lt;br /&gt;
 &lt;br /&gt;
 export eks_region=us-east-2&lt;br /&gt;
 export eks_cluster_name=ders-tmc-sm&lt;br /&gt;
 export eks_nodegroup_size=m5.xlarge&lt;br /&gt;
 &lt;br /&gt;
 eksctl create cluster --name $eks_cluster_name -r $eks_region -t $eks_nodegroup_size --nodes 3 --nodes-min 3 --nodes-max 11&lt;br /&gt;
 #Wait for Status Complete....... &lt;br /&gt;
 &lt;br /&gt;
 #Get Kubeconfig for EKS if needed&lt;br /&gt;
 #aws eks update-kubeconfig --region $eks_region --name $eks_cluster_name&lt;br /&gt;
 &lt;br /&gt;
 #Add another Node group if needed&lt;br /&gt;
 #export eks_nodegroup_name=ders-tmc-nodes&lt;br /&gt;
 #eksctl create nodegroup -c $eks_cluster_name -r $eks_region -n $eks_nodegroup_name -t $eks_nodegroup_size --nodes 3 --nodes-min 3 --nodes-max 11&lt;br /&gt;
&lt;br /&gt;
== Prepare EKS for TMC Deploy ==&lt;br /&gt;
 # Prep the EBS CSI&lt;br /&gt;
 eksctl utils associate-iam-oidc-provider \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --cluster=$eks_cluster_name \&lt;br /&gt;
  --approve&lt;br /&gt;
 &lt;br /&gt;
 eksctl create iamserviceaccount \&lt;br /&gt;
  --name ebs-csi-controller-sa \&lt;br /&gt;
  --namespace kube-system \&lt;br /&gt;
  --cluster $eks_cluster_name \&lt;br /&gt;
  --attach-policy-arn arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy \&lt;br /&gt;
  --approve \&lt;br /&gt;
  --role-only \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --role-name AmazonEKS_EBS_CSI_DriverRole&lt;br /&gt;
 &lt;br /&gt;
 eksctl create addon --name aws-ebs-csi-driver \&lt;br /&gt;
  --cluster $eks_cluster_name \&lt;br /&gt;
  --service-account-role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/AmazonEKS_EBS_CSI_DriverRole \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --force&lt;br /&gt;
&lt;br /&gt;
== Create CA Cert for Cert-Manager ==&lt;br /&gt;
 ################################################&lt;br /&gt;
 #     Create Config for CA SSL Certificate     #&lt;br /&gt;
 ################################################&lt;br /&gt;
 mkdir -p /tmp/ssl&lt;br /&gt;
 cd /tmp/ssl&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; ca.cnf&lt;br /&gt;
 [ req ]&lt;br /&gt;
 default_bits = 2048&lt;br /&gt;
 default_md = sha256&lt;br /&gt;
 prompt = no&lt;br /&gt;
 encrypt_key = no&lt;br /&gt;
 distinguished_name = dn&lt;br /&gt;
 [ dn ]&lt;br /&gt;
 countryName = US&lt;br /&gt;
 stateOrProvinceName = Ohio&lt;br /&gt;
 localityName = Beavercreek&lt;br /&gt;
 organizationName = DER&#039;s LLC&lt;br /&gt;
 organizationalUnitName = IT&lt;br /&gt;
 commonName = ca.dersllc.com&lt;br /&gt;
 [ext]&lt;br /&gt;
 keyUsage=critical,keyCertSign,cRLSign&lt;br /&gt;
 basicConstraints=critical,CA:true,pathlen:1&lt;br /&gt;
 subjectAltName=DNS:ca.dersllc.com &lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 ###############################################################&lt;br /&gt;
 #     Create a Self-Signed CA Cert Using the Config Above     #&lt;br /&gt;
 ###############################################################&lt;br /&gt;
 openssl req -x509 -nodes -newkey rsa:4096 -sha256 -days 3650 -nodes -keyout ders-ca.key -out ders-ca.cer -extensions ext -config ca.cnf&lt;br /&gt;
 &lt;br /&gt;
 ########################################################################################&lt;br /&gt;
 #     Get Base64 encoded PEM and KEY for the K8S Issuer YAML Used in the Next Step     #&lt;br /&gt;
 ########################################################################################&lt;br /&gt;
 cat ders-ca.cer | base64 -w0&lt;br /&gt;
 cat ders-ca.key | base64 -w0&lt;br /&gt;
&lt;br /&gt;
== Install TMC ==&lt;br /&gt;
 ################################################&lt;br /&gt;
 #     Setup TMC Namespace and Cert-Manager     #&lt;br /&gt;
 ################################################&lt;br /&gt;
 kubectl create ns tmc-local&lt;br /&gt;
 # Deploy Cert-Manager into EKS Cluster&lt;br /&gt;
 kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.12.0/cert-manager.yaml&lt;br /&gt;
 sleep 60&lt;br /&gt;
 # Add ders-ca issuer (this is referenced in the tmc-eks-values.yaml)&lt;br /&gt;
 kubectl apply -f https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/TMC%20on%20TKGm/tmc-issuer.yaml &lt;br /&gt;
 &lt;br /&gt;
 ################################################################&lt;br /&gt;
 #     Setup Harbor Credentials For The tmc-local Namespace     #&lt;br /&gt;
 ################################################################&lt;br /&gt;
 kubectl create secret generic regcred --from-file=.dockerconfigjson=/root/.docker/config.json --type=kubernetes.io/dockerconfigjson -n tmc-local&lt;br /&gt;
 kubectl patch serviceaccount default -p &amp;quot;{\&amp;quot;imagePullSecrets\&amp;quot;: [{\&amp;quot;name\&amp;quot;: \&amp;quot;regcred\&amp;quot;}]}&amp;quot; -n tmc-local&lt;br /&gt;
 &lt;br /&gt;
 ##################################&lt;br /&gt;
 #     Create TMC Values File     #&lt;br /&gt;
 ##################################&lt;br /&gt;
 #tmc/tmc-local generate-values-schema --output-file tmc-eks-values.yaml  #(Depending on the version or TMC you will use this or the next command.)&lt;br /&gt;
 #tmc/tmc-local show-values-schema --output-filet tmc-eks-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 #############################################&lt;br /&gt;
 #     Pull TMC Values File and Validate     #&lt;br /&gt;
 #############################################&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/TMC/tmc-eks-values.yaml &amp;gt; tmc-eks-values.yaml&lt;br /&gt;
 tmc/tmc-local validate-values tmc-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 ############################################&lt;br /&gt;
 #     Finally Install TMC Self-Managed     #&lt;br /&gt;
 ############################################&lt;br /&gt;
 tmc/tmc-local deploy --image-prefix $PRIVATE_IMAGE_REGISTRY/$TMC_HARBOR_PROJECT --kubeconfig ~/.kube/config --values=tmc-eks-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 ###############################################################&lt;br /&gt;
 #     During Install get the LB IP/Name and add it to DNS     #&lt;br /&gt;
 ###############################################################&lt;br /&gt;
 kubectl get service -n tmc-local contour-envoy -o jsonpath=&#039;{.status.loadBalancer.ingress[0].hostname}&#039;&lt;br /&gt;
&lt;br /&gt;
== Uninstall TMC ==&lt;br /&gt;
 tmc/tmc-local uninstall --kubeconfig ~/.kube/config&lt;br /&gt;
&lt;br /&gt;
== Setup Inspection Images ==&lt;br /&gt;
Run the below command to create the download script.&lt;br /&gt;
 cat &amp;gt; ./inspection-images.sh &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
    #!/bin/bash&lt;br /&gt;
    &lt;br /&gt;
    # https://github.com/vmware-tanzu/sonobuoy/releases&lt;br /&gt;
    VERSION=${1:-&amp;quot;v0.56.16&amp;quot;}&lt;br /&gt;
    LATEST_RELEASE=${2:-&amp;quot;sonobuoy_0.56.16_linux_amd64.tar.gz&amp;quot;}&lt;br /&gt;
    CUSTOM_REGISTRY=${3:-&amp;quot;harbor-aws.dersllc.com/tmc-1.0.0-beta.2-rc.3&amp;quot;}&lt;br /&gt;
    DOCKER_PROXY=${4:-&amp;quot;harbor.tanzu.io:8443/dockerhub-proxy-cache&amp;quot;} # optional argument&lt;br /&gt;
    CUSTOM_TMC_REPO=&amp;quot;${CUSTOM_REGISTRY}/498533941640.dkr.ecr.us-west-2.amazonaws.com&amp;quot;&lt;br /&gt;
    &lt;br /&gt;
    # https://kubernetes.io/releases/patch-releases/&lt;br /&gt;
    k8s_versions=(v1.23.8 v1.24.10)&lt;br /&gt;
    &lt;br /&gt;
    wget &amp;quot;https://github.com/vmware-tanzu/sonobuoy/releases/download/${VERSION}/${LATEST_RELEASE}&amp;quot;&lt;br /&gt;
    tar -xvf ${LATEST_RELEASE}&lt;br /&gt;
    &lt;br /&gt;
    for i in &amp;quot;${k8s_versions[@]}&amp;quot;&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;================CHECKING K8S: $i=======================&amp;quot;&lt;br /&gt;
    ./sonobuoy images list --kubernetes-version $i &amp;gt; images_$i.txt&lt;br /&gt;
    &lt;br /&gt;
    while read image&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;================CHECKING IMAGE: $image==================&amp;quot;&lt;br /&gt;
    base=$(basename &amp;quot;$image&amp;quot;)&lt;br /&gt;
    output=${image#*/*}&lt;br /&gt;
    &lt;br /&gt;
    if [[ $image == *&amp;quot;docker&amp;quot;* &amp;amp;&amp;amp; -n $DOCKER_PROXY ]];&lt;br /&gt;
    then&lt;br /&gt;
        docker pull $DOCKER_PROXY/$output&lt;br /&gt;
        docker tag $DOCKER_PROXY/$output ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    else&lt;br /&gt;
        docker pull $image&lt;br /&gt;
        docker tag $image ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    fi&lt;br /&gt;
    &lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    echo &amp;quot;===================PUSHING: ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base ===========&amp;quot;&lt;br /&gt;
    done &amp;lt; images_$i.txt&lt;br /&gt;
    done&lt;br /&gt;
    &lt;br /&gt;
    # not part of sonobuoy image list, install manually, update these as images are found&lt;br /&gt;
    docker pull k8s.gcr.io/e2e-test-images/agnhost:2.31&lt;br /&gt;
    docker pull k8s.gcr.io/pause:3.9&lt;br /&gt;
    docker tag k8s.gcr.io/e2e-test-images/agnhost:2.31 ${CUSTOM_TMC_REPO}/extensions/inspection-images/agnhost:2.31&lt;br /&gt;
    docker tag k8s.gcr.io/pause:3.9 ${CUSTOM_TMC_REPO}/extensions/inspection-images/pause:3.9&lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/agnhost:2.31&lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/pause:3.9&lt;br /&gt;
    &lt;br /&gt;
    # clean up text files and sonobuoy tar&lt;br /&gt;
    rm images_*&lt;br /&gt;
    rm sonobuoy_*&lt;br /&gt;
 EOF&lt;br /&gt;
Edit the file and set the Variables at the top. (VERSION, LATEST_RELEASE, CUSTOM_REGISTRY, and k8s_versions)&lt;br /&gt;
 vi inspection-images.sh&lt;br /&gt;
Save the file and change the permissions&lt;br /&gt;
 chmod +x inspection-images.sh&lt;br /&gt;
Run the Script&lt;br /&gt;
 ./inspection-images.sh&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/TMConEKS&amp;diff=65</id>
		<title>VMware/TMConEKS</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/TMConEKS&amp;diff=65"/>
		<updated>2023-07-21T18:14:04Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Load Harbor with Images */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= TMC on EKS Setup =&lt;br /&gt;
&lt;br /&gt;
== Create Harbor on AWS==&lt;br /&gt;
=== SSH to Harbor-AWS EC2 Instance ===&lt;br /&gt;
 #On Plex&lt;br /&gt;
 ssh -i ~/.ssh/aws-keypair.pem ec2-user@ec2-54-91-52-46.compute-1.amazonaws.com&lt;br /&gt;
&lt;br /&gt;
=== Install Harbor-AWS ===&lt;br /&gt;
 #THIS IS JUST PULLING IN MY STAR CERT and KEY FOR DERSLLC&lt;br /&gt;
 mkdir /data&lt;br /&gt;
 cd /data&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt;&amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 cp /data/ders-star-chain.crt /data/ders-star-chain.pem&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /data/ders-ca.crt&lt;br /&gt;
 cat /data/ders-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /data/ders-star.key&lt;br /&gt;
 &lt;br /&gt;
 yum -y install docker&lt;br /&gt;
 service docker start&lt;br /&gt;
 systemctl enable docker&lt;br /&gt;
 &lt;br /&gt;
 wget https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-linux-x86_64 -O /usr/local/bin/docker-compose&lt;br /&gt;
 chmod +x /usr/local/bin/docker-compose&lt;br /&gt;
 wget https://github.com/goharbor/harbor/releases/download/v2.8.1/harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 tar -zxvf harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 cd harbor&lt;br /&gt;
 cp harbor.yml.tmpl harbor.yml&lt;br /&gt;
 vi harbor.yml&lt;br /&gt;
 # add Hostname and certs and location&lt;br /&gt;
 #### harbor-aws.dersllc.com&lt;br /&gt;
 #### /data/ders-star-chain.crt&lt;br /&gt;
 #### /data/ders-star.key&lt;br /&gt;
 #### /data/harbor-data&lt;br /&gt;
 &lt;br /&gt;
 ./install.sh --with-trivy --with-notary&lt;br /&gt;
&lt;br /&gt;
== Load Harbor with Images ==&lt;br /&gt;
 # On a Jumpbox...&lt;br /&gt;
 docker login harbor-aws.dersllc.com&lt;br /&gt;
 #################################&lt;br /&gt;
 #     Set Install Variables     #&lt;br /&gt;
 #################################&lt;br /&gt;
 export IMGPKG_REGISTRY_HOSTNAME_0=&amp;quot;harbor-aws.dersllc.com&amp;quot;&lt;br /&gt;
 export IMGPKG_REGISTRY_USERNAME_0=&amp;quot;admin&amp;quot;&lt;br /&gt;
 export IMGPKG_REGISTRY_PASSWORD_0=&amp;lt;PASSWORD&amp;gt;&lt;br /&gt;
 export PRIVATE_IMAGE_REGISTRY_CA_PATH=&amp;quot;/data/ders-ca.crt&amp;quot;&lt;br /&gt;
 export PRIVATE_IMAGE_REGISTRY=&amp;quot;harbor-aws.dersllc.com&amp;quot;&lt;br /&gt;
 export TKG_IMAGE_REGISTRY=&amp;quot;projects.registry.vmware.com/tkg&amp;quot;&lt;br /&gt;
 export TKG_REPO_VERSION=&amp;quot;v2.2.0_update.1&amp;quot;&lt;br /&gt;
 export TMC_HARBOR_PROJECT=&amp;quot;tmc-sm-1.0.0&amp;quot;&lt;br /&gt;
 export TMC_BUNDLE=&amp;quot;tmc-self-managed-1.0.0&amp;quot;&lt;br /&gt;
 #########################&lt;br /&gt;
 #     Prep TMC Bits     #&lt;br /&gt;
 #########################&lt;br /&gt;
 mkdir tmc&lt;br /&gt;
 tar -xf $TMC_BUNDLE.tar -C tmc&lt;br /&gt;
 chmod +x /usr/local/bin/tmc&lt;br /&gt;
 tmc/tmc-sm push-images harbor --project $IMGPKG_REGISTRY_HOSTNAME_0/$TMC_HARBOR_PROJECT --username $IMGPKG_REGISTRY_USERNAME_0 --password $IMGPKG_REGISTRY_PASSWORD_0&lt;br /&gt;
 ############################################################&lt;br /&gt;
 #     Upload Tanzu Standard Packages for TMC into Reop     #&lt;br /&gt;
 ############################################################&lt;br /&gt;
 imgpkg copy --registry-ca-cert-path $PRIVATE_IMAGE_REGISTRY_CA_PATH \&lt;br /&gt;
 -b $TKG_IMAGE_REGISTRY/packages/standard/repo:$TKG_REPO_VERSION \&lt;br /&gt;
 --to-repo $PRIVATE_IMAGE_REGISTRY/$TMC_HARBOR_PROJECT/498533941640.dkr.ecr.us-west-2.amazonaws.com/packages/standard/repo&lt;br /&gt;
&lt;br /&gt;
== Setup EKS Cluster ==&lt;br /&gt;
 #########################&lt;br /&gt;
 #     AWS AUTH INFO     #&lt;br /&gt;
 #########################&lt;br /&gt;
 export AWS_ACCESS_KEY_ID=&amp;lt;AWS_ACCESS_KEY_ID&amp;gt;&lt;br /&gt;
 export AWS_SECRET_ACCESS_KEY=&amp;lt;AWS_SECRET_ACCESS_KEY&amp;gt;&lt;br /&gt;
 export AWS_SESSION_TOKEN=&amp;lt;AWS_SESSION_TOKEN&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 ##########################&lt;br /&gt;
 #     INSTALL AWSCLI     #&lt;br /&gt;
 ##########################&lt;br /&gt;
 curl &amp;quot;https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip&amp;quot; -o &amp;quot;awscliv2.zip&amp;quot;&lt;br /&gt;
 unzip awscliv2.zip&lt;br /&gt;
 sudo ./aws/install&lt;br /&gt;
 aws --version&lt;br /&gt;
 &lt;br /&gt;
 ##########################&lt;br /&gt;
 #     Install EKSCLI     #&lt;br /&gt;
 ##########################&lt;br /&gt;
 curl --silent --location &amp;quot;https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz&amp;quot; | tar xz -C /tmp&lt;br /&gt;
 sudo mv /tmp/eksctl /usr/local/bin&lt;br /&gt;
 &lt;br /&gt;
 export eks_region=us-east-2&lt;br /&gt;
 export eks_cluster_name=ders-tmc&lt;br /&gt;
 export eks_nodegroup_size=m5.xlarge&lt;br /&gt;
 &lt;br /&gt;
 eksctl create cluster --name $eks_cluster_name -r $eks_region -t $eks_nodegroup_size --nodes 3 --nodes-min 3 --nodes-max 11&lt;br /&gt;
 #Wait for Status Complete....... &lt;br /&gt;
 &lt;br /&gt;
 #Get Kubeconfig for EKS if needed&lt;br /&gt;
 #aws eks update-kubeconfig --region $eks_region --name $eks_cluster_name&lt;br /&gt;
 &lt;br /&gt;
 #Add another Node group if needed&lt;br /&gt;
 #export eks_nodegroup_name=ders-tmc-nodes&lt;br /&gt;
 #eksctl create nodegroup -c $eks_cluster_name -r $eks_region -n $eks_nodegroup_name -t $eks_nodegroup_size --nodes 3 --nodes-min 3 --nodes-max 11&lt;br /&gt;
&lt;br /&gt;
== Prepare EKS for TMC Deploy ==&lt;br /&gt;
 # Prep the EBS CSI&lt;br /&gt;
 eksctl utils associate-iam-oidc-provider \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --cluster=$eks_cluster_name \&lt;br /&gt;
  --approve&lt;br /&gt;
 &lt;br /&gt;
 eksctl create iamserviceaccount \&lt;br /&gt;
  --name ebs-csi-controller-sa \&lt;br /&gt;
  --namespace kube-system \&lt;br /&gt;
  --cluster $eks_cluster_name \&lt;br /&gt;
  --attach-policy-arn arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy \&lt;br /&gt;
  --approve \&lt;br /&gt;
  --role-only \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --role-name AmazonEKS_EBS_CSI_DriverRole&lt;br /&gt;
 &lt;br /&gt;
 eksctl create addon --name aws-ebs-csi-driver \&lt;br /&gt;
  --cluster $eks_cluster_name \&lt;br /&gt;
  --service-account-role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/AmazonEKS_EBS_CSI_DriverRole \&lt;br /&gt;
  --region=$eks_region \&lt;br /&gt;
  --force&lt;br /&gt;
&lt;br /&gt;
== Create CA Cert for Cert-Manager ==&lt;br /&gt;
 ################################################&lt;br /&gt;
 #     Create Config for CA SSL Certificate     #&lt;br /&gt;
 ################################################&lt;br /&gt;
 mkdir -p /tmp/ssl&lt;br /&gt;
 cd /tmp/ssl&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; ca.cnf&lt;br /&gt;
 [ req ]&lt;br /&gt;
 default_bits = 2048&lt;br /&gt;
 default_md = sha256&lt;br /&gt;
 prompt = no&lt;br /&gt;
 encrypt_key = no&lt;br /&gt;
 distinguished_name = dn&lt;br /&gt;
 [ dn ]&lt;br /&gt;
 countryName = US&lt;br /&gt;
 stateOrProvinceName = Ohio&lt;br /&gt;
 localityName = Beavercreek&lt;br /&gt;
 organizationName = DER&#039;s LLC&lt;br /&gt;
 organizationalUnitName = IT&lt;br /&gt;
 commonName = ca.dersllc.com&lt;br /&gt;
 [ext]&lt;br /&gt;
 keyUsage=critical,keyCertSign,cRLSign&lt;br /&gt;
 basicConstraints=critical,CA:true,pathlen:1&lt;br /&gt;
 subjectAltName=DNS:ca.dersllc.com &lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 ###############################################################&lt;br /&gt;
 #     Create a Self-Signed CA Cert Using the Config Above     #&lt;br /&gt;
 ###############################################################&lt;br /&gt;
 openssl req -x509 -nodes -newkey rsa:4096 -sha256 -days 3650 -nodes -keyout ders-ca.key -out ders-ca.cer -extensions ext -config ca.cnf&lt;br /&gt;
 &lt;br /&gt;
 ########################################################################################&lt;br /&gt;
 #     Get Base64 encoded PEM and KEY for the K8S Issuer YAML Used in the Next Step     #&lt;br /&gt;
 ########################################################################################&lt;br /&gt;
 cat ders-ca.cer | base64 -w0&lt;br /&gt;
 cat ders-ca.key | base64 -w0&lt;br /&gt;
&lt;br /&gt;
== Install TMC ==&lt;br /&gt;
 ################################################&lt;br /&gt;
 #     Setup TMC Namespace and Cert-Manager     #&lt;br /&gt;
 ################################################&lt;br /&gt;
 kubectl create ns tmc-local&lt;br /&gt;
 # Deploy Cert-Manager into EKS Cluster&lt;br /&gt;
 kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.12.0/cert-manager.yaml&lt;br /&gt;
 sleep 60&lt;br /&gt;
 # Add ders-ca issuer (this is referenced in the tmc-eks-values.yaml)&lt;br /&gt;
 kubectl apply -f https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/TMC%20on%20TKGm/tmc-issuer.yaml &lt;br /&gt;
 &lt;br /&gt;
 ################################################################&lt;br /&gt;
 #     Setup Harbor Credentials For The tmc-local Namespace     #&lt;br /&gt;
 ################################################################&lt;br /&gt;
 kubectl create secret generic regcred --from-file=.dockerconfigjson=/root/.docker/config.json --type=kubernetes.io/dockerconfigjson -n tmc-local&lt;br /&gt;
 kubectl patch serviceaccount default -p &amp;quot;{\&amp;quot;imagePullSecrets\&amp;quot;: [{\&amp;quot;name\&amp;quot;: \&amp;quot;regcred\&amp;quot;}]}&amp;quot; -n tmc-local&lt;br /&gt;
 &lt;br /&gt;
 ##################################&lt;br /&gt;
 #     Create TMC Values File     #&lt;br /&gt;
 ##################################&lt;br /&gt;
 #tmc/tmc-local generate-values-schema --output-file tmc-eks-values.yaml  #(Depending on the version or TMC you will use this or the next command.)&lt;br /&gt;
 #tmc/tmc-local show-values-schema --output-filet tmc-eks-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 #############################################&lt;br /&gt;
 #     Pull TMC Values File and Validate     #&lt;br /&gt;
 #############################################&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/vmware-se/-/raw/main/HomeLab/TMC/tmc-eks-values.yaml &amp;gt; tmc-eks-values.yaml&lt;br /&gt;
 tmc/tmc-local validate-values tmc-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 ############################################&lt;br /&gt;
 #     Finally Install TMC Self-Managed     #&lt;br /&gt;
 ############################################&lt;br /&gt;
 tmc/tmc-local deploy --image-prefix $PRIVATE_IMAGE_REGISTRY/$TMC_HARBOR_PROJECT --kubeconfig ~/.kube/config --values=tmc-eks-values.yaml&lt;br /&gt;
 &lt;br /&gt;
 ###############################################################&lt;br /&gt;
 #     During Install get the LB IP/Name and add it to DNS     #&lt;br /&gt;
 ###############################################################&lt;br /&gt;
 kubectl get service -n tmc-local contour-envoy -o jsonpath=&#039;{.status.loadBalancer.ingress[0].hostname}&#039;&lt;br /&gt;
&lt;br /&gt;
== Uninstall TMC ==&lt;br /&gt;
 tmc/tmc-local uninstall --kubeconfig ~/.kube/config&lt;br /&gt;
&lt;br /&gt;
== Setup Inspection Images ==&lt;br /&gt;
Run the below command to create the download script.&lt;br /&gt;
 cat &amp;gt; ./inspection-images.sh &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
    #!/bin/bash&lt;br /&gt;
    &lt;br /&gt;
    # https://github.com/vmware-tanzu/sonobuoy/releases&lt;br /&gt;
    VERSION=${1:-&amp;quot;v0.56.16&amp;quot;}&lt;br /&gt;
    LATEST_RELEASE=${2:-&amp;quot;sonobuoy_0.56.16_linux_amd64.tar.gz&amp;quot;}&lt;br /&gt;
    CUSTOM_REGISTRY=${3:-&amp;quot;harbor-aws.dersllc.com/tmc-1.0.0-beta.2-rc.3&amp;quot;}&lt;br /&gt;
    DOCKER_PROXY=${4:-&amp;quot;harbor.tanzu.io:8443/dockerhub-proxy-cache&amp;quot;} # optional argument&lt;br /&gt;
    CUSTOM_TMC_REPO=&amp;quot;${CUSTOM_REGISTRY}/498533941640.dkr.ecr.us-west-2.amazonaws.com&amp;quot;&lt;br /&gt;
    &lt;br /&gt;
    # https://kubernetes.io/releases/patch-releases/&lt;br /&gt;
    k8s_versions=(v1.23.8 v1.24.10)&lt;br /&gt;
    &lt;br /&gt;
    wget &amp;quot;https://github.com/vmware-tanzu/sonobuoy/releases/download/${VERSION}/${LATEST_RELEASE}&amp;quot;&lt;br /&gt;
    tar -xvf ${LATEST_RELEASE}&lt;br /&gt;
    &lt;br /&gt;
    for i in &amp;quot;${k8s_versions[@]}&amp;quot;&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;================CHECKING K8S: $i=======================&amp;quot;&lt;br /&gt;
    ./sonobuoy images list --kubernetes-version $i &amp;gt; images_$i.txt&lt;br /&gt;
    &lt;br /&gt;
    while read image&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;================CHECKING IMAGE: $image==================&amp;quot;&lt;br /&gt;
    base=$(basename &amp;quot;$image&amp;quot;)&lt;br /&gt;
    output=${image#*/*}&lt;br /&gt;
    &lt;br /&gt;
    if [[ $image == *&amp;quot;docker&amp;quot;* &amp;amp;&amp;amp; -n $DOCKER_PROXY ]];&lt;br /&gt;
    then&lt;br /&gt;
        docker pull $DOCKER_PROXY/$output&lt;br /&gt;
        docker tag $DOCKER_PROXY/$output ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    else&lt;br /&gt;
        docker pull $image&lt;br /&gt;
        docker tag $image ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    fi&lt;br /&gt;
    &lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base&lt;br /&gt;
    echo &amp;quot;===================PUSHING: ${CUSTOM_TMC_REPO}/extensions/inspection-images/$base ===========&amp;quot;&lt;br /&gt;
    done &amp;lt; images_$i.txt&lt;br /&gt;
    done&lt;br /&gt;
    &lt;br /&gt;
    # not part of sonobuoy image list, install manually, update these as images are found&lt;br /&gt;
    docker pull k8s.gcr.io/e2e-test-images/agnhost:2.31&lt;br /&gt;
    docker pull k8s.gcr.io/pause:3.9&lt;br /&gt;
    docker tag k8s.gcr.io/e2e-test-images/agnhost:2.31 ${CUSTOM_TMC_REPO}/extensions/inspection-images/agnhost:2.31&lt;br /&gt;
    docker tag k8s.gcr.io/pause:3.9 ${CUSTOM_TMC_REPO}/extensions/inspection-images/pause:3.9&lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/agnhost:2.31&lt;br /&gt;
    docker push ${CUSTOM_TMC_REPO}/extensions/inspection-images/pause:3.9&lt;br /&gt;
    &lt;br /&gt;
    # clean up text files and sonobuoy tar&lt;br /&gt;
    rm images_*&lt;br /&gt;
    rm sonobuoy_*&lt;br /&gt;
 EOF&lt;br /&gt;
Edit the file and set the Variables at the top. (VERSION, LATEST_RELEASE, CUSTOM_REGISTRY, and k8s_versions)&lt;br /&gt;
 vi inspection-images.sh&lt;br /&gt;
Save the file and change the permissions&lt;br /&gt;
 chmod +x inspection-images.sh&lt;br /&gt;
Run the Script&lt;br /&gt;
 ./inspection-images.sh&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=TDKC&amp;diff=53</id>
		<title>TDKC</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=TDKC&amp;diff=53"/>
		<updated>2023-06-02T19:47:37Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= System Administrator Documentation = ==Mediawiki Installation Procedures== * Build a Centos 7 Server * Set Selinux to Permissive and allow port 80 through the firewall:  sed -i &amp;#039;s/SELINUX=enforcing/SELINUX=permissive/&amp;#039; /etc/selinux/config  setenforce 0  firewall-cmd --add-port 80/tcp  firewall-cmd --add-port 80/tcp --permanent * Install EPEL Repository:  yum install -y epel-release * Install Required Packages:  yum install -y mediawiki mariadb-server php-mysql * Enable...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= System Administrator Documentation =&lt;br /&gt;
==Mediawiki Installation Procedures==&lt;br /&gt;
* Build a Centos 7 Server&lt;br /&gt;
* Set Selinux to Permissive and allow port 80 through the firewall:&lt;br /&gt;
 sed -i &#039;s/SELINUX=enforcing/SELINUX=permissive/&#039; /etc/selinux/config&lt;br /&gt;
 setenforce 0&lt;br /&gt;
 firewall-cmd --add-port 80/tcp&lt;br /&gt;
 firewall-cmd --add-port 80/tcp --permanent&lt;br /&gt;
* Install EPEL Repository:&lt;br /&gt;
 yum install -y epel-release&lt;br /&gt;
* Install Required Packages:&lt;br /&gt;
 yum install -y mediawiki mariadb-server php-mysql&lt;br /&gt;
* Enable and Turn on Services:&lt;br /&gt;
 systemctl enable httpd&lt;br /&gt;
 systemctl enable mariadb&lt;br /&gt;
 systemctl start httpd&lt;br /&gt;
 systemctl start mariadb&lt;br /&gt;
* Configure Mariadb:&lt;br /&gt;
 mysql&lt;br /&gt;
 create database wiki;&lt;br /&gt;
 GRANT ALL PRIVILEGES ON wiki.* to &#039;wiki&#039;@&#039;localhost&#039; IDENTIFIED BY &#039;&amp;lt;password&amp;gt;&#039;;&lt;br /&gt;
 exit&lt;br /&gt;
* Edit the /etc/httpd/conf.d/mediawiki123.conf to look like:&lt;br /&gt;
  Alias /mw-config               /var/www/mediawiki123/mw-config&lt;br /&gt;
 &lt;br /&gt;
  Alias /index.php           /var/www/mediawiki123/index.php&lt;br /&gt;
  Alias /api.php             /var/www/mediawiki123/api.php&lt;br /&gt;
  Alias /load.php            /var/www/mediawiki123/load.php&lt;br /&gt;
  Alias /opensearch_desc.php /var/www/mediawiki123/opensearch_desc.php&lt;br /&gt;
  Alias /skins               /var/www/mediawiki123/skins&lt;br /&gt;
  Alias /images              /var/www/mediawiki123/images&lt;br /&gt;
  Alias /                     /var/www/mediawiki123/index.php&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;Directory /var/www/mediawiki123&amp;gt;&lt;br /&gt;
   Options FollowSymLinks&lt;br /&gt;
 &amp;lt;/Directory&amp;gt;&lt;br /&gt;
* Restart the httpd service and go http://wiki.tdkc.com/mw-config to configure the Site.&lt;br /&gt;
** Click Continue.&lt;br /&gt;
** Click Continue.&lt;br /&gt;
** Select the &amp;lt;strong&amp;gt;MySQL&amp;lt;/strong&amp;gt; radio button.&lt;br /&gt;
** Set the Database Name to &amp;lt;strong&amp;gt;wiki&amp;lt;/strong&amp;gt;.&lt;br /&gt;
** Set the Database Username to &amp;lt;strong&amp;gt;wiki&amp;lt;/strong&amp;gt;.&lt;br /&gt;
** Set the Database Password.&lt;br /&gt;
** Click Continue.&lt;br /&gt;
** Click Continue.&lt;br /&gt;
** Set the Wiki Name to &amp;lt;strong&amp;gt;TDKC Wiki&amp;lt;/strong&amp;gt;.&lt;br /&gt;
** Set the Administrator Username to &amp;lt;strong&amp;gt;admin&amp;lt;/strong&amp;gt;.&lt;br /&gt;
** Set the Administrator Password and Confirm it.&lt;br /&gt;
** Set the Administrator E-mail to &amp;lt;strong&amp;gt;cpowell@tdkc.com&amp;lt;/strong&amp;gt;.&lt;br /&gt;
** Select the &amp;lt;strong&amp;gt; Ask me more questions &amp;lt;/strong&amp;gt; radio button.&lt;br /&gt;
** Click Continue.&lt;br /&gt;
** Select the &amp;lt;strong&amp;gt; Authorized Editors Only &amp;lt;/strong&amp;gt; radio button.&lt;br /&gt;
** Check all of the Extensions.&lt;br /&gt;
** Check &amp;lt;strong&amp;gt; Enable File Uploads &amp;lt;/strong&amp;gt;.&lt;br /&gt;
** Check &amp;lt;strong&amp;gt; Enable Instant Commons &amp;lt;/strong&amp;gt;&lt;br /&gt;
** Click Continue.&lt;br /&gt;
* Download the LocalSettings.php and place it at /var/www/mediawiki123/LocalSettings.php on the wiki server.&lt;br /&gt;
* After the install comment the mw-config line in the /etc/httpd/conf.d/mediawiki123.conf:&lt;br /&gt;
  #Alias /mw-config               /var/www/mediawiki123/mw-config&lt;br /&gt;
* Restart httpd and go to http://wiki.tdkc.com&lt;br /&gt;
&lt;br /&gt;
= Disable Account Creation for everyon but admins=&lt;br /&gt;
* Edit the LocalSettings.php file and add the following to the bottom.&lt;br /&gt;
 $wgGroupPermissions[&#039;*&#039;][&#039;createaccount&#039;] = false;&lt;br /&gt;
= LDAP Integration =&lt;br /&gt;
* Install required Software&lt;br /&gt;
 yum -y install php-ldap&lt;br /&gt;
 systemctl restart httpd&lt;br /&gt;
* Allow httpd to make network calls&lt;br /&gt;
 setsebool -P httpd_can_network_connect on&lt;br /&gt;
* Get Latest Plugin for your Version of MediaWiki&lt;br /&gt;
 https://www.mediawiki.org/wiki/Extension:LDAP_Authentication&lt;br /&gt;
* Download Snapshot and copy tar file to the wiki server&lt;br /&gt;
 tar -zxvf &amp;lt;tar&amp;gt; -C /var/www/mediawiki123/extensions/&lt;br /&gt;
* Add the following to the /var/www/mediawiki123/LocalSettings.php file&lt;br /&gt;
 #LDAP Settings&lt;br /&gt;
 require_once &amp;quot;extensions/LdapAuthentication/LdapAuthentication.php&amp;quot;;&lt;br /&gt;
 $wgAuth = new LdapAuthenticationPlugin();&lt;br /&gt;
 $wgLDAPDomainNames = array(&amp;quot;TDKC&amp;quot;);&lt;br /&gt;
 $wgLDAPServerNames = array(&amp;quot;TDKC&amp;quot; =&amp;gt; &amp;quot;&amp;lt;IP&amp;gt;&amp;quot;);&lt;br /&gt;
 $wgLDAPEncryptionType = array(&amp;quot;TDKC&amp;quot; =&amp;gt; &amp;quot;clear&amp;quot;);&lt;br /&gt;
 $wgLDAPUseLocal = true;&lt;br /&gt;
 $wgMinimalPasswordLength = 1;&lt;br /&gt;
 $wgLDAPBaseDNs = array(&amp;quot;TDKC&amp;quot; =&amp;gt; &amp;quot;dc=tdkc,dc=com&amp;quot;);&lt;br /&gt;
 $wgLDAPSearchAttributes = array(&amp;quot;TDKC&amp;quot; =&amp;gt; &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
 $wgLDAPRetrievePrefs = array(&amp;quot;TDKC&amp;quot; =&amp;gt; true);&lt;br /&gt;
 $wgLDAPPreferences = array(&amp;quot;TDKC&amp;quot; =&amp;gt; array(&amp;quot;email&amp;quot; =&amp;gt; &amp;quot;mail&amp;quot;, &amp;quot;realname&amp;quot;  =&amp;gt; &amp;quot;displayname&amp;quot;));&lt;br /&gt;
 $wgLDAPProxyAgent = array(&amp;quot;TDKC&amp;quot; =&amp;gt; &amp;quot;wiki@tdkc.com&amp;quot;);&lt;br /&gt;
 $wgLDAPProxyAgentPassword = array(&amp;quot;TDKC&amp;quot; =&amp;gt; &amp;quot;&amp;lt;PASS&amp;gt;&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
= Restricting Wiki Pages =&lt;br /&gt;
* Get Latest Plugin for your Version of MediaWiki&lt;br /&gt;
 https://www.mediawiki.org/wiki/Extension:AccessControl&lt;br /&gt;
* Download Snapshot and copy tar file to the wiki server&lt;br /&gt;
 tar -zxvf &amp;lt;tar&amp;gt; -C /var/www/mediawiki123/extensions/&lt;br /&gt;
* Add the following to the /var/www/mediawiki123/LocalSettings.php file&lt;br /&gt;
 require_once &amp;quot;$IP/extensions/AccessControl/AccessControl.php&amp;quot;;&lt;br /&gt;
 $wgAdminCanReadAll = true;&lt;br /&gt;
 $wgAccessControlRedirect = false;&lt;br /&gt;
* Add the below tag to the top of each page you want restricted:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&amp;lt;accesscontrol&amp;gt;Administrators&amp;lt;/accesscontrol&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Add / Remove users to the Administrators Group &lt;br /&gt;
** Go to Special Pages&lt;br /&gt;
** User Right Management&lt;br /&gt;
** Enter the username you wish to add/remove&lt;br /&gt;
** Check or Uncheck the administrator box&lt;br /&gt;
** Click Save user groups&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You may need to do this as the &amp;lt;strong&amp;gt; admin &amp;lt;/strong&amp;gt; user.&lt;br /&gt;
&lt;br /&gt;
= Customizing the Logo =&lt;br /&gt;
* Copy the logo to the wiki server and replace the /var/www/mediawiki123/skins/common/images/wiki.png file:&lt;br /&gt;
 mv /var/www/mediawiki123/skins/common/images/wiki.png /var/www/mediawiki123/skins/common/images/wiki.png.old&lt;br /&gt;
 mv /tmp/logo.png /var/www/mediawiki123/skins/common/images/wiki.png&lt;br /&gt;
* Refresh the Webpage&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Spacewalk Installation Procedures==&lt;br /&gt;
=Spacewalk Installation Procedures=&lt;br /&gt;
* Build a Centos 7 Server&lt;br /&gt;
* Set Selinux to Permissive and allow port 80 through the firewall:&lt;br /&gt;
 sed -i &#039;s/SELINUX=enforcing/SELINUX=permissive/&#039; /etc/selinux/config&lt;br /&gt;
 setenforce 0&lt;br /&gt;
 firewall-cmd --add-port 80/tcp&lt;br /&gt;
 firewall-cmd --add-port 80/tcp --permanent&lt;br /&gt;
 firewall-cmd --add-port 443/tcp&lt;br /&gt;
 firewall-cmd --add-port 443/tcp --permanent&lt;br /&gt;
&lt;br /&gt;
* Install the Required Server Repositories:&lt;br /&gt;
 # Spacewalk Server Repository&lt;br /&gt;
 rpm -Uvh http://yum.spacewalkproject.org/2.3/RHEL/7/x86_64/spacewalk-repo-2.3-4.el7.noarch.rpm&lt;br /&gt;
 &lt;br /&gt;
 # JPackage Repository&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF&amp;gt; /etc/yum.repos.d/jpackage-generic.repo&lt;br /&gt;
 [jpackage-generic]&lt;br /&gt;
 name=JPackage generic&lt;br /&gt;
 mirrorlist=http://www.jpackage.org/mirrorlist.php?dist=generic&amp;amp;type=free&amp;amp;release=5.0&lt;br /&gt;
 enabled=1&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=http://www.jpackage.org/jpackage.asc&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
* Install The Spacewalk Database:&lt;br /&gt;
 yum -y install spacewalk-setup-postgresql&lt;br /&gt;
&lt;br /&gt;
* Install Spacewalk:&lt;br /&gt;
 yum -y install spacewalk-postgresql&lt;br /&gt;
 # EPEL Repository&lt;br /&gt;
 yum -y install epel-release&lt;br /&gt;
&lt;br /&gt;
=Spacewalk Configuration=&lt;br /&gt;
== Basic Configuration ==&lt;br /&gt;
* Start the installation wizard:&lt;br /&gt;
 spacewalk-setup --disconnected&lt;br /&gt;
* Answer the questions:&lt;br /&gt;
 Admin Email Address? &amp;lt;strong&amp;gt;cpowell@tdkc.com&amp;lt;/strong&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Should setup configure apache&#039;s default ssl server for you (saves original ssl.conf) [Y]? &amp;lt;strong&amp;gt;Y&amp;lt;/strong&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 CA certificate password? &amp;lt;strong&amp;gt;&amp;lt;pass&amp;gt;&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Re-enter CA certificate password? &amp;lt;strong&amp;gt;&amp;lt;pass&amp;gt;&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Organization? &amp;lt;strong&amp;gt;TDKC&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Organization Unit? &amp;lt;strong&amp;gt;IT&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Email Address [cpowell@tdkc.com]? &amp;lt;strong&amp;gt;cpowell@tdkc.com&amp;lt;/strong&amp;gt;&lt;br /&gt;
 City? &amp;lt;strong&amp;gt;Fairborn&amp;lt;/strong&amp;gt;&lt;br /&gt;
 State? &amp;lt;strong&amp;gt;OH&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Country code (Examples: &amp;quot;US&amp;quot;, &amp;quot;JP&amp;quot;, &amp;quot;IN&amp;quot;, or type &amp;quot;?&amp;quot; to see a list)? &amp;lt;strong&amp;gt;US&amp;lt;/strong&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Cobbler requires tftp and xinetd services be turned on for PXE provisioning functionality. Enable these services [Y]? &amp;lt;strong&amp;gt;Y&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* On complete, start the Spacewalk service if not started automatically.&lt;br /&gt;
 /usr/sbin/spacewalk-service start&lt;br /&gt;
&lt;br /&gt;
* Go to https://spacewalk.tdkc.com and create an admin account&lt;br /&gt;
 [[File:Spacewalk1.png]]&lt;br /&gt;
&lt;br /&gt;
== Changing the Spacewalk Logo ==&lt;br /&gt;
* Resize the TDKC logo to 44px wide&lt;br /&gt;
* Change spacewalk logo to TDKC:&lt;br /&gt;
 mv /var/www/html/img/logo_vendor.png /var/www/html/img/logo_vendor.png.old&lt;br /&gt;
 mv /tmp/logo.png /var/www/html/img/logo_vendor.png&lt;br /&gt;
&lt;br /&gt;
== Creating Software Channels ==&lt;br /&gt;
=== Base Channels ===&lt;br /&gt;
* Go to the Channels Tab.&lt;br /&gt;
* Click the Manage Software Channels Tab on the Left Menu.&lt;br /&gt;
* Click the Create Channel Button.&lt;br /&gt;
* Fill out the form.&lt;br /&gt;
 Channel Name: &amp;lt;strong&amp;gt;CentOS 7&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Channel Label: &amp;lt;strong&amp;gt;centos-7&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Parent Channel: &amp;lt;strong&amp;gt;None&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Architecture: &amp;lt;strong&amp;gt;x86_64&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Yum Repository Checksum Type: &amp;lt;strong&amp;gt;sha512&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Channel Summary: &amp;lt;strong&amp;gt;CentOS Base Channel&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Channel Description: &amp;lt;strong&amp;gt;CentOS Base Channel&amp;lt;/strong&amp;gt;&lt;br /&gt;
* Click Create Channel.&lt;br /&gt;
* Repeat the above steps for each needed Base Channel&lt;br /&gt;
=== Sub Channels ===&lt;br /&gt;
* Go to the Channels Tab.&lt;br /&gt;
* Click the Manage Software Channels Tab on the Left Menu.&lt;br /&gt;
* Click the Create Channel Button.&lt;br /&gt;
* Fill out the form.&lt;br /&gt;
 Channel Name: &amp;lt;strong&amp;gt;CentOS 7 Updates&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Channel Label: &amp;lt;strong&amp;gt;centos-7-updates&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Parent Channel: &amp;lt;strong&amp;gt;CentOS 7&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Architecture: &amp;lt;strong&amp;gt;x86_64&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Yum Repository Checksum Type: &amp;lt;strong&amp;gt;sha512&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Channel Summary: &amp;lt;strong&amp;gt;CentOS 7 Updates Sub Channel&amp;lt;/strong&amp;gt;&lt;br /&gt;
 Channel Description: &amp;lt;strong&amp;gt;CentOS 7 Updates Sub Channel&amp;lt;/strong&amp;gt;&lt;br /&gt;
* Click Create Channel.&lt;br /&gt;
* Repeat the above steps for each needed Sub Channel&lt;br /&gt;
=== Syncing Software Channels ===&lt;br /&gt;
* SSH to the spacewalk server&lt;br /&gt;
* Create a scripts directory&lt;br /&gt;
 mkdir -p /usr/share/rhn/scripts&lt;br /&gt;
* Create a file called reposync.sh&lt;br /&gt;
 vi /usr/share/rhn/scripts/reposync.sh&lt;br /&gt;
&lt;br /&gt;
 mkdir -p /var/log/scripts/&lt;br /&gt;
 date &amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 echo ##################################################### &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 CENT7LATEST=`curl --silent http://mirror.centos.org/centos/ | grep folder | grep &amp;quot;&amp;gt;7\.&amp;quot; | cut -d &#039;&amp;quot;&#039; -f 8 | cut -d &#039;/&#039; -f 1 | sort -g | tail -1`&lt;br /&gt;
  &lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/os/x86_64/ -c centos-7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/extras/x86_64/ -c centos-7-extras  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/updates/x86_64/ -c centos-7-updates &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://dl.fedoraproject.org/pub/epel/7/x86_64/ -c centos-7-epel &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log &lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest-client/RHEL/7/x86_64/ -c centos-7-spacewalk-client  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 &lt;br /&gt;
 chmod -R 777 /var/satellite/redhat/1/ &lt;br /&gt;
 echo #################################################### &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 date &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
&lt;br /&gt;
* Change permissions to the reposync.sh file&lt;br /&gt;
 chmod 755 /usr/share/rhn/scripts/reposync.sh&lt;br /&gt;
* To run it manually simply use the following command:&lt;br /&gt;
 /usr/share/rhn/scripts/reposync.sh&lt;br /&gt;
* To schedule the script use cron as root:&lt;br /&gt;
 crontab -e &lt;br /&gt;
* Add the following line to the crontab: (This will run the script once a week on sunday morning at 00:01)&lt;br /&gt;
 1 0 * * 0 /usr/share/rhn/scripts/reposync.sh&lt;br /&gt;
* This script is logged at /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
&lt;br /&gt;
== Creating System Groups ==&lt;br /&gt;
* Go to the Systems Tab.&lt;br /&gt;
* Click the System Groups Tab on the Left Menu.&lt;br /&gt;
* Click the Create Group Button.&lt;br /&gt;
* Fill out the form.&lt;br /&gt;
 Name: &#039;&#039;&#039;Centos 7 Servers&#039;&#039;&#039;&lt;br /&gt;
 Description: &#039;&#039;&#039;Centos 7 Servers&#039;&#039;&#039;&lt;br /&gt;
* Repeat for all of the groups you wish to create.&lt;br /&gt;
&lt;br /&gt;
== Creating Configuration Channels ==&lt;br /&gt;
These are groups of configuration files that are managed by spacewalk. These files can be pushed to the servers that are subscribed to the channel.&lt;br /&gt;
* Go to the Configuration Tab.&lt;br /&gt;
* Click the Configuration Channels Tab on the Left Menu.&lt;br /&gt;
* Click the Create Config Channel Button.&lt;br /&gt;
* Fill out the form.&lt;br /&gt;
 Name: &#039;&#039;&#039;Centos 7 Servers&#039;&#039;&#039;&lt;br /&gt;
 Label: &#039;&#039;&#039;centos-7-config&#039;&#039;&#039;&lt;br /&gt;
 Description: &#039;&#039;&#039;Centos 7 Servers&#039;&#039;&#039;&lt;br /&gt;
* Click the Add Files Tab and add any configuration files you wish. &lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; These can be added at anytime. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; These files can be pulled to each server that is subscribed, by running the command &#039;&#039;&#039;rhncfg-client get&#039;&#039;&#039;&lt;br /&gt;
* Repeat for all of the channels you wish to create.&lt;br /&gt;
&lt;br /&gt;
== Creating Activation Keys ==&lt;br /&gt;
These are used during kickstarts to join the spacewalk server. They are also use to assign kickstarted machines to the appropriate System Groups, Software Channels, Configuration Channels and more.&lt;br /&gt;
* Go to the Systems Tab.&lt;br /&gt;
* Click the Activation Keys Tab on the Left Menu.&lt;br /&gt;
* Click the Create Key Button.&lt;br /&gt;
* Fill out the form.&lt;br /&gt;
 Description: &#039;&#039;&#039;Centos 7 Servers&#039;&#039;&#039;&lt;br /&gt;
 Key: &#039;&#039;&#039;centos-7-key&#039;&#039;&#039;&lt;br /&gt;
 Base Channel: &#039;&#039;&#039;CentOS 7&#039;&#039;&#039;&lt;br /&gt;
 Check Provisioning&lt;br /&gt;
* Under the &#039;&#039;&#039;Child Channels&#039;&#039;&#039; tab add all desired Software channels by pressing ctrl and clicking each  channel you wish.&lt;br /&gt;
* Then click the &#039;&#039;&#039;Update Key&#039;&#039;&#039; button.&lt;br /&gt;
* Under the &#039;&#039;&#039;Packages&#039;&#039;&#039; Tab, add all of the software packages you wish to install at spacewalk registration time.&lt;br /&gt;
* Then click the &#039;&#039;&#039;Update Key&#039;&#039;&#039; button.&lt;br /&gt;
* Under the &#039;&#039;&#039;Configuration&#039;&#039;&#039; Tab and the Subscribe Channels Sub-Tab, add all of the configuration channels you wish the servers be added to. &lt;br /&gt;
* Then click the &#039;&#039;&#039;Update Key&#039;&#039;&#039; button.&lt;br /&gt;
* Under the &#039;&#039;&#039;Groups&#039;&#039;&#039; Tab and the &#039;&#039;&#039;Join&#039;&#039;&#039; sub-tab, check the groups you wish the activation key to add the server to. &lt;br /&gt;
* Then click the &#039;&#039;&#039;Join Selected Group&#039;&#039;&#039; button.&lt;br /&gt;
== Joining Existing Servers ==&lt;br /&gt;
=== Spacewalk Setup ===&lt;br /&gt;
* Create a Repository file on the spacewalk server&lt;br /&gt;
 mkdir -p /var/www/html/pub/repo_files/&lt;br /&gt;
 vi /var/www/html/pub/repo_files/centos7.repo&lt;br /&gt;
&lt;br /&gt;
 [local-centos-7]&lt;br /&gt;
 name=local-centos-7&lt;br /&gt;
 baseurl=http://spacewalk.tdkc.com/ks/dist/org/1/centos-7-latest&lt;br /&gt;
 enabled=1&lt;br /&gt;
 gpgcheck=0&lt;br /&gt;
 &lt;br /&gt;
 [local-centos-7-updates]&lt;br /&gt;
 name=local-centos-7-updates&lt;br /&gt;
 baseurl=http://spacewalk.tdkc.com/ks/dist/child/centos-7-updates/centos-7-latest&lt;br /&gt;
 enabled=1&lt;br /&gt;
 gpgcheck=0&lt;br /&gt;
 &lt;br /&gt;
 [local-centos-7-extras]&lt;br /&gt;
 name=local-centos-7-extras&lt;br /&gt;
 baseurl=http://spacewalk.tdkc.com/ks/dist/child/centos-7-extras/centos-7-latest&lt;br /&gt;
 enabled=1&lt;br /&gt;
 gpgcheck=0&lt;br /&gt;
 &lt;br /&gt;
 [local-centos-7-spacewalk-client]&lt;br /&gt;
 name=local-centos-7-spacewalk-client&lt;br /&gt;
 baseurl=http://spacewalk.tdkc.com/ks/dist/child/centos-7-spacewalk-client/centos-7-latest&lt;br /&gt;
 enabled=1&lt;br /&gt;
 gpgcheck=0&lt;br /&gt;
 &lt;br /&gt;
 [local-centos-7-epel]&lt;br /&gt;
 name=local-centos-7-epel&lt;br /&gt;
 baseurl=http://spacewalk.tdkc.com/ks/dist/child/centos-7-epel/centos-7-latest&lt;br /&gt;
 enabled=1&lt;br /&gt;
 gpgcheck=0&lt;br /&gt;
&lt;br /&gt;
====Add python-gudev and python-hwdata to the CentOS 7 Spacewalk Client Repo====&lt;br /&gt;
* Go to the &#039;&#039;&#039;Channels&#039;&#039;&#039; Tab&lt;br /&gt;
* Go to the &#039;&#039;&#039;Manage Software Channels&#039;&#039;&#039; Tab on the Left hand side.&lt;br /&gt;
* Click the &#039;&#039;&#039;CentOS 7 Spacewalk Client&#039;&#039;&#039; Channel.&lt;br /&gt;
* Click the &#039;&#039;&#039;Packages&#039;&#039;&#039; Tab. &lt;br /&gt;
* Click the &#039;&#039;&#039;Add&#039;&#039;&#039; Sub Tab.&lt;br /&gt;
* Under channel Choose &#039;&#039;&#039;CentOS 7&#039;&#039;&#039; and Click &#039;&#039;&#039;View Packages&#039;&#039;&#039;&lt;br /&gt;
* Search for python-gudev and python-hwdata and Click &#039;&#039;&#039;Add Packages&#039;&#039;&#039;&lt;br /&gt;
* Then Click &#039;&#039;&#039;Confirm Addition&#039;&#039;&#039; Button.&lt;br /&gt;
&lt;br /&gt;
=== Client Setup ===&lt;br /&gt;
==== CentOS 7 ====&lt;br /&gt;
Run the following as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
 mkdir -p /tmp/old_repos&lt;br /&gt;
 for i in `ls /etc/yum.repos.d/*`; do mv -f $i /tmp/old_repos/; done&lt;br /&gt;
 #for i in `ls /etc/yum.repos.d/Cent*`; do echo  &amp;gt; $i; done&lt;br /&gt;
 curl http://spacewalk/pub/repo_files/centos7.repo &amp;gt; /etc/yum.repos.d/local-centos-7.repo&lt;br /&gt;
 yum -y install wget&lt;br /&gt;
 rpm --import http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-EPEL-7  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-CentOS-7  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2008  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2010  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2012  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2014  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2015&lt;br /&gt;
 cat /tmp/ssl-key-* &amp;gt; /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 perl -pe &#039;s/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g&#039; -i /etc/sysconfig/rhn/up2date&lt;br /&gt;
 yum -y install pyOpenSSL rhnlib libxml2 libxml2-python&lt;br /&gt;
 perl -npe &#039;s|^(\s*(noSSLS\|s)erverURL\s*=\s*[^:]+://)[^/]*/|${1}spacewalk.tdkc.com/|&#039; -i /etc/sysconfig/rhn/up2date&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/script&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/script/run&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/configfiles&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/configfiles/all &lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 yum -y install rhncfg-client rhncfg rhncfg-actions osad osa-common jabberpy rhn-setup&lt;br /&gt;
 rhnreg_ks --serverUrl=https://spacewalk.tdkc.com/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-centos-7-key&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 systemctl enable osad&lt;br /&gt;
 systemctl start osad&lt;br /&gt;
 systemctl disable firewalld&lt;br /&gt;
 systemctl stop firewalld&lt;br /&gt;
&lt;br /&gt;
 # The Below are only needed if you want to keep firewalld ON&lt;br /&gt;
 #firewall-cmd --add-port 5222/tcp&lt;br /&gt;
 #firewall-cmd --add-port 4545/tcp&lt;br /&gt;
 #firewall-cmd --add-port 5222/tcp --permanent&lt;br /&gt;
 #firewall-cmd --add-port 4545/tcp --permanent&lt;br /&gt;
&lt;br /&gt;
==== CentOS 6 ====&lt;br /&gt;
Run the following as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
 mkdir -p /tmp/old_repos&lt;br /&gt;
 for i in `ls /etc/yum.repos.d/*`; do mv -f $i /tmp/old_repos/; done&lt;br /&gt;
 #for i in `ls /etc/yum.repos.d/Cent*`; do echo  &amp;gt; $i; done&lt;br /&gt;
 curl http://spacewalk/pub/repo_files/centos6.repo &amp;gt; /etc/yum.repos.d/local-centos-6.repo&lt;br /&gt;
 yum -y install wget&lt;br /&gt;
 rpm --import http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-pbis  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-EPEL-6  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-CentOS-6  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2008  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2010  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2012  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2014  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2015&lt;br /&gt;
 cat /tmp/ssl-key-* &amp;gt; /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 perl -pe &#039;s/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g&#039; -i /etc/sysconfig/rhn/up2date&lt;br /&gt;
 yum -y install pyOpenSSL rhnlib libxml2 libxml2-python&lt;br /&gt;
 perl -npe &#039;s|^(\s*(noSSLS\|s)erverURL\s*=\s*[^:]+://)[^/]*/|${1}spacewalk.tdkc.com/|&#039; -i /etc/sysconfig/rhn/up2date&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/script&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/script/run&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/configfiles&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/configfiles/all &lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 yum -y install rhncfg-client rhncfg rhncfg-actions osad osa-common jabberpy rhn-setup&lt;br /&gt;
 rhnreg_ks --serverUrl=https://spacewalk.tdkc.com/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-centos-6-key --force&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 chkconfig osad on &lt;br /&gt;
 service osad start&lt;br /&gt;
 chkconfig iptables off&lt;br /&gt;
 service iptables stop&lt;br /&gt;
 chkconfig ip6tables off&lt;br /&gt;
 service ip6tables stop&lt;br /&gt;
&lt;br /&gt;
 # The Below are only needed if you want to keep iptables ON&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 4545 -j ACCEPT&#039; /etc/sysconfig/iptables&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 5222 -j ACCEPT&#039; /etc/sysconfig/iptables&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 4545 -j ACCEPT&#039; /etc/sysconfig/ip6tables&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 5222 -j ACCEPT&#039; /etc/sysconfig/ip6tables&lt;br /&gt;
 #service iptables restart&lt;br /&gt;
 #service ip6tables restart&lt;br /&gt;
&lt;br /&gt;
==== CentOS 5 ====&lt;br /&gt;
Run the following as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
 mkdir -p /tmp/old_repos&lt;br /&gt;
 for i in `ls /etc/yum.repos.d/*`; do mv -f $i /tmp/old_repos/; done&lt;br /&gt;
 #for i in `ls /etc/yum.repos.d/Cent*`; do echo  &amp;gt; $i; done&lt;br /&gt;
 curl http://spacewalk/pub/repo_files/centos5.repo &amp;gt; /etc/yum.repos.d/local-centos-5.repo&lt;br /&gt;
 yum -y install wget&lt;br /&gt;
 rpm --import http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-pbis  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-EPEL-5  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-CentOS-5  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2008  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2010  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2012  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2014  http://spacewalk.tdkc.com/pub/repo_files/RPM-GPG-KEY-spacewalk-2015&lt;br /&gt;
 cat /tmp/ssl-key-* &amp;gt; /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 perl -pe &#039;s/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g&#039; -i /etc/sysconfig/rhn/up2date&lt;br /&gt;
 yum -y install pyOpenSSL rhnlib libxml2 libxml2-python&lt;br /&gt;
 perl -npe &#039;s|^(\s*(noSSLS\|s)erverURL\s*=\s*[^:]+://)[^/]*/|${1}spacewalk.tdkc.com/|&#039; -i /etc/sysconfig/rhn/up2date&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/script&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/script/run&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/configfiles&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/configfiles/all &lt;br /&gt;
 echo &#039;#includedir /etc/sudoers.d&#039; &amp;gt;&amp;gt; /etc/sudoers&lt;br /&gt;
 chmod 755 /etc/sudoers.d/&lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 yum -y install rhncfg-client rhncfg rhncfg-actions osad osa-common jabberpy rhn-setup&lt;br /&gt;
 rhnreg_ks --serverUrl=https://spacewalk.tdkc.com/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-centos-5-key&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 chkconfig osad on &lt;br /&gt;
 service osad start&lt;br /&gt;
 chkconfig iptables off&lt;br /&gt;
 service iptables stop&lt;br /&gt;
 chkconfig ip6tables off&lt;br /&gt;
 service ip6tables stop&lt;br /&gt;
&lt;br /&gt;
 # The Below are only needed if you want to keep iptables ON&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 4545 -j ACCEPT&#039; /etc/sysconfig/iptables&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 5222 -j ACCEPT&#039; /etc/sysconfig/iptables&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 4545 -j ACCEPT&#039; /etc/sysconfig/ip6tables&lt;br /&gt;
 #sed -i &#039;/--dport 22/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 5222 -j ACCEPT&#039; /etc/sysconfig/ip6tables&lt;br /&gt;
 #service iptables restart&lt;br /&gt;
 #service ip6tables restart&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu 12.04 ====&lt;br /&gt;
Run the following as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
 mkdir -p /tmp/spacewalk/&lt;br /&gt;
 cd /tmp/spacewalk/&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/register/ubuntu-1204/apt-transport-spacewalk-1.0.6-2.5-1ubuntu1-precise1.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/libnl1_1.1-7_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/osad-5.9.21-2.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/pyjabber-0.5.0-1.4ubuntu3-precise1.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-dmidecode_3.10.11-1build2_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-ethtool_0.6-0ubuntu1_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-gudev_147.2-2_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-libxml2-2.7.8.dfsg-5.1ubuntu4.15.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-newt_0.52.11-2ubuntu10_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-rhn-2.5.52-1ubuntu1-precise1.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-support_1.0.14ubuntu2_all.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/rhncfg-5.10.14-1ubuntu1-precise2.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/rhn-client-tools_1.8.9-4~precise1_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/rhnsd-5.0.4-3.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/libgudev-1.0-0_175-0ubuntu9_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-gobject-2_2.28.6-10ubuntu1_amd64.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1204/python-gobject_3.2.2-1~precise_all.deb&lt;br /&gt;
 dpkg -i *.deb &lt;br /&gt;
 #add-apt-repository -y ppa:mj-casalogic/spacewalk-ubuntu&lt;br /&gt;
 #apt-get update&lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 apt-get -y install rhncfg rhn-client-tools apt-transport-spacewalk python-rhn rhnsd python-libxml2&lt;br /&gt;
 sed -i &#039;s/if not self.allow_none:/#if not self.allow_none:/&#039; /usr/lib/python2.7/xmlrpclib.py&lt;br /&gt;
 sed -i &#039;s/raise TypeError, &amp;quot;cannot marshal None unless allow_none is enabled&amp;quot;/#raise TypeError, &amp;quot;cannot marshal None unless allow_none is enabled&amp;quot;/&#039; /usr/lib/python2.7/xmlrpclib.py&lt;br /&gt;
 mkdir /var/lock/subsys&lt;br /&gt;
 rhnreg_ks --activationkey=1-ubuntu-1204 --serverUrl=http://spacewalk.tdkc.com/XMLRPC --force &lt;br /&gt;
 rhn-actions-control --enable-run&lt;br /&gt;
 echo &#039;deb spacewalk://spacewalk.tdkc.com/XMLRPC channels: main ubuntu-1204-custom ubuntu-1204-security ubuntu-1204-updates&#039; &amp;gt;  /etc/apt/sources.list.d/spacewalk.list&lt;br /&gt;
 mv /etc/apt/sources.list /etc/apt/sources.list.bak&lt;br /&gt;
 mkdir -p /var/spool/rhn&lt;br /&gt;
 cd /tmp&lt;br /&gt;
 rm -rf /tmp/spacewalk/&lt;br /&gt;
 apt-get update&lt;br /&gt;
 sleep 10&lt;br /&gt;
 apt-get update&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu 14.04 ====&lt;br /&gt;
Run the following as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
 mkdir -p /tmp/spacewalk/&lt;br /&gt;
 cd /tmp/spacewalk/&lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/register/ubuntu-1404/apt-transport-spacewalk-1.0.6-2.1.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/libgudev-1.0-0-1-204-5ubuntu20.22.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/libnl1-1.1-8ubuntu1.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-dbus-1.2.0-2build2.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-dbus-dev-1.2.0-2build2.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-dmidecode-3.10.13-3.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-ethtool-0.7-1.1.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-gi-3.12.0-1ubuntu1.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-gobject-2-2.28.6-12build1.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-gobject-3.12.0-1ubuntu1.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-gudev-147.2-3.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-libxml2-2.9.1+dfsg1-3ubuntu4.8.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-newt-0.52.15-2ubuntu5.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-rhn-2.5.52-1.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/python-support-1.0.15-X.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/rhncfg-5.10.14-1ubuntu1-saucy2.all-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/rhn-client-tools-1.8.26-4-ubuntu14.04.1-ppa1.amd64-deb.deb http://spacewalk.tdkc.com/pub/register/ubuntu-1404/rhnsd-4.9.15-1.amd64-deb.deb&lt;br /&gt;
 dpkg -i *.deb&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 apt-get -y install rhn-client-tools apt-transport-spacewalk python-rhn rhnsd python-libxml2&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/register/rhncfg-5.10.14-1ubuntu1-saucy2.all-deb.deb&lt;br /&gt;
 dpkg -i rhncfg-5.10.14-1ubuntu1-saucy2.all-deb.deb &lt;br /&gt;
 sed -i &#039;s/if not self.allow_none:/#if not self.allow_none:/&#039; /usr/lib/python2.7/xmlrpclib.py&lt;br /&gt;
 sed -i &#039;s/raise TypeError, &amp;quot;cannot marshal None unless allow_none is enabled&amp;quot;/#raise TypeError, &amp;quot;cannot marshal None unless allow_none is enabled&amp;quot;/&#039; /usr/lib/python2.7/xmlrpclib.py&lt;br /&gt;
 apt-get install python-libxml2&lt;br /&gt;
 mkdir -p /var/lock/subsys&lt;br /&gt;
 rhnreg_ks --activationkey=1-ubuntu-1404 --serverUrl=http://spacewalk.tdkc.com/XMLRPC --force &lt;br /&gt;
 rhn-actions-control --enable-run&lt;br /&gt;
 rhn_check&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 echo &#039;deb spacewalk://spacewalk.tdkc.com/XMLRPC channels: main ubuntu-1404-custom ubuntu-1404-security ubuntu-1404-updates&#039; &amp;gt;  /etc/apt/sources.list.d/spacewalk.list&lt;br /&gt;
 mv /etc/apt/sources.list /etc/apt/sources.list.bak&lt;br /&gt;
 mkdir -p /var/spool/rhn&lt;br /&gt;
 cd /tmp&lt;br /&gt;
 rm -rf /tmp/spacewalk/&lt;br /&gt;
 apt-get update&lt;br /&gt;
 sleep 10&lt;br /&gt;
 apt-get update&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu 15.10 ====&lt;br /&gt;
Run the following as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
 mkdir -p /tmp/spacewalk/&lt;br /&gt;
 cd /tmp/spacewalk/&lt;br /&gt;
 #wget http://spacewalk.tdkc.com/download/package/9a990879fd7d446a221fb1beecb9386b4193b9dd/1486533691738/2/74389/apt-transport-spacewalk-1.0.6-4.1.all-deb.deb http://spacewalk.tdkc.com/download/package/1fe2d5c78bb3a4bcffd210bc38a55809c7cb493f/1486533709647/2/74390/libgudev-1.0-0-1:230-2.amd64-deb.deb http://spacewalk.tdkc.com/download/package/0c38f9a52f4cdefd3ab2a29e574d215f99e3905e/1486533717989/2/74391/libnl-route-3-200-3.2.26-1.amd64-deb.deb http://spacewalk.tdkc.com/download/package/6230d4117a0a9c2ec92e348696efe3befad4355f/1486533730178/2/74393/python-cffi-1.1.2-1ubuntu2.all-deb.deb http://spacewalk.tdkc.com/download/package/4ca9d34787524960ef65707edda3f05353029408/1486533739004/2/74394/python-cffi-backend-1.1.2-1ubuntu2.amd64-deb.deb http://spacewalk.tdkc.com/download/package/d85db44c341d453689819112feb6150e9e14916d/1486533748338/2/74395/python-cryptography-1.0.1-1ubuntu1.amd64-deb.deb http://spacewalk.tdkc.com/download/package/2b6ee8eddeee8532995e732212aa590e6780cc6e/1486533757114/2/74396/python-dbus-1.2.0-2build3.amd64-deb.deb http://spacewalk.tdkc.com/download/package/73437d3050ecbc99ce5e0b52f9236963d327f1fd/1486533777174/2/74397/python-dbus-dev-1.2.0-2build3.all-deb.deb http://spacewalk.tdkc.com/download/package/ad71b97a51a6d2d41ef0169c9d2ab2e146f09a1e/1486533790037/2/74398/python-dmidecode-3.12.2-1.amd64-deb.deb http://spacewalk.tdkc.com/download/package/645ea178fa3d1d9109a630054e40650116118edf/1486533799975/2/74399/python-enum34-1.0.4-2.all-deb.deb http://spacewalk.tdkc.com/download/package/7fddb9738fe66b922e505e8258125cf2f3556734/1486533809243/2/74400/python-ethtool-0.11-3.amd64-deb.deb http://spacewalk.tdkc.com/download/package/9db7758c9f44c5600100046e022e7e78ee285d9c/1486533818862/2/74401/python-gi-3.16.2-1build1.amd64-deb.deb http://spacewalk.tdkc.com/download/package/45b505436891a30e5038f98f1125e5c8faf87255/1486533827584/2/73063/python-gobject-2-2.28.6-12build1.amd64-deb.deb http://spacewalk.tdkc.com/download/package/e3b34a2322fbc36ea1f14f5629402eed3a341345/1486533838570/2/74402/python-gobject-3.16.2-1build1.all-deb.deb http://spacewalk.tdkc.com/download/package/cac91472f41247a71e0cdfc09dc9ced6aa191808/1486533847044/2/73066/python-gudev-147.2-3.amd64-deb.deb http://spacewalk.tdkc.com/download/package/bc96ea69767e2929b0d42089e21306eed4a70c96/1486533855510/2/74403/python-idna-2.0-3.all-deb.deb http://spacewalk.tdkc.com/download/package/22a736afd87c57cc10b5d66077d68d96bbe2e303/1486533863520/2/74404/python-ipaddress-1.0.14-2.all-deb.deb http://spacewalk.tdkc.com/download/package/16d798f91c1736ea0b8cc85ae10ebc425ecfb20c/1486533872744/2/74405/python-libxml2-2.9.2+zdfsg1-4ubuntu0.4.amd64-deb.deb http://spacewalk.tdkc.com/download/package/2df719267a55d9e7f45eda9a9b5f2f54bf28efe8/1486533882046/2/74406/python-newt-0.52.18-1ubuntu1.amd64-deb.deb http://spacewalk.tdkc.com/download/package/24e041a6f29874de148225d3d3d42a035bc399a5/1486533891902/2/74408/python-openssl-0.15.1-2build1.all-deb.deb http://spacewalk.tdkc.com/download/package/2a18f3173b2af6c901f19631571170ee909482f5/1486533901275/2/74409/python-pkg-resources-18.4-1.all-deb.deb http://spacewalk.tdkc.com/download/package/83c2bfd93db39cc2976bfb242ba35ec15dd4ec19/1486533909664/2/74410/python-ply-3.7-1.all-deb.deb http://spacewalk.tdkc.com/download/package/ca446abc1e8472df4de42930170f6e3993a074c0/1486533925603/2/74411/python-pyasn1-0.1.8-2.all-deb.deb http://spacewalk.tdkc.com/download/package/2c37e07e157e58310e68b331bdcf74da4be2fdb7/1486533934180/2/74413/python-pycparser-2.14+dfsg-2build1.all-deb.deb http://spacewalk.tdkc.com/download/package/3200828f2c633a17a6776d8a8387c3144795c12c/1486533943711/2/74414/python-rhn-2.5.55-2.all-deb.deb http://spacewalk.tdkc.com/download/package/43e0245e31ec67a9c1bf508c8710f52a134af713/1486533958421/2/74415/python-six-1.9.0-5.all-deb.deb http://spacewalk.tdkc.com/download/package/683688494c9a41c085211fb8ecc7cf2fca3a82c1/1486533966846/2/74416/rhn-client-tools-1.8.26-4.amd64-deb.deb http://spacewalk.tdkc.com/download/package/1464b7a0f4d17718fe9eb2262df30a3e6c0bade3/1486533975390/2/74417/rhnsd-5.0.4-3.amd64-deb.deb http://spacewalk.tdkc.com/download/package/4100a3dcc3bde6c366888af2fc264e498167dddf/1486534916145/2/73403/rhncfg-5.10.14-1ubuntu1~saucy2.all-deb.deb&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&lt;br /&gt;
 apt-get -y install rhn-client-tools apt-transport-spacewalk python-rhn rhnsd python-libxml2&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/register/rhncfg-5.10.14-1ubuntu1-saucy2.all-deb.deb&lt;br /&gt;
 dpkg -i rhncfg-5.10.14-1ubuntu1-saucy2.all-deb.deb &lt;br /&gt;
 #dpkg -i *.deb&lt;br /&gt;
 sed -i &#039;s/if not self.allow_none:/#if not self.allow_none:/&#039; /usr/lib/python2.7/xmlrpclib.py&lt;br /&gt;
 sed -i &#039;s/raise TypeError, &amp;quot;cannot marshal None unless allow_none is enabled&amp;quot;/#raise TypeError, &amp;quot;cannot marshal None unless allow_none is enabled&amp;quot;/&#039; /usr/lib/python2.7/xmlrpclib.py&lt;br /&gt;
 mkdir -p /var/lock/subsys&lt;br /&gt;
 rhnreg_ks --activationkey=1-ubuntu-1510 --serverUrl=http://spacewalk.tdkc.com/XMLRPC --force &lt;br /&gt;
 rhn-actions-control --enable-run&lt;br /&gt;
 rhn_check&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 echo &#039;deb spacewalk://spacewalk.tdkc.com/XMLRPC channels: main ubuntu-1510-custom ubuntu-1510-security ubuntu-1510-updates&#039; &amp;gt;  /etc/apt/sources.list.d/spacewalk.list&lt;br /&gt;
 mv /etc/apt/sources.list /etc/apt/sources.list.bak&lt;br /&gt;
 mkdir -p /var/spool/rhn&lt;br /&gt;
 cd /tmp&lt;br /&gt;
 rm -rf /tmp/spacewalk/&lt;br /&gt;
 apt-get update&lt;br /&gt;
 sleep 10&lt;br /&gt;
 apt-get update&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Files Managed By Spacewalk==&lt;br /&gt;
= Files Managed By Spacewalk = &lt;br /&gt;
== /etc/sssd/sssd.conf ==&lt;br /&gt;
This File is here to ensure proper configuration of the SSSD clients.&lt;br /&gt;
&lt;br /&gt;
By Default SSSD does not configure itself with all of the needed settings. &lt;br /&gt;
&lt;br /&gt;
== /etc/sudoers.d/master-sudoers ==&lt;br /&gt;
This file is managed by spacewalk to ensure all machines are compliant with the concept of least privilege.&lt;br /&gt;
&lt;br /&gt;
The % refers to groups&lt;br /&gt;
&lt;br /&gt;
Adding &#039;&#039;&#039;TDKC\\&#039;&#039;&#039; in front of groups and users allow likewise joined servers (without the &#039;&#039;&#039;/opt/pbis/bin/config AssumeDefaultDomain true&#039;&#039;&#039; command run) to be compatible with the sudoers file.&lt;br /&gt;
&lt;br /&gt;
For in-depth information on this file please refer to https://linux.die.net/man/5/sudoers.&lt;br /&gt;
&lt;br /&gt;
== /etc/sysconfig/rhn/rhnsd ==&lt;br /&gt;
This file is managed by spacewalk to reduce the amount of time that the clients check in with spacewalk. The Default is 4 hours. Setting the INTERVAL to 60 (the lowest it allows) tells the clients to check in once an hour. &lt;br /&gt;
&lt;br /&gt;
== /etc/profile.d/security_lockdowns.sh ==&lt;br /&gt;
This file is managed by spacewalk to provide the spacewalk clients with the proper profile lockdowns.&lt;br /&gt;
&lt;br /&gt;
TMOUT refers to the amount of Idle time a session is allowed, in seconds. If a user is idle for this length of time they will be automatically logged off.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==General Linux Commands and Scripts==&lt;br /&gt;
= General Linux Commands and Scripts =&lt;br /&gt;
== Create Keytab file for adjoin user ==&lt;br /&gt;
Run the following code as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 yum -y install krb5-workstation&lt;br /&gt;
 ktutil&lt;br /&gt;
 addent -password -p adjoin@TDKC.COM -k 1 -e RC4-HMAC&lt;br /&gt;
 &#039;&#039;&#039;&amp;lt;enter password for username&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
 wkt adjoin.keytab &lt;br /&gt;
 q&lt;br /&gt;
&lt;br /&gt;
== Joining CentOS 7 Server to Active Directory (AD) ==&lt;br /&gt;
You must first join the Spacewalk server:&lt;br /&gt;
[[Admin/Spacewalk_Install#CentOS_7 | Join CentOS 7 to Spacewalk]]&lt;br /&gt;
&lt;br /&gt;
Run the following code as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 # Install Required Software&lt;br /&gt;
 yum install -y realmd samba samba-common oddjob oddjob-mkhomedir sssd adcli sssd-tools samba-libs  krb5-workstation&lt;br /&gt;
 &lt;br /&gt;
 # Get Keytab for authentication&lt;br /&gt;
 wget -q http://spacewalk.tdkc.com/pub/join/adjoin.keytab -O /root/adjoin.keytab&lt;br /&gt;
 &lt;br /&gt;
 kinit -k -t /root/adjoin.keytab adjoin@TDKC.COM&lt;br /&gt;
 &lt;br /&gt;
 # Leave all realms (this is only really needed if you are previously joined)&lt;br /&gt;
 realm leave&lt;br /&gt;
 sleep 5&lt;br /&gt;
 &lt;br /&gt;
 # Join the Domain using an admin account and place the computer in the Servers OU&lt;br /&gt;
 realm join --no-password --computer-ou=&amp;quot;ou=VMs,OU=TDKCMachines,dc=tdkc,dc=com&amp;quot;  &amp;quot;tdkc.com&amp;quot;&lt;br /&gt;
 sleep 15&lt;br /&gt;
 &lt;br /&gt;
 # Pull the Corrected configuration file from Spacewalk &lt;br /&gt;
 systemctl stop sssd&lt;br /&gt;
 rm -rf /var/lib/sss/db/*&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 systemctl start sssd&lt;br /&gt;
 sleep 10&lt;br /&gt;
 systemctl restart sssd&lt;br /&gt;
 &lt;br /&gt;
 # Remove Keytab File&lt;br /&gt;
 rm -rf /root/adjoin.keytab&lt;br /&gt;
 &lt;br /&gt;
 # Test to make sure it worked&lt;br /&gt;
 id droessner&lt;br /&gt;
&lt;br /&gt;
== Joining Ubuntu Server to Active Directory (AD) ==&lt;br /&gt;
You must first join the Spacewalk server:&lt;br /&gt;
[[Admin/Spacewalk_Install#Ubuntu_12.04 | Join Ubuntu Server to Spacewalk]]&lt;br /&gt;
&lt;br /&gt;
Run the following code as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 # Download PBIS Script&lt;br /&gt;
 wget http://spacewalk.tdkc.com/pub/pbis/pbis-open-8.0.1.2029.linux.x86_64.deb.sh&lt;br /&gt;
 bash pbis-open-8.0.1.2029.linux.x86_64.deb.sh&lt;br /&gt;
&lt;br /&gt;
Answer the Script&#039;s Questions:&lt;br /&gt;
# Would you like to install package for legacy links? &#039;&#039;&#039;yes&#039;&#039;&#039;&lt;br /&gt;
# Would you like to install now? &#039;&#039;&#039;yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 # Cleanup after script&lt;br /&gt;
 rm -rf pbis-open-8.0.1.2029.linux.x86_64.deb pbis-open-8.0.1.2029.linux.x86_64.deb.sh&lt;br /&gt;
&lt;br /&gt;
 #&#039;&#039;&#039;****ONLY RUN THIS ON 15.10****&#039;&#039;&#039;&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF&amp;gt; /lib/systemd/system/lwsmd.service&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=BeyondTrust PBIS Service Manager&lt;br /&gt;
 After=network.target&lt;br /&gt;
 &lt;br /&gt;
 [Service]&lt;br /&gt;
 Type=forking&lt;br /&gt;
 EnvironmentFile=/opt/pbis/libexec/init-base.sh&lt;br /&gt;
 ExecStart=/opt/pbis/sbin/lwsmd --start-as-daemon&lt;br /&gt;
 ExecReload=/opt/pbis/bin/lwsm refresh&lt;br /&gt;
 ExecStop=/opt/pbis/bin/lwsm shutdown&lt;br /&gt;
 # We want systemd to give lwsmd some time to finish gracefully, but still want&lt;br /&gt;
 # it to kill lwsmd after TimeoutStopSec if something went wrong during the&lt;br /&gt;
 # graceful stop. Normally, Systemd sends SIGTERM signal right after the&lt;br /&gt;
 # ExecStop, which would kill lwsmd. We are sending useless SIGCONT here to give&lt;br /&gt;
 # lwsmd time to finish.&lt;br /&gt;
 KillSignal=SIGCONT&lt;br /&gt;
 PrivateTmp=true&lt;br /&gt;
 &lt;br /&gt;
 [Install]&lt;br /&gt;
 WantedBy=multi-user.target nss-lookup.target&lt;br /&gt;
 EOF&lt;br /&gt;
 cd /etc/systemd/system&lt;br /&gt;
 ln -s /lib/systemd/system/lwsmd.service&lt;br /&gt;
 systemctl enable lwsmd.service&lt;br /&gt;
 systemctl start lwsmd.service&lt;br /&gt;
&lt;br /&gt;
 # Join the Domain&lt;br /&gt;
 domainjoin-cli join --ou  &amp;quot;ou=VMs,OU=TDKCMachines,dc=tdkc,dc=com&amp;quot; TDKC.COM &#039;&#039;&#039;&amp;lt;DOMAIN_ADMIN&amp;gt;&#039;&#039;&#039;@tdkc.com&lt;br /&gt;
 &lt;br /&gt;
 # Make PBIS Assume the Default Domain&lt;br /&gt;
 /opt/pbis/bin/config AssumeDefaultDomain true&lt;br /&gt;
&lt;br /&gt;
 # Test to make sure it worked&lt;br /&gt;
 id droessner@tdkc.com&lt;br /&gt;
&lt;br /&gt;
 # Reboot Server&lt;br /&gt;
 reboot&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You need to login using full domain name.. i.e. droessner@tdkc.com&lt;br /&gt;
&lt;br /&gt;
== Joining CentOS 5/6 Server to Active Directory (AD) ==&lt;br /&gt;
You must first join the Spacewalk server:&lt;br /&gt;
[[Admin/Spacewalk_Install#CentOS_6 | Join CentOS 6 Server to Spacewalk]]&lt;br /&gt;
&lt;br /&gt;
Run the following code as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 # Install Required Software&lt;br /&gt;
  yum -y install pbis-open&lt;br /&gt;
&lt;br /&gt;
 # Join the Domain&lt;br /&gt;
 domainjoin-cli join --ou  &amp;quot;ou=VMs,OU=TDKCMachines,dc=tdkc,dc=com&amp;quot; TDKC.COM &#039;&#039;&#039;&amp;lt;DOMAIN_ADMIN&amp;gt;&#039;&#039;&#039;@tdkc.com&lt;br /&gt;
&lt;br /&gt;
 # Make PBIS Assume the Default Domain&lt;br /&gt;
 /opt/pbis/bin/config AssumeDefaultDomain true&lt;br /&gt;
 &lt;br /&gt;
  # Test to make sure it worked&lt;br /&gt;
 id droessner@tdkc.com&lt;br /&gt;
&lt;br /&gt;
 # Reboot Server&lt;br /&gt;
 reboot&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You need to login using full domain name.. i.e. droessner@tdkc.com&lt;br /&gt;
&lt;br /&gt;
== Modify Local User Accounts ==&lt;br /&gt;
Run the following code as &#039;&#039;&#039;ROOT&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 usermod -l cpowell-local cpowell&lt;br /&gt;
 usermod -l jwalrath-local jwalrath&lt;br /&gt;
 mv /home/cpowell /home/cpowell-local&lt;br /&gt;
 mv /home/jwalrath /home/jwalrath-local&lt;br /&gt;
&lt;br /&gt;
== Restrict Users from Ubuntu Linux Login ==&lt;br /&gt;
The Following command will enable the access security on the Server:&lt;br /&gt;
 grep -q pam_access.so /etc/pam.d/common-account &amp;amp;&amp;amp; echo &amp;quot;Already There!&amp;quot; || sed -i &#039;1s/^/account     required      pam_access.so\n/&#039; /etc/pam.d/common-account&lt;br /&gt;
The Following commands will create a default access config file:&lt;br /&gt;
 echo &#039;+ : root : ALL&#039; &amp;gt; /etc/security/access.conf&lt;br /&gt;
 echo &#039;+ : TDKC\domain^admins : ALL&#039; &amp;gt;&amp;gt; /etc/security/access.conf&lt;br /&gt;
 echo &#039;+ : TDKC\subcontractors : ALL&#039; &amp;gt;&amp;gt; /etc/security/access.conf&lt;br /&gt;
 echo &#039;- : TDKC\domain^users : ALL&#039; &amp;gt;&amp;gt; /etc/security/access.conf&lt;br /&gt;
 echo &#039;- : ALL : ALL&#039; &amp;gt;&amp;gt; /etc/security/access.conf&lt;br /&gt;
&lt;br /&gt;
The file is read from Top to bottom so if the user is denied on line 1 but allowed on line 2, the user is Denied access. (The first match wins)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Legend:&#039;&#039;&#039;&lt;br /&gt;
* The First Column:&lt;br /&gt;
 +  =  Allow Access&lt;br /&gt;
 -  =  Deny Access&lt;br /&gt;
* The Second Column: &lt;br /&gt;
 user / group to be denied or allowed&lt;br /&gt;
* The Third Column:&lt;br /&gt;
 The location the user is connecting from&lt;br /&gt;
&lt;br /&gt;
For more information please refer to https://linux.die.net/man/5/access.conf&lt;br /&gt;
&lt;br /&gt;
== Add Client to Elastic Stack ==&lt;br /&gt;
=== CentOS 7 ===&lt;br /&gt;
Copy the SSL certificate from elastic.tdkc.com to the client:&lt;br /&gt;
 scp /etc/pki/tls/certs/logstash-forwarder.crt &#039;&#039;&#039;user&#039;&#039;&#039;@&#039;&#039;&#039;client&#039;&#039;&#039;:/tmp&lt;br /&gt;
&lt;br /&gt;
Copy the filebeat.yml file from a reference machine:&lt;br /&gt;
 scp /etc/filebeat/filebeat.yml &#039;&#039;&#039;user&#039;&#039;&#039;@&#039;&#039;&#039;client&#039;&#039;&#039;:/tmp&lt;br /&gt;
&lt;br /&gt;
Run the following code as &#039;&#039;&#039;Root&#039;&#039;&#039;:&lt;br /&gt;
 mkdir -p /etc/pki/tls/certs&lt;br /&gt;
 cp /tmp/logstash-forwarder.crt /etc/pki/tls/certs/&lt;br /&gt;
 rpm --import http://packages.elastic.co/GPG-KEY-elasticsearch&lt;br /&gt;
 vi /etc/yum.repos.d/elastic-beats.repo&lt;br /&gt;
&lt;br /&gt;
Edit the open file to contain the following:&lt;br /&gt;
 [elastic-5.x]&lt;br /&gt;
 name=Elastic repository for 5.x packages&lt;br /&gt;
 baseurl=https://artifacts.elastic.co/packages/5.x/yum&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch&lt;br /&gt;
 enabled=1&lt;br /&gt;
 autorefresh=1&lt;br /&gt;
 type=rpm-md&lt;br /&gt;
&lt;br /&gt;
Run the following code as &#039;&#039;&#039;Root&#039;&#039;&#039;:&lt;br /&gt;
 yum -y install filebeat&lt;br /&gt;
 chown root:root /tmp/filebeat.yml&lt;br /&gt;
 mv /tmp/filebeat.yml /etc/filebeat/filebeat.yml&lt;br /&gt;
 systemctl start filebeat&lt;br /&gt;
 systemctl enable filebeat&lt;br /&gt;
 systemctl restart filebeat&lt;br /&gt;
 systemctl status filebeat&lt;br /&gt;
&lt;br /&gt;
Ensure that the &amp;quot;TLS&amp;quot; section of filebeat.yml is labled &amp;quot;SSL&amp;quot;, it was changed in a recent version.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Network layout information==&lt;br /&gt;
=== DHCP Reservation Preservation ===&lt;br /&gt;
 Export all current reservations as a CSV file&lt;br /&gt;
 Sort by IP address and create new a new CSV file per subnet/vlan&lt;br /&gt;
 Create new DHCP scopes&lt;br /&gt;
 Import the matching CSV file per subnet/vlan&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VLAN Structure ===&lt;br /&gt;
&lt;br /&gt;
 One subnet to a vlan&lt;br /&gt;
  10.179.0.0/24 = VLAN 500 - Virtual machine network&lt;br /&gt;
  10.179.1.0/24 = VLAN 501 - Infrastructure - WAP&#039;s, switches, printers, physical servers, UPS&lt;br /&gt;
  10.179.2.0/24 = VLAN 502 - Company Owned computers/have reservations - Wired&lt;br /&gt;
  10.179.3.0/24 = VLAN 503 - Company Owned computers/have reservations - Wireless&lt;br /&gt;
  10.179.4.0/24 = VLAN 504 - Company or user owned trusted devices but no reservations&lt;br /&gt;
  10.179.5.0/24 = VLAN 505 - Growth, not currently in use&lt;br /&gt;
  10.179.6.0/24 = VLAN 506 - Growth, not currently in use&lt;br /&gt;
  10.179.7.0/24 = VLAN 507 - VPN pool - used by remote users - connectivity needs to be tested manually&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DevNet&amp;diff=52</id>
		<title>DevNet</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DevNet&amp;diff=52"/>
		<updated>2023-06-02T19:43:56Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Spacewalk Documentation =&lt;br /&gt;
== Lockdown Scripts ==&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Locking Down CentOS 7:                                                      &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp; &lt;br /&gt;
 &lt;br /&gt;
 echo &#039;CCE-27053-8 - Set Password Hashing Algorithm in /etc/libuser.conf&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 sed -i &#039;s~crypt_style.*~crypt_style = sha512~&#039; /etc/libuser.conf &lt;br /&gt;
 &lt;br /&gt;
 yum -y remove vasclnt &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yum -y install clamav &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 echo &#039;Installing oscap&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 yum -y --nogpgcheck install spacewalk-oscap scap-security-guide &amp;amp;&amp;gt;&amp;gt;  /root/ks-lockdown.log&lt;br /&gt;
 sed -i &#039;/&amp;lt;platform idref=&amp;quot;cpe:\/o:redhat:enterprise_linux:7&amp;quot;\/&amp;gt;/a \ \ &amp;lt;platform idref=&amp;quot;cpe:\/o:centos:centos:7&amp;quot; \/&amp;gt;&#039;  /usr/share/xml/scap/ssg/content/ssg-rhel7-xccdf.xml&lt;br /&gt;
 #sed -i &#039;s~idref=&amp;quot;audit_rules_privileged_commands&amp;quot; selected=&amp;quot;.*&amp;quot;~idref=&amp;quot;audit_rules_privileged_commands&amp;quot; selected=&amp;quot;false&amp;quot;~&#039;  /usr/share/xml/scap/ssg/content/ssg-centos7-xccdf.xml&lt;br /&gt;
 /usr/bin/oscap xccdf eval --profile stig-rhel7-server-upstream --remediate /usr/share/xml/scap/ssg/content/ssg-rhel7-xccdf.xml &amp;amp;&amp;gt;&amp;gt;  /root/ks-lockdown.log&lt;br /&gt;
 sed -i &amp;quot;s/MACs/\\nMACs/&amp;quot; /etc/ssh/sshd_config &lt;br /&gt;
 /usr/bin/oscap xccdf eval --profile stig-rhel7-server-upstream --oval-results --results ssg-rhel7-xccdf.xml.result.xml  /usr/share/xml/scap/ssg/content/ssg-rhel7-xccdf.xml &amp;amp;&amp;gt;&amp;gt;  /root/ks-lockdown.log&lt;br /&gt;
 /usr/bin/oscap xccdf generate report --oval-template ssg-rhel7-oval.xml.result.xml ssg-rhel7-xccdf.xml.result.xml &amp;gt; /root/stig-report-xccdf-oval.html&lt;br /&gt;
 &lt;br /&gt;
 echo &#039;CVE-2004-1653&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;\#AllowTcpForwarding yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/\#AllowTcpForwarding yes/AllowTcpForwarding no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2004-1653 (1 of 2) Already complete&#039; /root/ks-lockdown.log&lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;AllowTcpForwarding yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/AllowTcpForwarding yes/AllowTcpForwarding no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2004-1653 (2 of 2)Already complete&#039; /root/ks-lockdown.log&lt;br /&gt;
 &lt;br /&gt;
 echo &#039;CVE-2007-2243&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;\#ChallengeResponseAuthentication yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/\#ChallengeResponseAuthentication yes/ChallengeResponseAuthentication no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2007-2243 (1 of 2) Already complete&#039; /root/ks-lockdown.log &lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;ChallengeResponseAuthentication yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/ChallengeResponseAuthentication yes/ChallengeResponseAuthentication no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2007-2243 (2 of 2) Already complete&#039; /root/ks-lockdown.log &lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
 https://copr-be.cloud.fedoraproject.org/results/openscapmaint/openscap-latest/epel-7-x86_64/&lt;br /&gt;
&lt;br /&gt;
= Spacewalk Installation Instructions =&lt;br /&gt;
== Installing Spacewalk ==&lt;br /&gt;
&lt;br /&gt;
[https://fedorahosted.org/spacewalk/wiki/HowToInstall How-to]&lt;br /&gt;
&lt;br /&gt;
== Joining a Client (Centos 6) to Spacewalk ==&lt;br /&gt;
&#039;&#039;&#039;On the Client as root, run:&#039;&#039;&#039;&lt;br /&gt;
 mkdir reg-rpms&lt;br /&gt;
 cd reg-rpms&lt;br /&gt;
 wget http://spacewalk/pub/register/rhn-check-2.2.7-1.el6.noarch.rpm http://spacewalk/pub/register/rhn-client-tools-2.2.7-1.el6.noarch.rpm  http://spacewalk/pub/register/rhn-setup-2.2.7-1.el6.noarch.rpm http://spacewalk/pub/register/rhncfg-5.10.73-1.el6.noarch.rpm http://spacewalk/pub/register/rhncfg-actions-5.10.73-1.el6.noarch.rpm http://spacewalk/pub/register/rhncfg-client-5.10.73-1.el6.noarch.rpm http://spacewalk/pub/register/rhnsd-5.0.14-1.el6.x86_64.rpm http://spacewalk/pub/register/yum-rhn-plugin-2.2.7-1.el6.noarch.rpm http://spacewalk/pub/register/m2crypto-0.20.2-9.el6.x86_64.rpm http://spacewalk/pub/register/python-dmidecode-3.10.13-3.el6_4.x86_64.rpm http://spacewalk/pub/register/python-gudev-147.1-4.el6_0.1.x86_64.rpm http://spacewalk/pub/register/python-hwdata-1.7.3-1.el6.noarch.rpm &lt;br /&gt;
 yum -y localinstall rhn-setup-2.2.7-1.el6.noarch.rpm rhnsd-5.0.14-1.el6.x86_64.rpm rhn-check-2.2.7-1.el6.noarch.rpm rhn-client-tools-2.2.7-1.el6.noarch.rpm yum-rhn-plugin-2.2.7-1.el6.noarch.rpm m2crypto-0.20.2-9.el6.x86_64.rpm python-dmidecode-3.10.13-3.el6_4.x86_64.rpm python-hwdata-1.7.3-1.el6.noarch.rpm python-gudev-147.1-4.el6_0.1.x86_64.rpm&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf reg-rpms&lt;br /&gt;
 mkdir keys&lt;br /&gt;
 cd keys&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release5 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2014 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2012 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2010 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2008&lt;br /&gt;
 rpm --import *&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf keys/&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/script&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/script/run&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/configfiles&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/configfiles/all&lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT   &lt;br /&gt;
 perl -npe &#039;s/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g&#039; -i /etc/sysconfig/rhn/*&lt;br /&gt;
 rhnreg_ks --serverUrl=https://spacewalk.devnet.prv/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-97d994ea86b8f4ce665d6ef01546834b,1-centos6&lt;br /&gt;
&lt;br /&gt;
== Joining a Client (Centos 7) to Spacewalk ==&lt;br /&gt;
&#039;&#039;&#039;On the Client as root, run:&#039;&#039;&#039;&lt;br /&gt;
 mkdir reg-rpms&lt;br /&gt;
 cd reg-rpms&lt;br /&gt;
 wget http://spacewalk/pub/register/centos7/jabberpy-0.5-0.27.el7.noarch.rpm http://spacewalk/pub/register/centos7/osad-5.11.57-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/python-hwdata-1.7.3-4.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhncfg-5.10.83-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhncfg-actions-5.10.83-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhncfg-client-5.10.83-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhn-check-2.3.16-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhn-client-tools-2.3.16-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhnsd-5.0.15-1.el7.x86_64.rpm http://spacewalk/pub/register/centos7/rhn-setup-2.3.16-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/yum-rhn-plugin-2.3.3-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/osa-common-5.11.57-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhnlib-2.5.75-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/systemd-sysv-208-20.el7.x86_64.rpm http://spacewalk/pub/register/centos7/systemd-208-20.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-2.7.5-16.el7.x86_64.rpm http://spacewalk/pub/register/centos7/libnl-1.1.4-3.el7.x86_64.rpm http://spacewalk/pub/register/centos7/libxml2-python-2.9.1-5.el7_0.1.x86_64.rpm http://spacewalk/pub/register/centos7/m2crypto-0.21.1-15.el7.x86_64.rpm http://spacewalk/pub/register/centos7/pygobject2-2.28.6-11.el7.x86_64.rpm http://spacewalk/pub/register/centos7/pyOpenSSL-0.13.1-3.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-dmidecode-3.10.13-11.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-ethtool-0.8-5.el7.x86_64.rpm http://spacewalk/pub/register/centos7/usermode-1.111-5.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-gudev-147.2-7.el7.x86_64.rpm http://spacewalk/pub/register/centos7/libxml2-python-2.9.1-5.el7_1.2.x86_64.rpm&lt;br /&gt;
 yum -y localinstall jabberpy-0.5-0.27.el7.noarch.rpm python-hwdata-1.7.3-4.el7.noarch.rpm rhncfg-actions-5.10.83-1.el7.noarch.rpm rhn-check-2.3.16-1.el7.noarch.rpm rhnsd-5.0.15-1.el7.x86_64.rpm yum-rhn-plugin-2.3.3-1.el7.noarch.rpm osad-5.11.57-1.el7.noarch.rpm rhncfg-5.10.83-1.el7.noarch.rpm rhncfg-client-5.10.83-1.el7.noarch.rpm rhn-client-tools-2.3.16-1.el7.noarch.rpm rhn-setup-2.3.16-1.el7.noarch.rpm systemd-sysv-208-20.el7.x86_64.rpm rhnlib-2.5.75-1.el7.noarch.rpm osa-common-5.11.57-1.el7.noarch.rpm libnl-1.1.4-3.el7.x86_64.rpm m2crypto-0.21.1-15.el7.x86_64.rpm pygobject2-2.28.6-11.el7.x86_64.rpm pyOpenSSL-0.13.1-3.el7.x86_64.rpm python-dmidecode-3.10.13-11.el7.x86_64.rpm python-ethtool-0.8-5.el7.x86_64.rpm usermode-1.111-5.el7.x86_64.rpm python-gudev-147.2-7.el7.x86_64.rpm libxml2-python-2.9.1-5.el7_1.2.x86_64.rpm&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf reg-rpms&lt;br /&gt;
 mkdir keys&lt;br /&gt;
 cd keys&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release5 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2014 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2012 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2010 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2008&lt;br /&gt;
 rpm --import *&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf keys/&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/script&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/script/run&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/configfiles&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/configfiles/all&lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT   &lt;br /&gt;
 perl -npe &#039;s/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g&#039; -i /etc/sysconfig/rhn/*&lt;br /&gt;
 rhnreg_ks --serverUrl=https://spacewalk.devnet.prv/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-centos7&lt;br /&gt;
&lt;br /&gt;
== Building RPM&#039;s ==&lt;br /&gt;
https://fedoraproject.org/wiki/How_to_create_an_RPM_package#Preparing_your_system&lt;br /&gt;
&lt;br /&gt;
== Finding GPG key ID and fingerprint ==&lt;br /&gt;
 gpg --with-fingerprint RPM-GPG-KEY-redhat-release5&lt;br /&gt;
&lt;br /&gt;
Output (First highlighted area is the ID and the Second is the fingerprint):&lt;br /&gt;
 pub  1024D/&amp;lt;span style=&amp;quot;background:#FFFF00&amp;quot;&amp;gt;37017186&amp;lt;/span&amp;gt; 2006-12-06 Red Hat, Inc. (release key) &amp;lt;security@redhat.com&amp;gt;&lt;br /&gt;
      Key fingerprint = &amp;lt;span style=&amp;quot;background:#FFFF00&amp;quot;&amp;gt;47DB 2877 89B2 1722 B6D9  5DDE 5326 8101 3701 7186&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Import GPG key on Servers ==&lt;br /&gt;
=== Centos 6 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-6&lt;br /&gt;
 rpm --import RPM-GPG-KEY-EPEL-6 RPM-GPG-KEY-CentOS-6&lt;br /&gt;
 rm -f RPM-GPG-KEY-EPEL-6 RPM-GPG-KEY-CentOS-6&lt;br /&gt;
&lt;br /&gt;
=== Centos 7 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-7&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 rpm --import RPM-GPG-KEY-EPEL-7 RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 rm -f RPM-GPG-KEY-EPEL-7 RPM-GPG-KEY-CentOS-7&lt;br /&gt;
&lt;br /&gt;
=== RHEL 5 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release5&lt;br /&gt;
 rpm --import RPM-GPG-KEY-redhat-release5&lt;br /&gt;
 rm -f RPM-GPG-KEY-redhat-release5&lt;br /&gt;
&lt;br /&gt;
=== RHEL 6 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release6&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6&lt;br /&gt;
 rpm --import RPM-GPG-KEY-redhat-release6 RPM-GPG-KEY-EPEL-6&lt;br /&gt;
 rm -f RPM-GPG-KEY-redhat-release6 RPM-GPG-KEY-EPEL-6&lt;br /&gt;
&lt;br /&gt;
== Configure PXE Booting ==&lt;br /&gt;
=== Change PXE Menu Names ===&lt;br /&gt;
vi /etc/cobbler/pxe/pxeprofile.template&lt;br /&gt;
 #set $new_name = $profile_name.replace(&#039;:1:SpacewalkDefaultOrganization&#039;, &#039; &#039;)&lt;br /&gt;
 #set $new_menu_label = $menu_label.replace(&#039;:1:SpacewalkDefaultOrganization&#039;, &#039; &#039;)&lt;br /&gt;
 LABEL $new_name&lt;br /&gt;
         MENU PASSWD&lt;br /&gt;
         kernel $kernel_path&lt;br /&gt;
         $new_menu_label&lt;br /&gt;
         $append_line&lt;br /&gt;
         ipappend 2&lt;br /&gt;
Update PXE files&lt;br /&gt;
 cobbler sync&lt;br /&gt;
 cat /var/lib/tftpboot/pxelinux.cfg/default&lt;br /&gt;
&lt;br /&gt;
=== Add Password, Background, and WindowsDeployment to PXE Menu ===&lt;br /&gt;
vi /etc/cobbler/pxe/pxedefault.template&lt;br /&gt;
 DEFAULT vesamenu.c32&lt;br /&gt;
 PROMPT 0&lt;br /&gt;
 MENU TITLE DevNet Image Central&lt;br /&gt;
 MENU BACKGROUND /devnetSplash.png&lt;br /&gt;
 MENU MARGIN 1&lt;br /&gt;
 MENU ROWS 15&lt;br /&gt;
 MENU COLOR BORDER       30;44     #ffffffff #00000000 std&lt;br /&gt;
 MENU COLOR TITLE        1;36;44   #ffffffff #00000000 std&lt;br /&gt;
 MENU COLOR UNSEL        37;44     #ffffffff #00000000 std&lt;br /&gt;
 MENU COLOR TIMEOUT_MSG  37;40     #ffffffff #00000000 std&lt;br /&gt;
 MENU MASTER PASSWD $1$YVi/j0hL$a6SdxIUHZCA7jFisNZh6O/&lt;br /&gt;
 TIMEOUT 80&lt;br /&gt;
 TOTALTIMEOUT 6000&lt;br /&gt;
 ONTIMEOUT $pxe_timeout_profile&lt;br /&gt;
 LABEL local&lt;br /&gt;
         MENU LABEL (Boot Local System)&lt;br /&gt;
         MENU DEFAULT&lt;br /&gt;
         LOCALBOOT 0  &lt;br /&gt;
 $pxe_menu_items&lt;br /&gt;
 LABEL WindowsDeployment&lt;br /&gt;
         MENU LABEL Windows Deployment&lt;br /&gt;
         MENU PASSWD&lt;br /&gt;
         PXE tftp://10.81.49.27/pxelinux.0 &lt;br /&gt;
 MENU end&lt;br /&gt;
== Setup Pam Authentication w/ VAS ==&lt;br /&gt;
* Put the following in /etc/pam.d/rhn-satellite&lt;br /&gt;
 #%PAM-1.0&lt;br /&gt;
 auth        required      pam_env.so&lt;br /&gt;
 auth        sufficient    pam_vas3.so&lt;br /&gt;
 auth        required      pam_deny.so&lt;br /&gt;
 account     sufficient    pam_vas3.so&lt;br /&gt;
 account     requisite     pam_vas3.so echo_return&lt;br /&gt;
 account     required      pam_unix.so broken_shadow&lt;br /&gt;
* Add the following line to /etc/rhn/rhn.conf&lt;br /&gt;
 pam_auth_service = rhn-satellite&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
=== Client Yum Errors ===&lt;br /&gt;
&#039;&#039;&#039;Error: Cannot retrieve repository metadata (repomd.xml) for repository: &amp;lt;channel&amp;gt; Please verify its path and try again.&#039;&#039;&#039;&lt;br /&gt;
* Client Side:     Check /etc/sysconfig/rhn/up2date and make sure that the spacewalk URL is Fully Qualified.&lt;br /&gt;
* Spacewalk Side:  Check /var/cache/rhn/repodata/&amp;lt;channel&amp;gt;/&lt;br /&gt;
** If noyumrepo.txt exists log into the Web GUI and manage channels. Make sure that the channel Checksum Type is not set to &#039;None&#039;.&lt;br /&gt;
=== Kickstart Errors ===&lt;br /&gt;
&#039;&#039;&#039;Installing error populating transaction, retrying (1/10)&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;error populating transaction after 10 retries: failure: getPackage/&amp;lt;package name&amp;gt; from &amp;lt;repo name&amp;gt;: [Errno 256] No more mirrors to try.&#039;&#039;&#039;&lt;br /&gt;
* Spacewalk Side:  Try running the following command:&lt;br /&gt;
 chmod -R 777 /var/satellite/redhat/1/&lt;br /&gt;
&lt;br /&gt;
= Spacewalk Scripts =&lt;br /&gt;
==cleanupPackages==&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 # Script that uses RHN API to cleanup obsolete packages&lt;br /&gt;
 # on Spacewalk server.&lt;br /&gt;
 # Copyright (C) 2012  Nicolas PRADELLES&lt;br /&gt;
 #&lt;br /&gt;
 # Author: Nicolas PRADELLES (npradelles@eutelsat.fr)&lt;br /&gt;
 #&lt;br /&gt;
 # This library is free software; you can redistribute it and/or&lt;br /&gt;
 # modify it under the terms of the GNU Lesser General Public&lt;br /&gt;
 # License as published by the Free Software Foundation; either&lt;br /&gt;
 # version 2.1 of the License, or (at your option) any later version.&lt;br /&gt;
 #&lt;br /&gt;
 # This library is distributed in the hope that it will be useful,&lt;br /&gt;
 # but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU&lt;br /&gt;
 # Lesser General Public License for more details.&lt;br /&gt;
 #&lt;br /&gt;
 # You should have received a copy of the GNU Lesser General Public&lt;br /&gt;
 # License along with this library; if not, write to the Free Software&lt;br /&gt;
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA&lt;br /&gt;
 #&lt;br /&gt;
 # Version Information:&lt;br /&gt;
 #&lt;br /&gt;
 # 0.1 - 2012-04-17 - Nicolas PRADELLES&lt;br /&gt;
 &lt;br /&gt;
 LOGIN=&#039;droessne&#039;&lt;br /&gt;
 PASS=&#039;&#039;&lt;br /&gt;
 SRV=&#039;localhost&#039;&lt;br /&gt;
 DIR=&#039;/tmp&#039;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 # extract spacewalk channels&lt;br /&gt;
 CHANNELS=(`spacecmd -s $SRV -u $LOGIN -p $PASS -q softwarechannel_list`)&lt;br /&gt;
 # string cleanup to remove &amp;quot;esc[?1034h&amp;quot; in line beginning&lt;br /&gt;
 CHANNELS=${CHANNELS:8:${#CHANNELS}}&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 TOTALSIZE=0&lt;br /&gt;
 &lt;br /&gt;
 # For each channel&lt;br /&gt;
 for CHANNEL in ${CHANNELS[@]}; do&lt;br /&gt;
 &lt;br /&gt;
         echo -e &amp;quot;################\n$CHANNEL\n################&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
         # extract all packages in channel&lt;br /&gt;
         spacecmd -s $SRV -u $LOGIN -p $PASS -q softwarechannel_listallpackages $CHANNEL &amp;gt; $DIR/$CHANNEL.tmp&lt;br /&gt;
         sed &#039;1s/^.\{8\}//&#039; $DIR/$CHANNEL.tmp &amp;gt; $DIR/$CHANNEL.all&lt;br /&gt;
 &lt;br /&gt;
         sort $DIR/$CHANNEL.all -o $DIR/$CHANNEL.all&lt;br /&gt;
 &lt;br /&gt;
         # extract latest packages in channel&lt;br /&gt;
         spacecmd -s $SRV -u $LOGIN -p $PASS -q softwarechannel_listpackages $CHANNEL &amp;gt; $DIR/$CHANNEL.tmp&lt;br /&gt;
         sed &#039;1s/^.\{8\}//&#039; $DIR/$CHANNEL.tmp &amp;gt; $DIR/$CHANNEL.latest&lt;br /&gt;
         sort $DIR/$CHANNEL.latest -o $DIR/$CHANNEL.latest&lt;br /&gt;
 &lt;br /&gt;
         # diff to find obsolete packages&lt;br /&gt;
         comm -23 $DIR/$CHANNEL.all $DIR/$CHANNEL.latest &amp;gt; $DIR/$CHANNEL.old&lt;br /&gt;
 &lt;br /&gt;
         DELETED=0&lt;br /&gt;
 &lt;br /&gt;
         # if we have found obsolete packages&lt;br /&gt;
         if [[ `wc -l &amp;lt; $DIR/$CHANNEL.old` -gt 0 ]]; then&lt;br /&gt;
                 # check if the old package is installed on a managed client&lt;br /&gt;
                 while read PACKAGE; do&lt;br /&gt;
                         echo $PACKAGE&lt;br /&gt;
                         SYSTEMS=(`spacecmd -s $SRV -u $LOGIN -p $PASS -q package_listinstalledsystems $PACKAGE`)&lt;br /&gt;
                         SYSTEMS=${SYSTEMS:8:${#SYSTEMS}}&lt;br /&gt;
 &lt;br /&gt;
                         # If this package is not installed on a managed client&lt;br /&gt;
                         if [[ ${#SYSTEMS[@]} -eq 2 ]]; then&lt;br /&gt;
                                 # delete the package in the channel&lt;br /&gt;
                                  spacecmd -s $SRV -u $LOGIN -p $PASS -q -y softwarechannel_removepackages $CHANNEL $PACKAGE &amp;gt; /dev/null&lt;br /&gt;
                                 let DELETED=$DELETED+1&lt;br /&gt;
 &lt;br /&gt;
                         fi&lt;br /&gt;
                 done &amp;lt; $DIR/$CHANNEL.old&lt;br /&gt;
         fi&lt;br /&gt;
 &lt;br /&gt;
         echo &amp;quot;$CHANNEL: ALL=`wc -l &amp;lt; $DIR/$CHANNEL.all`, LATEST=`wc -l &amp;lt; $DIR/$CHANNEL.latest`, OLD=`wc -l &amp;lt; $DIR/$CHANNEL.old`, DELETED=$DELETED&amp;quot;&lt;br /&gt;
         rm -f $DIR/$CHANNEL.*&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 # delete orphaned packages&lt;br /&gt;
 spacecmd -s $SRV -u $LOGIN -p $PASS -q -y package_removeorphans &amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 # delete orphaned packages on disk&lt;br /&gt;
 spacewalk-data-fsck -r -S -C -O&lt;br /&gt;
&lt;br /&gt;
==convertISOtoKickstartTree==&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 ISO=$1&lt;br /&gt;
 if [[ $ISO == &#039;&#039; ]]; then&lt;br /&gt;
   echo &amp;quot;USAGE: convertISOtoKickstartableTree.sh &amp;lt;linux.iso&amp;gt;&amp;quot;&lt;br /&gt;
 else&lt;br /&gt;
   NAME=`echo $ISO | rev | cut -d &#039;/&#039; -f 1 | rev | sed &#039;s/-dvd.iso//&#039;`&lt;br /&gt;
   mkdir -p /kickiso&lt;br /&gt;
   mount -o loop $ISO /kickiso &amp;gt; 2&amp;amp;&amp;gt;/dev/null&lt;br /&gt;
   mkdir -p /var/satellite/rhn/kickstart/$NAME&lt;br /&gt;
   cp -Ruf /kickiso/* /var/satellite/rhn/kickstart/$NAME/&lt;br /&gt;
   umount /kickiso&lt;br /&gt;
   rm -rf /kickiso&lt;br /&gt;
   cd /var/satellite/rhn/kickstart/$NAME &lt;br /&gt;
   find -type f -name &#039;*.rpm&#039; -exec rm -f {} \;&lt;br /&gt;
   chmod 777 .&lt;br /&gt;
 fi&lt;br /&gt;
&lt;br /&gt;
==createKickstartISO==&lt;br /&gt;
 #yum -y install syslinux &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 mkdir -p isolinux&lt;br /&gt;
 rm -rf dren-ks.iso&lt;br /&gt;
 rm -rf isolinux/*&lt;br /&gt;
 cp -R /usr/share/syslinux/* isolinux/&lt;br /&gt;
 cp -a ../centos7-latest/isolinux/* isolinux/&lt;br /&gt;
 rm -rf isolinux/isolinux.cfg isolinux/splash.png&lt;br /&gt;
 cp /var/lib/tftpboot/pxelinux.cfg/default isolinux/isolinux.cfg&lt;br /&gt;
 cp /var/lib/tftpboot/splash.png isolinux/splash.png&lt;br /&gt;
 sed -i &#039;/vmlinuz/c\        kernel vmlinuz &#039; isolinux/isolinux.cfg&lt;br /&gt;
 sed -i &#039;s/\(initrd\).*\(initrd.img\)/initrd=initrd.img/g&#039; isolinux/isolinux.cfg&lt;br /&gt;
 mkisofs -o dren-ks.iso -c isolinux/boot.cat -b isolinux/isolinux.bin -no-emul-boot   -boot-load-size 4 -boot-info-table -J -l -r -T -v -V &amp;quot;DREN Kickstart CD&amp;quot; .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 sudo su -&lt;br /&gt;
 cd /var/satellite/rhn/kickstart/1/ISO&lt;br /&gt;
 ./createKickstartISO.sh&lt;br /&gt;
 mv dren-ks.iso &amp;lt;destination directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==exportAllChannels==&lt;br /&gt;
 DIRECTORY=&amp;quot;/projects/SpacewalkExports&amp;quot;&lt;br /&gt;
 CHANNELS=`rhn-satellite-exporter --list-channels | egrep -v &#039;=&#039; | egrep -v Channel | grep &#039;B\|C&#039; | awk &#039;{ print $2 }&#039;`&lt;br /&gt;
 mkdir -p $DIRECTORY/working&lt;br /&gt;
 CMD=&amp;quot; rhn-satellite-exporter --start-date=&#039;`cat /usr/share/rhn/scripts/lastexportdate.txt`&#039; --make-isos=dvd -d &amp;quot;$DIRECTORY&amp;quot;/working/&amp;quot;&lt;br /&gt;
 for channel in $CHANNELS; do&lt;br /&gt;
   CMD=$CMD&amp;quot; -c &amp;quot;$channel&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 eval $CMD&lt;br /&gt;
 &lt;br /&gt;
 mv $DIRECTORY/working/satellite-isos/*.iso $DIRECTORY/&lt;br /&gt;
 rsync -a --delete /empty/ $DIRECTORY/working/&lt;br /&gt;
 #rm -rf $DIRECTORY/working&lt;br /&gt;
 date +%Y%m%d &amp;gt; /usr/share/rhn/scripts/lastexportdate.txt&lt;br /&gt;
&lt;br /&gt;
==findAndGetKickstartTree==&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 echo &#039;########################################################################&#039;  &amp;gt;&amp;gt; /var/log/scripts/findAndGetKickstartTree.log&lt;br /&gt;
 date &amp;gt;&amp;gt; /var/log/scripts/findAndGetKickstartTree.log&lt;br /&gt;
 cobbler sync 2&amp;amp;&amp;gt;/dev/null&lt;br /&gt;
 &lt;br /&gt;
 CENT7LATEST=`curl --silent http://mirror.centos.org/centos/ | grep folder | grep &amp;quot;&amp;gt;7\.&amp;quot; | cut -d &#039;&amp;quot;&#039; -f 8 | cut -d &#039;/&#039; -f 1 | sort -g | tail -1`&lt;br /&gt;
 CENT6LATEST=`curl --silent http://mirror.centos.org/centos/ | grep folder | grep &amp;quot;&amp;gt;6\.&amp;quot; | cut -d &#039;&amp;quot;&#039; -f 8 | cut -d &#039;/&#039; -f 1 | sort -g | tail -1`&lt;br /&gt;
 &lt;br /&gt;
 /usr/share/rhn/scripts/mk-KickstartTree.py --release $CENT7LATEST --arch x86_64 --target /var/satellite/rhn/kickstart --mirror http://mirror.centos.org/centos/ -b centos7 -c  2&amp;amp;&amp;gt;&amp;gt; /var/log/scripts/findAndGetKickstartTree.log&lt;br /&gt;
 &lt;br /&gt;
 /usr/share/rhn/scripts/mk-KickstartTree.py --release $CENT6LATEST --arch x86_64 --target /var/satellite/rhn/kickstart --mirror http://mirror.centos.org/centos/ -b centos6 -c  2&amp;amp;&amp;gt;&amp;gt; /var/log/scripts/findAndGetKickstartTree.log&lt;br /&gt;
 &lt;br /&gt;
 cobbler sync 2&amp;amp;&amp;gt;/dev/null&lt;br /&gt;
 date &amp;gt;&amp;gt; /var/log/scripts/findAndGetKickstartTree.log &lt;br /&gt;
 echo &#039;########################################################################&#039;  &amp;gt;&amp;gt; /var/log/scripts/findAndGetKickstartTree.log&lt;br /&gt;
&lt;br /&gt;
==getCompletedActionId==&lt;br /&gt;
 #!/usr/bin/python&lt;br /&gt;
 import xmlrpclib&lt;br /&gt;
 import time&lt;br /&gt;
 from datetime import datetime&lt;br /&gt;
 from space_cred import *&lt;br /&gt;
 SPACEWALK_USER, SPACEWALK_PASSWORD = space_cred()&lt;br /&gt;
 &lt;br /&gt;
 SPACEWALK_URL = &amp;quot;http://spacewalk.devnet.prv/rpc/api&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 CLIENT = xmlrpclib.Server(SPACEWALK_URL, verbose=0)&lt;br /&gt;
 KEY = CLIENT.auth.login(SPACEWALK_USER, SPACEWALK_PASSWORD)&lt;br /&gt;
 ACTIONS = CLIENT.schedule.listCompletedActions(KEY)&lt;br /&gt;
 &lt;br /&gt;
 print &amp;quot;-----------------------------------&amp;quot;&lt;br /&gt;
 for A in ACTIONS:&lt;br /&gt;
         print &amp;quot;Action Name: &amp;quot;+A[&#039;name&#039;]&lt;br /&gt;
         print &amp;quot;Action ID: &amp;quot;+str(A[&#039;id&#039;])&lt;br /&gt;
         print &amp;quot;-----------------------------------&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 CLIENT.auth.logout(KEY)&lt;br /&gt;
&lt;br /&gt;
==getServerIds==&lt;br /&gt;
 #!/usr/bin/python&lt;br /&gt;
 import xmlrpclib&lt;br /&gt;
 import time&lt;br /&gt;
 from datetime import datetime&lt;br /&gt;
 from space_cred import *&lt;br /&gt;
 SPACEWALK_USER, SPACEWALK_PASSWORD = space_cred()&lt;br /&gt;
 &lt;br /&gt;
 SPACEWALK_URL = &amp;quot;http://spacewalk.devnet.prv/rpc/api&amp;quot; &lt;br /&gt;
 &lt;br /&gt;
 CLIENT = xmlrpclib.Server(SPACEWALK_URL, verbose=0)&lt;br /&gt;
 KEY = CLIENT.auth.login(SPACEWALK_USER, SPACEWALK_PASSWORD)&lt;br /&gt;
 LIST = CLIENT.system.listSystems(KEY)&lt;br /&gt;
 &lt;br /&gt;
 print &amp;quot;-----------------------------------&amp;quot;&lt;br /&gt;
 for L in LIST:&lt;br /&gt;
         print &amp;quot;Server Name: &amp;quot;+L[&#039;name&#039;]&lt;br /&gt;
         print &amp;quot;Server ID: &amp;quot;+str(L[&#039;id&#039;])&lt;br /&gt;
         print &amp;quot;-----------------------------------&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 CLIENT.auth.logout(KEY)&lt;br /&gt;
&lt;br /&gt;
==makeKickstartTree==&lt;br /&gt;
 #!/usr/bin/env python&lt;br /&gt;
 from optparse import OptionParser&lt;br /&gt;
 import sys&lt;br /&gt;
 import os&lt;br /&gt;
 import shutil&lt;br /&gt;
 import xmlrpclib&lt;br /&gt;
 import getpass&lt;br /&gt;
 import stat&lt;br /&gt;
 &lt;br /&gt;
   &lt;br /&gt;
 #defining default mirrors&lt;br /&gt;
 default_centos=&amp;quot;http://mirror.centos.org/centos&amp;quot;&lt;br /&gt;
 default_scientific=&amp;quot;http://ftp.scientificlinux.org/linux/scientific&amp;quot;&lt;br /&gt;
 default_fedora=&amp;quot;http://mirrors.kernel.org/fedora&amp;quot;&lt;br /&gt;
 default_folders=[&amp;quot;images&amp;quot;,&amp;quot;isolinux&amp;quot;,&amp;quot;repodata&amp;quot;]&lt;br /&gt;
 &lt;br /&gt;
 if __name__ == &amp;quot;__main__&amp;quot;:&lt;br /&gt;
         #define description, version and load parser&lt;br /&gt;
         desc=&#039;&#039;&#039;%prog is used to create kickstartable distribution trees of EL-like distros like CentOS, Fedora and ScientificLinux.  Optionally you can also create kickstart distributions on Spacewalk, Red Hat Satellite and SUSE Manager. Login credentials are assigned using the following shell variables:&lt;br /&gt;
         SATELLITE_LOGIN username&lt;br /&gt;
         SATELLITE_PASSWORD password&lt;br /&gt;
         It is also possible to create an authfile (permissions 0600) for usage with this script. The first line needs to contain the   username, the second line should consist of the appropriate password.&lt;br /&gt;
         If you&#039;re not defining variables or an authfile you will be prompted to enter your login information.&lt;br /&gt;
         Checkout the GitHub page for updates: https://github.com/stdevel/mkelfs&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
         parser = OptionParser(description=desc,version=&amp;quot;%prog version 0.4&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-r / --release&lt;br /&gt;
         parser.add_option(&amp;quot;-r&amp;quot;, &amp;quot;--release&amp;quot;, action=&amp;quot;store&amp;quot;, type=&amp;quot;string&amp;quot;, dest=&amp;quot;release&amp;quot;, help=&amp;quot;define which release to use (e.g. 6.5)&amp;quot;, metavar=&amp;quot;RELEASE&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-x / --arch&lt;br /&gt;
         parser.add_option(&amp;quot;-x&amp;quot;, &amp;quot;--arch&amp;quot;, action=&amp;quot;store&amp;quot;, type=&amp;quot;string&amp;quot;, dest=&amp;quot;arch&amp;quot;, help=&amp;quot;define which architecture to use (e.g. x86_64)&amp;quot;, metavar=&amp;quot;ARCH&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-t / --target&lt;br /&gt;
         parser.add_option(&amp;quot;-t&amp;quot;, &amp;quot;--target&amp;quot;, action=&amp;quot;store&amp;quot;, type=&amp;quot;string&amp;quot;, dest=&amp;quot;target&amp;quot;, default=&amp;quot;/var/satellite/kickstart_tree&amp;quot;, help=&amp;quot;define where to store kickstart files. A subfolder will be created automatically. (default: /var/satellite/kickstart_tree)&amp;quot;, metavar=&amp;quot;DIR&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-m / --mirror&lt;br /&gt;
         parser.add_option(&amp;quot;-m&amp;quot;, &amp;quot;--mirror&amp;quot;, dest=&amp;quot;mirror&amp;quot;, action=&amp;quot;store&amp;quot;, type=&amp;quot;string&amp;quot;, help=&amp;quot;define a valid EL mirror to use - DON&#039;T add the trailing slash! Have a loot at the EL mirror list (e.g. http://www.centos.org/download/mirrors) for alternatives&amp;quot;, metavar=&amp;quot;MIRROR&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-o / --distribution&lt;br /&gt;
         parser.add_option(&amp;quot;-o&amp;quot;, &amp;quot;--distro&amp;quot;, dest=&amp;quot;distro&amp;quot;, default=&amp;quot;centos&amp;quot;, action=&amp;quot;store&amp;quot;, type=&amp;quot;string&amp;quot;, help=&amp;quot;defines for which distro the files are downloaded (default: centos) - other possible values: fedora, scientific&amp;quot;, metavar=&amp;quot;DISTRO&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-f / --force&lt;br /&gt;
         parser.add_option(&amp;quot;-f&amp;quot;, &amp;quot;--force&amp;quot;, dest=&amp;quot;force&amp;quot;, default=False, action=&amp;quot;store_true&amp;quot;, help=&amp;quot;defines whether pre-existing kickstart files shall be overwritten&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-i / --ignore-existing&lt;br /&gt;
         parser.add_option(&amp;quot;-i&amp;quot;, &amp;quot;--ignore-existing&amp;quot;, dest=&amp;quot;ignoreExisting&amp;quot;, default=False, action=&amp;quot;store_true&amp;quot;, help=&amp;quot;don&#039;t throw errors if downloaded files are already existing (e.g. testing purposes)&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-q / --quiet&lt;br /&gt;
         parser.add_option(&amp;quot;-q&amp;quot;, &amp;quot;--quiet&amp;quot;, action=&amp;quot;store_false&amp;quot;, dest=&amp;quot;verbose&amp;quot;, default=True, help=&amp;quot;don&#039;t print status messages to stdout&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-d / --debug&lt;br /&gt;
         parser.add_option(&amp;quot;-d&amp;quot;, &amp;quot;--debug&amp;quot;, dest=&amp;quot;debug&amp;quot;, default=False, action=&amp;quot;store_true&amp;quot;, help=&amp;quot;enable debugging outputs&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-c / --create-distribution&lt;br /&gt;
         parser.add_option(&amp;quot;-c&amp;quot;, &amp;quot;--create-distribution&amp;quot;, dest=&amp;quot;createDistribution&amp;quot;, default=False, action=&amp;quot;store_true&amp;quot;, help=&amp;quot;creates a kickstart distribution on the Spacewalk / Red Hat Satellite or SUSE Manager server&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-b / --base-channel&lt;br /&gt;
         parser.add_option(&amp;quot;-b&amp;quot;, &amp;quot;--base-channel&amp;quot;, dest=&amp;quot;baseChannel&amp;quot;, type=&amp;quot;string&amp;quot;, default=&amp;quot;&amp;quot;, help=&amp;quot;defines the name of the distro base-channel&amp;quot;, metavar=&amp;quot;CHANNEL&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-a / --authfile&lt;br /&gt;
         parser.add_option(&amp;quot;-a&amp;quot;, &amp;quot;--authfile&amp;quot;, dest=&amp;quot;authfile&amp;quot;, metavar=&amp;quot;FILE&amp;quot;, default=&amp;quot;&amp;quot;, help=&amp;quot;defines an auth file to use instead of shell variables&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #-s / --server&lt;br /&gt;
         parser.add_option(&amp;quot;-s&amp;quot;, &amp;quot;--server&amp;quot;, dest=&amp;quot;server&amp;quot;, metavar=&amp;quot;SERVER&amp;quot;, default=&amp;quot;localhost&amp;quot;, help=&amp;quot;defines the server to use&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
         #parse arguments&lt;br /&gt;
         (options, args) = parser.parse_args()&lt;br /&gt;
 &lt;br /&gt;
         #check whether all required options are given&lt;br /&gt;
         if options.release is None and options.arch is None:&lt;br /&gt;
                 parser.error(&amp;quot;missing values for release and arch!&amp;quot;)&lt;br /&gt;
         else:&lt;br /&gt;
                 #make options being lower-case in case you missed it&lt;br /&gt;
                 options.distro = str(options.distro).lower()&lt;br /&gt;
                 options.release = str(options.release).lower()&lt;br /&gt;
                 options.arch = str(options.arch).lower()&lt;br /&gt;
 &lt;br /&gt;
                 #setup default mirror URL (if no other defined) depending on selected distro&lt;br /&gt;
                 if options.mirror == None:&lt;br /&gt;
                         if str(options.distro).lower() == &amp;quot;scientific&amp;quot;: options.mirror = default_scientific&lt;br /&gt;
                         if str(options.distro).lower() == &amp;quot;fedora&amp;quot;: options.mirror = default_fedora&lt;br /&gt;
                         if str(options.distro).lower() == &amp;quot;centos&amp;quot;: options.mirror = default_centos&lt;br /&gt;
                 if str(options.distro).lower() == &amp;quot;scientific&amp;quot;: url = options.mirror+&amp;quot;/&amp;quot;+options.release+&amp;quot;/&amp;quot;+options.arch+&amp;quot;/os&amp;quot;&lt;br /&gt;
                 elif str(options.distro).lower() == &amp;quot;fedora&amp;quot;: url = options.mirror+&amp;quot;/releases/&amp;quot;+options.release+&amp;quot;/Fedora/&amp;quot;+options.arch+&amp;quot;/os&amp;quot;&lt;br /&gt;
                 else: url = options.mirror+&amp;quot;/&amp;quot;+options.release+&amp;quot;/os/&amp;quot;+options.arch&lt;br /&gt;
 &lt;br /&gt;
                 #workaround for EL7&lt;br /&gt;
                 if options.release == &amp;quot;7&amp;quot; and options.distro.lower() in [&amp;quot;centos&amp;quot;,&amp;quot;scientific&amp;quot;]:&lt;br /&gt;
                         default_folders.append(&amp;quot;LiveOS&amp;quot;)&lt;br /&gt;
                         if options.verbose: print(&amp;quot;INFO: EL7 detected, making sure to also download LiveOS&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
                 #print debug output if required&lt;br /&gt;
                 if options.debug: print(&amp;quot;release: &amp;quot; + options.release + &amp;quot;\narch: &amp;quot; + options.arch + &amp;quot;\ntarget: &amp;quot; + options.target + &amp;quot;\nmirror: &amp;quot; + options.mirror + &amp;quot;\nforce: &amp;quot; + `options.force` + &amp;quot;\nverbose: &amp;quot; + `options.verbose` + &amp;quot;\ndebug: &amp;quot; + `options.debug` + &amp;quot;\ndistro: &amp;quot; + options.distro + &amp;quot;\nURL: &amp;quot; + url)&lt;br /&gt;
 &lt;br /&gt;
         #define URL and login information&lt;br /&gt;
         SATELLITE_URL = &amp;quot;http://&amp;quot;+options.server+&amp;quot;/rpc/api&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
         #setup client and key depending on mode&lt;br /&gt;
         client = xmlrpclib.Server(SATELLITE_URL, verbose=options.debug)&lt;br /&gt;
         if options.authfile:&lt;br /&gt;
                 #use authfile&lt;br /&gt;
                 if options.debug: print &amp;quot;DEBUG: using authfile&amp;quot;&lt;br /&gt;
                 try:&lt;br /&gt;
                         #check filemode and read file&lt;br /&gt;
                         filemode = oct(stat.S_IMODE(os.lstat(options.authfile).st_mode))&lt;br /&gt;
                         if filemode == &amp;quot;0600&amp;quot;:&lt;br /&gt;
                                 if options.debug: print &amp;quot;DEBUG: file permission (&amp;quot;+filemode+&amp;quot;) matches 0600&amp;quot;&lt;br /&gt;
                                 fo = open(options.authfile, &amp;quot;r&amp;quot;)&lt;br /&gt;
                                 s_username=fo.readline().replace(&amp;quot;\n&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
                                 s_password=fo.readline().replace(&amp;quot;\n&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
                                 key = client.auth.login(s_username, s_password)&lt;br /&gt;
                         else:&lt;br /&gt;
                                 if options.verbose: print &amp;quot;ERROR: file permission (&amp;quot;+filemode+&amp;quot;) not matching 0600!&amp;quot;&lt;br /&gt;
                                 exit(1)&lt;br /&gt;
                 except OSError:&lt;br /&gt;
                         print &amp;quot;ERROR: file non-existent or permissions not 0600!&amp;quot;&lt;br /&gt;
                         exit(1)&lt;br /&gt;
         elif &amp;quot;SATELLITE_LOGIN&amp;quot; in os.environ and &amp;quot;SATELLITE_PASSWORD&amp;quot; in os.environ:&lt;br /&gt;
                 #shell variables&lt;br /&gt;
                 if options.debug: print &amp;quot;DEBUG: checking shell variables&amp;quot;&lt;br /&gt;
                 key = client.auth.login(os.environ[&amp;quot;SATELLITE_LOGIN&amp;quot;], os.environ[&amp;quot;SATELLITE_PASSWORD&amp;quot;])&lt;br /&gt;
         else:&lt;br /&gt;
                 s_username = &amp;quot;&amp;quot;&lt;br /&gt;
                 s_password = &amp;quot;&amp;quot;&lt;br /&gt;
                 try:&lt;br /&gt;
                         from space_cred import *&lt;br /&gt;
                         s_username, s_password = space_cred()&lt;br /&gt;
                 except:&lt;br /&gt;
                         pass&lt;br /&gt;
                 if s_username == &amp;quot;&amp;quot;:&lt;br /&gt;
                         if options.debug: print &amp;quot;DEBUG: prompting for login credentials&amp;quot;&lt;br /&gt;
                         s_username = raw_input(&amp;quot;Username: &amp;quot;)&lt;br /&gt;
                 if s_password == &amp;quot;&amp;quot;:&lt;br /&gt;
                          if options.debug: print &amp;quot;DEBUG: prompting for login credentials&amp;quot;&lt;br /&gt;
                          s_password = getpass.getpass(&amp;quot;Password: &amp;quot;)&lt;br /&gt;
                 key = client.auth.login(s_username, s_password)&lt;br /&gt;
 &lt;br /&gt;
         #check whether the API version matches the minimum required&lt;br /&gt;
         api_level = client.api.getVersion()&lt;br /&gt;
         if not api_level in supportedAPI:&lt;br /&gt;
                 print &amp;quot;ERROR: your API version (&amp;quot;+api_level+&amp;quot;) does not support the required calls. You&#039;ll need API version 1.8 (11.1) or higher!&amp;quot;&lt;br /&gt;
                 exit(1)&lt;br /&gt;
         else:&lt;br /&gt;
                 if options.debug: print &amp;quot;INFO: supported API version (&amp;quot;+api_level+&amp;quot;) found.&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
         #search for base-channel or check base-channel&lt;br /&gt;
         listChannels = client.channel.listAllChannels(key)&lt;br /&gt;
         if options.debug: print &amp;quot;INFO: all channels&amp;quot; + str(listChannels)&lt;br /&gt;
         if options.baseChannel != &amp;quot;&amp;quot;:&lt;br /&gt;
                 #check base-channel&lt;br /&gt;
                 if options.baseChannel not in str(listChannels):&lt;br /&gt;
                         print &amp;quot;ERROR: base-channel &#039;&amp;quot; + options.baseChannel + &amp;quot;&#039; does not exist!&amp;quot;&lt;br /&gt;
                         exit(1)&lt;br /&gt;
                 else:&lt;br /&gt;
                         for dict in listChannels:&lt;br /&gt;
                                 if dict[&amp;quot;label&amp;quot;] == options.baseChannel:&lt;br /&gt;
                                         if options.arch == &amp;quot;i386&amp;quot;:&lt;br /&gt;
                                                 if dict[&amp;quot;arch_name&amp;quot;] != &amp;quot;IA-32&amp;quot;:&lt;br /&gt;
                                                         print &amp;quot;ERROR: base-channel &#039;&amp;quot; + options.baseChannel + &amp;quot;&#039; has a different architecture!&amp;quot;&lt;br /&gt;
                                                         exit(1)&lt;br /&gt;
                                         else:&lt;br /&gt;
                                                 if dict[&amp;quot;arch_name&amp;quot;] != options.arch:&lt;br /&gt;
                                                         print &amp;quot;ERROR: base-channel &#039;&amp;quot; + options.baseChannel + &amp;quot;&#039; has a different architecture!&amp;quot;&lt;br /&gt;
                                                         exit(1)&lt;br /&gt;
         else:&lt;br /&gt;
                 #search base-channel&lt;br /&gt;
                 for dict in listChannels:&lt;br /&gt;
                         #print dict&lt;br /&gt;
                         if dict[&amp;quot;label&amp;quot;] == options.distro+options.release+&amp;quot;-&amp;quot;+options.arch:&lt;br /&gt;
                                 if options.verbose: print &amp;quot;INFO: found matching base channel &#039;&amp;quot; + dict[&amp;quot;label&amp;quot;] + &amp;quot;&#039;&amp;quot;&lt;br /&gt;
                                 options.baseChannel = dict[&amp;quot;label&amp;quot;]&lt;br /&gt;
 &lt;br /&gt;
         #last check if we configured a base-channel&lt;br /&gt;
         if options.baseChannel == &amp;quot;&amp;quot;:&lt;br /&gt;
                 print &amp;quot;ERROR: unable to find a valid base-channel, please check your channels!&amp;quot;&lt;br /&gt;
                 exit(1)&lt;br /&gt;
 &lt;br /&gt;
         #check whether target is writable&lt;br /&gt;
         if os.access(options.target, os.W_OK):&lt;br /&gt;
                 if options.verbose: print &amp;quot;INFO: path exists and writable&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
                 #switch to directory and create subfolder non-existent&lt;br /&gt;
                 os.chdir(options.target)&lt;br /&gt;
 &lt;br /&gt;
                 #check whether the directory already exists&lt;br /&gt;
                 if os.path.exists(options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch):&lt;br /&gt;
  &lt;br /&gt;
                         #delete content of directory if force given&lt;br /&gt;
                         if options.force == True:&lt;br /&gt;
                                 shutil.rmtree(options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch)&lt;br /&gt;
                                 if options.verbose: print &amp;quot;INFO: deleted directory (&amp;quot;+options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch+&amp;quot;) because -f / --force given&amp;quot;&lt;br /&gt;
                         elif options.ignoreExisting == False:&lt;br /&gt;
                                 #abort with error&lt;br /&gt;
                                 print &amp;gt;&amp;gt; sys.stderr, &amp;quot;ERROR: kickstart tree directory (&amp;quot;+options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch+&amp;quot;) already exists! Use -f / --force to overwrite!&amp;quot;&lt;br /&gt;
                                 exit(1)&lt;br /&gt;
 &lt;br /&gt;
                 #create directory and change directory&lt;br /&gt;
                 if options.ignoreExisting == False: os.system(&amp;quot;mkdir &amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch)&lt;br /&gt;
                 os.chdir(options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch) &lt;br /&gt;
 &lt;br /&gt;
                 #download files&lt;br /&gt;
                 if options.ignoreExisting == False:&lt;br /&gt;
                         if options.verbose: print &amp;quot;INFO: about to download kickstart files for EL &amp;quot;+options.release+&amp;quot; &amp;quot;+options.arch+&amp;quot; from mirror &amp;quot;+options.mirror+&amp;quot;...&amp;quot;&lt;br /&gt;
                         for i in default_folders:&lt;br /&gt;
                                 #setting offset based on mirror and distro&lt;br /&gt;
                                 if options.distro == &amp;quot;fedora&amp;quot;: dir_offset=6&lt;br /&gt;
                                 elif &amp;quot;vault&amp;quot; in options.mirror: dir_offset=3&lt;br /&gt;
                                 elif options.distro == &amp;quot;scientific&amp;quot;: dir_offset=5&lt;br /&gt;
                                 else: dir_offset=5&lt;br /&gt;
                                 if options.debug: print &amp;quot;INFO: dir_offset: &amp;quot;+`dir_offset`&lt;br /&gt;
                                 #run wget with or without quiet mode&lt;br /&gt;
                                 cmd = &amp;quot;wget -e robots=off -q -r -nH --cut-dirs=&amp;quot;+`dir_offset`+&amp;quot; --no-parent --reject &#039;index.html*&#039; &amp;quot;+url+&amp;quot;/&amp;quot;+i+&amp;quot;/&amp;quot;&lt;br /&gt;
                                 if options.verbose == False:&lt;br /&gt;
                                         cmd = cmd+&amp;quot; --quiet&amp;quot;&lt;br /&gt;
                                         retcode = os.system(cmd)&lt;br /&gt;
                                 else:&lt;br /&gt;
                                         retcode = os.system(cmd)&lt;br /&gt;
 &lt;br /&gt;
                                 #print error if wget had a error&lt;br /&gt;
                                 if retcode != 0:&lt;br /&gt;
                                         print &amp;gt;&amp;gt; sys.stderr, &amp;quot;ERROR: some error occurred (see output above!) - hint: check URL (&amp;quot;+options.mirror+&amp;quot;/&amp;quot;+options.release+&amp;quot;)&amp;quot;&lt;br /&gt;
                                         exit(1)&lt;br /&gt;
                                 else:&lt;br /&gt;
                                         if options.verbose: print &amp;quot;INFO: successfully downloaded kickstart files for EL &amp;quot;+options.release+&amp;quot; &amp;quot;+options.arch+&amp;quot;!\nUse this file path for cobbler or the webui: &amp;quot;+options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch&lt;br /&gt;
                         if &amp;quot;7.&amp;quot; in options.release:&lt;br /&gt;
                                 #setting offset based on mirror and distro&lt;br /&gt;
                                 if options.distro == &amp;quot;fedora&amp;quot;: dir_offset=6&lt;br /&gt;
                                 elif &amp;quot;vault&amp;quot; in options.mirror: dir_offset=3&lt;br /&gt;
                                 elif options.distro == &amp;quot;scientific&amp;quot;: dir_offset=5&lt;br /&gt;
                                 else: dir_offset=5&lt;br /&gt;
                                 if options.debug: print &amp;quot;INFO: dir_offset: &amp;quot;+`dir_offset`&lt;br /&gt;
                                 #run wget with or without quiet mode&lt;br /&gt;
                                 cmd = &amp;quot;wget -e robots=off -q -r -nH --cut-dirs=&amp;quot;+`dir_offset`+&amp;quot; --no-parent --reject &#039;index.html*&#039; &amp;quot;+url+&amp;quot;/LiveOS/&amp;quot;&lt;br /&gt;
                                 if options.verbose == False:&lt;br /&gt;
                                         cmd = cmd+&amp;quot; --quiet&amp;quot;&lt;br /&gt;
                                         retcode = os.system(cmd)&lt;br /&gt;
                                 else:&lt;br /&gt;
                                         retcode = os.system(cmd)&lt;br /&gt;
 &lt;br /&gt;
                                 #print error if wget had a error&lt;br /&gt;
                                 if retcode != 0:&lt;br /&gt;
                                         print &amp;gt;&amp;gt; sys.stderr, &amp;quot;ERROR: some error occurred (see output above!) - hint: check URL (&amp;quot;+options.mirror+&amp;quot;/&amp;quot;+options.release+&amp;quot;)&amp;quot;&lt;br /&gt;
                                         exit(1)&lt;br /&gt;
                                 else:&lt;br /&gt;
                                         if options.verbose: print &amp;quot;INFO: successfully downloaded kickstart files for EL &amp;quot;+options.release+&amp;quot;  &amp;quot;+options.arch+&amp;quot;!\nUse this file path for cobbler or the webui: &amp;quot;+options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch&lt;br /&gt;
                         cmd = &amp;quot;chmod -R 0777 &amp;quot;+options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch&lt;br /&gt;
                         #print &amp;quot;CMD: &amp;quot;+cmd&lt;br /&gt;
                         retcode = os.system(cmd)&lt;br /&gt;
 &lt;br /&gt;
         else:&lt;br /&gt;
                 print &amp;gt;&amp;gt; sys.stderr, &amp;quot;ERROR: path non-existent or non-writable!&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
         #create kickstart distribution&lt;br /&gt;
         if options.createDistribution:&lt;br /&gt;
                 if options.verbose: print &amp;quot;INFO: Creating kickstart distribution...&amp;quot;&lt;br /&gt;
                 #set install type&lt;br /&gt;
                 if options.distro == &amp;quot;fedora&amp;quot;: installType = &amp;quot;fedora&amp;quot;&lt;br /&gt;
                 else:&lt;br /&gt;
                         if &amp;quot;2.1&amp;quot; in options.release: installType = &amp;quot;rhel_2.1&amp;quot;&lt;br /&gt;
                         if &amp;quot;3.&amp;quot; in options.release: installType = &amp;quot;rhel_3&amp;quot;&lt;br /&gt;
                         if &amp;quot;4.&amp;quot; in options.release: installType = &amp;quot;rhel_4&amp;quot;&lt;br /&gt;
                         if &amp;quot;5.&amp;quot; in options.release: installType = &amp;quot;rhel_5&amp;quot;&lt;br /&gt;
                         if &amp;quot;6.&amp;quot; in options.release: installType = &amp;quot;rhel_6&amp;quot;&lt;br /&gt;
                         if &amp;quot;7.&amp;quot; in options.release: installType = &amp;quot;rhel_7&amp;quot;&lt;br /&gt;
                 if options.debug: print &amp;quot;DEBUG: install type is &#039;&amp;quot; + installType + &amp;quot;&#039;&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
                 #create distribution&lt;br /&gt;
                 result = client.kickstart.tree.create(key,&amp;quot;KD-&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch,options.target+&amp;quot;/&amp;quot;+options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch,options.baseChannel,installType)&lt;br /&gt;
                 if result == 1:&lt;br /&gt;
                         if options.verbose: print &amp;quot;Successfully created kickstart distribution &#039;KD-&amp;quot; + options.distro+&amp;quot;-&amp;quot;+options.release+&amp;quot;-&amp;quot;+options.arch + &amp;quot;&#039;&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
         #logout and exit&lt;br /&gt;
         client.auth.logout(key)&lt;br /&gt;
&lt;br /&gt;
==pushConfigurationChannelFiles==&lt;br /&gt;
 #!/usr/bin/python&lt;br /&gt;
 import xmlrpclib&lt;br /&gt;
 import time&lt;br /&gt;
 from datetime import datetime&lt;br /&gt;
 from space_cred import *&lt;br /&gt;
 SPACEWALK_USER, SPACEWALK_PASSWORD = space_cred()&lt;br /&gt;
 #################################################################&lt;br /&gt;
 #                            VARIABLES                          #&lt;br /&gt;
 #################################################################&lt;br /&gt;
 SPACEWALK_URL = &amp;quot;http://spacewalk.devnet.prv/rpc/api&amp;quot;&lt;br /&gt;
 MISSING_ENABLED = 0&lt;br /&gt;
 ACTION_ID = [3064]&lt;br /&gt;
  &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 #################################################################&lt;br /&gt;
 #                               CODE                            #&lt;br /&gt;
 #################################################################&lt;br /&gt;
 CLIENT = xmlrpclib.Server(SPACEWALK_URL, verbose=0)&lt;br /&gt;
 KEY = CLIENT.auth.login(SPACEWALK_USER, SPACEWALK_PASSWORD)&lt;br /&gt;
 LIST = CLIENT.system.listSystems(KEY)&lt;br /&gt;
 TOTAL_ID_LIST = []&lt;br /&gt;
 for L in LIST:&lt;br /&gt;
         TOTAL_ID_LIST.append(L[&#039;id&#039;])&lt;br /&gt;
 ACTION_ID_LIST = []&lt;br /&gt;
 MISSING_SERVER_LIST = []&lt;br /&gt;
 MISSING_ID_LIST = []&lt;br /&gt;
 ACTION_SYSTEMS = CLIENT.schedule.listCompletedSystems(KEY, ACTION_ID[0])&lt;br /&gt;
 for A in ACTION_SYSTEMS:&lt;br /&gt;
         ACTION_ID_LIST.append(A[&#039;server_id&#039;])&lt;br /&gt;
 for TID in TOTAL_ID_LIST:&lt;br /&gt;
         if TID not in ACTION_ID_LIST:&lt;br /&gt;
                 for L in LIST:&lt;br /&gt;
                         if TID == L[&#039;id&#039;]:&lt;br /&gt;
                                 MISSING_SERVER_LIST.append(L[&#039;name&#039;])&lt;br /&gt;
                                 MISSING_ID_LIST.append(L[&#039;id&#039;])&lt;br /&gt;
 print &amp;quot;Missing %d Systems from the current scheduled action.&amp;quot; % (len(MISSING_SERVER_LIST))&lt;br /&gt;
 print &amp;quot;Pushing Configuration files to %d Systems&amp;quot; % (len(ACTION_ID_LIST))&lt;br /&gt;
 RESULTS = CLIENT.schedule.rescheduleActions(KEY, ACTION_ID, 0)&lt;br /&gt;
 if RESULTS == 1:&lt;br /&gt;
         print &amp;quot;Successfully re-scheduled the action for the %d systems.&amp;quot; % (len(ACTION_ID_LIST))&lt;br /&gt;
 else:&lt;br /&gt;
         print &amp;quot;An Error occured while re-scheduling action ID %d.&amp;quot; % (ACTION_ID[0])&lt;br /&gt;
 if MISSING_ENABLED == 1:&lt;br /&gt;
         print &amp;quot;Pushing Configuration files to %d missing systems&amp;quot; % (len(MISSING_ID_LIST))&lt;br /&gt;
         TODAY = datetime.today()&lt;br /&gt;
         EARLIEST_OCCURANCE = xmlrpclib.DateTime(TODAY)&lt;br /&gt;
         RESULTS = CLIENT.system.config.deployAll(KEY, MISSING_ID_LIST, EARLIEST_OCCURANCE)&lt;br /&gt;
         if RESULTS == 1:&lt;br /&gt;
                 print &amp;quot;Successfully scheduled a deploy action for all %d missinge systems.&amp;quot; % (len(MISSING_ID_LIST))&lt;br /&gt;
         else:&lt;br /&gt;
                 print &amp;quot;An Error occured while scheduling the deploy action.&amp;quot;&lt;br /&gt;
 CLIENT.auth.logout(KEY)&lt;br /&gt;
&lt;br /&gt;
==reposync==&lt;br /&gt;
 mkdir -p /var/log/scripts/&lt;br /&gt;
 echo ##################################################### &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 CENT7LATEST=`curl --silent http://mirror.centos.org/centos/ | grep folder | grep &amp;quot;&amp;gt;7\.&amp;quot; | cut -d &#039;&amp;quot;&#039; -f 8 | cut -d &#039;/&#039; -f 1 | sort -g | tail -1`&lt;br /&gt;
 CENT6LATEST=`curl --silent http://mirror.centos.org/centos/ | grep folder | grep &amp;quot;&amp;gt;6\.&amp;quot; | cut -d &#039;&amp;quot;&#039; -f 8 | cut -d &#039;/&#039; -f 1 | sort -g | tail -1`&lt;br /&gt;
 &lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest/RHEL/6/x86_64/ -c spacewalk-server6  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest/RHEL/7/x86_64/ -c spacewalk-server7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest-client/RHEL/6/x86_64/ -c spacewalk-client &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest-client/RHEL/7/x86_64/ -c spacewalk-client-centos7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest-client/RHEL/6/x86_64/ -c spacewalk-client-rhel-6 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/ -c 7-postgres94  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/ -c 7-postgres95 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://download.ceph.com/rpm/el7/x86_64/ -c ceph-centos7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/extras/x86_64/ -c centos-7-extras  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/updates/x86_64/ -c centos-7-updates &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://dl.fedoraproject.org/pub/epel/6/x86_64/ -c rhel-6 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://rhel6.devnet.prv/rhel6/ -c rhel-6  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://dl.fedoraproject.org/pub/epel/6/x86_64/ -c centos6 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://dl.fedoraproject.org/pub/epel/7/x86_64/ -c epel-7 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT6LATEST/os/x86_64/ -c centos6  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT6LATEST/extras/x86_64/ -c centos6  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT6LATEST/updates/x86_64/ -c centos6  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/os/x86_64/ -c centos7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://rhel5.devnet.prv/rhel5/ -c rhel-x86_64-server-5  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest-client/RHEL/5/x86_64/ -c  spacewalk-client5  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest-client/RHEL/7/x86_64/ -c spacewalk-client-rhel-7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://rhel7.devnet.prv/rhel7/ -c rhel-7 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://dl.fedoraproject.org/pub/epel/7/x86_64/ -c rhel-7-epel &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 &lt;br /&gt;
 chmod -R 777 /var/satellite/redhat/1/&lt;br /&gt;
 echo #################################################### &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 date &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
&lt;br /&gt;
==spacewalkCreds==&lt;br /&gt;
 #!/usr/bin/python&lt;br /&gt;
 def space_cred():&lt;br /&gt;
   SPACEWALK_USER = &amp;quot;droessne&amp;quot;&lt;br /&gt;
   SPACEWALK_PASSWORD = &amp;quot;&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
   return SPACEWALK_USER, SPACEWALK_PASSWORD&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DevNet&amp;diff=51</id>
		<title>DevNet</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DevNet&amp;diff=51"/>
		<updated>2023-06-02T19:40:52Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Spacewalk Documentation = == Lockdown Scripts ==  #raw  printf &amp;quot; Locking Down CentOS 7:                                                      &amp;quot;  /bin/bash /tmp/status.sh &amp;amp;     echo &amp;#039;CCE-27053-8 - Set Password Hashing Algorithm in /etc/libuser.conf&amp;#039; &amp;gt;&amp;gt; /root/ks-lockdown.log  sed -i &amp;#039;s~crypt_style.*~crypt_style = sha512~&amp;#039; /etc/libuser.conf     yum -y remove vasclnt &amp;amp;&amp;gt; /dev/null  yum -y install clamav &amp;amp;&amp;gt; /dev/null    echo &amp;#039;Installing oscap&amp;#039; &amp;gt;&amp;gt; /root/ks-lockdown.log  yum -y...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Spacewalk Documentation =&lt;br /&gt;
== Lockdown Scripts ==&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Locking Down CentOS 7:                                                      &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp; &lt;br /&gt;
 &lt;br /&gt;
 echo &#039;CCE-27053-8 - Set Password Hashing Algorithm in /etc/libuser.conf&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 sed -i &#039;s~crypt_style.*~crypt_style = sha512~&#039; /etc/libuser.conf &lt;br /&gt;
 &lt;br /&gt;
 yum -y remove vasclnt &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yum -y install clamav &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 echo &#039;Installing oscap&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 yum -y --nogpgcheck install spacewalk-oscap scap-security-guide &amp;amp;&amp;gt;&amp;gt;  /root/ks-lockdown.log&lt;br /&gt;
 sed -i &#039;/&amp;lt;platform idref=&amp;quot;cpe:\/o:redhat:enterprise_linux:7&amp;quot;\/&amp;gt;/a \ \ &amp;lt;platform idref=&amp;quot;cpe:\/o:centos:centos:7&amp;quot; \/&amp;gt;&#039;  /usr/share/xml/scap/ssg/content/ssg-rhel7-xccdf.xml&lt;br /&gt;
 #sed -i &#039;s~idref=&amp;quot;audit_rules_privileged_commands&amp;quot; selected=&amp;quot;.*&amp;quot;~idref=&amp;quot;audit_rules_privileged_commands&amp;quot; selected=&amp;quot;false&amp;quot;~&#039;  /usr/share/xml/scap/ssg/content/ssg-centos7-xccdf.xml&lt;br /&gt;
 /usr/bin/oscap xccdf eval --profile stig-rhel7-server-upstream --remediate /usr/share/xml/scap/ssg/content/ssg-rhel7-xccdf.xml &amp;amp;&amp;gt;&amp;gt;  /root/ks-lockdown.log&lt;br /&gt;
 sed -i &amp;quot;s/MACs/\\nMACs/&amp;quot; /etc/ssh/sshd_config &lt;br /&gt;
 /usr/bin/oscap xccdf eval --profile stig-rhel7-server-upstream --oval-results --results ssg-rhel7-xccdf.xml.result.xml  /usr/share/xml/scap/ssg/content/ssg-rhel7-xccdf.xml &amp;amp;&amp;gt;&amp;gt;  /root/ks-lockdown.log&lt;br /&gt;
 /usr/bin/oscap xccdf generate report --oval-template ssg-rhel7-oval.xml.result.xml ssg-rhel7-xccdf.xml.result.xml &amp;gt; /root/stig-report-xccdf-oval.html&lt;br /&gt;
 &lt;br /&gt;
 echo &#039;CVE-2004-1653&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;\#AllowTcpForwarding yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/\#AllowTcpForwarding yes/AllowTcpForwarding no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2004-1653 (1 of 2) Already complete&#039; /root/ks-lockdown.log&lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;AllowTcpForwarding yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/AllowTcpForwarding yes/AllowTcpForwarding no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2004-1653 (2 of 2)Already complete&#039; /root/ks-lockdown.log&lt;br /&gt;
 &lt;br /&gt;
 echo &#039;CVE-2007-2243&#039; &amp;gt;&amp;gt; /root/ks-lockdown.log&lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;\#ChallengeResponseAuthentication yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/\#ChallengeResponseAuthentication yes/ChallengeResponseAuthentication no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2007-2243 (1 of 2) Already complete&#039; /root/ks-lockdown.log &lt;br /&gt;
 cat /etc/ssh/sshd_config | grep -q &amp;quot;ChallengeResponseAuthentication yes&amp;quot; &amp;amp;&amp;amp; sed -i &#039;s/ChallengeResponseAuthentication yes/ChallengeResponseAuthentication no/&#039; /etc/ssh/sshd_config || sed -i &#039;$a\CVE-2007-2243 (2 of 2) Already complete&#039; /root/ks-lockdown.log &lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
 https://copr-be.cloud.fedoraproject.org/results/openscapmaint/openscap-latest/epel-7-x86_64/&lt;br /&gt;
&lt;br /&gt;
= Spacewalk Installation Instructions =&lt;br /&gt;
== Installing Spacewalk ==&lt;br /&gt;
&lt;br /&gt;
[https://fedorahosted.org/spacewalk/wiki/HowToInstall How-to]&lt;br /&gt;
&lt;br /&gt;
== Joining a Client (Centos 6) to Spacewalk ==&lt;br /&gt;
&#039;&#039;&#039;On the Client as root, run:&#039;&#039;&#039;&lt;br /&gt;
 mkdir reg-rpms&lt;br /&gt;
 cd reg-rpms&lt;br /&gt;
 wget http://spacewalk/pub/register/rhn-check-2.2.7-1.el6.noarch.rpm http://spacewalk/pub/register/rhn-client-tools-2.2.7-1.el6.noarch.rpm  http://spacewalk/pub/register/rhn-setup-2.2.7-1.el6.noarch.rpm http://spacewalk/pub/register/rhncfg-5.10.73-1.el6.noarch.rpm http://spacewalk/pub/register/rhncfg-actions-5.10.73-1.el6.noarch.rpm http://spacewalk/pub/register/rhncfg-client-5.10.73-1.el6.noarch.rpm http://spacewalk/pub/register/rhnsd-5.0.14-1.el6.x86_64.rpm http://spacewalk/pub/register/yum-rhn-plugin-2.2.7-1.el6.noarch.rpm http://spacewalk/pub/register/m2crypto-0.20.2-9.el6.x86_64.rpm http://spacewalk/pub/register/python-dmidecode-3.10.13-3.el6_4.x86_64.rpm http://spacewalk/pub/register/python-gudev-147.1-4.el6_0.1.x86_64.rpm http://spacewalk/pub/register/python-hwdata-1.7.3-1.el6.noarch.rpm &lt;br /&gt;
 yum -y localinstall rhn-setup-2.2.7-1.el6.noarch.rpm rhnsd-5.0.14-1.el6.x86_64.rpm rhn-check-2.2.7-1.el6.noarch.rpm rhn-client-tools-2.2.7-1.el6.noarch.rpm yum-rhn-plugin-2.2.7-1.el6.noarch.rpm m2crypto-0.20.2-9.el6.x86_64.rpm python-dmidecode-3.10.13-3.el6_4.x86_64.rpm python-hwdata-1.7.3-1.el6.noarch.rpm python-gudev-147.1-4.el6_0.1.x86_64.rpm&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf reg-rpms&lt;br /&gt;
 mkdir keys&lt;br /&gt;
 cd keys&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release5 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2014 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2012 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2010 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2008&lt;br /&gt;
 rpm --import *&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf keys/&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/script&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/script/run&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/configfiles&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/configfiles/all&lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT   &lt;br /&gt;
 perl -npe &#039;s/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g&#039; -i /etc/sysconfig/rhn/*&lt;br /&gt;
 rhnreg_ks --serverUrl=https://spacewalk.devnet.prv/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-97d994ea86b8f4ce665d6ef01546834b,1-centos6&lt;br /&gt;
&lt;br /&gt;
== Joining a Client (Centos 7) to Spacewalk ==&lt;br /&gt;
&#039;&#039;&#039;On the Client as root, run:&#039;&#039;&#039;&lt;br /&gt;
 mkdir reg-rpms&lt;br /&gt;
 cd reg-rpms&lt;br /&gt;
 wget http://spacewalk/pub/register/centos7/jabberpy-0.5-0.27.el7.noarch.rpm http://spacewalk/pub/register/centos7/osad-5.11.57-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/python-hwdata-1.7.3-4.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhncfg-5.10.83-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhncfg-actions-5.10.83-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhncfg-client-5.10.83-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhn-check-2.3.16-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhn-client-tools-2.3.16-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhnsd-5.0.15-1.el7.x86_64.rpm http://spacewalk/pub/register/centos7/rhn-setup-2.3.16-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/yum-rhn-plugin-2.3.3-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/osa-common-5.11.57-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/rhnlib-2.5.75-1.el7.noarch.rpm http://spacewalk/pub/register/centos7/systemd-sysv-208-20.el7.x86_64.rpm http://spacewalk/pub/register/centos7/systemd-208-20.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-2.7.5-16.el7.x86_64.rpm http://spacewalk/pub/register/centos7/libnl-1.1.4-3.el7.x86_64.rpm http://spacewalk/pub/register/centos7/libxml2-python-2.9.1-5.el7_0.1.x86_64.rpm http://spacewalk/pub/register/centos7/m2crypto-0.21.1-15.el7.x86_64.rpm http://spacewalk/pub/register/centos7/pygobject2-2.28.6-11.el7.x86_64.rpm http://spacewalk/pub/register/centos7/pyOpenSSL-0.13.1-3.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-dmidecode-3.10.13-11.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-ethtool-0.8-5.el7.x86_64.rpm http://spacewalk/pub/register/centos7/usermode-1.111-5.el7.x86_64.rpm http://spacewalk/pub/register/centos7/python-gudev-147.2-7.el7.x86_64.rpm http://spacewalk/pub/register/centos7/libxml2-python-2.9.1-5.el7_1.2.x86_64.rpm&lt;br /&gt;
 yum -y localinstall jabberpy-0.5-0.27.el7.noarch.rpm python-hwdata-1.7.3-4.el7.noarch.rpm rhncfg-actions-5.10.83-1.el7.noarch.rpm rhn-check-2.3.16-1.el7.noarch.rpm rhnsd-5.0.15-1.el7.x86_64.rpm yum-rhn-plugin-2.3.3-1.el7.noarch.rpm osad-5.11.57-1.el7.noarch.rpm rhncfg-5.10.83-1.el7.noarch.rpm rhncfg-client-5.10.83-1.el7.noarch.rpm rhn-client-tools-2.3.16-1.el7.noarch.rpm rhn-setup-2.3.16-1.el7.noarch.rpm systemd-sysv-208-20.el7.x86_64.rpm rhnlib-2.5.75-1.el7.noarch.rpm osa-common-5.11.57-1.el7.noarch.rpm libnl-1.1.4-3.el7.x86_64.rpm m2crypto-0.21.1-15.el7.x86_64.rpm pygobject2-2.28.6-11.el7.x86_64.rpm pyOpenSSL-0.13.1-3.el7.x86_64.rpm python-dmidecode-3.10.13-11.el7.x86_64.rpm python-ethtool-0.8-5.el7.x86_64.rpm usermode-1.111-5.el7.x86_64.rpm python-gudev-147.2-7.el7.x86_64.rpm libxml2-python-2.9.1-5.el7_1.2.x86_64.rpm&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf reg-rpms&lt;br /&gt;
 mkdir keys&lt;br /&gt;
 cd keys&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-7 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release5 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release6 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2014 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2012 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2010 http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-spacewalk-2008&lt;br /&gt;
 rpm --import *&lt;br /&gt;
 cd ..&lt;br /&gt;
 rm -rf keys/&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/script&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/script/run&lt;br /&gt;
 mkdir -p /etc/sysconfig/rhn/allowed-actions/configfiles&lt;br /&gt;
 touch /etc/sysconfig/rhn/allowed-actions/configfiles/all&lt;br /&gt;
 mkdir -p /usr/share/rhn/&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT   &lt;br /&gt;
 perl -npe &#039;s/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g&#039; -i /etc/sysconfig/rhn/*&lt;br /&gt;
 rhnreg_ks --serverUrl=https://spacewalk.devnet.prv/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-centos7&lt;br /&gt;
&lt;br /&gt;
== Building RPM&#039;s ==&lt;br /&gt;
https://fedoraproject.org/wiki/How_to_create_an_RPM_package#Preparing_your_system&lt;br /&gt;
&lt;br /&gt;
== Finding GPG key ID and fingerprint ==&lt;br /&gt;
 gpg --with-fingerprint RPM-GPG-KEY-redhat-release5&lt;br /&gt;
&lt;br /&gt;
Output (First highlighted area is the ID and the Second is the fingerprint):&lt;br /&gt;
 pub  1024D/&amp;lt;span style=&amp;quot;background:#FFFF00&amp;quot;&amp;gt;37017186&amp;lt;/span&amp;gt; 2006-12-06 Red Hat, Inc. (release key) &amp;lt;security@redhat.com&amp;gt;&lt;br /&gt;
      Key fingerprint = &amp;lt;span style=&amp;quot;background:#FFFF00&amp;quot;&amp;gt;47DB 2877 89B2 1722 B6D9  5DDE 5326 8101 3701 7186&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Import GPG key on Servers ==&lt;br /&gt;
=== Centos 6 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-6&lt;br /&gt;
 rpm --import RPM-GPG-KEY-EPEL-6 RPM-GPG-KEY-CentOS-6&lt;br /&gt;
 rm -f RPM-GPG-KEY-EPEL-6 RPM-GPG-KEY-CentOS-6&lt;br /&gt;
&lt;br /&gt;
=== Centos 7 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-7&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 rpm --import RPM-GPG-KEY-EPEL-7 RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 rm -f RPM-GPG-KEY-EPEL-7 RPM-GPG-KEY-CentOS-7&lt;br /&gt;
&lt;br /&gt;
=== RHEL 5 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release5&lt;br /&gt;
 rpm --import RPM-GPG-KEY-redhat-release5&lt;br /&gt;
 rm -f RPM-GPG-KEY-redhat-release5&lt;br /&gt;
&lt;br /&gt;
=== RHEL 6 ===&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-redhat-release6&lt;br /&gt;
 wget http://spacewalk.devnet.prv/pub/keys/RPM-GPG-KEY-EPEL-6&lt;br /&gt;
 rpm --import RPM-GPG-KEY-redhat-release6 RPM-GPG-KEY-EPEL-6&lt;br /&gt;
 rm -f RPM-GPG-KEY-redhat-release6 RPM-GPG-KEY-EPEL-6&lt;br /&gt;
&lt;br /&gt;
== Configure PXE Booting ==&lt;br /&gt;
=== Change PXE Menu Names ===&lt;br /&gt;
vi /etc/cobbler/pxe/pxeprofile.template&lt;br /&gt;
 #set $new_name = $profile_name.replace(&#039;:1:SpacewalkDefaultOrganization&#039;, &#039; &#039;)&lt;br /&gt;
 #set $new_menu_label = $menu_label.replace(&#039;:1:SpacewalkDefaultOrganization&#039;, &#039; &#039;)&lt;br /&gt;
 LABEL $new_name&lt;br /&gt;
         MENU PASSWD&lt;br /&gt;
         kernel $kernel_path&lt;br /&gt;
         $new_menu_label&lt;br /&gt;
         $append_line&lt;br /&gt;
         ipappend 2&lt;br /&gt;
Update PXE files&lt;br /&gt;
 cobbler sync&lt;br /&gt;
 cat /var/lib/tftpboot/pxelinux.cfg/default&lt;br /&gt;
&lt;br /&gt;
=== Add Password, Background, and WindowsDeployment to PXE Menu ===&lt;br /&gt;
vi /etc/cobbler/pxe/pxedefault.template&lt;br /&gt;
 DEFAULT vesamenu.c32&lt;br /&gt;
 PROMPT 0&lt;br /&gt;
 MENU TITLE DevNet Image Central&lt;br /&gt;
 MENU BACKGROUND /devnetSplash.png&lt;br /&gt;
 MENU MARGIN 1&lt;br /&gt;
 MENU ROWS 15&lt;br /&gt;
 MENU COLOR BORDER       30;44     #ffffffff #00000000 std&lt;br /&gt;
 MENU COLOR TITLE        1;36;44   #ffffffff #00000000 std&lt;br /&gt;
 MENU COLOR UNSEL        37;44     #ffffffff #00000000 std&lt;br /&gt;
 MENU COLOR TIMEOUT_MSG  37;40     #ffffffff #00000000 std&lt;br /&gt;
 MENU MASTER PASSWD $1$YVi/j0hL$a6SdxIUHZCA7jFisNZh6O/&lt;br /&gt;
 TIMEOUT 80&lt;br /&gt;
 TOTALTIMEOUT 6000&lt;br /&gt;
 ONTIMEOUT $pxe_timeout_profile&lt;br /&gt;
 LABEL local&lt;br /&gt;
         MENU LABEL (Boot Local System)&lt;br /&gt;
         MENU DEFAULT&lt;br /&gt;
         LOCALBOOT 0  &lt;br /&gt;
 $pxe_menu_items&lt;br /&gt;
 LABEL WindowsDeployment&lt;br /&gt;
         MENU LABEL Windows Deployment&lt;br /&gt;
         MENU PASSWD&lt;br /&gt;
         PXE tftp://10.81.49.27/pxelinux.0 &lt;br /&gt;
 MENU end&lt;br /&gt;
== Setup Pam Authentication w/ VAS ==&lt;br /&gt;
* Put the following in /etc/pam.d/rhn-satellite&lt;br /&gt;
 #%PAM-1.0&lt;br /&gt;
 auth        required      pam_env.so&lt;br /&gt;
 auth        sufficient    pam_vas3.so&lt;br /&gt;
 auth        required      pam_deny.so&lt;br /&gt;
 account     sufficient    pam_vas3.so&lt;br /&gt;
 account     requisite     pam_vas3.so echo_return&lt;br /&gt;
 account     required      pam_unix.so broken_shadow&lt;br /&gt;
* Add the following line to /etc/rhn/rhn.conf&lt;br /&gt;
 pam_auth_service = rhn-satellite&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
=== Client Yum Errors ===&lt;br /&gt;
&#039;&#039;&#039;Error: Cannot retrieve repository metadata (repomd.xml) for repository: &amp;lt;channel&amp;gt; Please verify its path and try again.&#039;&#039;&#039;&lt;br /&gt;
* Client Side:     Check /etc/sysconfig/rhn/up2date and make sure that the spacewalk URL is Fully Qualified.&lt;br /&gt;
* Spacewalk Side:  Check /var/cache/rhn/repodata/&amp;lt;channel&amp;gt;/&lt;br /&gt;
** If noyumrepo.txt exists log into the Web GUI and manage channels. Make sure that the channel Checksum Type is not set to &#039;None&#039;.&lt;br /&gt;
=== Kickstart Errors ===&lt;br /&gt;
&#039;&#039;&#039;Installing error populating transaction, retrying (1/10)&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;error populating transaction after 10 retries: failure: getPackage/&amp;lt;package name&amp;gt; from &amp;lt;repo name&amp;gt;: [Errno 256] No more mirrors to try.&#039;&#039;&#039;&lt;br /&gt;
* Spacewalk Side:  Try running the following command:&lt;br /&gt;
 chmod -R 777 /var/satellite/redhat/1/&lt;br /&gt;
&lt;br /&gt;
= Spacewalk Scripts =&lt;br /&gt;
==cleanupPackages==&lt;br /&gt;
==convertISOtoKickstartTree==&lt;br /&gt;
==createKickstartISO==&lt;br /&gt;
==exportAllChannels==&lt;br /&gt;
==findAndGetKickstartTree==&lt;br /&gt;
==getCompletedActionId==&lt;br /&gt;
==getServerIds==&lt;br /&gt;
==makeKickstartTree==&lt;br /&gt;
==pushConfigurationChannelFiles==&lt;br /&gt;
==reposync==&lt;br /&gt;
==spacewalkCreds==&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=50</id>
		<title>DREN/Kickstart/snippets</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=50"/>
		<updated>2023-06-02T19:36:23Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* | StatusBarScript */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= AddADGroups =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding AD Groups:                                                           &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 groupadd domain_users -g 1342600513&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddAcasUser =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating ACAS Scan User:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 useradd scan_account -g users&lt;br /&gt;
 sudo -u scan_account ssh-keygen -b 2048 -t rsa -f /home/scan_account/.ssh/id_rsa -q -N &amp;quot;&amp;quot;&lt;br /&gt;
 sudo -u scan_account rm -rf /home/scan_account/.ssh/id_rsa &lt;br /&gt;
 sudo -u scan_account curl --cacert /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT https://rdhpwngmp-01/pub/kickstart/nga_acas.pub &amp;gt;  /home/scan_account/.ssh/authorized_keys&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddMounts =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding NFS Mounts:                                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /users&lt;br /&gt;
 chown :domain_users /users&lt;br /&gt;
 chmod 775 /users&lt;br /&gt;
 mkdir -p /data&lt;br /&gt;
 chown :domain_users /data&lt;br /&gt;
 chmod 775 /data&lt;br /&gt;
 echo &#039;users:/users  /users  nfs noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,relatime    0 0&#039; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 echo &#039;data:/data  /data  nfs noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,relatime    0 0&#039; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddScaleUser =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating Scale User:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 useradd scale -u 7498 -g 1342600513 -G users&lt;br /&gt;
 sed -i &#039;s~scale:!!:~scale:$6$hQ5XU8FI$BFssO833kwMzahuVXMnMO9qReK4VRAXtMKRL/csxtJoFtj7Wgc9twzp6E79jw8y.U/JfSqMhzMafhijnISiyh1:~&#039; /etc/shadow&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddSpacewalkToHosts =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding Spacewalk server to /etc/hosts:                                              &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 curl http://140.32.192.51/pub/kickstart/hosts &amp;gt; /mnt/sysimage/etc/hosts&lt;br /&gt;
 curl http://140.32.192.51/pub/kickstart/hosts &amp;gt; /etc/hosts&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= ForceTime =&lt;br /&gt;
 printf &amp;quot; Forcing Time Synce with NTP Server:                                         &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 ntpdate -s 140.32.191.249&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSMaster =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing DCOS Master:                                                     &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/InstallDCOSPrereqs&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 # This is needed for using the dcos command with jenkins &lt;br /&gt;
 yum -y install expect &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 # Creating installDCOS.sh script &lt;br /&gt;
 echo &amp;quot;#CHECK=\`systemctl is-active docker\`&amp;quot;  &amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#while [[ \$CHECK != &#039;active&#039; ]]; do sleep 5; CHECK=\`systemctl is-active docker\`;done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /tmp/dcos/dcos_install.sh master&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mkdir -p /var/log/mesos/archive&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;echo &#039;ENABLE_CHECK_TIME=false&#039; &amp;gt;&amp;gt; /opt/mesosphere/environment&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#sleep 6000&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#rm -rf /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/\/bin\/bash\ \/root\/installDCOS.sh//g&#039; /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s~LD_LIBRARY_PATH=/opt/mesosphere/lib~LD_LIBRARY_PATH=/lib64~&#039; /opt/mesosphere/environment.export&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;curl -fLsS --retry 20 -Y 100000 -y 60 https://downloads.dcos.io/binaries/cli/linux/x86-64/dcos-1.8/dcos -o dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mv dcos /usr/local/bin&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;chmod +x /usr/local/bin/dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;dcos config set core.dcos_url http://172.16.99.200&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 &lt;br /&gt;
 chmod 777 /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /etc/rc.d/rc.local&lt;br /&gt;
 chmod +x /etc/rc.d/rc.local&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSPrereqs =&lt;br /&gt;
 echo &amp;quot;proxy=http://192.168.1.73:3128&amp;quot; &amp;gt;&amp;gt; /etc/yum.conf&lt;br /&gt;
 yum -y install ipset tar xz unzip curl docker docker-selinux &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yum -y upgrade &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 grep -q Restart=on-failure /usr/lib/systemd/system/docker.service &amp;amp;&amp;amp; printf &#039;Restart function is already set in systemd script&#039; || sed -i &#039;/MountFlags=slave/aRestart=on-failure&#039; /usr/lib/systemd/system/docker.service&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 systemctl daemon-reload  &lt;br /&gt;
 systemctl enable docker.service&lt;br /&gt;
 systemctl start docker.service&lt;br /&gt;
 &lt;br /&gt;
 # DCOS requires this firewall to be shut off.&lt;br /&gt;
 ## https://docs.mesosphere.com/1.7/administration/installing/custom/system-requirements/&lt;br /&gt;
 systemctl disable firewalld&lt;br /&gt;
 systemctl stop firewalld&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /var/{lib,log}/mesos&lt;br /&gt;
 chown nobody /var/{lib,log}/mesos&lt;br /&gt;
 touch /var/marathon.ip&lt;br /&gt;
 chown /var/marathon.ip&lt;br /&gt;
 &lt;br /&gt;
 groupadd nogroup -g 9999&lt;br /&gt;
 groupadd docker&lt;br /&gt;
 &lt;br /&gt;
 yum -y remove dnsmasq &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 PIDS=`ps -ef | grep dnsmasq | egrep -v grep | awk &#039;{ print $2 }&#039;`&lt;br /&gt;
 kill $PIDS&lt;br /&gt;
 mkdir -p /tmp/dcos &amp;amp;&amp;amp; cd /tmp/dcos&lt;br /&gt;
 #curl -s http://140.32.192.51/dcos/install/genconf/serve/dcos_install.sh &amp;gt; dcos_install.sh&lt;br /&gt;
 curl -s http://192.168.1.73:81/dcos/genconf/serve/dcos_install.sh &amp;gt; dcos_install.sh&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSSlave =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing DCOS Slave:                                                      &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/InstallDCOSPrereqs&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 echo &amp;quot;setenforce 0&amp;quot;  &amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#CHECK=\`systemctl is-active docker\`&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#while [[ \$CHECK != &#039;active&#039; ]]; do sleep 5; CHECK=\`systemctl is-active docker\`;done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /tmp/dcos/dcos_install.sh slave&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;DCOS_CONFIG=\`grep -ir &#039;MESOS_HOSTNAME_LOOKUP=false&#039; /opt/mesosphere/packages/dcos-config* | grep mesos-slave-common | cut -d &#039;:&#039; -f 1\`&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;for i in \$DCOS_CONFIG; do sed -i &#039;s~MESOS_HOSTNAME_LOOKUP=.*~MESOS_HOSTNAME_LOOKUP=true~&#039; \$i; done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;rm -rf /var/lib/mesos/slave/meta/slaves/latest&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;echo &#039;ENABLE_CHECK_TIME=false&#039; &amp;gt;&amp;gt; /opt/mesosphere/environment&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#sleep 6000&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#rm -rf /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/\/bin\/bash\ \/root\/installDCOS.sh//g&#039; /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s~LD_LIBRARY_PATH=/opt/mesosphere/lib~LD_LIBRARY_PATH=/lib64~&#039; /opt/mesosphere/environment.export&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 &lt;br /&gt;
 chmod 777 /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /etc/rc.d/rc.local&lt;br /&gt;
 chmod +x /etc/rc.d/rc.local&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= InstallDesktopPackages =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing GNOME Desktop Packages:                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 yum -y --nogpgcheck groupinstall &amp;quot;GNOME Desktop&amp;quot; &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 sed -i &#039;s/id:3:/id:5:/&#039; /etc/inittab&lt;br /&gt;
 systemctl set-default graphical.target&lt;br /&gt;
 rm -f /etc/xdg/autostart/gnome-initial-setup-first-login.desktop &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 rm -f /etc/xdg/autostart/gnome-initial-setup-copy-worker.desktop &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 rm -f /etc/xdg/autostart/gnome-welcome-tour.desktop &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 sed -i &#039;/daemon/a InitialSetupEnable=False&#039; /etc/gdm/custom.conf&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= InstallVMTools =&lt;br /&gt;
 #raw&lt;br /&gt;
 if [[ $(lspci|grep -i vmware) ]]; then&lt;br /&gt;
    printf &amp;quot; Installing VMware Tools:                                                    &amp;quot;&lt;br /&gt;
    /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
    yum -y install open-vm-tools&lt;br /&gt;
    STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
    kill $STATUSPID&lt;br /&gt;
    printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
    echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 fi&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= JoinAD =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating /root/joinAD.sh:                                                   &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum install -y realmd samba samba-common oddjob oddjob-mkhomedir sssd adcli sssd-tools samba-libs krb5-workstation &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 echo &#039;read -p &amp;quot;Enter Admin Username: &amp;quot; USERNAME&#039; &amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;yum install -y realmd samba samba-common oddjob oddjob-mkhomedir sssd adcli sssd-tools samba-libs krb5-workstation &amp;amp;&amp;gt; /dev/null&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;rhncfg-client get &amp;amp;&amp;gt; /dev/null&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;realm leave&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;sleep 5&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;realm join --user=$USERNAME &amp;quot;711hpw.afrl-wrs.hpc.mil&amp;quot;&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;sleep 15&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;systemctl stop sssd&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;rm -rf /var/lib/sss/db/*&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;rhncfg-client get &amp;amp;&amp;gt; /dev/null&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;systemctl start sssd&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;sleep 10&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;systemctl restart sssd&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 chmod 777 /root/joinAD.sh&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= PostNoChroot-InstallNetworking =&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/StatusBarScript&#039;)&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY7&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 # Set-Hostname-Network Snippet&lt;br /&gt;
 printf &amp;quot; Setting up Networking:                                                      &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 PID=`ps -ef | grep status.sh | egrep -v grep | sed &#039;s/\ \ \ \ /\ /g&#039; | sed &#039;s/\ \ \ /\ /g&#039; | sed &#039;s/\ \ /\ /g&#039; | cut -d &#039; &#039; -f 2`&lt;br /&gt;
 \cp -f /tmp/network /mnt/sysimage/etc/sysconfig/network&lt;br /&gt;
 \cp -f /tmp/hostname /mnt/sysimage/tmp/hostname&lt;br /&gt;
 \cp -f /tmp/newnic.txt /mnt/sysimage/tmp/newnic.txt&lt;br /&gt;
 \cp -f /tmp/nics.txt /mnt/sysimage/tmp/nics.txt&lt;br /&gt;
 NAME`grep HOSTNAME /tmp/hostname | cut -d &amp;quot;=&amp;quot; -f 2`&lt;br /&gt;
 /mnt/sysimage/usr/bin/hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /mnt/sysimage/usr/bin/hostnamectl set-hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /bin/hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /bin/hostnamectl set-hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /mnt/sysimage/bin/hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /mnt/sysimage/bin/hostnamectl set-hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 DEVICE1=`cat /tmp/newnic.txt`&lt;br /&gt;
 \cp -f /tmp/ifcfg-${DEVICE1} /mnt/sysimage/etc/sysconfig/network-scripts/ifcfg-${DEVICE1}&lt;br /&gt;
 \cp -f /tmp/ifcfg-${DEVICE1} /mnt/sysimage/tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 while read NIC&lt;br /&gt;
 do&lt;br /&gt;
  \cp -f /tmp/ifcfg-${NIC} /mnt/sysimage/etc/sysconfig/network-scripts/ifcfg-${NIC}&lt;br /&gt;
  \cp -f /tmp/ifcfg-${NIC} /mnt/sysimage/tmp/ifcfg-${NIC}&lt;br /&gt;
 done &amp;lt; /tmp/nics.txt&lt;br /&gt;
 \cp -f /tmp/newnic.txt /mnt/sysimage/tmp/newnic.txt&lt;br /&gt;
 \cp -f /tmp/nics.txt /mnt/sysimage/tmp/nics.txt&lt;br /&gt;
 kill $PID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 printf &amp;quot; Setting up DNS:                                                             &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 \cp -f /tmp/resolv.conf /mnt/sysimage/etc/resolv.conf&lt;br /&gt;
 PID=`ps -ef | grep status.sh | egrep -v grep | sed &#039;s/\ \ \ \ /\ /g&#039; | sed &#039;s/\ \ \ /\ /g&#039; | sed &#039;s/\ \ /\ /g&#039; | cut -d &#039; &#039; -f 2`&lt;br /&gt;
 kill $PID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY1&#039;)&lt;br /&gt;
&lt;br /&gt;
= PreScript Get-Hostname-Network =&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY7&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 # Get-Hostname-Network Snippet&lt;br /&gt;
 uname -r | grep -q el7 &amp;amp;&amp;amp; OS7=True || OS7=False&lt;br /&gt;
 uname -r | grep -q el6 &amp;amp;&amp;amp; OS6=True || OS6=False&lt;br /&gt;
 SEP7=&amp;quot;#########################################################################################&amp;quot;&lt;br /&gt;
 LINE7=&amp;quot;-----------------------------------------------------------------------------------------&amp;quot;&lt;br /&gt;
 SEP6=&amp;quot;#####################################################################&amp;quot;&lt;br /&gt;
 LINE6=&amp;quot;---------------------------------------------------------------------&amp;quot;&lt;br /&gt;
 SPACE=&amp;quot;                            &amp;quot;&lt;br /&gt;
 TITLE1=&amp;quot;\e[4;32m&amp;quot;&lt;br /&gt;
 TITLE2=&amp;quot;\e[39;0m&amp;quot;&lt;br /&gt;
 QUESTION1=&amp;quot;\e[31;1m&amp;quot;&lt;br /&gt;
 QUESTION2=&amp;quot;\e[39;0m&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  setterm -powersave off -blank 0&lt;br /&gt;
  DNS1=`nmcli device show | grep DNS | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2 | head -1`&lt;br /&gt;
  DNS2=`nmcli device show | grep DNS | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2 | head -2 | tail -1`&lt;br /&gt;
  DOMAIN1=`nmcli device show | grep DOMAIN | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2`&lt;br /&gt;
  GW1=`nmcli device show | grep GATEWAY | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2 | head -1`&lt;br /&gt;
  DEVICE=`nmcli device | grep &#039; connected &#039; | cut -d &#039; &#039; -f 1`&lt;br /&gt;
  NM1=`ifconfig | grep netmask | sed &#039;s/.*\ 255/255/&#039; | head -1 | cut -d &#039; &#039; -f 1`&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;DISCOVERED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  DNS1=`cat /etc/resolv.conf | grep nameserver | cut -d &#039; &#039; -f 2 | head -1`&lt;br /&gt;
  DNS2=`cat /etc/resolv.conf | grep nameserver | cut -d &#039; &#039; -f 2 | head -2 | tail -1`&lt;br /&gt;
  DOMAIN1=`cat /etc/resolv.conf | grep domain | cut -d &#039; &#039; -f 2 | head -1`&lt;br /&gt;
  GW1=`ip route show | grep default | cut -d &#039; &#039; -f 3`&lt;br /&gt;
  DEVICE=`ip addr show | grep inet | grep brd | cut -d &#039; &#039; -f 11`&lt;br /&gt;
  NM1=`ifconfig | grep Mask | sed &#039;s/.*\ 255\255/&#039; | head -1 | cut -d &#039;:&#039; -f 4`&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;DISCOVERED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE6&lt;br /&gt;
 fi&lt;br /&gt;
 NICNUM=`ip link show | grep &amp;quot;: &amp;quot; | egrep -v lo | wc -l`&lt;br /&gt;
 ip link show | grep &amp;quot;: &amp;quot; | egrep -v lo | cut -d &#039;:&#039; -f 2 | cut -d &#039; &#039; -f 2 &amp;gt; /tmp/nics.txt&lt;br /&gt;
 LINKNUM=0&lt;br /&gt;
 COUNT=1&lt;br /&gt;
 while read NIC&lt;br /&gt;
  do &lt;br /&gt;
    LINK1=`ethtool ${NIC} | grep &amp;quot;Link detected:&amp;quot; | cut -d &#039;:&#039; -f 2 | sed &#039;s/\ //&#039;`&lt;br /&gt;
    if [[ $LINK1 = &amp;quot;yes&amp;quot; ]]; then&lt;br /&gt;
      let LINKNUM=LINKNUM+1&lt;br /&gt;
      LINKCHOICE=$COUNT&lt;br /&gt;
    fi&lt;br /&gt;
    let COUNT=COUNT+1&lt;br /&gt;
 done &amp;lt; /tmp/nics.txt&lt;br /&gt;
 echo -e &#039; DNS1 Server:\t\t\t&#039;${DNS1}&lt;br /&gt;
 echo -e &#039; DNS2 Server:\t\t\t&#039;${DNS2}&lt;br /&gt;
 echo -e &#039; Domain Name:\t\t\t&#039;${DOMAIN1}&lt;br /&gt;
 echo -e &#039; Current Network Device:\t&#039;${DEVICE}&lt;br /&gt;
 echo -e &#039; Number of Network Devices:\t&#039;${NICNUM}&lt;br /&gt;
 echo -e &#039; Gateway:\t\t\t&#039;${GW1}&lt;br /&gt;
 echo -e &#039; Netmask:\t\t\t&#039;${NM1}&lt;br /&gt;
 if [ $NICNUM -ne 1 ]; then&lt;br /&gt;
  if [ $LINKNUM -ne 1 ]; then&lt;br /&gt;
   if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
    echo $SEP7&lt;br /&gt;
    echo -e $QUESTION1 &amp;quot;WHAT NETWORK DEVICE DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
    echo -e &amp;quot; Note: This kickstart will continue to use the \e[31m&amp;quot;${DEVICE}&amp;quot;\e[39m for the installation.&amp;quot;&lt;br /&gt;
    echo &amp;quot; Note: If you choose nothing it will default to option 1.&amp;quot;&lt;br /&gt;
    echo $LINE7&lt;br /&gt;
   fi&lt;br /&gt;
   if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
    echo $SEP6&lt;br /&gt;
    echo -e $QUESTION1 &amp;quot;WHAT NETWORK DEVICE DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
    echo -e &amp;quot; Note: This kickstart will continue to use the \e[31m&amp;quot;${DEVICE}&amp;quot;\e[39m for the installation.&amp;quot;&lt;br /&gt;
    echo &amp;quot; Note: If you choose nothing it will default to option 1.&amp;quot;&lt;br /&gt;
    echo $LINE6&lt;br /&gt;
   fi&lt;br /&gt;
   COUNT=1&lt;br /&gt;
   while read NIC&lt;br /&gt;
   do&lt;br /&gt;
    LINK=`ethtool ${NIC} | grep &amp;quot;Link detected:&amp;quot; | cut -d &#039;:&#039; -f 2 | sed &#039;s/\ //&#039;`&lt;br /&gt;
    echo -e &amp;quot; $COUNT:		DEVICE:\t\t$NIC&amp;quot;&lt;br /&gt;
    DRIVER=`ethtool -i ${NIC} | grep driver | cut -d &#039;:&#039; -f 2 | sed &#039;s/\ //&#039;`&lt;br /&gt;
    echo -e &amp;quot;		DRIVER:\t\t$DRIVER&amp;quot;&lt;br /&gt;
    TENG=`ethtool -i ${NIC} | grep baseT | grep 10000 | wc -l`&lt;br /&gt;
    if [ TENG -eq 0 ]; then &lt;br /&gt;
     ONEG=`ethtool -i ${NIC} | grep baseT | grep 1000 | wc -l`&lt;br /&gt;
     if [ ONEG -eq 0 ]; then&lt;br /&gt;
      echo &amp;quot;NOT 1G Networking&amp;quot; &amp;gt; /dev/null&lt;br /&gt;
     else&lt;br /&gt;
      echo -e &amp;quot;		SPEED:\t\t1G&amp;quot;&lt;br /&gt;
     fi&lt;br /&gt;
    else&lt;br /&gt;
     echo -e &amp;quot;		SPEED:\t\t10G&amp;quot;&lt;br /&gt;
    fi&lt;br /&gt;
    echo -e &amp;quot;		LINK:\t\t$LINK&amp;quot;&lt;br /&gt;
    if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
     echo $LINE7&lt;br /&gt;
    fi&lt;br /&gt;
    if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
     echo $LINE6&lt;br /&gt;
    fi&lt;br /&gt;
    let COUNT=COUNT+1&lt;br /&gt;
   done &amp;lt; /tmp/nics.txt&lt;br /&gt;
   printf &amp;quot;		&amp;quot;&lt;br /&gt;
   read NICCHOICE&lt;br /&gt;
  else&lt;br /&gt;
   NICCHOICE=$LINKCHOICE&lt;br /&gt;
  fi&lt;br /&gt;
   if [ -z $NICCHOICE ]; then NICCHOICE=1; fi&lt;br /&gt;
 fi&lt;br /&gt;
 CMD=&#039;cat /tmp/nics.txt | head -&#039;$NICCHOICE&#039; | tail -1&#039;&lt;br /&gt;
 DEVICE1=`eval $CMD`&lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
  echo -e $QUESTION1 &amp;quot;WHAT HOSTNAME DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
  echo &amp;quot; Note: If this hostname is already in DNS you will NOT need to enter an IP address.&amp;quot;&lt;br /&gt;
  echo $LINE7 &lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
  echo -e $QUESTION1 &amp;quot;WHAT HOSTNAME DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
  echo &amp;quot; Note: If this hostname is already in DNS you will NOT need to enter an IP address.&amp;quot;&lt;br /&gt;
  echo $LINE6&lt;br /&gt;
 fi&lt;br /&gt;
 printf &amp;quot;		&amp;quot;&lt;br /&gt;
 if [ -f &amp;quot;/tmp/pre_install_network_config&amp;quot; ]; then&lt;br /&gt;
   NAME=`cat /tmp/pre_install_network_config | sed &#039;s/.*--hostname=//&#039; | cut -d &#039;.&#039; -f 1`&lt;br /&gt;
   echo $NAME&lt;br /&gt;
 else&lt;br /&gt;
   read NAME&lt;br /&gt;
 fi&lt;br /&gt;
 echo &amp;quot;&amp;quot;&lt;br /&gt;
 NAME1=`nslookup ${NAME} ${DNS1} | grep Name | head -1 | cut -f 2`&lt;br /&gt;
 if [[ -z ${NAME1} ]]; then&lt;br /&gt;
  NAME=`echo ${NAME}.${DOMAIN1}`&lt;br /&gt;
 else&lt;br /&gt;
  NAME=`echo ${NAME1}`&lt;br /&gt;
 fi&lt;br /&gt;
 /bin/hostnamectl set-hostname ${NAME}&lt;br /&gt;
 ADDR=`cat /etc/hosts | grep -i ${NAME} | egrep -v KVM | awk &#039;{ print $1 }&#039;`&lt;br /&gt;
 if [[ -z ${ADDR} ]]; then&lt;br /&gt;
  ADDR=`nslookup ${NAME} ${DNS1} | tail -2 | head -1 | cut -d &#039; &#039; -f 2`&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ &amp;quot;${ADDR}&amp;quot; == &amp;quot;server&amp;quot; ]]; then&lt;br /&gt;
  if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
   echo $SEP7&lt;br /&gt;
   echo -e $QUESTION1 &amp;quot;WHAT IP ADDRESS DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
   echo $LINE7&lt;br /&gt;
  fi&lt;br /&gt;
  if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
   echo $SEP6&lt;br /&gt;
   echo -e $QUESTION1 &amp;quot;WHAT IP ADDRESS DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
   echo $LINE6&lt;br /&gt;
  fi&lt;br /&gt;
  printf &amp;quot;		&amp;quot;&lt;br /&gt;
  read ADDR&lt;br /&gt;
  echo &amp;quot;&amp;quot;&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;USER DEFINED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;USER DEFINED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE6&lt;br /&gt;
 fi&lt;br /&gt;
 echo -e &amp;quot; Hostname:\t\t&amp;quot;${NAME}&lt;br /&gt;
 echo -e &amp;quot; IP Address:\t\t&amp;quot;${ADDR}&lt;br /&gt;
 echo -e &amp;quot; Network Device:\t&amp;quot;${DEVICE1}&lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 echo ${NAME} &amp;gt; /tmp/hostname&lt;br /&gt;
 echo ${DEVICE1} &amp;gt; /tmp/newnic.txt&lt;br /&gt;
 sed -i &#039;/&#039;$DEVICE1&#039;/d&#039; /tmp/nics.txt&lt;br /&gt;
 echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/network&lt;br /&gt;
 echo &amp;quot;NETWORKING=yes&amp;quot; &amp;gt;&amp;gt; /tmp/network&lt;br /&gt;
 echo &amp;quot;HOSTNAME=&amp;quot;${NAME} &amp;gt;&amp;gt; /tmp/network&lt;br /&gt;
 echo &amp;quot;GATEWAY=&amp;quot;${GW1} &amp;gt;&amp;gt; /tmp/network&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DEVICE=&amp;quot;${DEVICE1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;BOOTPROTO=none&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;IPV6INIT=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;MTU=1500&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;NM_CONTROLLED=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;ONBOOT=yes&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;TYPE=Ethernet&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;IPADDR=&amp;quot;${ADDR} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;NETMASK=&amp;quot;${NM1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;GATEWAY=&amp;quot;${GW1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DNS1=&amp;quot;${DNS1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DNS2=&amp;quot;${DNS2} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DOMAIN=&amp;quot;${DOMAIN1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 while read NIC1&lt;br /&gt;
 do&lt;br /&gt;
  echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;DEVICE=&amp;quot;${NIC1} &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;BOOTPROTO=none&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;IPV6INIT=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;MTU=1500&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;NM_CONTROLLED=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;ONBOOT=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
 done &amp;lt; /tmp/nics.txt&lt;br /&gt;
 echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/resolv.conf&lt;br /&gt;
 echo &amp;quot;search &amp;quot;${DOMAIN1} &amp;gt;&amp;gt; /tmp/resolv.conf&lt;br /&gt;
 echo &amp;quot;nameserver &amp;quot;${DNS1} &amp;gt;&amp;gt; /tmp/resolv.conf&lt;br /&gt;
 echo &amp;quot;nameserver &amp;quot;${DNS2} &amp;gt;&amp;gt; /tmp/resolv.conf&lt;br /&gt;
 &lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;BEGINNING INSTALLATION&amp;quot; $TITLE2&lt;br /&gt;
  echo &amp;quot; Note: Press Ctrl+Alt+F1 to See Progress&amp;quot;&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;BEGINNING INSTALLATION&amp;quot; $TITLE2&lt;br /&gt;
  echo &amp;quot; Note: Press Ctrl+Alt+F1 to See Progress&amp;quot;&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
 fi&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY1&#039;)&lt;br /&gt;
&lt;br /&gt;
= RemoveNetworkManager =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Removing NetworkManager:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y remove NetworkManager &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yes | cp -f /tmp/ifcfg-* /etc/sysconfig/network-scripts/ &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SetHostname =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting Hostname:                                                           &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;NAME=`cat /tmp/hostname`&amp;quot; &amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;hostname \$NAME&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;hostnamectl set-hostname \$NAME&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;rhn-profile-sync&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;chmod -x /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 #echo &amp;quot;rm -rf /tmp/hostname&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;rm -rf /root/setHostname.sh&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/\/bin\/bash\ \/root\/setHostname.sh//g&#039; /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 chmod 777 /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /root/setHostname.sh&amp;quot; &amp;gt;&amp;gt; /etc/rc.d/rc.local&lt;br /&gt;
 chmod +x /etc/rc.d/rc.local&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SetupFiglet =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting up Figlet:                                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y install figlet &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 mkdir -p /usr/share/figlet/ &lt;br /&gt;
 wget http://140.32.192.51/pub/kickstart/figlet.tar.gz &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 tar xf figlet.tar.gz -C /usr/share/figlet/&lt;br /&gt;
 rm -rf figlet.tar.gz&lt;br /&gt;
 find /usr/share/figlet/ -name &#039;*.flf&#039; &amp;gt; /usr/share/figlet/figfonts.txt&lt;br /&gt;
 rhncfg-client get &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SetupNTP =&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/ForceTime&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting up Chrony:                                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y install chrony &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 rhncfg-client get &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 systemctl enable chrony &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 systemctl start chrony &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 ntpdate -s 140.32.191.249 &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 hwclock --systohc &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
= SetupPuppetAgent =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting up Puppet Agent:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y install puppet-agent &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
  &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= StatusBarScript =&lt;br /&gt;
 #raw&lt;br /&gt;
 echo &#039;until [ &amp;quot;1&amp;quot; -eq &amp;quot;0&amp;quot; ]; do&#039; &amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;*     &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot; *    &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;  *   &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;   *  &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;    * &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;     *&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;    * &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;   *  &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;  *   &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot; *    &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;*     &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039;done&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 chmod 777 /tmp/status.sh&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SwitchToTTY1 =&lt;br /&gt;
 #raw&lt;br /&gt;
 exec &amp;lt;/dev/tty1 &amp;gt; /dev/tty1&lt;br /&gt;
 chvt 1&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SwitchToTTY7 =&lt;br /&gt;
 #raw&lt;br /&gt;
 setterm -powersave off -blank 0&lt;br /&gt;
 chvt 7 &lt;br /&gt;
 exec &amp;lt;/dev/tty7 &amp;gt; /dev/tty7&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= UpdateAllRPMs =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing the latest RPM&#039;s:                                                &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum --nogpgcheck update -y &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 systemctl enable osad&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=49</id>
		<title>DREN/Kickstart/snippets</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=49"/>
		<updated>2023-06-02T19:36:15Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= AddADGroups =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding AD Groups:                                                           &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 groupadd domain_users -g 1342600513&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddAcasUser =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating ACAS Scan User:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 useradd scan_account -g users&lt;br /&gt;
 sudo -u scan_account ssh-keygen -b 2048 -t rsa -f /home/scan_account/.ssh/id_rsa -q -N &amp;quot;&amp;quot;&lt;br /&gt;
 sudo -u scan_account rm -rf /home/scan_account/.ssh/id_rsa &lt;br /&gt;
 sudo -u scan_account curl --cacert /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT https://rdhpwngmp-01/pub/kickstart/nga_acas.pub &amp;gt;  /home/scan_account/.ssh/authorized_keys&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddMounts =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding NFS Mounts:                                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /users&lt;br /&gt;
 chown :domain_users /users&lt;br /&gt;
 chmod 775 /users&lt;br /&gt;
 mkdir -p /data&lt;br /&gt;
 chown :domain_users /data&lt;br /&gt;
 chmod 775 /data&lt;br /&gt;
 echo &#039;users:/users  /users  nfs noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,relatime    0 0&#039; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 echo &#039;data:/data  /data  nfs noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,relatime    0 0&#039; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddScaleUser =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating Scale User:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 useradd scale -u 7498 -g 1342600513 -G users&lt;br /&gt;
 sed -i &#039;s~scale:!!:~scale:$6$hQ5XU8FI$BFssO833kwMzahuVXMnMO9qReK4VRAXtMKRL/csxtJoFtj7Wgc9twzp6E79jw8y.U/JfSqMhzMafhijnISiyh1:~&#039; /etc/shadow&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddSpacewalkToHosts =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding Spacewalk server to /etc/hosts:                                              &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 curl http://140.32.192.51/pub/kickstart/hosts &amp;gt; /mnt/sysimage/etc/hosts&lt;br /&gt;
 curl http://140.32.192.51/pub/kickstart/hosts &amp;gt; /etc/hosts&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= ForceTime =&lt;br /&gt;
 printf &amp;quot; Forcing Time Synce with NTP Server:                                         &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 ntpdate -s 140.32.191.249&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSMaster =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing DCOS Master:                                                     &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/InstallDCOSPrereqs&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 # This is needed for using the dcos command with jenkins &lt;br /&gt;
 yum -y install expect &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 # Creating installDCOS.sh script &lt;br /&gt;
 echo &amp;quot;#CHECK=\`systemctl is-active docker\`&amp;quot;  &amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#while [[ \$CHECK != &#039;active&#039; ]]; do sleep 5; CHECK=\`systemctl is-active docker\`;done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /tmp/dcos/dcos_install.sh master&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mkdir -p /var/log/mesos/archive&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;echo &#039;ENABLE_CHECK_TIME=false&#039; &amp;gt;&amp;gt; /opt/mesosphere/environment&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#sleep 6000&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#rm -rf /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/\/bin\/bash\ \/root\/installDCOS.sh//g&#039; /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s~LD_LIBRARY_PATH=/opt/mesosphere/lib~LD_LIBRARY_PATH=/lib64~&#039; /opt/mesosphere/environment.export&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;curl -fLsS --retry 20 -Y 100000 -y 60 https://downloads.dcos.io/binaries/cli/linux/x86-64/dcos-1.8/dcos -o dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mv dcos /usr/local/bin&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;chmod +x /usr/local/bin/dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;dcos config set core.dcos_url http://172.16.99.200&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 &lt;br /&gt;
 chmod 777 /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /etc/rc.d/rc.local&lt;br /&gt;
 chmod +x /etc/rc.d/rc.local&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSPrereqs =&lt;br /&gt;
 echo &amp;quot;proxy=http://192.168.1.73:3128&amp;quot; &amp;gt;&amp;gt; /etc/yum.conf&lt;br /&gt;
 yum -y install ipset tar xz unzip curl docker docker-selinux &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yum -y upgrade &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 grep -q Restart=on-failure /usr/lib/systemd/system/docker.service &amp;amp;&amp;amp; printf &#039;Restart function is already set in systemd script&#039; || sed -i &#039;/MountFlags=slave/aRestart=on-failure&#039; /usr/lib/systemd/system/docker.service&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 systemctl daemon-reload  &lt;br /&gt;
 systemctl enable docker.service&lt;br /&gt;
 systemctl start docker.service&lt;br /&gt;
 &lt;br /&gt;
 # DCOS requires this firewall to be shut off.&lt;br /&gt;
 ## https://docs.mesosphere.com/1.7/administration/installing/custom/system-requirements/&lt;br /&gt;
 systemctl disable firewalld&lt;br /&gt;
 systemctl stop firewalld&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /var/{lib,log}/mesos&lt;br /&gt;
 chown nobody /var/{lib,log}/mesos&lt;br /&gt;
 touch /var/marathon.ip&lt;br /&gt;
 chown /var/marathon.ip&lt;br /&gt;
 &lt;br /&gt;
 groupadd nogroup -g 9999&lt;br /&gt;
 groupadd docker&lt;br /&gt;
 &lt;br /&gt;
 yum -y remove dnsmasq &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 PIDS=`ps -ef | grep dnsmasq | egrep -v grep | awk &#039;{ print $2 }&#039;`&lt;br /&gt;
 kill $PIDS&lt;br /&gt;
 mkdir -p /tmp/dcos &amp;amp;&amp;amp; cd /tmp/dcos&lt;br /&gt;
 #curl -s http://140.32.192.51/dcos/install/genconf/serve/dcos_install.sh &amp;gt; dcos_install.sh&lt;br /&gt;
 curl -s http://192.168.1.73:81/dcos/genconf/serve/dcos_install.sh &amp;gt; dcos_install.sh&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSSlave =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing DCOS Slave:                                                      &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/InstallDCOSPrereqs&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 echo &amp;quot;setenforce 0&amp;quot;  &amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#CHECK=\`systemctl is-active docker\`&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#while [[ \$CHECK != &#039;active&#039; ]]; do sleep 5; CHECK=\`systemctl is-active docker\`;done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /tmp/dcos/dcos_install.sh slave&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;DCOS_CONFIG=\`grep -ir &#039;MESOS_HOSTNAME_LOOKUP=false&#039; /opt/mesosphere/packages/dcos-config* | grep mesos-slave-common | cut -d &#039;:&#039; -f 1\`&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;for i in \$DCOS_CONFIG; do sed -i &#039;s~MESOS_HOSTNAME_LOOKUP=.*~MESOS_HOSTNAME_LOOKUP=true~&#039; \$i; done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;rm -rf /var/lib/mesos/slave/meta/slaves/latest&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;echo &#039;ENABLE_CHECK_TIME=false&#039; &amp;gt;&amp;gt; /opt/mesosphere/environment&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#sleep 6000&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#rm -rf /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/\/bin\/bash\ \/root\/installDCOS.sh//g&#039; /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s~LD_LIBRARY_PATH=/opt/mesosphere/lib~LD_LIBRARY_PATH=/lib64~&#039; /opt/mesosphere/environment.export&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 &lt;br /&gt;
 chmod 777 /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /etc/rc.d/rc.local&lt;br /&gt;
 chmod +x /etc/rc.d/rc.local&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= InstallDesktopPackages =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing GNOME Desktop Packages:                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 yum -y --nogpgcheck groupinstall &amp;quot;GNOME Desktop&amp;quot; &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 sed -i &#039;s/id:3:/id:5:/&#039; /etc/inittab&lt;br /&gt;
 systemctl set-default graphical.target&lt;br /&gt;
 rm -f /etc/xdg/autostart/gnome-initial-setup-first-login.desktop &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 rm -f /etc/xdg/autostart/gnome-initial-setup-copy-worker.desktop &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 rm -f /etc/xdg/autostart/gnome-welcome-tour.desktop &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 sed -i &#039;/daemon/a InitialSetupEnable=False&#039; /etc/gdm/custom.conf&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= InstallVMTools =&lt;br /&gt;
 #raw&lt;br /&gt;
 if [[ $(lspci|grep -i vmware) ]]; then&lt;br /&gt;
    printf &amp;quot; Installing VMware Tools:                                                    &amp;quot;&lt;br /&gt;
    /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
    yum -y install open-vm-tools&lt;br /&gt;
    STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
    kill $STATUSPID&lt;br /&gt;
    printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
    echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 fi&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= JoinAD =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating /root/joinAD.sh:                                                   &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum install -y realmd samba samba-common oddjob oddjob-mkhomedir sssd adcli sssd-tools samba-libs krb5-workstation &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 echo &#039;read -p &amp;quot;Enter Admin Username: &amp;quot; USERNAME&#039; &amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;yum install -y realmd samba samba-common oddjob oddjob-mkhomedir sssd adcli sssd-tools samba-libs krb5-workstation &amp;amp;&amp;gt; /dev/null&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;rhncfg-client get &amp;amp;&amp;gt; /dev/null&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;realm leave&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;sleep 5&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;realm join --user=$USERNAME &amp;quot;711hpw.afrl-wrs.hpc.mil&amp;quot;&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;sleep 15&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;systemctl stop sssd&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;rm -rf /var/lib/sss/db/*&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;rhncfg-client get &amp;amp;&amp;gt; /dev/null&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;systemctl start sssd&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;sleep 10&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 echo &#039;systemctl restart sssd&#039; &amp;gt;&amp;gt; /root/joinAD.sh&lt;br /&gt;
 chmod 777 /root/joinAD.sh&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= PostNoChroot-InstallNetworking =&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/StatusBarScript&#039;)&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY7&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 # Set-Hostname-Network Snippet&lt;br /&gt;
 printf &amp;quot; Setting up Networking:                                                      &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 PID=`ps -ef | grep status.sh | egrep -v grep | sed &#039;s/\ \ \ \ /\ /g&#039; | sed &#039;s/\ \ \ /\ /g&#039; | sed &#039;s/\ \ /\ /g&#039; | cut -d &#039; &#039; -f 2`&lt;br /&gt;
 \cp -f /tmp/network /mnt/sysimage/etc/sysconfig/network&lt;br /&gt;
 \cp -f /tmp/hostname /mnt/sysimage/tmp/hostname&lt;br /&gt;
 \cp -f /tmp/newnic.txt /mnt/sysimage/tmp/newnic.txt&lt;br /&gt;
 \cp -f /tmp/nics.txt /mnt/sysimage/tmp/nics.txt&lt;br /&gt;
 NAME`grep HOSTNAME /tmp/hostname | cut -d &amp;quot;=&amp;quot; -f 2`&lt;br /&gt;
 /mnt/sysimage/usr/bin/hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /mnt/sysimage/usr/bin/hostnamectl set-hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /bin/hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /bin/hostnamectl set-hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /mnt/sysimage/bin/hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 /mnt/sysimage/bin/hostnamectl set-hostname ${NAME} &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 DEVICE1=`cat /tmp/newnic.txt`&lt;br /&gt;
 \cp -f /tmp/ifcfg-${DEVICE1} /mnt/sysimage/etc/sysconfig/network-scripts/ifcfg-${DEVICE1}&lt;br /&gt;
 \cp -f /tmp/ifcfg-${DEVICE1} /mnt/sysimage/tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 while read NIC&lt;br /&gt;
 do&lt;br /&gt;
  \cp -f /tmp/ifcfg-${NIC} /mnt/sysimage/etc/sysconfig/network-scripts/ifcfg-${NIC}&lt;br /&gt;
  \cp -f /tmp/ifcfg-${NIC} /mnt/sysimage/tmp/ifcfg-${NIC}&lt;br /&gt;
 done &amp;lt; /tmp/nics.txt&lt;br /&gt;
 \cp -f /tmp/newnic.txt /mnt/sysimage/tmp/newnic.txt&lt;br /&gt;
 \cp -f /tmp/nics.txt /mnt/sysimage/tmp/nics.txt&lt;br /&gt;
 kill $PID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 printf &amp;quot; Setting up DNS:                                                             &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 \cp -f /tmp/resolv.conf /mnt/sysimage/etc/resolv.conf&lt;br /&gt;
 PID=`ps -ef | grep status.sh | egrep -v grep | sed &#039;s/\ \ \ \ /\ /g&#039; | sed &#039;s/\ \ \ /\ /g&#039; | sed &#039;s/\ \ /\ /g&#039; | cut -d &#039; &#039; -f 2`&lt;br /&gt;
 kill $PID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY1&#039;)&lt;br /&gt;
&lt;br /&gt;
= PreScript Get-Hostname-Network =&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY7&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 # Get-Hostname-Network Snippet&lt;br /&gt;
 uname -r | grep -q el7 &amp;amp;&amp;amp; OS7=True || OS7=False&lt;br /&gt;
 uname -r | grep -q el6 &amp;amp;&amp;amp; OS6=True || OS6=False&lt;br /&gt;
 SEP7=&amp;quot;#########################################################################################&amp;quot;&lt;br /&gt;
 LINE7=&amp;quot;-----------------------------------------------------------------------------------------&amp;quot;&lt;br /&gt;
 SEP6=&amp;quot;#####################################################################&amp;quot;&lt;br /&gt;
 LINE6=&amp;quot;---------------------------------------------------------------------&amp;quot;&lt;br /&gt;
 SPACE=&amp;quot;                            &amp;quot;&lt;br /&gt;
 TITLE1=&amp;quot;\e[4;32m&amp;quot;&lt;br /&gt;
 TITLE2=&amp;quot;\e[39;0m&amp;quot;&lt;br /&gt;
 QUESTION1=&amp;quot;\e[31;1m&amp;quot;&lt;br /&gt;
 QUESTION2=&amp;quot;\e[39;0m&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  setterm -powersave off -blank 0&lt;br /&gt;
  DNS1=`nmcli device show | grep DNS | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2 | head -1`&lt;br /&gt;
  DNS2=`nmcli device show | grep DNS | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2 | head -2 | tail -1`&lt;br /&gt;
  DOMAIN1=`nmcli device show | grep DOMAIN | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2`&lt;br /&gt;
  GW1=`nmcli device show | grep GATEWAY | sed &#039;s/\ //g&#039; | cut -d &#039;:&#039; -f 2 | head -1`&lt;br /&gt;
  DEVICE=`nmcli device | grep &#039; connected &#039; | cut -d &#039; &#039; -f 1`&lt;br /&gt;
  NM1=`ifconfig | grep netmask | sed &#039;s/.*\ 255/255/&#039; | head -1 | cut -d &#039; &#039; -f 1`&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;DISCOVERED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  DNS1=`cat /etc/resolv.conf | grep nameserver | cut -d &#039; &#039; -f 2 | head -1`&lt;br /&gt;
  DNS2=`cat /etc/resolv.conf | grep nameserver | cut -d &#039; &#039; -f 2 | head -2 | tail -1`&lt;br /&gt;
  DOMAIN1=`cat /etc/resolv.conf | grep domain | cut -d &#039; &#039; -f 2 | head -1`&lt;br /&gt;
  GW1=`ip route show | grep default | cut -d &#039; &#039; -f 3`&lt;br /&gt;
  DEVICE=`ip addr show | grep inet | grep brd | cut -d &#039; &#039; -f 11`&lt;br /&gt;
  NM1=`ifconfig | grep Mask | sed &#039;s/.*\ 255\255/&#039; | head -1 | cut -d &#039;:&#039; -f 4`&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;DISCOVERED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE6&lt;br /&gt;
 fi&lt;br /&gt;
 NICNUM=`ip link show | grep &amp;quot;: &amp;quot; | egrep -v lo | wc -l`&lt;br /&gt;
 ip link show | grep &amp;quot;: &amp;quot; | egrep -v lo | cut -d &#039;:&#039; -f 2 | cut -d &#039; &#039; -f 2 &amp;gt; /tmp/nics.txt&lt;br /&gt;
 LINKNUM=0&lt;br /&gt;
 COUNT=1&lt;br /&gt;
 while read NIC&lt;br /&gt;
  do &lt;br /&gt;
    LINK1=`ethtool ${NIC} | grep &amp;quot;Link detected:&amp;quot; | cut -d &#039;:&#039; -f 2 | sed &#039;s/\ //&#039;`&lt;br /&gt;
    if [[ $LINK1 = &amp;quot;yes&amp;quot; ]]; then&lt;br /&gt;
      let LINKNUM=LINKNUM+1&lt;br /&gt;
      LINKCHOICE=$COUNT&lt;br /&gt;
    fi&lt;br /&gt;
    let COUNT=COUNT+1&lt;br /&gt;
 done &amp;lt; /tmp/nics.txt&lt;br /&gt;
 echo -e &#039; DNS1 Server:\t\t\t&#039;${DNS1}&lt;br /&gt;
 echo -e &#039; DNS2 Server:\t\t\t&#039;${DNS2}&lt;br /&gt;
 echo -e &#039; Domain Name:\t\t\t&#039;${DOMAIN1}&lt;br /&gt;
 echo -e &#039; Current Network Device:\t&#039;${DEVICE}&lt;br /&gt;
 echo -e &#039; Number of Network Devices:\t&#039;${NICNUM}&lt;br /&gt;
 echo -e &#039; Gateway:\t\t\t&#039;${GW1}&lt;br /&gt;
 echo -e &#039; Netmask:\t\t\t&#039;${NM1}&lt;br /&gt;
 if [ $NICNUM -ne 1 ]; then&lt;br /&gt;
  if [ $LINKNUM -ne 1 ]; then&lt;br /&gt;
   if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
    echo $SEP7&lt;br /&gt;
    echo -e $QUESTION1 &amp;quot;WHAT NETWORK DEVICE DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
    echo -e &amp;quot; Note: This kickstart will continue to use the \e[31m&amp;quot;${DEVICE}&amp;quot;\e[39m for the installation.&amp;quot;&lt;br /&gt;
    echo &amp;quot; Note: If you choose nothing it will default to option 1.&amp;quot;&lt;br /&gt;
    echo $LINE7&lt;br /&gt;
   fi&lt;br /&gt;
   if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
    echo $SEP6&lt;br /&gt;
    echo -e $QUESTION1 &amp;quot;WHAT NETWORK DEVICE DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
    echo -e &amp;quot; Note: This kickstart will continue to use the \e[31m&amp;quot;${DEVICE}&amp;quot;\e[39m for the installation.&amp;quot;&lt;br /&gt;
    echo &amp;quot; Note: If you choose nothing it will default to option 1.&amp;quot;&lt;br /&gt;
    echo $LINE6&lt;br /&gt;
   fi&lt;br /&gt;
   COUNT=1&lt;br /&gt;
   while read NIC&lt;br /&gt;
   do&lt;br /&gt;
    LINK=`ethtool ${NIC} | grep &amp;quot;Link detected:&amp;quot; | cut -d &#039;:&#039; -f 2 | sed &#039;s/\ //&#039;`&lt;br /&gt;
    echo -e &amp;quot; $COUNT:		DEVICE:\t\t$NIC&amp;quot;&lt;br /&gt;
    DRIVER=`ethtool -i ${NIC} | grep driver | cut -d &#039;:&#039; -f 2 | sed &#039;s/\ //&#039;`&lt;br /&gt;
    echo -e &amp;quot;		DRIVER:\t\t$DRIVER&amp;quot;&lt;br /&gt;
    TENG=`ethtool -i ${NIC} | grep baseT | grep 10000 | wc -l`&lt;br /&gt;
    if [ TENG -eq 0 ]; then &lt;br /&gt;
     ONEG=`ethtool -i ${NIC} | grep baseT | grep 1000 | wc -l`&lt;br /&gt;
     if [ ONEG -eq 0 ]; then&lt;br /&gt;
      echo &amp;quot;NOT 1G Networking&amp;quot; &amp;gt; /dev/null&lt;br /&gt;
     else&lt;br /&gt;
      echo -e &amp;quot;		SPEED:\t\t1G&amp;quot;&lt;br /&gt;
     fi&lt;br /&gt;
    else&lt;br /&gt;
     echo -e &amp;quot;		SPEED:\t\t10G&amp;quot;&lt;br /&gt;
    fi&lt;br /&gt;
    echo -e &amp;quot;		LINK:\t\t$LINK&amp;quot;&lt;br /&gt;
    if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
     echo $LINE7&lt;br /&gt;
    fi&lt;br /&gt;
    if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
     echo $LINE6&lt;br /&gt;
    fi&lt;br /&gt;
    let COUNT=COUNT+1&lt;br /&gt;
   done &amp;lt; /tmp/nics.txt&lt;br /&gt;
   printf &amp;quot;		&amp;quot;&lt;br /&gt;
   read NICCHOICE&lt;br /&gt;
  else&lt;br /&gt;
   NICCHOICE=$LINKCHOICE&lt;br /&gt;
  fi&lt;br /&gt;
   if [ -z $NICCHOICE ]; then NICCHOICE=1; fi&lt;br /&gt;
 fi&lt;br /&gt;
 CMD=&#039;cat /tmp/nics.txt | head -&#039;$NICCHOICE&#039; | tail -1&#039;&lt;br /&gt;
 DEVICE1=`eval $CMD`&lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
  echo -e $QUESTION1 &amp;quot;WHAT HOSTNAME DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
  echo &amp;quot; Note: If this hostname is already in DNS you will NOT need to enter an IP address.&amp;quot;&lt;br /&gt;
  echo $LINE7 &lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
  echo -e $QUESTION1 &amp;quot;WHAT HOSTNAME DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
  echo &amp;quot; Note: If this hostname is already in DNS you will NOT need to enter an IP address.&amp;quot;&lt;br /&gt;
  echo $LINE6&lt;br /&gt;
 fi&lt;br /&gt;
 printf &amp;quot;		&amp;quot;&lt;br /&gt;
 if [ -f &amp;quot;/tmp/pre_install_network_config&amp;quot; ]; then&lt;br /&gt;
   NAME=`cat /tmp/pre_install_network_config | sed &#039;s/.*--hostname=//&#039; | cut -d &#039;.&#039; -f 1`&lt;br /&gt;
   echo $NAME&lt;br /&gt;
 else&lt;br /&gt;
   read NAME&lt;br /&gt;
 fi&lt;br /&gt;
 echo &amp;quot;&amp;quot;&lt;br /&gt;
 NAME1=`nslookup ${NAME} ${DNS1} | grep Name | head -1 | cut -f 2`&lt;br /&gt;
 if [[ -z ${NAME1} ]]; then&lt;br /&gt;
  NAME=`echo ${NAME}.${DOMAIN1}`&lt;br /&gt;
 else&lt;br /&gt;
  NAME=`echo ${NAME1}`&lt;br /&gt;
 fi&lt;br /&gt;
 /bin/hostnamectl set-hostname ${NAME}&lt;br /&gt;
 ADDR=`cat /etc/hosts | grep -i ${NAME} | egrep -v KVM | awk &#039;{ print $1 }&#039;`&lt;br /&gt;
 if [[ -z ${ADDR} ]]; then&lt;br /&gt;
  ADDR=`nslookup ${NAME} ${DNS1} | tail -2 | head -1 | cut -d &#039; &#039; -f 2`&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ &amp;quot;${ADDR}&amp;quot; == &amp;quot;server&amp;quot; ]]; then&lt;br /&gt;
  if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
   echo $SEP7&lt;br /&gt;
   echo -e $QUESTION1 &amp;quot;WHAT IP ADDRESS DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
   echo $LINE7&lt;br /&gt;
  fi&lt;br /&gt;
  if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
   echo $SEP6&lt;br /&gt;
   echo -e $QUESTION1 &amp;quot;WHAT IP ADDRESS DO YOU WANT THIS SERVER TO USE?&amp;quot; $QUESTION2&lt;br /&gt;
   echo $LINE6&lt;br /&gt;
  fi&lt;br /&gt;
  printf &amp;quot;		&amp;quot;&lt;br /&gt;
  read ADDR&lt;br /&gt;
  echo &amp;quot;&amp;quot;&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;USER DEFINED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;USER DEFINED VARIABLES&amp;quot; $TITLE2&lt;br /&gt;
  echo $LINE6&lt;br /&gt;
 fi&lt;br /&gt;
 echo -e &amp;quot; Hostname:\t\t&amp;quot;${NAME}&lt;br /&gt;
 echo -e &amp;quot; IP Address:\t\t&amp;quot;${ADDR}&lt;br /&gt;
 echo -e &amp;quot; Network Device:\t&amp;quot;${DEVICE1}&lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 echo ${NAME} &amp;gt; /tmp/hostname&lt;br /&gt;
 echo ${DEVICE1} &amp;gt; /tmp/newnic.txt&lt;br /&gt;
 sed -i &#039;/&#039;$DEVICE1&#039;/d&#039; /tmp/nics.txt&lt;br /&gt;
 echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/network&lt;br /&gt;
 echo &amp;quot;NETWORKING=yes&amp;quot; &amp;gt;&amp;gt; /tmp/network&lt;br /&gt;
 echo &amp;quot;HOSTNAME=&amp;quot;${NAME} &amp;gt;&amp;gt; /tmp/network&lt;br /&gt;
 echo &amp;quot;GATEWAY=&amp;quot;${GW1} &amp;gt;&amp;gt; /tmp/network&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DEVICE=&amp;quot;${DEVICE1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;BOOTPROTO=none&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;IPV6INIT=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;MTU=1500&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;NM_CONTROLLED=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;ONBOOT=yes&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;TYPE=Ethernet&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;IPADDR=&amp;quot;${ADDR} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;NETMASK=&amp;quot;${NM1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;GATEWAY=&amp;quot;${GW1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DNS1=&amp;quot;${DNS1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DNS2=&amp;quot;${DNS2} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 echo &amp;quot;DOMAIN=&amp;quot;${DOMAIN1} &amp;gt;&amp;gt; /tmp/ifcfg-${DEVICE1}&lt;br /&gt;
 while read NIC1&lt;br /&gt;
 do&lt;br /&gt;
  echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;DEVICE=&amp;quot;${NIC1} &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;BOOTPROTO=none&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;IPV6INIT=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;MTU=1500&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;NM_CONTROLLED=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
  echo &amp;quot;ONBOOT=no&amp;quot; &amp;gt;&amp;gt; /tmp/ifcfg-${NIC1}&lt;br /&gt;
 done &amp;lt; /tmp/nics.txt&lt;br /&gt;
 echo &amp;quot;# GENERATED BY GET-HOSTNAME-NETWORK SNIPPET&amp;quot; &amp;gt; /tmp/resolv.conf&lt;br /&gt;
 echo &amp;quot;search &amp;quot;${DOMAIN1} &amp;gt;&amp;gt; /tmp/resolv.conf&lt;br /&gt;
 echo &amp;quot;nameserver &amp;quot;${DNS1} &amp;gt;&amp;gt; /tmp/resolv.conf&lt;br /&gt;
 echo &amp;quot;nameserver &amp;quot;${DNS2} &amp;gt;&amp;gt; /tmp/resolv.conf&lt;br /&gt;
 &lt;br /&gt;
 if [[ $OS7 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;BEGINNING INSTALLATION&amp;quot; $TITLE2&lt;br /&gt;
  echo &amp;quot; Note: Press Ctrl+Alt+F1 to See Progress&amp;quot;&lt;br /&gt;
  echo $SEP7&lt;br /&gt;
 fi&lt;br /&gt;
 if [[ $OS6 = &amp;quot;True&amp;quot; ]]; then&lt;br /&gt;
  echo -e $SPACE $TITLE1 &amp;quot;BEGINNING INSTALLATION&amp;quot; $TITLE2&lt;br /&gt;
  echo &amp;quot; Note: Press Ctrl+Alt+F1 to See Progress&amp;quot;&lt;br /&gt;
  echo $SEP6&lt;br /&gt;
 fi&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/SwitchToTTY1&#039;)&lt;br /&gt;
&lt;br /&gt;
= RemoveNetworkManager =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Removing NetworkManager:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y remove NetworkManager &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yes | cp -f /tmp/ifcfg-* /etc/sysconfig/network-scripts/ &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SetHostname =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting Hostname:                                                           &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;NAME=`cat /tmp/hostname`&amp;quot; &amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;hostname \$NAME&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;hostnamectl set-hostname \$NAME&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;rhn-profile-sync&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;chmod -x /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 #echo &amp;quot;rm -rf /tmp/hostname&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;rm -rf /root/setHostname.sh&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/\/bin\/bash\ \/root\/setHostname.sh//g&#039; /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/setHostname.sh&lt;br /&gt;
 chmod 777 /root/setHostname.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /root/setHostname.sh&amp;quot; &amp;gt;&amp;gt; /etc/rc.d/rc.local&lt;br /&gt;
 chmod +x /etc/rc.d/rc.local&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SetupFiglet =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting up Figlet:                                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y install figlet &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 mkdir -p /usr/share/figlet/ &lt;br /&gt;
 wget http://140.32.192.51/pub/kickstart/figlet.tar.gz &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 tar xf figlet.tar.gz -C /usr/share/figlet/&lt;br /&gt;
 rm -rf figlet.tar.gz&lt;br /&gt;
 find /usr/share/figlet/ -name &#039;*.flf&#039; &amp;gt; /usr/share/figlet/figfonts.txt&lt;br /&gt;
 rhncfg-client get &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SetupNTP =&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/ForceTime&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting up Chrony:                                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y install chrony &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 rhncfg-client get &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 systemctl enable chrony &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 systemctl start chrony &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 ntpdate -s 140.32.191.249 &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 hwclock --systohc &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
= SetupPuppetAgent =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Setting up Puppet Agent:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum -y install puppet-agent &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
  &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= | StatusBarScript =&lt;br /&gt;
 #raw&lt;br /&gt;
 echo &#039;until [ &amp;quot;1&amp;quot; -eq &amp;quot;0&amp;quot; ]; do&#039; &amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;*     &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot; *    &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;  *   &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;   *  &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;    * &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;     *&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;    * &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;   *  &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;  *   &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot; *    &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;[\e[1;32m%-6s\e[0;39m]&amp;quot; &amp;quot;*     &amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; sleep .25&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039; printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 echo &#039;done&#039; &amp;gt;&amp;gt; /tmp/status.sh&lt;br /&gt;
 chmod 777 /tmp/status.sh&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SwitchToTTY1 =&lt;br /&gt;
 #raw&lt;br /&gt;
 exec &amp;lt;/dev/tty1 &amp;gt; /dev/tty1&lt;br /&gt;
 chvt 1&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= SwitchToTTY7 =&lt;br /&gt;
 #raw&lt;br /&gt;
 setterm -powersave off -blank 0&lt;br /&gt;
 chvt 7 &lt;br /&gt;
 exec &amp;lt;/dev/tty7 &amp;gt; /dev/tty7&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= UpdateAllRPMs =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing the latest RPM&#039;s:                                                &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 yum --nogpgcheck update -y &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 systemctl enable osad&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=48</id>
		<title>DREN/Kickstart/snippets</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=48"/>
		<updated>2023-06-02T19:30:56Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= AddADGroups =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding AD Groups:                                                           &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 groupadd domain_users -g 1342600513&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddAcasUser =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating ACAS Scan User:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 useradd scan_account -g users&lt;br /&gt;
 sudo -u scan_account ssh-keygen -b 2048 -t rsa -f /home/scan_account/.ssh/id_rsa -q -N &amp;quot;&amp;quot;&lt;br /&gt;
 sudo -u scan_account rm -rf /home/scan_account/.ssh/id_rsa &lt;br /&gt;
 sudo -u scan_account curl --cacert /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT https://rdhpwngmp-01/pub/kickstart/nga_acas.pub &amp;gt;  /home/scan_account/.ssh/authorized_keys&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddMounts =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding NFS Mounts:                                                          &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /users&lt;br /&gt;
 chown :domain_users /users&lt;br /&gt;
 chmod 775 /users&lt;br /&gt;
 mkdir -p /data&lt;br /&gt;
 chown :domain_users /data&lt;br /&gt;
 chmod 775 /data&lt;br /&gt;
 echo &#039;users:/users  /users  nfs noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,relatime    0 0&#039; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 echo &#039;data:/data  /data  nfs noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,relatime    0 0&#039; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddScaleUser =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Creating Scale User:                                                    &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 &lt;br /&gt;
 useradd scale -u 7498 -g 1342600513 -G users&lt;br /&gt;
 sed -i &#039;s~scale:!!:~scale:$6$hQ5XU8FI$BFssO833kwMzahuVXMnMO9qReK4VRAXtMKRL/csxtJoFtj7Wgc9twzp6E79jw8y.U/JfSqMhzMafhijnISiyh1:~&#039; /etc/shadow&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= AddSpacewalkToHosts =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Adding Spacewalk server to /etc/hosts:                                              &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 curl http://140.32.192.51/pub/kickstart/hosts &amp;gt; /mnt/sysimage/etc/hosts&lt;br /&gt;
 curl http://140.32.192.51/pub/kickstart/hosts &amp;gt; /etc/hosts&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= ForceTime =&lt;br /&gt;
 printf &amp;quot; Forcing Time Synce with NTP Server:                                         &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 ntpdate -s 140.32.191.249&lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSMaster =&lt;br /&gt;
 #raw&lt;br /&gt;
 printf &amp;quot; Installing DCOS Master:                                                     &amp;quot;&lt;br /&gt;
 /bin/bash /tmp/status.sh &amp;amp;&lt;br /&gt;
 #end raw&lt;br /&gt;
 $SNIPPET(&#039;spacewalk/1/InstallDCOSPrereqs&#039;)&lt;br /&gt;
 #raw&lt;br /&gt;
 # This is needed for using the dcos command with jenkins &lt;br /&gt;
 yum -y install expect &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 # Creating installDCOS.sh script &lt;br /&gt;
 echo &amp;quot;#CHECK=\`systemctl is-active docker\`&amp;quot;  &amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#while [[ \$CHECK != &#039;active&#039; ]]; do sleep 5; CHECK=\`systemctl is-active docker\`;done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /tmp/dcos/dcos_install.sh master&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mkdir -p /var/log/mesos/archive&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;echo &#039;ENABLE_CHECK_TIME=false&#039; &amp;gt;&amp;gt; /opt/mesosphere/environment&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#sleep 6000&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;#rm -rf /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/\/bin\/bash\ \/root\/installDCOS.sh//g&#039; /etc/rc.d/rc.local&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s~LD_LIBRARY_PATH=/opt/mesosphere/lib~LD_LIBRARY_PATH=/lib64~&#039; /opt/mesosphere/environment.export&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;curl -fLsS --retry 20 -Y 100000 -y 60 https://downloads.dcos.io/binaries/cli/linux/x86-64/dcos-1.8/dcos -o dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mv dcos /usr/local/bin&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;chmod +x /usr/local/bin/dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;dcos config set core.dcos_url http://172.16.99.200&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 &lt;br /&gt;
 chmod 777 /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /root/installDCOS.sh&amp;quot; &amp;gt;&amp;gt; /etc/rc.d/rc.local&lt;br /&gt;
 chmod +x /etc/rc.d/rc.local&lt;br /&gt;
 &lt;br /&gt;
 STATUSPID=`ps -ef | grep status| egrep -v grep | head -1 | awk &#039;{print $2}&#039;`&lt;br /&gt;
 kill $STATUSPID&lt;br /&gt;
 printf &amp;quot;\b\b\b\b\b\b\b\b&amp;quot;&lt;br /&gt;
 echo -e &amp;quot;[  \e[1;32mOK\e[0;39m  ]&amp;quot;&lt;br /&gt;
 #end raw&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSPrereqs =&lt;br /&gt;
 echo &amp;quot;proxy=http://192.168.1.73:3128&amp;quot; &amp;gt;&amp;gt; /etc/yum.conf&lt;br /&gt;
 yum -y install ipset tar xz unzip curl docker docker-selinux &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yum -y upgrade &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 &lt;br /&gt;
 grep -q Restart=on-failure /usr/lib/systemd/system/docker.service &amp;amp;&amp;amp; printf &#039;Restart function is already set in systemd script&#039; || sed -i &#039;/MountFlags=slave/aRestart=on-failure&#039; /usr/lib/systemd/system/docker.service&lt;br /&gt;
 rhncfg-client get&lt;br /&gt;
 systemctl daemon-reload  &lt;br /&gt;
 systemctl enable docker.service&lt;br /&gt;
 systemctl start docker.service&lt;br /&gt;
 &lt;br /&gt;
 # DCOS requires this firewall to be shut off.&lt;br /&gt;
 ## https://docs.mesosphere.com/1.7/administration/installing/custom/system-requirements/&lt;br /&gt;
 systemctl disable firewalld&lt;br /&gt;
 systemctl stop firewalld&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /var/{lib,log}/mesos&lt;br /&gt;
 chown nobody /var/{lib,log}/mesos&lt;br /&gt;
 touch /var/marathon.ip&lt;br /&gt;
 chown /var/marathon.ip&lt;br /&gt;
 &lt;br /&gt;
 groupadd nogroup -g 9999&lt;br /&gt;
 groupadd docker&lt;br /&gt;
 &lt;br /&gt;
 yum -y remove dnsmasq &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 PIDS=`ps -ef | grep dnsmasq | egrep -v grep | awk &#039;{ print $2 }&#039;`&lt;br /&gt;
 kill $PIDS&lt;br /&gt;
 mkdir -p /tmp/dcos &amp;amp;&amp;amp; cd /tmp/dcos&lt;br /&gt;
 #curl -s http://140.32.192.51/dcos/install/genconf/serve/dcos_install.sh &amp;gt; dcos_install.sh&lt;br /&gt;
 curl -s http://192.168.1.73:81/dcos/genconf/serve/dcos_install.sh &amp;gt; dcos_install.sh&lt;br /&gt;
&lt;br /&gt;
= InstallDCOSSlave =&lt;br /&gt;
= InstallDesktopPackages =&lt;br /&gt;
= InstallVMTools =&lt;br /&gt;
= JoinAD =&lt;br /&gt;
= PostNoChroot-InstallNetworking =&lt;br /&gt;
= PreScript Get-Hostname-Network =&lt;br /&gt;
= RemoveNetworkManager =&lt;br /&gt;
= SetHostname =&lt;br /&gt;
= SetupFiglet =&lt;br /&gt;
= SetupNTP =&lt;br /&gt;
= | SetupPuppetAgent =&lt;br /&gt;
= | StatusBarScript =&lt;br /&gt;
= | SwitchToTTY1 =&lt;br /&gt;
= | SwitchToTTY7 =&lt;br /&gt;
= | UpdateAllRPMs =&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=47</id>
		<title>DREN/Kickstart/snippets</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/snippets&amp;diff=47"/>
		<updated>2023-06-02T19:28:19Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= AddADGroups = = AddAcasUser = = AddMounts = = AddScaleUser = = AddSpacewalkToHosts = = ForceTime = = InstallDCOSMaster = = InstallDCOSPrereqs = = InstallDCOSSlave = = InstallDesktopPackages = = InstallVMTools = = JoinAD = = PostNoChroot-InstallNetworking = = PreScript Get-Hostname-Network = = RemoveNetworkManager = = SetHostname = = SetupFiglet = = SetupNTP = = | SetupPuppetAgent = = | StatusBarScript = = | SwitchToTTY1 = = | SwitchToTTY7 = = | UpdateAllRPMs =&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= AddADGroups =&lt;br /&gt;
= AddAcasUser =&lt;br /&gt;
= AddMounts =&lt;br /&gt;
= AddScaleUser =&lt;br /&gt;
= AddSpacewalkToHosts =&lt;br /&gt;
= ForceTime =&lt;br /&gt;
= InstallDCOSMaster =&lt;br /&gt;
= InstallDCOSPrereqs =&lt;br /&gt;
= InstallDCOSSlave =&lt;br /&gt;
= InstallDesktopPackages =&lt;br /&gt;
= InstallVMTools =&lt;br /&gt;
= JoinAD =&lt;br /&gt;
= PostNoChroot-InstallNetworking =&lt;br /&gt;
= PreScript Get-Hostname-Network =&lt;br /&gt;
= RemoveNetworkManager =&lt;br /&gt;
= SetHostname =&lt;br /&gt;
= SetupFiglet =&lt;br /&gt;
= SetupNTP =&lt;br /&gt;
= | SetupPuppetAgent =&lt;br /&gt;
= | StatusBarScript =&lt;br /&gt;
= | SwitchToTTY1 =&lt;br /&gt;
= | SwitchToTTY7 =&lt;br /&gt;
= | UpdateAllRPMs =&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/pxe&amp;diff=46</id>
		<title>DREN/Kickstart/pxe</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/pxe&amp;diff=46"/>
		<updated>2023-06-02T19:24:16Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;=cobbler= = /etc/cobbler/pxe/pxedefault.template =   DEFAULT vesamenu.c32  PROMPT 0  menu clear  menu background splash.png  MENU TITLE Choose from the following kickstart Profiles:  menu vshift 8  menu hshift 15  menu width 60  MENU MARGIN 1  MENU ROWS 15  MENU MASTER PASSWD $6$/GULqBhPJsrxxiC3$iJiWYlMyZNfwwOKsKeyLiNNcfwd7yUjYErzh4WtGMozDcmRubesMeQGeKE956qhhlmGia/1jsdth7vVaMOOP60  TIMEOUT 80  TOTALTIMEOUT 6000  ONTIMEOUT $pxe_timeout_profile     LABEL local          MEN...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=cobbler=&lt;br /&gt;
= /etc/cobbler/pxe/pxedefault.template =&lt;br /&gt;
&lt;br /&gt;
 DEFAULT vesamenu.c32&lt;br /&gt;
 PROMPT 0&lt;br /&gt;
 menu clear&lt;br /&gt;
 menu background splash.png&lt;br /&gt;
 MENU TITLE Choose from the following kickstart Profiles:&lt;br /&gt;
 menu vshift 8&lt;br /&gt;
 menu hshift 15&lt;br /&gt;
 menu width 60&lt;br /&gt;
 MENU MARGIN 1&lt;br /&gt;
 MENU ROWS 15&lt;br /&gt;
 MENU MASTER PASSWD $6$/GULqBhPJsrxxiC3$iJiWYlMyZNfwwOKsKeyLiNNcfwd7yUjYErzh4WtGMozDcmRubesMeQGeKE956qhhlmGia/1jsdth7vVaMOOP60&lt;br /&gt;
 TIMEOUT 80&lt;br /&gt;
 TOTALTIMEOUT 6000&lt;br /&gt;
 ONTIMEOUT $pxe_timeout_profile &lt;br /&gt;
 &lt;br /&gt;
 LABEL local&lt;br /&gt;
         MENU LABEL (Boot to Local OS)&lt;br /&gt;
         MENU DEFAULT&lt;br /&gt;
         LOCALBOOT 0&lt;br /&gt;
 &lt;br /&gt;
 $pxe_menu_items&lt;br /&gt;
 &lt;br /&gt;
 MENU end&lt;br /&gt;
&lt;br /&gt;
= /etc/cobbler/pxe/pxeprofile.template =&lt;br /&gt;
 #set $new_name = $profile_name.replace(&#039;:1:NGAResearchLabEnvironmentRLE&#039;, &#039; &#039;)&lt;br /&gt;
 #set $new_menu_label = $menu_label.replace(&#039;:1:NGAResearchLabEnvironmentRLE&#039;, &#039; &#039;)&lt;br /&gt;
 LABEL $new_name&lt;br /&gt;
         MENU PASSWD&lt;br /&gt;
         kernel $kernel_path&lt;br /&gt;
         $new_menu_label&lt;br /&gt;
         $append_line&lt;br /&gt;
         ipappend 2&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/scripts&amp;diff=45</id>
		<title>DREN/Kickstart/scripts</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/scripts&amp;diff=45"/>
		<updated>2023-06-02T19:23:27Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;==initiateKickstart==  #!/usr/bin/python  import xmlrpclib  import subprocess  import sys    SATELLITE_URL = &amp;quot;http://localhost/rpc/api&amp;quot;  SATELLITE_LOGIN = &amp;quot;daniel.roessner.adm&amp;quot;  SATELLITE_PASSWORD =   SYSTEM = &amp;quot;rdhpwngmp-09.711hpw.afrl-wrs.hpc.mil&amp;quot;  PROFILE_NAME = &amp;quot;DCOS-Slave&amp;quot;    def kickstart(key, SYSTEM, PROFILE_NAME):    list  = client.system.listSystems(key)    for sys in list:      if sys[&amp;#039;name&amp;#039;] == SYSTEM:        system_id = sys[&amp;#039;id&amp;#039;]    #print client.kickstart.lis...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==initiateKickstart==&lt;br /&gt;
 #!/usr/bin/python&lt;br /&gt;
 import xmlrpclib&lt;br /&gt;
 import subprocess&lt;br /&gt;
 import sys&lt;br /&gt;
 &lt;br /&gt;
 SATELLITE_URL = &amp;quot;http://localhost/rpc/api&amp;quot;&lt;br /&gt;
 SATELLITE_LOGIN = &amp;quot;daniel.roessner.adm&amp;quot;&lt;br /&gt;
 SATELLITE_PASSWORD = &lt;br /&gt;
 SYSTEM = &amp;quot;rdhpwngmp-09.711hpw.afrl-wrs.hpc.mil&amp;quot;&lt;br /&gt;
 PROFILE_NAME = &amp;quot;DCOS-Slave&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 def kickstart(key, SYSTEM, PROFILE_NAME):&lt;br /&gt;
   list  = client.system.listSystems(key)&lt;br /&gt;
   for sys in list:&lt;br /&gt;
     if sys[&#039;name&#039;] == SYSTEM:&lt;br /&gt;
       system_id = sys[&#039;id&#039;]&lt;br /&gt;
   #print client.kickstart.listKickstarts(key)&lt;br /&gt;
   print client.system.provisionSystem(key, system_id, PROFILE_NAME)&lt;br /&gt;
 &lt;br /&gt;
 def rhn_check(SYSTEM):&lt;br /&gt;
   COMMAND=&amp;quot;rhn_check&amp;quot;&lt;br /&gt;
   SYSTEM = SYSTEM.split(&#039;.&#039;)[0]&lt;br /&gt;
 &lt;br /&gt;
   ssh = subprocess.Popen([&amp;quot;ssh&amp;quot;, &amp;quot;-oStrictHostKeyChecking=no&amp;quot;, &amp;quot;%s&amp;quot; % SYSTEM, COMMAND],&lt;br /&gt;
                        shell=False,&lt;br /&gt;
                        stdout=subprocess.PIPE,&lt;br /&gt;
                        stderr=subprocess.PIPE)&lt;br /&gt;
   result = ssh.stdout.readlines()&lt;br /&gt;
   if result == []:&lt;br /&gt;
     error = ssh.stderr.readlines()&lt;br /&gt;
     print &amp;gt;&amp;gt;sys.stderr, &amp;quot;ERROR: %s&amp;quot; % error&lt;br /&gt;
   else:&lt;br /&gt;
     print result &lt;br /&gt;
 &lt;br /&gt;
 def login(SATELLITE_URL, SATELLITE_LOGIN, SATELLITE_PASSWORD):&lt;br /&gt;
   client = xmlrpclib.Server(SATELLITE_URL, verbose=0)&lt;br /&gt;
   key = client.auth.login(SATELLITE_LOGIN, SATELLITE_PASSWORD)&lt;br /&gt;
   return key, client&lt;br /&gt;
 &lt;br /&gt;
 def logout(key):&lt;br /&gt;
   client.auth.logout(key)&lt;br /&gt;
 &lt;br /&gt;
 ###################################################################### &lt;br /&gt;
 &lt;br /&gt;
 key, client = login(SATELLITE_URL, SATELLITE_LOGIN, SATELLITE_PASSWORD)&lt;br /&gt;
 &lt;br /&gt;
 #kickstart(key, SYSTEM, PROFILE_NAME)&lt;br /&gt;
 rhn_check(SYSTEM) &lt;br /&gt;
 &lt;br /&gt;
 logout(key)&lt;br /&gt;
&lt;br /&gt;
==reposync==&lt;br /&gt;
 mkdir -p /var/log/scripts/&lt;br /&gt;
 date &amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 echo ##################################################### &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 CENT7LATEST=`curl --silent http://mirror.centos.org/centos/ | grep folder | grep &amp;quot;&amp;gt;7\.&amp;quot; | cut -d &#039;&amp;quot;&#039; -f 8 | cut -d &#039;/&#039; -f 1 | sort -g | tail -1`&lt;br /&gt;
 #CENT6LATEST=`curl --silent http://mirror.centos.org/centos/ | grep folder | grep &amp;quot;&amp;gt;6\.&amp;quot; | cut -d &#039;&amp;quot;&#039; -f 8 | cut -d &#039;/&#039; -f 1 | sort -g | tail -1`&lt;br /&gt;
 &lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/os/x86_64/ -c centos7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/extras/x86_64/ -c centos7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://mirror.centos.org/centos/$CENT7LATEST/updates/x86_64/ -c centos7 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://dl.fedoraproject.org/pub/epel/7/x86_64/ -c centos7-latest-epel &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u https://yum.dockerproject.org/repo/main/centos/7/ -c centos7-latest-docker &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u https://yum.puppetlabs.com/el/7/PC1/x86_64/ -c centos7-latest-puppet &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://download.zfsonlinux.org/epel/7/x86_64/ -c centos-latest-zfs &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://download.zfsonlinux.org/epel/7/kmod/x86_64/ -c centos-latest-zfs &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest/RHEL/7/x86_64/ -c centos7-latest-spacewalk-server  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 spacewalk-repo-sync -u http://yum.spacewalkproject.org/latest-client/RHEL/7/x86_64/ -c centos7-latest-spacewalk-server  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 &lt;br /&gt;
 #spacewalk-repo-sync -u http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/ -c 7-postgres94  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 #spacewalk-repo-sync -u http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/ -c 7-postgres95 &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 #spacewalk-repo-sync -u http://download.ceph.com/rpm/el7/x86_64/ -c ceph-centos7  &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 &lt;br /&gt;
 chmod -R 777 /var/satellite/redhat/1/&lt;br /&gt;
 echo #################################################### &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;br /&gt;
 date &amp;gt;&amp;gt; /var/log/scripts/spacewalk-repo-sync.log&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=Main_Page&amp;diff=44</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=Main_Page&amp;diff=44"/>
		<updated>2023-06-02T19:21:34Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[VMware|VMware Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
[[DERs|DER&#039;s Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
[[DCOS/Install|DCOS LAB Installation Documentation]] &amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DCOS/Install&amp;diff=43</id>
		<title>DCOS/Install</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DCOS/Install&amp;diff=43"/>
		<updated>2023-06-02T19:20:52Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DCOS Installation Instructions = &lt;br /&gt;
&lt;br /&gt;
== LAB Setup ==&lt;br /&gt;
* Virtual Machine (2 CPU, 4G Memory, 50G HDD)&lt;br /&gt;
* CentOS 7 Minimal &lt;br /&gt;
* IP Address Assigned&lt;br /&gt;
* Hostname Assigned&lt;br /&gt;
* DNS Assigned&lt;br /&gt;
&lt;br /&gt;
Master-01:&lt;br /&gt;
 hostnamectl set-hostname Master-01.dersllc.com&lt;br /&gt;
 sed -i &#039;s/172.16.99.150/172.16.99.160/&#039; /etc/sysconfig/network-scripts/ifcfg-ens192&lt;br /&gt;
 yum -y install open-vm-tools&lt;br /&gt;
 yum update -y&lt;br /&gt;
 &lt;br /&gt;
Slave-01:&lt;br /&gt;
 hostnamectl set-hostname Slave-01.dersllc.com&lt;br /&gt;
 sed -i &#039;s/172.16.99.150/172.16.99.161/&#039; /etc/sysconfig/network-scripts/ifcfg-ens192 &lt;br /&gt;
 yum -y install open-vm-tools&lt;br /&gt;
 yum update -y&lt;br /&gt;
 &lt;br /&gt;
Web-01:&lt;br /&gt;
 hostnamectl set-hostname Web-01.dersllc.com&lt;br /&gt;
 sed -i &#039;s/172.16.99.150/172.16.99.170/&#039; /etc/sysconfig/network-scripts/ifcfg-ens192&lt;br /&gt;
 yum update -y&lt;br /&gt;
 yum install -y httpd open-vm-tools&lt;br /&gt;
 systemctl enable httpd&lt;br /&gt;
 systemctl start httpd&lt;br /&gt;
&lt;br /&gt;
== Configuration Creation ==&lt;br /&gt;
* SSH to &amp;lt;b&amp;gt;Web-01&amp;lt;/b&amp;gt;&lt;br /&gt;
Install and configure Docker:&lt;br /&gt;
 yum install -y docker wget&lt;br /&gt;
 mkdir -p /etc/systemd/system/docker.service.d&lt;br /&gt;
 cat &amp;gt; /etc/systemd/system/docker.service.d/http-proxy.conf &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
  [Service]&lt;br /&gt;
  Environment=&amp;quot;HTTPS_PROXY=https://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  Environment=&amp;quot;HTTP_PROXY=http://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  Environment=&amp;quot;FTP_PROXY=ftp://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  Environment=&amp;quot;NO_PROXY=localhost,127.0.0.0/8,dersllc.com&amp;quot;&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF | sudo tee -a /etc/sysconfig/docker&lt;br /&gt;
  http_proxy=&amp;quot;http://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  https_proxy=&amp;quot;https://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  ftp_proxy=&amp;quot;ftp://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  no_proxy=&amp;quot;localhost,127.0.0.0/8,dersllc.com&amp;quot;&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 sudo sed -i &#039;/\[Service\]/a EnvironmentFile=/etc/sysconfig/docker&#039; /usr/lib/systemd/system/docker.service&lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
&lt;br /&gt;
Create GENCONF directory in Apache Directory:&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 mkdir -p genconf&lt;br /&gt;
&lt;br /&gt;
Download dcos_generate_config.sh file from DCOS.io:&lt;br /&gt;
 wget https://downloads.dcos.io/dcos/stable/dcos_generate_config.sh&lt;br /&gt;
&lt;br /&gt;
Create admin password hash:&lt;br /&gt;
 ./dcos_generate_config.sh --hash-password &amp;lt;PASSWORD&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Create Configuration File and copy in superuser password:&lt;br /&gt;
 cat &amp;gt; genconf/config.yaml  &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
  bootstrap_url: http://web-01.dersllc.com/genconf/serve&lt;br /&gt;
  cluster_name: LAB&lt;br /&gt;
  superuser_username: admin&lt;br /&gt;
  superuser_password_hash: $6$rounds=656000$dOTsAHKtm/yBuOCF$iC9m16rE38eZ/iaDLoIgeFSPS9cb1NoBJGmEkHxghAvVkreyq9/Tl.CvYwUQDzot8iO6v6fVIWx7Nx0.yZjOA.&lt;br /&gt;
  exhibitor_storage_backend: static&lt;br /&gt;
  master_discovery: static&lt;br /&gt;
  ip_detect_public_filename: genconf/ip-detect&lt;br /&gt;
  master_list:&lt;br /&gt;
  - 172.16.99.160&lt;br /&gt;
  resolvers:&lt;br /&gt;
  - 172.16.87.5&lt;br /&gt;
  - 172.16.87.1&lt;br /&gt;
  security: &#039;disabled&#039;&lt;br /&gt;
  use_proxy: &#039;true&#039;&lt;br /&gt;
  http_proxy: http://192.168.1.73:3128&lt;br /&gt;
  https_proxy: https://192.168.1.73:3128&lt;br /&gt;
  no_proxy:&lt;br /&gt;
  - &#039;dersllc.com&#039;&lt;br /&gt;
  enable_ipv6: &#039;false&#039;&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
Create IP detection script:&lt;br /&gt;
 cat &amp;gt; genconf/ip-detect &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
  #!/usr/bin/env bash&lt;br /&gt;
  set -o nounset -o errexit&lt;br /&gt;
  export PATH=/usr/sbin:/usr/bin:$PATH&lt;br /&gt;
  echo $(ip addr show ens192 | grep -Eo &#039;[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}&#039; | head -1)&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
Run Configuration Generator:&lt;br /&gt;
 ./dcos_generate_config.sh&lt;br /&gt;
 systemctl restart httpd&lt;br /&gt;
&lt;br /&gt;
== Master / Slave Prerequisites ==&lt;br /&gt;
 echo &amp;quot;proxy=http://192.168.1.73:3128&amp;quot; &amp;gt;&amp;gt; /etc/yum.conf                                                                           &amp;lt;b&amp;gt;# ONLY REQUIRED FOR DERSLLC ENVIRONMENT&amp;lt;/b&amp;gt;&lt;br /&gt;
 yum -y install ipset tar xz unzip curl docker docker-selinux chrony&amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 yum -y upgrade &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 systemctl start chronyd&lt;br /&gt;
 systemctl enable chronyd &lt;br /&gt;
 cat &amp;gt; /etc/chrony.conf  &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
  server 192.168.1.73&lt;br /&gt;
  server 0.vmware.pool.ntp.org&lt;br /&gt;
  server 1.vmware.pool.ntp.org&lt;br /&gt;
  server 2.vmware.pool.ntp.org&lt;br /&gt;
  server 3.vmware.pool.ntp.org&lt;br /&gt;
  allow 192.168.1.0/24&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 systemctl restart chronyd&lt;br /&gt;
 mkdir -p /etc/systemd/system/docker.service.d&lt;br /&gt;
 cat &amp;gt; /etc/systemd/system/docker.service.d/http-proxy.conf &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
  [Service]&lt;br /&gt;
  Environment=&amp;quot;HTTPS_PROXY=https://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  Environment=&amp;quot;HTTP_PROXY=http://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  Environment=&amp;quot;FTP_PROXY=ftp://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  Environment=&amp;quot;NO_PROXY=localhost,127.0.0.0/8,dersllc.com&amp;quot;&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF | sudo tee -a /etc/sysconfig/docker&lt;br /&gt;
  http_proxy=&amp;quot;http://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  https_proxy=&amp;quot;https://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  ftp_proxy=&amp;quot;ftp://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
  no_proxy=&amp;quot;localhost,127.0.0.0/8,dersllc.com&amp;quot;&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 sudo sed -i &#039;/\[Service\]/a EnvironmentFile=/etc/sysconfig/docker&#039; /usr/lib/systemd/system/docker.service&lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
 grep -q Restart=on-failure /usr/lib/systemd/system/docker.service &amp;amp;&amp;amp; printf &#039;Restart function is already set in systemd script&#039; || sed -i &#039;/MountFlags=slave/aRestart=on-failure&#039; /usr/lib/systemd/system/docker.service&lt;br /&gt;
 systemctl daemon-reload  &lt;br /&gt;
 systemctl enable docker.service&lt;br /&gt;
 systemctl start docker.service&lt;br /&gt;
 systemctl disable firewalld           &amp;lt;b&amp;gt;# DCOS requires this firewall to be shut off. https://docs.mesosphere.com/1.7/administration/installing/custom/system-requirements/&amp;lt;/b&amp;gt;&lt;br /&gt;
 systemctl stop firewalld&lt;br /&gt;
 mkdir -p /var/{lib,log}/mesos&lt;br /&gt;
 chown nobody /var/{lib,log}/mesos&lt;br /&gt;
 touch /var/marathon.ip&lt;br /&gt;
 chown /var/marathon.ip&lt;br /&gt;
 groupadd nogroup -g 9999&lt;br /&gt;
 groupadd docker&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /tmp/dcos &amp;amp;&amp;amp; cd /tmp/dcos&lt;br /&gt;
 curl -s http://web-01.dersllc.com/genconf/serve/dcos_install.sh &amp;gt; dcos_install.sh                           &amp;lt;b&amp;gt; # Change this to the Web Server hosting the Configuration&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Master Installation ==&lt;br /&gt;
* SSH to &amp;lt;b&amp;gt;Master-01&amp;lt;/b&amp;gt;&lt;br /&gt;
 # Creating installDCOS.sh script&lt;br /&gt;
 echo &amp;quot;setenforce 0&amp;quot;  &amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/SELINUX=enforcing/SELINUX=permissive/&#039; /etc/sysconfig/selinux&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /tmp/dcos/dcos_install.sh master&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mkdir -p /var/log/mesos/archive&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;echo &#039;ENABLE_CHECK_TIME=false&#039; &amp;gt;&amp;gt; /opt/mesosphere/environment&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;curl -fLsS --retry 20 -Y 100000 -y 60 https://downloads.dcos.io/binaries/cli/linux/x86-64/dcos-1.12/dcos -o dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;mv dcos /usr/local/bin&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;chmod +x /usr/local/bin/dcos&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;dcos config set core.dcos_url http://Master-01.dersllc.com&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh                         &amp;lt;b&amp;gt; # Replace the IP with the IP or DNS name of your Master host &amp;lt;/b&amp;gt;&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;quot;clock_sync&amp;quot;\:/&amp;quot;clock_sync1&amp;quot;\:/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 echo &amp;quot;sed -i &#039;/&amp;quot;clock_sync&amp;quot;/d&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;quot;journald_dir_permissions&amp;quot;,/&amp;quot;journald_dir_permissions&amp;quot;/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;quot;clock_sync1&amp;quot;\:/&amp;quot;clock_sync&amp;quot;\:/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 chmod 777 /root/installDCOS.sh&lt;br /&gt;
 &lt;br /&gt;
 # Running the DCOS Installation Script (AS ROOT) &lt;br /&gt;
 /root/installDCOS.sh&lt;br /&gt;
&lt;br /&gt;
== Slave Installation ==&lt;br /&gt;
* SSH to &amp;lt;b&amp;gt;Slave-01&amp;lt;/b&amp;gt;&lt;br /&gt;
 # Creating the Install Script&lt;br /&gt;
 echo &amp;quot;setenforce 0&amp;quot;  &amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/SELINUX=enforcing/SELINUX=permissive/&#039; /etc/sysconfig/selinux&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;/bin/bash /tmp/dcos/dcos_install.sh slave&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;DCOS_CONFIG=\`grep -ir &#039;MESOS_HOSTNAME_LOOKUP=false&#039; /opt/mesosphere/packages/dcos-config* | grep mesos-slave-common | cut -d &#039;:&#039; -f 1\`&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;for i in \$DCOS_CONFIG; do sed -i &#039;s~MESOS_HOSTNAME_LOOKUP=.*~MESOS_HOSTNAME_LOOKUP=true~&#039; \$i; done&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;rm -rf /var/lib/mesos/slave/meta/slaves/latest&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;echo &#039;ENABLE_CHECK_TIME=false&#039; &amp;gt;&amp;gt; /opt/mesosphere/environment&amp;quot; &amp;gt;&amp;gt; /root/installDCOS.sh&lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;quot;clock_sync&amp;quot;\:/&amp;quot;clock_sync1&amp;quot;\:/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 echo &amp;quot;sed -i &#039;/&amp;quot;clock_sync&amp;quot;/d&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;quot;journald_dir_permissions&amp;quot;,/&amp;quot;journald_dir_permissions&amp;quot;/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;quot;clock_sync1&amp;quot;\:/&amp;quot;clock_sync&amp;quot;\:/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&amp;quot;  &amp;gt;&amp;gt; /root/installDCOS.sh &lt;br /&gt;
 chmod 777 /root/installDCOS.sh&lt;br /&gt;
 &lt;br /&gt;
 # Running the DCOS Installation Script (AS ROOT) &lt;br /&gt;
 /root/installDCOS.sh&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs&amp;diff=42</id>
		<title>DERs</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs&amp;diff=42"/>
		<updated>2023-06-02T19:20:17Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;==DER&amp;#039;s Documentation== DER&amp;#039;s HomeLab Documentation&amp;lt;br&amp;gt;   DER&amp;#039;s Docker Repository Setup &amp;lt;br&amp;gt; DER&amp;#039;s MongoDB Documentation&amp;lt;br&amp;gt; DER&amp;#039;s MySQL DB Documentation&amp;lt;br&amp;gt; DER&amp;#039;s PhotonOS Documentation&amp;lt;br&amp;gt; DER&amp;#039;s Docker Documentation&amp;lt;br&amp;gt; DER&amp;#039;s DCOS Documentation&amp;lt;br&amp;gt; DER&amp;#039;s 3D Printer Documentation&amp;lt;br&amp;gt; DER&amp;#039;s MAC Documentation&amp;lt;br&amp;gt; DERs/Horizon|DER&amp;#039;s...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==DER&#039;s Documentation==&lt;br /&gt;
[[DERs/HomeLab|DER&#039;s HomeLab Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[DERs/Harbor|DER&#039;s Docker Repository Setup]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/DERS-DB|DER&#039;s MongoDB Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/DERS-DB1|DER&#039;s MySQL DB Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/PhotonOS|DER&#039;s PhotonOS Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/Docker|DER&#039;s Docker Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/DCOS|DER&#039;s DCOS Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/3D|DER&#039;s 3D Printer Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/MAC|DER&#039;s MAC Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/Horizon|DER&#039;s Horizon Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/Templates|DER&#039;s Template Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/vRA|DER&#039;s vRA 8 Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/K8s|DER&#039;s Kubernetes Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DREN Documentation ==&lt;br /&gt;
[[DREN|DREN Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==DevNet Documentation ==&lt;br /&gt;
[[DevNet| DevNet Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TDKC Documentation ==&lt;br /&gt;
[[TDKC|TDKC Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==VMware Documentation==&lt;br /&gt;
[[VMware|VMware Documentation]] &amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/configFiles&amp;diff=41</id>
		<title>DREN/Kickstart/configFiles</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/configFiles&amp;diff=41"/>
		<updated>2023-06-02T19:18:50Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Docker.conf==&lt;br /&gt;
 /etc/systemd/system/docker.service.d/docker.conf&lt;br /&gt;
&lt;br /&gt;
 [Service]&lt;br /&gt;
 ExecStart=&lt;br /&gt;
 ExecStart=/usr/bin/dockerd --storage-driver=overlay&lt;br /&gt;
&lt;br /&gt;
==Figlet.sh==&lt;br /&gt;
 /etc/profile.d/figlet.sh&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash &lt;br /&gt;
 &lt;br /&gt;
 fontlist=( `cat /usr/share/figlet/figfonts.txt` )&lt;br /&gt;
 &lt;br /&gt;
 num=$((($RANDOM%${#fontlist[@]})))&lt;br /&gt;
 red=&#039;\e[0;31m&#039;&lt;br /&gt;
 reset=&#039;\e[0m&#039;&lt;br /&gt;
 &lt;br /&gt;
 if [ $EUID -ne 0 ]; then&lt;br /&gt;
   echo &#039;now connected to...&#039;&lt;br /&gt;
   figlet -t -c -f ${fontlist[$num]} `hostname|cut -d &#039;.&#039; -f 1`&lt;br /&gt;
   echo &amp;quot;  &amp;quot;&lt;br /&gt;
 else&lt;br /&gt;
   echo -e &amp;quot;you are now...$red&amp;quot;&lt;br /&gt;
   figlet -t -c -f ${fontlist[$num]} root&lt;br /&gt;
   echo -e &amp;quot; $reset&amp;quot;&lt;br /&gt;
 fi&lt;br /&gt;
&lt;br /&gt;
==Sudoers.d.conf==&lt;br /&gt;
 /etc/sudoers.d/nga-sudoers&lt;br /&gt;
&lt;br /&gt;
 Cmnd_Alias DOMAIN_USERS_CMD = /usr/bin/docker,\&lt;br /&gt;
                               /usr/local/bin/dcos&lt;br /&gt;
 %domain_users    ALL=(ALL)      NOPASSWD: DOMAIN_USERS_CMD&lt;br /&gt;
 james.ricker    ALL=(ALL)      NOPASSWD: ALL&lt;br /&gt;
 james.ricker.adm    ALL=(ALL)      NOPASSWD: ALL&lt;br /&gt;
 daniel.roessner    ALL=(ALL)      NOPASSWD: ALL&lt;br /&gt;
 daniel.roessner.adm    ALL=(ALL)      NOPASSWD: ALL&lt;br /&gt;
 scan_account    ALL=(ALL)      NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
==Resolv.conf==&lt;br /&gt;
 /etc/resolv.conf&lt;br /&gt;
&lt;br /&gt;
 ####################################################&lt;br /&gt;
 # This File is managed by SpaceWalk (RDHPWNGMP-01)&lt;br /&gt;
 # Please Contact the following Administrators:&lt;br /&gt;
 # Daniel Roessner &lt;br /&gt;
 #   Email: daniel.roessner.ctr@us.af.mil&lt;br /&gt;
 #   Phone: 937-522-6094&lt;br /&gt;
 #    VOIP: 570-2483&lt;br /&gt;
 # James Ricker &lt;br /&gt;
 #   Email: james.ricker.2.ctr@us.af.mil&lt;br /&gt;
 #   Phone: 937-522-6092&lt;br /&gt;
 #    VOIP: 570-2682&lt;br /&gt;
 ####################################################&lt;br /&gt;
 search 711hpw.afrl-wrs.hpc.mil&lt;br /&gt;
 nameserver 140.32.191.249&lt;br /&gt;
 nameserver 140.32.191.248&lt;br /&gt;
 nameserver 140.32.191.247&lt;br /&gt;
 nameserver 140.32.187.129&lt;br /&gt;
&lt;br /&gt;
==SSSD.conf==&lt;br /&gt;
 /etc/sssd/sssd.conf&lt;br /&gt;
&lt;br /&gt;
 [sssd]&lt;br /&gt;
 domains = 711HPW.afrl-wrs.hpc.mil&lt;br /&gt;
 config_file_version = 2&lt;br /&gt;
 services = nss, pam&lt;br /&gt;
 &lt;br /&gt;
 [domain/711HPW.afrl-wrs.hpc.mil]&lt;br /&gt;
 enumerate = true&lt;br /&gt;
 ad_domain = 711HPW.afrl-wrs.hpc.mil&lt;br /&gt;
 krb5_realm = 711HPW.AFRL-WRS.HPC.MIL&lt;br /&gt;
 realmd_tags = manages-system joined-with-samba&lt;br /&gt;
 cache_credentials = False&lt;br /&gt;
 krb5_store_password_if_offline = True&lt;br /&gt;
 default_shell = /bin/bash&lt;br /&gt;
 ldap_id_mapping = True&lt;br /&gt;
 ldap_schema = ad&lt;br /&gt;
 use_fully_qualified_names = False&lt;br /&gt;
 fallback_homedir = /users/%u&lt;br /&gt;
 id_provider = ad&lt;br /&gt;
 access_provider = ad&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/configFiles&amp;diff=40</id>
		<title>DREN/Kickstart/configFiles</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/configFiles&amp;diff=40"/>
		<updated>2023-06-02T19:17:35Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Docker.conf==&lt;br /&gt;
 /etc/systemd/system/docker.service.d/docker.conf&lt;br /&gt;
&lt;br /&gt;
 [Service]&lt;br /&gt;
 ExecStart=&lt;br /&gt;
 ExecStart=/usr/bin/dockerd --storage-driver=overlay&lt;br /&gt;
&lt;br /&gt;
==Figlet.sh==&lt;br /&gt;
==Sudoers.d.conf==&lt;br /&gt;
==Resolv.conf==&lt;br /&gt;
==SSSD.conf==&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN/Kickstart/configFiles&amp;diff=39</id>
		<title>DREN/Kickstart/configFiles</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN/Kickstart/configFiles&amp;diff=39"/>
		<updated>2023-06-02T19:16:17Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot; Docker.conf &amp;lt;BR&amp;gt;  Figlet.sh &amp;lt;BR&amp;gt;  Sudoers.d.conf &amp;lt;BR&amp;gt;  Resolv.conf &amp;lt;BR&amp;gt;  SSSD.conf &amp;lt;BR&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[DREN/Kickstart/configFiles/docker.conf | Docker.conf]] &amp;lt;BR&amp;gt;&lt;br /&gt;
[[DREN/Kickstart/configFiles/figlet.sh | Figlet.sh]] &amp;lt;BR&amp;gt;&lt;br /&gt;
[[DREN/Kickstart/configFiles/nga-sudoers.conf | Sudoers.d.conf]] &amp;lt;BR&amp;gt;&lt;br /&gt;
[[DREN/Kickstart/configFiles/resolv.conf | Resolv.conf]] &amp;lt;BR&amp;gt;&lt;br /&gt;
[[DREN/Kickstart/configFiles/sssd.conf | SSSD.conf]] &amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DREN&amp;diff=38</id>
		<title>DREN</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DREN&amp;diff=38"/>
		<updated>2023-06-02T19:15:58Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot; Spacewalk Kickstart Configuration Files &amp;lt;BR&amp;gt;  Spacewalk Kickstart SNIPPET Scripts &amp;lt;BR&amp;gt;  Spacewalk Scripts &amp;lt;BR&amp;gt;  Spacewalk PXE Scripts &amp;lt;BR&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[DREN/Kickstart/configFiles| Spacewalk Kickstart Configuration Files]] &amp;lt;BR&amp;gt;&lt;br /&gt;
[[DREN/Kickstart/snippets| Spacewalk Kickstart SNIPPET Scripts]] &amp;lt;BR&amp;gt;&lt;br /&gt;
[[DREN/Kickstart/scripts| Spacewalk Scripts]] &amp;lt;BR&amp;gt;&lt;br /&gt;
[[DREN/Kickstart/pxe| Spacewalk PXE Scripts]] &amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/K8s&amp;diff=37</id>
		<title>DERs/K8s</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/K8s&amp;diff=37"/>
		<updated>2023-06-02T19:15:31Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Kubernetes Documentation = == Force Delete Persistent Volume Claim ==  kubectl get pvc  kubectl patch pvc &amp;lt;PVC_NAME&amp;gt; -p &amp;#039;{&amp;quot;metadata&amp;quot;:{&amp;quot;finalizers&amp;quot;: []}}&amp;#039; --type=merge  kubectl delete pvc &amp;lt;PVC_NAME&amp;gt;   == Force StorageClass to Default ==  kubectl patch storageclass &amp;lt;vk8s-storage&amp;gt; -p &amp;#039;{&amp;quot;metadata&amp;quot;: {&amp;quot;annotations&amp;quot;:{&amp;quot;storageclass.kubernetes.io/is-default-class&amp;quot;:&amp;quot;true&amp;quot;}}}&amp;#039; === Force StorageClass in vSphere 7 ===  https://www.pramodrane.com/vsphere-7-with-kubernetes-part-4-clo...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Kubernetes Documentation =&lt;br /&gt;
== Force Delete Persistent Volume Claim ==&lt;br /&gt;
 kubectl get pvc&lt;br /&gt;
 kubectl patch pvc &amp;lt;PVC_NAME&amp;gt; -p &#039;{&amp;quot;metadata&amp;quot;:{&amp;quot;finalizers&amp;quot;: []}}&#039; --type=merge&lt;br /&gt;
 kubectl delete pvc &amp;lt;PVC_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Force StorageClass to Default ==&lt;br /&gt;
 kubectl patch storageclass &amp;lt;vk8s-storage&amp;gt; -p &#039;{&amp;quot;metadata&amp;quot;: {&amp;quot;annotations&amp;quot;:{&amp;quot;storageclass.kubernetes.io/is-default-class&amp;quot;:&amp;quot;true&amp;quot;}}}&#039;&lt;br /&gt;
=== Force StorageClass in vSphere 7 ===&lt;br /&gt;
 https://www.pramodrane.com/vsphere-7-with-kubernetes-part-4-cloud-native-storage-with-vsphere-csi-for-persistent-volumes/&lt;br /&gt;
&lt;br /&gt;
 #ssh to the vCenter&lt;br /&gt;
 &lt;br /&gt;
 #RUN THIS SCRIPT TO GET THE IP AND PWD&lt;br /&gt;
 /usr/lib/vmware-wcp/decryptK8Pwd.py&lt;br /&gt;
 &lt;br /&gt;
 ssh &amp;lt;IP from CMD above&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 kubectl patch storageclass &amp;lt;vk8s-storage&amp;gt; -p &#039;{&amp;quot;metadata&amp;quot;: {&amp;quot;annotations&amp;quot;:{&amp;quot;storageclass.kubernetes.io/is-default-class&amp;quot;:&amp;quot;true&amp;quot;}}}&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/vRA&amp;diff=36</id>
		<title>DERs/vRA</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/vRA&amp;diff=36"/>
		<updated>2023-06-02T19:15:12Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;===vRA 8===  https://garyflynn.com/technology/vmware/vrealize-automation-8x-troubleshooting/&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===vRA 8===&lt;br /&gt;
 https://garyflynn.com/technology/vmware/vrealize-automation-8x-troubleshooting/&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/Templates&amp;diff=35</id>
		<title>DERs/Templates</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/Templates&amp;diff=35"/>
		<updated>2023-06-02T19:14:52Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;===Centos Template w/ Cloud-Init===  yum -y update  yum -y install perl cloud-init  cat &amp;gt; /etc/cloud/cloud.cfg.d/99-custom-networking.cfg &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;   network: {config: disabled}  EOF  systemctl disable firewalld  cloud-init clean  init 0&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Centos Template w/ Cloud-Init===&lt;br /&gt;
 yum -y update&lt;br /&gt;
 yum -y install perl cloud-init&lt;br /&gt;
 cat &amp;gt; /etc/cloud/cloud.cfg.d/99-custom-networking.cfg &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
  network: {config: disabled}&lt;br /&gt;
 EOF&lt;br /&gt;
 systemctl disable firewalld&lt;br /&gt;
 cloud-init clean&lt;br /&gt;
 init 0&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/Horizon&amp;diff=34</id>
		<title>DERs/Horizon</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/Horizon&amp;diff=34"/>
		<updated>2023-06-02T19:14:27Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= DER&amp;#039;s Horizon Documentation =  === Adding a new STAR Cert to Connection Server === FROM MAC or LINUX   openssl pkcs12 -export -out /Users/droessner/ownCloud/DER\&amp;#039;s\ Drive/DERs/SSL/31Jul2021/star.dersllc.com.pfx -inkey /Users/droessner/ownCloud/DER\&amp;#039;s\ Drive/DERs/SSL/31Jul2021/dersllc-new.key -in /Users/droessner/ownCloud/DER\&amp;#039;s\ Drive/DERs/SSL/31Jul2021/star.dersllc.com.crt   Open MMC on Connection Server -&amp;gt; Add Certiicates Snap-In (Local Machine) -&amp;gt; Personal -&amp;gt; Import...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DER&#039;s Horizon Documentation =&lt;br /&gt;
&lt;br /&gt;
=== Adding a new STAR Cert to Connection Server ===&lt;br /&gt;
FROM MAC or LINUX &lt;br /&gt;
 openssl pkcs12 -export -out /Users/droessner/ownCloud/DER\&#039;s\ Drive/DERs/SSL/31Jul2021/star.dersllc.com.pfx -inkey /Users/droessner/ownCloud/DER\&#039;s\ Drive/DERs/SSL/31Jul2021/dersllc-new.key -in /Users/droessner/ownCloud/DER\&#039;s\ Drive/DERs/SSL/31Jul2021/star.dersllc.com.crt&lt;br /&gt;
&lt;br /&gt;
 Open MMC on Connection Server -&amp;gt; Add Certiicates Snap-In (Local Machine) -&amp;gt; Personal -&amp;gt; Import the PFX file. &lt;br /&gt;
 After Imported change the cert friendly name to &amp;quot;vdm&amp;quot; and modify the old vdm cert.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MAKE SURE YOU UPDATE THE THUMBPRINT IN THE UAG!!!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: This PFX file works for the UAG as well.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/MAC&amp;diff=33</id>
		<title>DERs/MAC</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/MAC&amp;diff=33"/>
		<updated>2023-06-02T19:14:05Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;=MAC Documentation=  ===Enter Restore Menu === During boot press:  Command + R  ===Get to Terminal from Restore Menu===  *Click the Utilities Tab  *Terminal  ===Manually set ip address from Terminal===  ipconfig set en5 DHCP  ifconfig  ===Keep Recovery mode from sleeping ===  pmset -a sleep 0  pmset -a disksleep 0  pmset -a displaysleep 0  ===Mount NFS from MacOS ===  mount -t nfs -o resvport 192.168.3.1:/mp3 /private/nfs  === Allow Untrusted Applications === #Disable Ap...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MAC Documentation=&lt;br /&gt;
&lt;br /&gt;
===Enter Restore Menu ===&lt;br /&gt;
During boot press:&lt;br /&gt;
 Command + R&lt;br /&gt;
&lt;br /&gt;
===Get to Terminal from Restore Menu===&lt;br /&gt;
 *Click the Utilities Tab&lt;br /&gt;
 *Terminal&lt;br /&gt;
&lt;br /&gt;
===Manually set ip address from Terminal===&lt;br /&gt;
 ipconfig set en5 DHCP&lt;br /&gt;
 ifconfig&lt;br /&gt;
&lt;br /&gt;
===Keep Recovery mode from sleeping ===&lt;br /&gt;
 pmset -a sleep 0&lt;br /&gt;
 pmset -a disksleep 0&lt;br /&gt;
 pmset -a displaysleep 0&lt;br /&gt;
&lt;br /&gt;
===Mount NFS from MacOS ===&lt;br /&gt;
 mount -t nfs -o resvport 192.168.3.1:/mp3 /private/nfs&lt;br /&gt;
&lt;br /&gt;
=== Allow Untrusted Applications ===&lt;br /&gt;
#Disable Application Checking:&lt;br /&gt;
#:sudo spctl --master-disable&lt;br /&gt;
#Install Application as usual!&lt;br /&gt;
#Enable Application Checking&lt;br /&gt;
#:sudo spctl --master-enable&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/3D&amp;diff=32</id>
		<title>DERs/3D</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/3D&amp;diff=32"/>
		<updated>2023-06-02T19:13:44Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= DER&amp;#039;s 3D Printer Documentation =  == Current Printer Version ==  * ORIGINAL PRUSA I3 &amp;quot;MK2.5&amp;quot; w/ RAMBo13a ** https://www.prusa3d.com/drivers/&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DER&#039;s 3D Printer Documentation = &lt;br /&gt;
== Current Printer Version == &lt;br /&gt;
* ORIGINAL PRUSA I3 &amp;quot;MK2.5&amp;quot; w/ RAMBo13a&lt;br /&gt;
** https://www.prusa3d.com/drivers/&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/DCOS&amp;diff=31</id>
		<title>DERs/DCOS</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/DCOS&amp;diff=31"/>
		<updated>2023-06-02T19:13:21Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= DCOS Documentation =  === Disable clock-sync check on dcos-checks-poststart.service ===  sed -i &amp;#039;s/&amp;quot;clock_sync&amp;quot;\:/&amp;quot;clock_sync1&amp;quot;\:/&amp;#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json  sed -i &amp;#039;/&amp;quot;clock_sync&amp;quot;/d&amp;#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json  sed -i &amp;#039;s/&amp;quot;journald_dir_permissions&amp;quot;,/&amp;quot;journald_dir_permissions&amp;quot;/&amp;#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json  sed -i &amp;#039;s/&amp;quot;clock_sync1&amp;quot;\:/&amp;quot;clock_sync&amp;quot;\:/&amp;#039; /opt/mesosphere/etc/dcos-diagnostic...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DCOS Documentation =&lt;br /&gt;
&lt;br /&gt;
=== Disable clock-sync check on dcos-checks-poststart.service ===&lt;br /&gt;
 sed -i &#039;s/&amp;quot;clock_sync&amp;quot;\:/&amp;quot;clock_sync1&amp;quot;\:/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&lt;br /&gt;
 sed -i &#039;/&amp;quot;clock_sync&amp;quot;/d&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&lt;br /&gt;
 sed -i &#039;s/&amp;quot;journald_dir_permissions&amp;quot;,/&amp;quot;journald_dir_permissions&amp;quot;/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&lt;br /&gt;
 sed -i &#039;s/&amp;quot;clock_sync1&amp;quot;\:/&amp;quot;clock_sync&amp;quot;\:/&#039; /opt/mesosphere/etc/dcos-diagnostics-runner-config.json&lt;br /&gt;
&lt;br /&gt;
=== Enable Chrony NTP service ===&lt;br /&gt;
 yum install -y chrony&lt;br /&gt;
 systemctl start chronyd&lt;br /&gt;
 systemctl enable chronyd&lt;br /&gt;
 cat &amp;gt; /etc/chrony.conf  &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
 server 192.168.1.73 iburst&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 systemctl restart chronyd&lt;br /&gt;
 chronyc tracking&lt;br /&gt;
 chronyc sources&lt;br /&gt;
 chronyc sourcestats&lt;br /&gt;
&lt;br /&gt;
=== Setup Proxy Server for Docker ===&lt;br /&gt;
 mkdir -p /etc/systemd/system/docker.service.d&lt;br /&gt;
 cat &amp;gt; /etc/systemd/system/docker.service.d/http-proxy.conf &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
 [Service]&lt;br /&gt;
 Environment=&amp;quot;HTTPS_PROXY=https://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 Environment=&amp;quot;HTTP_PROXY=http://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 Environment=&amp;quot;FTP_PROXY=ftp://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 Environment=&amp;quot;NO_PROXY=localhost,127.0.0.0/8,dersllc.com&amp;quot;&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
&lt;br /&gt;
=== Setup Proxy Server for Docker Containers ===&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF | sudo tee -a /etc/sysconfig/docker&lt;br /&gt;
 http_proxy=&amp;quot;http://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 https_proxy=&amp;quot;https://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 ftp_proxy=&amp;quot;ftp://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 no_proxy=&amp;lt;REGISTRY_IP&amp;gt;&lt;br /&gt;
 EOF&lt;br /&gt;
  &lt;br /&gt;
 sudo sed -i &#039;/\[Service\]/a EnvironmentFile=/etc/sysconfig/docker&#039; /usr/lib/systemd/system/docker.service&lt;br /&gt;
 sudo systemctl daemon-reload&lt;br /&gt;
 sudo service docker restart&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/Docker&amp;diff=30</id>
		<title>DERs/Docker</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/Docker&amp;diff=30"/>
		<updated>2023-06-02T19:12:56Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;== Configure Proxy Server in Docker ==  mkdir -p /etc/systemd/system/docker.service.d  cat &amp;gt; /etc/systemd/system/docker.service.d/http-proxy.conf &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;  [Service]  Environment=&amp;quot;HTTPS_PROXY=https://192.168.1.73:3128/&amp;quot;  Environment=&amp;quot;HTTP_PROXY=http://192.168.1.73:3128/&amp;quot;  Environment=&amp;quot;FTP_PROXY=ftp://192.168.1.73:3128/&amp;quot;  Environment=&amp;quot;NO_PROXY=localhost,127.0.0.0/8,dersllc.com&amp;quot;  EOF    sudo systemctl daemon-reload  #sudo systemctl show --property Environment docker  sudo...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Configure Proxy Server in Docker ==&lt;br /&gt;
 mkdir -p /etc/systemd/system/docker.service.d&lt;br /&gt;
 cat &amp;gt; /etc/systemd/system/docker.service.d/http-proxy.conf &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
 [Service]&lt;br /&gt;
 Environment=&amp;quot;HTTPS_PROXY=https://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 Environment=&amp;quot;HTTP_PROXY=http://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 Environment=&amp;quot;FTP_PROXY=ftp://192.168.1.73:3128/&amp;quot;&lt;br /&gt;
 Environment=&amp;quot;NO_PROXY=localhost,127.0.0.0/8,dersllc.com&amp;quot;&lt;br /&gt;
 EOF&lt;br /&gt;
 &lt;br /&gt;
 sudo systemctl daemon-reload&lt;br /&gt;
 #sudo systemctl show --property Environment docker&lt;br /&gt;
 sudo systemctl restart docker&lt;br /&gt;
&lt;br /&gt;
== cloud.dersllc.com (NextCloud) ==&lt;br /&gt;
[[ DERs/Docker/OwnCloud_Changes | Change Log ]]&lt;br /&gt;
 docker stop DERS-NextCloud&lt;br /&gt;
 docker rm DERS-NextCloud&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;Starting DERS-NextCloud Container!&amp;quot;&lt;br /&gt;
 docker run -d \&lt;br /&gt;
 --restart always \&lt;br /&gt;
 --name DERS-NextCloud \&lt;br /&gt;
 -v /nfs/Apps/NextCloud/html:/var/www/html \&lt;br /&gt;
 -v /nfs/Apps/NextCloud/custom_apps:/var/www/html/custom_apps \&lt;br /&gt;
 -v /nfs/Apps/NextCloud/config:/var/www/html/config \&lt;br /&gt;
 -v /nfs/Apps/NextCloud/data:/var/www/html/data \&lt;br /&gt;
 -v /nfs/Apps/NextCloud/ders_theme:/var/www/html/themes/ders_theme \&lt;br /&gt;
 -p &amp;quot;10115:80&amp;quot; \&lt;br /&gt;
 --privileged \&lt;br /&gt;
 nextcloud:latest&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 docker exec -u www-data DERS-NextCloud php occ upgrade&lt;br /&gt;
&lt;br /&gt;
Exit Maintenance Mode&lt;br /&gt;
 go to your nextcloud folder and then open config/config.php.&lt;br /&gt;
 search for &#039;maintenance&#039; =&amp;gt; true,&lt;br /&gt;
 change true to false.&lt;br /&gt;
 save your changes.&lt;br /&gt;
 reload your web page.&lt;br /&gt;
&lt;br /&gt;
== jenkins.dersllc.com (Jenkins) ==&lt;br /&gt;
[[ DERs/Docker/Jenkins_Changes | Change Log ]]&lt;br /&gt;
 docker run -d  \&lt;br /&gt;
 --restart always \&lt;br /&gt;
 --name DERS-Jenkins \&lt;br /&gt;
 -p 8080:8080 \&lt;br /&gt;
 -p 50000:50000 \&lt;br /&gt;
 -v /data/DERS-Jenkins:/var/jenkins_home \&lt;br /&gt;
 jenkins/jenkins&lt;br /&gt;
&lt;br /&gt;
== gitlab.dersllc.com (Gitlab) ==&lt;br /&gt;
[[ DERs/Docker/Gitlab_Changes | Change Log ]]&lt;br /&gt;
 docker run -d \&lt;br /&gt;
 --restart always \&lt;br /&gt;
 --name DERS-Gitlab \&lt;br /&gt;
 -v &amp;quot;/data3/DERS-GitLab/config:/etc/gitlab&amp;quot; \&lt;br /&gt;
 -v &amp;quot;/data3/DERS-GitLab/logs:/var/log/gitlab&amp;quot; \&lt;br /&gt;
 -v &amp;quot;/data3/DERS-GitLab/data:/var/opt/gitlab&amp;quot; \&lt;br /&gt;
 -p &amp;quot;8880:80&amp;quot; \&lt;br /&gt;
 -p &amp;quot;8443:443&amp;quot; \&lt;br /&gt;
 -p &amp;quot;8822:22&amp;quot; \&lt;br /&gt;
 gitlab/gitlab-ce:latest&lt;br /&gt;
&lt;br /&gt;
== rig.dersllc.com (ETN Miners) ==&lt;br /&gt;
[[ DERs/Docker/Rig_Changes | Change Log ]]&lt;br /&gt;
 docker run -d \&lt;br /&gt;
 --name DERS-RIG \&lt;br /&gt;
 --restart always \&lt;br /&gt;
 -p 85:80 \&lt;br /&gt;
 harbor.dersllc.com/ders/ders-rig&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/PhotonOS&amp;diff=29</id>
		<title>DERs/PhotonOS</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/PhotonOS&amp;diff=29"/>
		<updated>2023-06-02T19:12:35Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= PhotonOS = == DEFAULT PASSWORD ==  changeme  == MANUALLY SET IP ADDRESS ==  cat &amp;gt; /etc/systemd/network/10-eth-static.network &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;  [Match]  Name=eth0    [Network]  Address=172.16.87.40/24  Gateway=172.16.87.1  DNS1=172.16.87.5  DNS2=172.16.87.1  Domains=dersllc.com  EOF  == RESTART NETWORK SERVICE ==  systemctl restart systemd-networkd  == ADD MANUAL ROUTE ==  cat &amp;gt;&amp;gt; /etc/systemd/network/10-eth-static.network &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;    [Route]  Gateway=172.16.87.2  Destination=19...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= PhotonOS =&lt;br /&gt;
== DEFAULT PASSWORD ==&lt;br /&gt;
 changeme&lt;br /&gt;
&lt;br /&gt;
== MANUALLY SET IP ADDRESS ==&lt;br /&gt;
 cat &amp;gt; /etc/systemd/network/10-eth-static.network &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
 [Match]&lt;br /&gt;
 Name=eth0&lt;br /&gt;
 &lt;br /&gt;
 [Network]&lt;br /&gt;
 Address=172.16.87.40/24&lt;br /&gt;
 Gateway=172.16.87.1&lt;br /&gt;
 DNS1=172.16.87.5&lt;br /&gt;
 DNS2=172.16.87.1&lt;br /&gt;
 Domains=dersllc.com&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
== RESTART NETWORK SERVICE ==&lt;br /&gt;
 systemctl restart systemd-networkd&lt;br /&gt;
&lt;br /&gt;
== ADD MANUAL ROUTE ==&lt;br /&gt;
 cat &amp;gt;&amp;gt; /etc/systemd/network/10-eth-static.network &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [Route]&lt;br /&gt;
 Gateway=172.16.87.2&lt;br /&gt;
 Destination=192.168.1.0/24&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
== MANUALLY SET DNS SERVERS ==&lt;br /&gt;
 cat &amp;gt; /etc/resolv.conf &amp;lt;&amp;lt; &amp;quot;EOF&amp;quot;&lt;br /&gt;
 # Begin /etc/resolv.conf&lt;br /&gt;
 &lt;br /&gt;
 domain dersllc.com&lt;br /&gt;
 nameserver 172.16.87.5&lt;br /&gt;
 nameserver 172.16.87.1&lt;br /&gt;
 &lt;br /&gt;
 # End /etc/resolv.conf&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
== ALLOW DOCKER REMOTELY ==&lt;br /&gt;
 sed -i &#039;/ExecStart/c\ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375&#039; /lib/systemd/system/docker.service&lt;br /&gt;
 systemctl enable docker&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
&lt;br /&gt;
== JOIN TO ACTIVE DIRECTORY ==&lt;br /&gt;
 tdnf install likewise-open --refresh &amp;lt;b&amp;gt;#(NEEDS TO BE version 6.2.11.4-4.ph2 or highier)&amp;lt;/b&amp;gt;&lt;br /&gt;
 tdnf install openldap --refresh      &amp;lt;b&amp;gt;#(NEEDS TO BE version 2.4.44-4.ph2 or highier)&amp;lt;/b&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 vi /etc/hosts &lt;br /&gt;
     127.0.0.1       photon.dersllc.com photon&lt;br /&gt;
 &lt;br /&gt;
 /opt/likewise/bin/lwregshell&lt;br /&gt;
 cd HKEY_THIS_MACHINE\Services\lwio\Parameters\Drivers\rdr\&lt;br /&gt;
 set_value Smb2Enabled 1&lt;br /&gt;
 quit&lt;br /&gt;
 &lt;br /&gt;
 /opt/likewise/bin/lwsm restart lwio&lt;br /&gt;
 /opt/likewise/bin/domainjoin-cli join dersllc.com daniel.roessner &lt;br /&gt;
 &lt;br /&gt;
 /opt/likewise/bin/domainjoin-cli query&lt;br /&gt;
 /opt/likewise/bin/lw-find-user-by-name daniel.roessner@dersllc.com&lt;br /&gt;
 &lt;br /&gt;
 /opt/likewise/bin/domainjoin-cli configure nsswitch&lt;br /&gt;
 /opt/likewise/bin/domainjoin-cli configure pam&lt;br /&gt;
 &lt;br /&gt;
 tdnf install sudo&lt;br /&gt;
 vi /etc/sudoers&lt;br /&gt;
 %DERSLLC\\vra_admins ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
== ALLOW PINGS ==&lt;br /&gt;
 iptables -A OUTPUT -p icmp -j ACCEPT&lt;br /&gt;
 iptables -A INPUT -p icmp -j ACCEPT&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/DERS-DB1&amp;diff=28</id>
		<title>DERs/DERS-DB1</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/DERS-DB1&amp;diff=28"/>
		<updated>2023-06-02T19:12:17Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;== USERS TABLE ==  CREATE TABLE IF NOT EXISTS `users` (   `ID` int(11) NOT NULL AUTO_INCREMENT,   `user` varchar(30),   `level` varchar(2),   PRIMARY KEY (`ID`)  ) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=12 ;  INSERT INTO users (user, level) VALUES(&amp;#039;admin&amp;#039;, &amp;#039;CL&amp;#039;);  INSERT INTO users (user, level) VALUES(&amp;#039;pbuser&amp;#039;, &amp;#039;CL&amp;#039;);&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== USERS TABLE ==&lt;br /&gt;
 CREATE TABLE IF NOT EXISTS `users` (&lt;br /&gt;
  `ID` int(11) NOT NULL AUTO_INCREMENT,&lt;br /&gt;
  `user` varchar(30),&lt;br /&gt;
  `level` varchar(2),&lt;br /&gt;
  PRIMARY KEY (`ID`)&lt;br /&gt;
 ) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=12 ;&lt;br /&gt;
 INSERT INTO users (user, level) VALUES(&#039;admin&#039;, &#039;CL&#039;);&lt;br /&gt;
 INSERT INTO users (user, level) VALUES(&#039;pbuser&#039;, &#039;CL&#039;);&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/DERS-DB&amp;diff=27</id>
		<title>DERs/DERS-DB</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/DERS-DB&amp;diff=27"/>
		<updated>2023-06-02T19:11:53Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;== Database Setup ==  cat &amp;lt;&amp;lt;EOF&amp;gt; /etc/yum.repos.d/mongodb.repo  [mongodb]  name=MongoDB Repository  baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/  gpgcheck=0  enabled=1  EOF  yum -y install mongodb-org mongodb-org-server  firewall-cmd --add-port 27017/tcp  firewall-cmd --add-port 27017/tcp --permanent  sed -i &amp;#039;s~bind_ip=127.0.0.1~#bind_ip=127.0.0.1~&amp;#039; /etc/mongod.conf  systemctl enable mongod  systemctl start mongod  systemctl restart mongod  == Creat...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Database Setup ==&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF&amp;gt; /etc/yum.repos.d/mongodb.repo&lt;br /&gt;
 [mongodb]&lt;br /&gt;
 name=MongoDB Repository&lt;br /&gt;
 baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/&lt;br /&gt;
 gpgcheck=0&lt;br /&gt;
 enabled=1&lt;br /&gt;
 EOF&lt;br /&gt;
 yum -y install mongodb-org mongodb-org-server&lt;br /&gt;
 firewall-cmd --add-port 27017/tcp&lt;br /&gt;
 firewall-cmd --add-port 27017/tcp --permanent&lt;br /&gt;
 sed -i &#039;s~bind_ip=127.0.0.1~#bind_ip=127.0.0.1~&#039; /etc/mongod.conf&lt;br /&gt;
 systemctl enable mongod&lt;br /&gt;
 systemctl start mongod&lt;br /&gt;
 systemctl restart mongod&lt;br /&gt;
&lt;br /&gt;
== Create Multiple new PB Users ==&lt;br /&gt;
 sed -i &#039;s~auth=true~#auth=true~&#039; /etc/mongod.conf&lt;br /&gt;
 systemctl restart mongod&lt;br /&gt;
 mongo&lt;br /&gt;
 db.createUser( { &amp;quot;user&amp;quot;: &amp;quot;admin&amp;quot;, &amp;quot;pwd&amp;quot;: &amp;quot;****&amp;quot;, &amp;quot;roles&amp;quot;: [ &amp;quot;readWrite&amp;quot;, &amp;quot;dbAdmin&amp;quot; ] } )&lt;br /&gt;
 use dersworkout&lt;br /&gt;
 db.createUser( { &amp;quot;user&amp;quot;: &amp;quot;p1user&amp;quot;, &amp;quot;pwd&amp;quot;: &amp;quot;****&amp;quot;, &amp;quot;customData&amp;quot;: { &amp;quot;level&amp;quot;: &amp;quot;P1&amp;quot; }, &amp;quot;roles&amp;quot;: [ &amp;quot;read&amp;quot; ] } )&lt;br /&gt;
 db.createUser( { &amp;quot;user&amp;quot;: &amp;quot;p2user&amp;quot;, &amp;quot;pwd&amp;quot;: &amp;quot;****&amp;quot;, &amp;quot;customData&amp;quot;: { &amp;quot;level&amp;quot;: &amp;quot;P2&amp;quot; }, &amp;quot;roles&amp;quot;: [ &amp;quot;read&amp;quot; ] } )&lt;br /&gt;
 db.createUser( { &amp;quot;user&amp;quot;: &amp;quot;p3user&amp;quot;, &amp;quot;pwd&amp;quot;: &amp;quot;****&amp;quot;, &amp;quot;customData&amp;quot;: { &amp;quot;level&amp;quot;: &amp;quot;P3&amp;quot; }, &amp;quot;roles&amp;quot;: [ &amp;quot;read&amp;quot; ] } )&lt;br /&gt;
 db.createUser( { &amp;quot;user&amp;quot;: &amp;quot;p4user&amp;quot;, &amp;quot;pwd&amp;quot;: &amp;quot;****&amp;quot;, &amp;quot;customData&amp;quot;: { &amp;quot;level&amp;quot;: &amp;quot;P4&amp;quot; }, &amp;quot;roles&amp;quot;: [ &amp;quot;read&amp;quot; ] } )&lt;br /&gt;
 db.createUser( { &amp;quot;user&amp;quot;: &amp;quot;admin&amp;quot;, &amp;quot;pwd&amp;quot;: &amp;quot;****&amp;quot;, &amp;quot;roles&amp;quot;: [ &amp;quot;readWrite&amp;quot; ] } )&lt;br /&gt;
 var users = [ {user: &amp;quot;p1user&amp;quot;, level: &amp;quot;P1&amp;quot;},{user: &amp;quot;p2user&amp;quot;, level: &amp;quot;P2&amp;quot;},{user: &amp;quot;p3user&amp;quot;, level: &amp;quot;P3&amp;quot;},{user: &amp;quot;p4user&amp;quot;, level: &amp;quot;P4&amp;quot;},{user: &amp;quot;admin&amp;quot;, level: &amp;quot;P4&amp;quot;}];&lt;br /&gt;
 db.users.insert(users)&lt;br /&gt;
 quit()&lt;br /&gt;
 sed -i &#039;s~#auth=true~auth=true~&#039; /etc/mongod.conf&lt;br /&gt;
 systemctl restart mongod&lt;br /&gt;
&lt;br /&gt;
== Create new PB Users ==&lt;br /&gt;
 sed -i &#039;s~auth=true~#auth=true~&#039; /etc/mongod.conf&lt;br /&gt;
 systemctl restart mongod&lt;br /&gt;
 mongo&lt;br /&gt;
 use dersworkout&lt;br /&gt;
 db.createUser( { &amp;quot;user&amp;quot;: &amp;quot;pbuser&amp;quot;, &amp;quot;pwd&amp;quot;: &amp;quot;****&amp;quot;, &amp;quot;customData&amp;quot;: { &amp;quot;level&amp;quot;: &amp;quot;CL&amp;quot; }, &amp;quot;roles&amp;quot;: [ &amp;quot;read&amp;quot; ] } )&lt;br /&gt;
 db.users.insert({user: &amp;quot;pbuser&amp;quot;, level: &amp;quot;CL&amp;quot;})&lt;br /&gt;
 quit()&lt;br /&gt;
 sed -i &#039;s~#auth=true~auth=true~&#039; /etc/mongod.conf&lt;br /&gt;
 systemctl restart mongod&lt;br /&gt;
&lt;br /&gt;
== Show list of Collections ==&lt;br /&gt;
 mongo&lt;br /&gt;
 use dersworkout&lt;br /&gt;
 db.auth(&#039;admin&#039;, &#039;*****&#039;)&lt;br /&gt;
 show collections&lt;br /&gt;
 quit()&lt;br /&gt;
&lt;br /&gt;
== Display a Collection ==&lt;br /&gt;
 mongo&lt;br /&gt;
 use dersworkout&lt;br /&gt;
 db.auth(&#039;admin&#039;, &#039;*****&#039;)&lt;br /&gt;
 db.users.find()&lt;br /&gt;
 db.PB2017Q3.find()&lt;br /&gt;
 quit()&lt;br /&gt;
&lt;br /&gt;
== Change Users Passwords ==&lt;br /&gt;
 mongo&lt;br /&gt;
 use dersworkout&lt;br /&gt;
 db.auth(&#039;admin&#039;, &#039;*****&#039;)&lt;br /&gt;
 db.changeUserPassword(&amp;quot;p1user&amp;quot;, &amp;quot;*****&amp;quot;)&lt;br /&gt;
 quit()&lt;br /&gt;
&lt;br /&gt;
== Drop a Collection ==&lt;br /&gt;
 sed -i &#039;s~auth=true~#auth=true~&#039; /etc/mongod.conf&lt;br /&gt;
 systemctl restart mongod&lt;br /&gt;
 mongo&lt;br /&gt;
 use dersworkout&lt;br /&gt;
 db.PB2015Q2.drop()&lt;br /&gt;
 quit()&lt;br /&gt;
 sed -i &#039;s~#auth=true~auth=true~&#039; /etc/mongod.conf&lt;br /&gt;
 systemctl restart mongod&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/Harbor&amp;diff=26</id>
		<title>DERs/Harbor</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/Harbor&amp;diff=26"/>
		<updated>2023-06-02T19:11:26Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= VIC.DERSLLC.COM = == Setup Repo Certs == # Download ca.crt from https://vic.dersllc.com:8282/#/administration/configuration # Post it to cloud.dersllc.com and share it publicly   yum -y install ca-certificates  update-ca-trust force-enable  wget http://cloud.dersllc.com/index.php/s/YrqISnQvIHqZCwz/download -O /etc/pki/ca-trust/source/anchors/vic-ca.crt  update-ca-trust extract  update-ca-trust    mkdir -p /root/.docker  wget http://cloud.dersllc.com/index.php/s/lepRsqY...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= VIC.DERSLLC.COM =&lt;br /&gt;
== Setup Repo Certs ==&lt;br /&gt;
# Download ca.crt from https://vic.dersllc.com:8282/#/administration/configuration&lt;br /&gt;
# Post it to cloud.dersllc.com and share it publicly&lt;br /&gt;
&lt;br /&gt;
 yum -y install ca-certificates&lt;br /&gt;
 update-ca-trust force-enable&lt;br /&gt;
 wget http://cloud.dersllc.com/index.php/s/YrqISnQvIHqZCwz/download -O /etc/pki/ca-trust/source/anchors/vic-ca.crt&lt;br /&gt;
 update-ca-trust extract&lt;br /&gt;
 update-ca-trust&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /root/.docker&lt;br /&gt;
 wget http://cloud.dersllc.com/index.php/s/lepRsqYTS86yTIc/download -O /root/.docker/config.json&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
&lt;br /&gt;
 docker login vic.dersllc.com&lt;br /&gt;
 #&lt;br /&gt;
 #Username: administrator@vsphere.local&lt;br /&gt;
 #Password: &amp;lt;vsphere password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= DER&#039;s Harbor Install =&lt;br /&gt;
 cd ~&lt;br /&gt;
 wget https://storage.googleapis.com/harbor-releases/harbor-online-installer-v1.3.0-rc4.tgz&lt;br /&gt;
 tar -xzvf harbor-online-installer-v1.3.0-rc4.tgz&lt;br /&gt;
 &lt;br /&gt;
 cd harbor&lt;br /&gt;
 wget https://github.com/docker/compose/releases/download/1.18.0/docker-compose-Linux-x86_64&lt;br /&gt;
 ln -s /harbor/docker-compose-Linux-x86_64 /bin/docker-compose&lt;br /&gt;
 mkdir -p /data/cert&lt;br /&gt;
 wget http://time.dersllc.com/ders-star.crt -O /data/cert/server.crt&lt;br /&gt;
 wget http://time.dersllc.com/ders-star.key -O /data/cert/server.key&lt;br /&gt;
 &lt;br /&gt;
 vi harbor.cfg &lt;br /&gt;
 &lt;br /&gt;
 ./install.sh&lt;br /&gt;
&lt;br /&gt;
= DER&#039;s Docker Repo Setup =&lt;br /&gt;
 wget --no-check-certificate https://time.dersllc.com/ca.crt -O /etc/pki/ca-trust/source/anchors/cacert.cer&lt;br /&gt;
 update-ca-trust&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
 docker login https://vic.dersllc.com&lt;br /&gt;
&lt;br /&gt;
 echo &#039;DOCKER_OPTS=&amp;quot;--insecure-registry vic.dersllc.com&amp;quot;&#039; &amp;gt; /etc/default/docker&lt;br /&gt;
 wget --no-check-certificate https://time.dersllc.com/ca.crt -O /etc/docker/certs.d/vic.dersllc.com/ca.crt&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
 docker login vic.dersllc.com&lt;br /&gt;
&lt;br /&gt;
 tdnf -y install wget&lt;br /&gt;
 mkdir -p /etc/docker/certs.d/docker.dersllc.com/&lt;br /&gt;
 wget --no-check-certificate https://time.dersllc.com/ders-ca.crt -O /etc/docker/certs.d/docker.dersllc.com/ders-ca.crt&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
 docker login docker.dersllc.com&lt;br /&gt;
 &lt;br /&gt;
 mkdir -p /etc/docker/certs.d/harbor.dersllc.com/&lt;br /&gt;
 wget --no-check-certificate https://time.dersllc.com/ders-ca.crt -O /etc/docker/certs.d/harbor.dersllc.com/ders-ca.crt&lt;br /&gt;
 systemctl restart docker&lt;br /&gt;
 docker login harbor.dersllc.com&lt;br /&gt;
&lt;br /&gt;
= VCH Deploy =&lt;br /&gt;
&lt;br /&gt;
==Get Thumbprint==&lt;br /&gt;
 ssh vcsa.dersllc.com&lt;br /&gt;
 openssl x509 -in /etc/vmware-vpx/ssl/rui.crt -fingerprint -sha1 -noout&lt;br /&gt;
&lt;br /&gt;
 ./vic/vic-machine-linux create --no-tlsverify --target 192.168.87.85 --user administrator@vsphere.local --password ****** --name ders-vch1 --public-network /Beavercreek/network/Public --bridge-network /Beavercreek/network/Bridge --compute-resource /Beavercreek/host/HP/Resources --image-store DERS-FILE --insecure-registry 192.168.87.90:443 --thumbprint 8B:0C:4B:59:C6:E2:82:2E:1C:A5:7F:CE:E2:87:D8:A1:14:43:81:95 --volume-store &#039;DERS-FILE&#039;/volumes:default --registry-ca=&amp;quot;./ca.crt&amp;quot;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DERs/HomeLab&amp;diff=25</id>
		<title>DERs/HomeLab</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DERs/HomeLab&amp;diff=25"/>
		<updated>2023-06-02T19:11:02Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= DER&amp;#039;s Home Lab Documentation = == harbor-aws.dersllc.com == === SSH to Harbor-AWS ===  #On Plex  ssh -i ~/.ssh/aws-keypair.pem ec2-user@ec2-54-91-52-46.compute-1.amazonaws.com  === Install Harbor-AWS ===  mkdir /data  cd /data  curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /data/ders-star-chain.crt  curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt;&amp;gt; /data/ders-star-chain.crt  cp /da...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DER&#039;s Home Lab Documentation =&lt;br /&gt;
== harbor-aws.dersllc.com ==&lt;br /&gt;
=== SSH to Harbor-AWS ===&lt;br /&gt;
 #On Plex&lt;br /&gt;
 ssh -i ~/.ssh/aws-keypair.pem ec2-user@ec2-54-91-52-46.compute-1.amazonaws.com&lt;br /&gt;
&lt;br /&gt;
=== Install Harbor-AWS ===&lt;br /&gt;
 mkdir /data&lt;br /&gt;
 cd /data&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/STAR_dersllc_com.crt &amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt;&amp;gt; /data/ders-star-chain.crt&lt;br /&gt;
 cp /data/ders-star-chain.crt /data/ders-star-chain.pem&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/AddTrustExternalCARoot.crt &amp;gt; /data/ders-ca.crt&lt;br /&gt;
 cat /data/ders-ca.crt &amp;gt;&amp;gt; /etc/pki/tls/certs/ca-bundle.crt&lt;br /&gt;
 curl https://ders-gitlab.dersllc.com/ders/ders-proxy/-/raw/master/dersllc-new.key &amp;gt; /data/ders-star.key&lt;br /&gt;
 &lt;br /&gt;
 yum -y install docker&lt;br /&gt;
 service docker start&lt;br /&gt;
 systemctl enable docker&lt;br /&gt;
 &lt;br /&gt;
 wget https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-linux-x86_64 -O /usr/local/bin/docker-compose&lt;br /&gt;
 chmod +x /usr/local/bin/docker-compose&lt;br /&gt;
 wget https://github.com/goharbor/harbor/releases/download/v2.8.1/harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 tar -zxvf harbor-offline-installer-v2.8.1.tgz&lt;br /&gt;
 cd harbor&lt;br /&gt;
 cp harbor.yml.tmpl harbor.yml&lt;br /&gt;
 vi harbor.yml&lt;br /&gt;
 # add Hostname and certs and location&lt;br /&gt;
 #### harbor-aws.dersllc.com&lt;br /&gt;
 #### /data/ders-star-chain.crt&lt;br /&gt;
 #### /data/ders-star.key&lt;br /&gt;
 #### /data/harbor-data&lt;br /&gt;
 &lt;br /&gt;
 ./install.sh --with-trivy --with-notary&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=DCOS/Install&amp;diff=24</id>
		<title>DCOS/Install</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=DCOS/Install&amp;diff=24"/>
		<updated>2023-06-02T19:10:39Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;==DER&amp;#039;s Documentation== DER&amp;#039;s HomeLab Documentation&amp;lt;br&amp;gt;   DER&amp;#039;s Docker Repository Setup &amp;lt;br&amp;gt; DER&amp;#039;s MongoDB Documentation&amp;lt;br&amp;gt; DER&amp;#039;s MySQL DB Documentation&amp;lt;br&amp;gt; DER&amp;#039;s PhotonOS Documentation&amp;lt;br&amp;gt; DER&amp;#039;s Docker Documentation&amp;lt;br&amp;gt; DER&amp;#039;s DCOS Documentation&amp;lt;br&amp;gt; DER&amp;#039;s 3D Printer Documentation&amp;lt;br&amp;gt; DER&amp;#039;s MAC Documentation&amp;lt;br&amp;gt; DERs/Horizon|DER&amp;#039;s...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==DER&#039;s Documentation==&lt;br /&gt;
[[DERs/HomeLab|DER&#039;s HomeLab Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[DERs/Harbor|DER&#039;s Docker Repository Setup]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/DERS-DB|DER&#039;s MongoDB Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/DERS-DB1|DER&#039;s MySQL DB Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/PhotonOS|DER&#039;s PhotonOS Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/Docker|DER&#039;s Docker Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/DCOS|DER&#039;s DCOS Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/3D|DER&#039;s 3D Printer Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/MAC|DER&#039;s MAC Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/Horizon|DER&#039;s Horizon Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/Templates|DER&#039;s Template Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/vRA|DER&#039;s vRA 8 Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[DERs/K8s|DER&#039;s Kubernetes Documentation]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DREN Documentation ==&lt;br /&gt;
[[DREN|DREN Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==DevNet Documentation ==&lt;br /&gt;
[[DevNet| DevNet Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TDKC Documentation ==&lt;br /&gt;
[[TDKC|TDKC Documentation]] &amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==VMware Documentation==&lt;br /&gt;
[[VMware|VMware Documentation]] &amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/VHA&amp;diff=23</id>
		<title>VMware/VHA</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/VHA&amp;diff=23"/>
		<updated>2023-06-02T19:10:04Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Health Analyzer = ===Vault Link===  https://vault.vmware.com/group/vault-main-library/healthanalyzer ===Registration Link===  https://pstoolhub.vmware.com/ === Registration Code for 5.4 ===  Registration Key: WG88IS9LJFA1KNYWUV  Registration E-mail: droessner@vmware.com ===Support Information===  services-software-support@vmware.com  = Issues and Fixes = ==Fails to collect Data from vCenter== ===Issue===  Unable to get progress information. See application logs for mor...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Health Analyzer =&lt;br /&gt;
===Vault Link===&lt;br /&gt;
 https://vault.vmware.com/group/vault-main-library/healthanalyzer&lt;br /&gt;
===Registration Link===&lt;br /&gt;
 https://pstoolhub.vmware.com/&lt;br /&gt;
=== Registration Code for 5.4 ===&lt;br /&gt;
 Registration Key: WG88IS9LJFA1KNYWUV&lt;br /&gt;
 Registration E-mail: droessner@vmware.com&lt;br /&gt;
===Support Information===&lt;br /&gt;
 services-software-support@vmware.com&lt;br /&gt;
&lt;br /&gt;
= Issues and Fixes =&lt;br /&gt;
==Fails to collect Data from vCenter==&lt;br /&gt;
===Issue===&lt;br /&gt;
 Unable to get progress information. See application logs for more information. (Version 5.4)&lt;br /&gt;
===Fix===&lt;br /&gt;
 In general vHA tool is very memory hungry when analyzing big projects. You will need to increase the amount of RAM for the tool (if this is possible)&lt;br /&gt;
  &lt;br /&gt;
 Please follow this guide:&lt;br /&gt;
  &lt;br /&gt;
 If you use java version - &lt;br /&gt;
  &lt;br /&gt;
 For java app 64-bit JRE is recommended for large environments&lt;br /&gt;
 To change the amount of memory using the Java application&lt;br /&gt;
 1. Stop the VMware HealthAnalyzer Java application.&lt;br /&gt;
 2. Go to the directory where the VMware HealthAnalyzer Java application was unzipped.&lt;br /&gt;
 3. Open &amp;lt;vhalocation&amp;gt;/resources/applicationContext.xml using a Text Editor (Notepad++ like app)&lt;br /&gt;
 4. App Server: Locate vha-start section and change the value of Xmx1024m to Xmx2048m, and  XX:MaxPermSize=256M to  XX:MaxPermSize=512M&lt;br /&gt;
 &amp;lt;util:map id=&amp;quot;vha-start&amp;quot; map-class=&amp;quot;java.util.LinkedHashMap&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;entry key=&amp;quot;java&amp;quot; value=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
         &amp;lt;entry key=&amp;quot;-Xmx2048m&amp;quot; value=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
         &amp;lt;entry key=&amp;quot;-XX:MaxPermSize=512M&amp;quot; value=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
 5. DB Server:  Locate basex-start section and change the value of Xmx1280m to Xmx2048m.  Notice there is a new line added as well.&lt;br /&gt;
  &lt;br /&gt;
 &amp;lt;util:map id=&amp;quot;basex-start&amp;quot; map-class=&amp;quot;java.util.LinkedHashMap&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;entry key=&amp;quot;java&amp;quot; value=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
         &amp;lt;entry key=&amp;quot;-Xmx2048m&amp;quot; value=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
         &amp;lt;entry key=&amp;quot;-XX:MaxPermSize=512M&amp;quot; value=&amp;quot;&amp;quot; /&amp;gt;     #new line&lt;br /&gt;
        &lt;br /&gt;
 6. Start the VMware HealthAnalyzer Java application.&lt;br /&gt;
  &lt;br /&gt;
 -----------------------------------------&lt;br /&gt;
  &lt;br /&gt;
 To change the amount of Tomcat memory with a virtual appliance&lt;br /&gt;
 1. Log in to the virtual appliance using the user root and password vmware.&lt;br /&gt;
 2. Open the configuration file using vi or another text editor:&lt;br /&gt;
 vi /usr/share/vha/tomcat/conf/vha-tomcat-memory&lt;br /&gt;
 3. Locate the default value of 2048 and change it to your desired value. This is the amount of memory allocated to Tomcat in megabytes.&lt;br /&gt;
 4. To change the amount of database memory with a virtual appliance You have to edit basexserver configuration file&lt;br /&gt;
 /usr/share/vha/basex/bin/basexserver&lt;br /&gt;
 # Options for virtual machine&lt;br /&gt;
 VM=-Xmx2048m - change this to amount memory you have and want &lt;br /&gt;
 5. Restart the appliance with the following command:&lt;br /&gt;
 shutdown –r now&lt;br /&gt;
 6. You can confirm that the memory value changed by issuing the following command and reviewing the argument –Xmx .&lt;br /&gt;
 ps –ef | grep catalina and ps -ef | grep -i basex&lt;br /&gt;
 Default virtual appliance memory size is 1.5GB so it must be increased as well.&lt;br /&gt;
  &lt;br /&gt;
 If this did not work I have deployed one vHA instance in our vCenter with 8G for tomcat and 8G for database. You can access it on the following URL:&lt;br /&gt;
  &lt;br /&gt;
 http://10.26.226.213/vha/HealthAnalyzer.html#!explore&lt;br /&gt;
 (you must be in VMware VPN/network)&lt;br /&gt;
 You can use it as long as needed. Please let me know when You finish. Thank You&lt;br /&gt;
  &lt;br /&gt;
 Best regards,&lt;br /&gt;
 Anton Sabev&lt;br /&gt;
 Support Engineer, Field Tools&lt;br /&gt;
 sabeva@vmware.com&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/Horizon&amp;diff=22</id>
		<title>VMware/Horizon</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/Horizon&amp;diff=22"/>
		<updated>2023-06-02T19:09:47Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Horizon = = Issues and Fixes =  == Lotus Notes causes a Busy Cursor and not going away == ===Issue===  Lotus notes inside of the app stack or installed directly on the parent causes a busy cursor that does not go away. This may also only happen on the Blast client on high resolution clients.  ===Fix===  Modify the pool and enable &amp;quot;3D Rendering&amp;quot; and set it to &amp;quot;Auto&amp;quot;. Then set the Video RAM (ex. 128). In the blast client set the preference to &amp;quot;Low Resolution Mode&amp;quot;.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Horizon =&lt;br /&gt;
= Issues and Fixes =&lt;br /&gt;
&lt;br /&gt;
== Lotus Notes causes a Busy Cursor and not going away ==&lt;br /&gt;
===Issue===&lt;br /&gt;
 Lotus notes inside of the app stack or installed directly on the parent causes a busy cursor that does not go away. This may also only happen on the Blast client on high resolution clients. &lt;br /&gt;
===Fix===&lt;br /&gt;
 Modify the pool and enable &amp;quot;3D Rendering&amp;quot; and set it to &amp;quot;Auto&amp;quot;. Then set the Video RAM (ex. 128). In the blast client set the preference to &amp;quot;Low Resolution Mode&amp;quot;.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/ESXi&amp;diff=21</id>
		<title>VMware/ESXi</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/ESXi&amp;diff=21"/>
		<updated>2023-06-02T19:09:25Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= ESXi = = Issues and Fixes = ==HPE Proliant G7 Servers and vSphere 6.5 Purple Screen of Death== ===Issue===  PSOD: PF Exception 14 in world 67667:sfcb-smx IP 0x0 addr 0x0  ===Fix===  https://www.virtualmvp.com/hpe-proliant-g7-servers-and-vsphere-6-5-purple-screen-of-death/   == NSX-T Filling up Scratch space == ===Fix=== * SSH as root to ESXi Server and run the following commands:   chmod +t /etc/rc.local    echo &amp;quot;&amp;quot; &amp;gt;&amp;gt; /etc/rc.local    echo &amp;quot;chmod +t /etc/vmware/nsx-ops...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= ESXi =&lt;br /&gt;
= Issues and Fixes =&lt;br /&gt;
==HPE Proliant G7 Servers and vSphere 6.5 Purple Screen of Death==&lt;br /&gt;
===Issue===&lt;br /&gt;
 PSOD: PF Exception 14 in world 67667:sfcb-smx IP 0x0 addr 0x0&lt;br /&gt;
&lt;br /&gt;
===Fix===&lt;br /&gt;
 https://www.virtualmvp.com/hpe-proliant-g7-servers-and-vsphere-6-5-purple-screen-of-death/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== NSX-T Filling up Scratch space ==&lt;br /&gt;
===Fix===&lt;br /&gt;
* SSH as root to ESXi Server and run the following commands:&lt;br /&gt;
&lt;br /&gt;
 chmod +t /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;&amp;quot; &amp;gt;&amp;gt; /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;chmod +t /etc/vmware/nsx-opsagent/nsx-opsAgent.xml&amp;quot; &amp;gt;&amp;gt; /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;lt;max_size&amp;gt;40 MiB&amp;lt;\/max_size&amp;gt;/&amp;lt;max_size&amp;gt;40 MiB&amp;lt;\/max_size&amp;gt;/&#039; /etc/vmware/nsx-opsagent/nsx-opsAgent.xml&amp;quot; &amp;gt;&amp;gt; /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;lt;max_files&amp;gt;2&amp;lt;\/max_files&amp;gt;/&amp;lt;max_files&amp;gt;2&amp;lt;\/max_files&amp;gt;/&#039; /etc/vmware/nsx-opsagent/nsx-opsAgent.xml&amp;quot; &amp;gt;&amp;gt; /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;sed -i &#039;s/&amp;lt;max_size&amp;gt;20 MiB&amp;lt;\/max_size&amp;gt;/&amp;lt;max_size&amp;gt;40 MiB&amp;lt;\/max_size&amp;gt;/&#039; /etc/vmware/nsx-opsagent/nsx-opsAgent.xml&amp;quot; &amp;gt;&amp;gt; /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;chmod -t /etc/vmware/nsx-opsagent/nsx-opsAgent.xml&amp;quot; &amp;gt;&amp;gt; /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 echo &amp;quot;/etc/init.d/nsx-opsagent restart&amp;quot; &amp;gt;&amp;gt; /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 chmod -t /etc/rc.local&lt;br /&gt;
 &lt;br /&gt;
 /etc/rc.local&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/GITLAB&amp;diff=20</id>
		<title>VMware/GITLAB</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/GITLAB&amp;diff=20"/>
		<updated>2023-06-02T19:09:03Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Setting up GITLAB with SSO = 1. vi /etc/gitlab/gitlab.rb  gitlab_rails[&amp;#039;omniauth_enabled&amp;#039;] = true  gitlab_rails[&amp;#039;omniauth_allow_single_sign_on&amp;#039;] = [&amp;#039;saml&amp;#039;]  gitlab_rails[&amp;#039;omniauth_sync_email_from_provider&amp;#039;] = &amp;#039;saml&amp;#039;  gitlab_rails[&amp;#039;omniauth_sync_profile_from_provider&amp;#039;] = [&amp;#039;saml&amp;#039;]  gitlab_rails[&amp;#039;omniauth_sync_profile_attributes&amp;#039;] = [&amp;#039;email&amp;#039;]  gitlab_rails[&amp;#039;omniauth_auto_sign_in_with_provider&amp;#039;] = &amp;#039;saml&amp;#039;  gitlab_rails[&amp;#039;omniauth_block_auto_created_users&amp;#039;] = false  #gitlab_r...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Setting up GITLAB with SSO =&lt;br /&gt;
1. vi /etc/gitlab/gitlab.rb&lt;br /&gt;
 gitlab_rails[&#039;omniauth_enabled&#039;] = true&lt;br /&gt;
 gitlab_rails[&#039;omniauth_allow_single_sign_on&#039;] = [&#039;saml&#039;]&lt;br /&gt;
 gitlab_rails[&#039;omniauth_sync_email_from_provider&#039;] = &#039;saml&#039;&lt;br /&gt;
 gitlab_rails[&#039;omniauth_sync_profile_from_provider&#039;] = [&#039;saml&#039;]&lt;br /&gt;
 gitlab_rails[&#039;omniauth_sync_profile_attributes&#039;] = [&#039;email&#039;]&lt;br /&gt;
 gitlab_rails[&#039;omniauth_auto_sign_in_with_provider&#039;] = &#039;saml&#039;&lt;br /&gt;
 gitlab_rails[&#039;omniauth_block_auto_created_users&#039;] = false&lt;br /&gt;
 #gitlab_rails[&#039;omniauth_auto_link_ldap_user&#039;] = true &lt;br /&gt;
 gitlab_rails[&#039;omniauth_auto_link_saml_user&#039;] = true&lt;br /&gt;
 #gitlab_rails[&#039;omniauth_external_providers&#039;] = [&#039;twitter&#039;, &#039;google_oauth2&#039;]&lt;br /&gt;
 #gitlab_rails[&#039;omniauth_allow_bypass_two_factor&#039;] = [&#039;google_oauth2&#039;]&lt;br /&gt;
 gitlab_rails[&#039;omniauth_providers&#039;] = [&lt;br /&gt;
   {&lt;br /&gt;
     &amp;quot;name&amp;quot; =&amp;gt; &amp;quot;saml&amp;quot;,&lt;br /&gt;
     &amp;quot;args&amp;quot; =&amp;gt; {&lt;br /&gt;
         assertion_consumer_service_url: &#039;https://gitlab.dersllc.com/users/auth/saml/callback&#039;,&lt;br /&gt;
         idp_cert: &#039;-----BEGIN CERTIFICATE-----&lt;br /&gt;
 MIIEDTCCAnWgAwIBAgIFX8pgs88wDQYJKoZIhvcNAQELBQAwPzEgMB4GA1UEAwwX&lt;br /&gt;
 Vk13YXJlIElkZW50aXR5IE1hbmFnZXIxDjAMBgNVBAoMBUxPR0lOMQswCQYDVQQG&lt;br /&gt;
 EwJVUzAeFw0yMDA3MDgwMDMzMDBaFw0zMDA3MDYwMDMzMDBaMD8xIDAeBgNVBAMM&lt;br /&gt;
 F1ZNd2FyZSBJZGVudGl0eSBNYW5hZ2VyMQ4wDAYDVQQKDAVMT0dJTjELMAkGA1UE&lt;br /&gt;
 BhMCVVMwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCu3PrucCHvTQhQ&lt;br /&gt;
 +g/dd3t6rNwnCsq7EEZQLgj+kv3yVaBTUvlnmxALR0jR+oHKtg3/ZRvX2R82zUyW&lt;br /&gt;
 LSe3rtxyg9iQx/0oFXjIaK65/f1KsQWrHW4knXfwf/81k1sx14DVFoF953w7jKOf&lt;br /&gt;
 N9lcOMEnWD6Oi9tF1hQ/5imW1359uL0DzOVD+OOd94fkhU+yNmH6Ag+D+YTcKUt8&lt;br /&gt;
 pdkiYLw0vMqVAU6Qh47SJrd5p2HogcibxLPm4SCJ5efui1lEWjZ3MhrKrikc5ghv&lt;br /&gt;
 4AuCbt16QADHXIo+xWgpULM1LR6uDYPkELSJXqL9ME16B640u5V82U8co1JdBxe7&lt;br /&gt;
 80pXCRky5gIP7iefefqaY5UpZUmr9AhCzMzZ0H17h1F52mIyOD83ZbonNqnCcSWB&lt;br /&gt;
 fWL/cHt7siCMvuj9OVgzHDoDrHVOCoyMJrI6jBYvTmx4kMYaycRdNdFUlcle87L6&lt;br /&gt;
 KCGqi4Nj/NOnkJ3hnSiJdbqZhGpbBRDUqsPexWoZtrUBTtybDe8CAwEAAaMQMA4w&lt;br /&gt;
 DAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAYEAdDeWzbXO7TAtOi42HAZK&lt;br /&gt;
 MW02hzqH1DbIghb0rmRQPpQmAEb5lxVW/Ly9M+HJEjiSqW8NZKdBBEtQYb5Uzuy0&lt;br /&gt;
 StNIrRTDZ5u1z0B8PbY4Jh7JVaxHWOLF3PU9r26NkRIV6ze4J+J1PuPbriZ+iWyM&lt;br /&gt;
 fU68tLee8E2Nru0FJ58ArZ+9OsREJ6ym9ic2URDqFedNncJlXhDbteiAIcxZU+JO&lt;br /&gt;
 C5zWOGsXUvIz76azxjC1rT1R+zkB7JwoTDHYIczQu2tHjiXmNyIdw98Ykc0B4o03&lt;br /&gt;
 2in+EqQwNli23A3MtMz2SCCoqGVyJB+kQb/DYxKqq3JEizOJ9nitxuneHoHaf/EL&lt;br /&gt;
 wnXW6KagH+Ag60E1XKnf/T3qURmL4/gJTfHln9h68X/cYrGS/+1tjson1GFpzDGe&lt;br /&gt;
 dBVmEA4UiiOObeKUywIWitaNazwpvjhg+2QZX3lCW8cm0d2FN5QxVBFscc7wsbim&lt;br /&gt;
 3x6WNVCqYPZgcWzo1WDw9uhNnI5nTXIgdSwo9PyGvAVC&lt;br /&gt;
 -----END CERTIFICATE-----&#039;,&lt;br /&gt;
         idp_sso_target_url: &#039;https://login.dersllc.com/SAAS/auth/federation/sso&#039;,&lt;br /&gt;
         issuer: &#039;ders-gitlab&#039;,&lt;br /&gt;
         name_identifier_format: &#039;urn:oasis:names:tc:SAML:2.0:nameid-format:persistent&#039;&lt;br /&gt;
         },&lt;br /&gt;
     label: &#039;DERs Login&#039;&lt;br /&gt;
   }&lt;br /&gt;
 ]&lt;br /&gt;
&lt;br /&gt;
* Go to vIDM administrative Console&lt;br /&gt;
* Go to Catalog Tab -&amp;gt; Web Apps&lt;br /&gt;
* Click the Settings Button.&lt;br /&gt;
* Go to the SAML Metadata Tab.&lt;br /&gt;
* Copy the Signing Certificate and paste it in the idp_cert section of the gitlab.rb file.&lt;br /&gt;
* Click the Identity Provider (IdP) metadata Link.&lt;br /&gt;
* Find the following location in the metadata&lt;br /&gt;
 &amp;lt;md:SingleSignOnService Binding=&amp;quot;urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect&amp;quot; &lt;br /&gt;
 Location=&amp;quot;https://login.dersllc.com/SAAS/auth/federation/sso&amp;quot;/&amp;gt;&lt;br /&gt;
* Copy the Location URL: https://login.dersllc.com/SAAS/auth/federation/sso and paste it in the idp_sso_target_url section of the gitlab.rb file.&lt;br /&gt;
* Set the Issuer as a friendly name for your gitlab sevrer.&lt;br /&gt;
* set the assertion_consumer_service_url to &#039;https://&amp;lt;gitlab_URL&amp;gt;/users/auth/saml/callback&#039;&lt;br /&gt;
* Set the label as a friendly name for the button on the sign-on page.&lt;br /&gt;
* Save and Exit the gitlab.rb file. &lt;br /&gt;
* Run the reconfigure command.&lt;br /&gt;
  gitlab-ctl reconfigure&lt;br /&gt;
* After this is complete. Go back to the vIDM Administrative Console.&lt;br /&gt;
* Go to Catalog Tab -&amp;gt; Web Apps&lt;br /&gt;
* Click the New button.&lt;br /&gt;
* Create a name for the App and click next.&lt;br /&gt;
* make sure the Authentication Type is set to SAML 2.0&lt;br /&gt;
* On the gitlab server run the following to get the metadata xml for the gitlab server.&lt;br /&gt;
  curl --insecure https://gitlab.dersllc.com/users/auth/saml/metadata&lt;br /&gt;
* Copy the output and paste it into the URL/XML: section of the new app form.&lt;br /&gt;
* Click Next and Save &amp;amp; Assign. &lt;br /&gt;
* Assign users to the App and attempt to login!&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/Converter&amp;diff=19</id>
		<title>VMware/Converter</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/Converter&amp;diff=19"/>
		<updated>2023-06-02T19:08:39Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= vCenter Converter Standalone = == Installing vCenter Converter Standalone == == Troubleshooting Errors == === After the Conversion ===  &amp;#039;&amp;#039;&amp;#039;Error:&amp;#039;&amp;#039;&amp;#039;  error: can&amp;#039;t find command &amp;#039;:&amp;#039; &amp;#039;&amp;#039;&amp;#039;Solution:&amp;#039;&amp;#039;&amp;#039;  1. Boot the server  2. Login as Root  3. run the following command:       sed -i &amp;#039;s/:\ #/#/g&amp;#039; /boot/grub2/grub.cfg &amp;#039;&amp;#039;&amp;#039;Reference:&amp;#039;&amp;#039;&amp;#039;   https://communities.vmware.com/thread/590670  === Before the Conversion ===  &amp;#039;&amp;#039;&amp;#039;Error:&amp;#039;&amp;#039;&amp;#039;  unable to query the live source machine &amp;#039;&amp;#039;&amp;#039;Solution...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= vCenter Converter Standalone =&lt;br /&gt;
== Installing vCenter Converter Standalone ==&lt;br /&gt;
== Troubleshooting Errors ==&lt;br /&gt;
=== After the Conversion === &lt;br /&gt;
&#039;&#039;&#039;Error:&#039;&#039;&#039;&lt;br /&gt;
 error: can&#039;t find command &#039;:&#039;&lt;br /&gt;
&#039;&#039;&#039;Solution:&#039;&#039;&#039;&lt;br /&gt;
 1. Boot the server&lt;br /&gt;
 2. Login as Root&lt;br /&gt;
 3. run the following command:&lt;br /&gt;
      sed -i &#039;s/:\ #/#/g&#039; /boot/grub2/grub.cfg&lt;br /&gt;
&#039;&#039;&#039;Reference:&#039;&#039;&#039;&lt;br /&gt;
  https://communities.vmware.com/thread/590670&lt;br /&gt;
&lt;br /&gt;
=== Before the Conversion === &lt;br /&gt;
&#039;&#039;&#039;Error:&#039;&#039;&#039;&lt;br /&gt;
 unable to query the live source machine&lt;br /&gt;
&#039;&#039;&#039;Solution:&#039;&#039;&#039;&lt;br /&gt;
 1. Make sure you do not have any drives double mounted. &lt;br /&gt;
 2. Also Turn off Docker.&lt;br /&gt;
    systemctl stop docker&lt;br /&gt;
&#039;&#039;&#039;Reference:&#039;&#039;&#039;&lt;br /&gt;
 https://community.spiceworks.com/topic/2209325-unable-to-query-the-live-source-machine-in-p2v-convert&lt;br /&gt;
 https://communities.vmware.com/thread/597168&lt;br /&gt;
&lt;br /&gt;
------------------------------------------------------------------------------------------------------&lt;br /&gt;
&#039;&#039;&#039;Error:&#039;&#039;&#039;&lt;br /&gt;
 Unable to find supported boot loader&lt;br /&gt;
&#039;&#039;&#039;Solution:&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;Reference:&#039;&#039;&#039;&lt;br /&gt;
 https://communities.vmware.com/thread/520440&lt;br /&gt;
 https://www.rit.edu/researchcomputing/instructions/Clearing-the-known_hosts-SSH-File&lt;br /&gt;
---------------------------------------------------&lt;br /&gt;
== Reference Documentation ==&lt;br /&gt;
 https://kb.vmware.com/s/article/1010056&lt;br /&gt;
&lt;br /&gt;
 https://kb.vmware.com/s/article/1004588&lt;br /&gt;
&lt;br /&gt;
 https://kb.vmware.com/s/article/1010633&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/FedContacts&amp;diff=18</id>
		<title>VMware/FedContacts</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/FedContacts&amp;diff=18"/>
		<updated>2023-06-02T19:08:19Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Federal Contacts = == Education == Richard Covel&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Federal Contacts =&lt;br /&gt;
== Education ==&lt;br /&gt;
Richard Covel&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/vIDM&amp;diff=17</id>
		<title>VMware/vIDM</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/vIDM&amp;diff=17"/>
		<updated>2023-06-02T19:07:51Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;===Configure ADFS and vIDM ===  https://jadijkstra.nl/2017/12/12/vmware-idm-3-0-with-adfs-3-0-single-sign-on-to-portal-configuration/&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Configure ADFS and vIDM ===&lt;br /&gt;
 https://jadijkstra.nl/2017/12/12/vmware-idm-3-0-with-adfs-3-0-single-sign-on-to-portal-configuration/&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/PowerCLI_Scripts&amp;diff=16</id>
		<title>VMware/PowerCLI Scripts</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/PowerCLI_Scripts&amp;diff=16"/>
		<updated>2023-06-02T19:07:28Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;=PowerCLI Scripts=  ===PowerCLI on MAC=== *Install Docker engine  https://docs.docker.com/docker-for-mac/install/  https://docs.docker.com/engine/installation/linux/docker-ce/centos/ *Pull the powerclicore container  docker pull vmware/powerclicore *Run the powerclicore container  docker run --rm -it vmware/powerclicore  ===Find the Total number of Virtual CPU&amp;#039;s per vCenter Server===  Connect-VIServer -Server &amp;lt;VCENTER_SERVER&amp;gt; -Protocol https -User &amp;lt;ADMIN_USER&amp;gt; -Password...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=PowerCLI Scripts=&lt;br /&gt;
&lt;br /&gt;
===PowerCLI on MAC===&lt;br /&gt;
*Install Docker engine&lt;br /&gt;
 https://docs.docker.com/docker-for-mac/install/&lt;br /&gt;
 https://docs.docker.com/engine/installation/linux/docker-ce/centos/&lt;br /&gt;
*Pull the powerclicore container&lt;br /&gt;
 docker pull vmware/powerclicore&lt;br /&gt;
*Run the powerclicore container&lt;br /&gt;
 docker run --rm -it vmware/powerclicore&lt;br /&gt;
&lt;br /&gt;
===Find the Total number of Virtual CPU&#039;s per vCenter Server===&lt;br /&gt;
 Connect-VIServer -Server &amp;lt;VCENTER_SERVER&amp;gt; -Protocol https -User &amp;lt;ADMIN_USER&amp;gt; -Password  &amp;lt;PASS&amp;gt;&lt;br /&gt;
 $Total_vCPU = 0 &lt;br /&gt;
 ForEach ($VM in (Get-VM)){&lt;br /&gt;
   If (($VM).PowerState -eq &amp;quot;PoweredOn&amp;quot;){&lt;br /&gt;
     $Total_vCPU += ($VM).NumCpu&lt;br /&gt;
   }&lt;br /&gt;
 } &lt;br /&gt;
 Write-Host “Total number of Virtual CPU’s: “$Total_vCPU&lt;br /&gt;
&lt;br /&gt;
===Find the Total number of Physical CPU&#039;s per vCenter Server===&lt;br /&gt;
 Connect-VIServer -Server &amp;lt;VCENTER_SERVER&amp;gt; -Protocol https -User &amp;lt;ADMIN_USER&amp;gt; -Password  &amp;lt;PASS&amp;gt;&lt;br /&gt;
 $Total_pCPU = 0&lt;br /&gt;
 ForEach ($VMHOST in (Get-VMHOST)){&lt;br /&gt;
   If (($VMHOST).PowerState -eq &amp;quot;PoweredOn&amp;quot;){&lt;br /&gt;
     $Total_pCPU += ($VMHOST).NumCpu&lt;br /&gt;
   }&lt;br /&gt;
 }&lt;br /&gt;
 Write-Host “Total number of Physical CPU’s: “$Total_pCPU&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/Product_Contacts&amp;diff=15</id>
		<title>VMware/Product Contacts</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/Product_Contacts&amp;diff=15"/>
		<updated>2023-06-02T19:07:02Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= App Defense = Not Urgent:  * appdefense-help@vmware.com * https://vmware-com.socialcast.com/groups/310417-appdefense Urgent: * Chris Corde, Sr. Director Product Management, ccorde@vmware.com * Vijay Ganti, Director Product Management, vganti@vmware.com  = Wavefront = Not Urgent:  * wavefront@vmware.com * https://vmware-com.socialcast.com/groups/187508-wavefrontgroup Urgent:  * Bill Roth, Director, Demand Gen Marketing, broth@vmware.com, (650) 427-5756&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= App Defense =&lt;br /&gt;
Not Urgent: &lt;br /&gt;
* appdefense-help@vmware.com&lt;br /&gt;
* https://vmware-com.socialcast.com/groups/310417-appdefense&lt;br /&gt;
Urgent:&lt;br /&gt;
* Chris Corde, Sr. Director Product Management, ccorde@vmware.com&lt;br /&gt;
* Vijay Ganti, Director Product Management, vganti@vmware.com&lt;br /&gt;
&lt;br /&gt;
= Wavefront =&lt;br /&gt;
Not Urgent: &lt;br /&gt;
* wavefront@vmware.com&lt;br /&gt;
* https://vmware-com.socialcast.com/groups/187508-wavefrontgroup&lt;br /&gt;
Urgent: &lt;br /&gt;
* Bill Roth, Director, Demand Gen Marketing, broth@vmware.com, (650) 427-5756&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/Contacts&amp;diff=14</id>
		<title>VMware/Contacts</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/Contacts&amp;diff=14"/>
		<updated>2023-06-02T19:06:35Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Product Specialists = ==== vSphere Certificates ==== * Sujish Suresh Kumar (GSS)(India) === vRealize Automation=== * Chris Kuum (Broomfield TSE) * Arash Rakeen (Broomfield TSE Premier Services)  Helpful!!! * Adnan Bhatti (Cork TSE) * Sean Jones * David Stockland   ==== Licensing ==== *Krista Squires (IB Services)(Austin, TX) *Ameena Sultana (GSS)(India) *Jose Garcia Rojas License Escalations Rep *EPP (Tokens) Manager jdangi@vmware.com Goes by JD *EPP (Tokens) Worker Be...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Product Specialists =&lt;br /&gt;
==== vSphere Certificates ====&lt;br /&gt;
* Sujish Suresh Kumar (GSS)(India)&lt;br /&gt;
=== vRealize Automation===&lt;br /&gt;
* Chris Kuum (Broomfield TSE)&lt;br /&gt;
* Arash Rakeen (Broomfield TSE Premier Services)  Helpful!!!&lt;br /&gt;
* Adnan Bhatti (Cork TSE)&lt;br /&gt;
* Sean Jones&lt;br /&gt;
* David Stockland&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Licensing ====&lt;br /&gt;
*Krista Squires (IB Services)(Austin, TX)&lt;br /&gt;
*Ameena Sultana (GSS)(India)&lt;br /&gt;
*Jose Garcia Rojas License Escalations Rep&lt;br /&gt;
*EPP (Tokens) Manager jdangi@vmware.com Goes by JD&lt;br /&gt;
*EPP (Tokens) Worker Bee   shandigund@vmware.com&lt;br /&gt;
&lt;br /&gt;
*SPP@vmware.com, HPP@vmware.com, EPP@vmware.com are aliases for anything license related.  Just like there is a support-escalations alias for hot SR&#039;s I just found out we have a similar alias for licensing issues. licensing-escalations@vmware.com&lt;br /&gt;
&lt;br /&gt;
====vRealize Business for Cloud Advanced====&lt;br /&gt;
*Jay Weber (TSE Broomfield)&lt;br /&gt;
*Mandip Gill (TSE Broomfield)&lt;br /&gt;
====vCloud Director====&lt;br /&gt;
*Dave Achten (Todd Hansz equivalent for vCD)&lt;br /&gt;
*Zach Brown (Good Dude)&lt;br /&gt;
*Tommy Lightfoot&lt;br /&gt;
&lt;br /&gt;
====vRealize Life Cycle Manager====&lt;br /&gt;
*Jimmy Alvarez (Worthless but Tech Marketing POC)&lt;br /&gt;
*Jay Weber (TSE Broomfield)&lt;br /&gt;
====Networking====&lt;br /&gt;
*Kiwi Ssennyonjo (TSE Home Office Canada)&lt;br /&gt;
*Daniel Backhaus&lt;br /&gt;
====NSX====&lt;br /&gt;
*Todd Hansz (Broomfield EE) (NSX God)&lt;br /&gt;
*Daryl Marcus (Broomfield Staff EE)&lt;br /&gt;
*Jeff Wholey (Broomfield EE)&lt;br /&gt;
*Andrew George (Broomfield TSE)&lt;br /&gt;
====HCX====&lt;br /&gt;
*Brian McGhie (Broomfield TSE)&lt;br /&gt;
*Daryl Allen (Broomfield TSE)&lt;br /&gt;
*Jamey Holbrook (Atlanta HCX SE)&lt;br /&gt;
&lt;br /&gt;
====Network Insight====&lt;br /&gt;
*Trey Tyler&lt;br /&gt;
==== vRealize Operations ====&lt;br /&gt;
*Neeraj Gandhi (PSO)(Maryland)&lt;br /&gt;
*Kyle Pittman&lt;br /&gt;
*Kelly Bryan&lt;br /&gt;
*Kyle Jett&lt;br /&gt;
&lt;br /&gt;
==== EUC ====&lt;br /&gt;
*Jason Misleh (TAM)(Michigan)&lt;br /&gt;
*Bob Johnston (TAM)(Michigan)&lt;br /&gt;
*Scott McDermott (TSE Broomfield)&lt;br /&gt;
====Orchestrator====&lt;br /&gt;
*Justin Dowe (TSE Broomfield)&lt;br /&gt;
*Galina Kostova (Product Manager)&lt;br /&gt;
*Adam Frost (Really knows his shit)&lt;br /&gt;
&lt;br /&gt;
====Site Recovery Manager-vSphere Replication====&lt;br /&gt;
*Corey Cogan (TSE Broomfield)&lt;br /&gt;
*Stephen Van Siclen&lt;br /&gt;
*Thomas Simpson&lt;br /&gt;
&lt;br /&gt;
====vSphere Integrated Containers====&lt;br /&gt;
*Jonathan Wilk (Cork Senior TSE)&lt;br /&gt;
*Melissa O-Sullivan (Cork Senior TSE)&lt;br /&gt;
*Daniel Cerne (Cork Senior TSE)&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Update Manager====&lt;br /&gt;
*Don Bessee (TSE Broomfield)&lt;br /&gt;
*Andrew Stiff (TSE Broomfield)&lt;br /&gt;
====vSAN====&lt;br /&gt;
*Jesse Horne (TSE Broomfield) Rock Star&lt;br /&gt;
====Sys-Ops====&lt;br /&gt;
*Chris Griffis&lt;br /&gt;
*Matt Griffin&lt;br /&gt;
*Keenan Matheny (TSE Broomfield) Rock Star&lt;br /&gt;
&lt;br /&gt;
*From Global Connect use gss.vmware.com as search engine for problems....better than ikb.vmware.com.&lt;br /&gt;
====SDK Support====&lt;br /&gt;
*Duncan Upton&lt;br /&gt;
&lt;br /&gt;
====GS Lightning-SalesForce Administration Support=====&lt;br /&gt;
*Ramesh Anthati&lt;br /&gt;
&lt;br /&gt;
====WS1 Support====&lt;br /&gt;
*Aimee Goncalves&lt;br /&gt;
&lt;br /&gt;
= GSS Managers =&lt;br /&gt;
* Bambie Ransdell (Broomfield)&lt;br /&gt;
* Sudipta Chakraborty (India)&lt;br /&gt;
* Timothy Reimer (Broomfield Weekend Duty Manager) Solid Dude &lt;br /&gt;
* Megan Coppin (Leads America Premier Support)&lt;br /&gt;
* Victor Perez (Director....Leads Escalations with Engineering-Broomfield)&lt;br /&gt;
* Paul Walsh (EMEA REM)&lt;br /&gt;
* Kalidas Chakravarthy G (APJ REM)&lt;br /&gt;
* Solomon Fadese (AMER REM)&lt;br /&gt;
* Paul Clark (REM and over Seal Team 6 SA&#039;s)&lt;br /&gt;
* Seena Rehman (REM)&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/ovftool&amp;diff=13</id>
		<title>VMware/ovftool</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/ovftool&amp;diff=13"/>
		<updated>2023-06-02T19:06:15Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Build OVFTOOL Docker =  == 1. Download OVFTOOL from My VMware ==  == 2. Create Dockerfile ==  FROM ubuntu:20.04  LABEL MAINTAINER &amp;quot;Daniel Roessner&amp;quot;    # Suppress warning about UTF-8  ENV LC_CTYPE=POSIX  ENV OVFTOOL_FILENAME=VMware-ovftool-4.4.2-17901668-lin.x86_64.bundle    ADD $OVFTOOL_FILENAME /tmp/    WORKDIR /root    RUN /bin/sh /tmp/$OVFTOOL_FILENAME --console --required --eulas-agreed &amp;amp;&amp;amp; \      rm -f /tmp/$OVFTOOL_FILENAME    ENTRYPOINT [&amp;quot;ovftool&amp;quot;]  == 3. Build t...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Build OVFTOOL Docker =&lt;br /&gt;
&lt;br /&gt;
== 1. Download OVFTOOL from My VMware ==&lt;br /&gt;
&lt;br /&gt;
== 2. Create Dockerfile ==&lt;br /&gt;
 FROM ubuntu:20.04&lt;br /&gt;
 LABEL MAINTAINER &amp;quot;Daniel Roessner&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # Suppress warning about UTF-8&lt;br /&gt;
 ENV LC_CTYPE=POSIX&lt;br /&gt;
 ENV OVFTOOL_FILENAME=VMware-ovftool-4.4.2-17901668-lin.x86_64.bundle&lt;br /&gt;
 &lt;br /&gt;
 ADD $OVFTOOL_FILENAME /tmp/&lt;br /&gt;
 &lt;br /&gt;
 WORKDIR /root&lt;br /&gt;
 &lt;br /&gt;
 RUN /bin/sh /tmp/$OVFTOOL_FILENAME --console --required --eulas-agreed &amp;amp;&amp;amp; \&lt;br /&gt;
     rm -f /tmp/$OVFTOOL_FILENAME&lt;br /&gt;
 &lt;br /&gt;
 ENTRYPOINT [&amp;quot;ovftool&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
== 3. Build the Container ==&lt;br /&gt;
&lt;br /&gt;
 #ON PLEX SERVER&lt;br /&gt;
 cd /nfs/Download&lt;br /&gt;
 mkdir ovftool&lt;br /&gt;
 cd ovftool &lt;br /&gt;
 mv ../VMware-ovftool-4.4.2-17901668-lin.x86_64.bundle .&lt;br /&gt;
 vi Dockerfile&lt;br /&gt;
 docker build -t harbor.dersllc.com/ders/ovftool:4.4.2 -t harbor.dersllc.com/ders/ovftool:latest .&lt;br /&gt;
 docker push harbor.dersllc.com/ders/ovftool:4.4.2&lt;br /&gt;
 docker push harbor.dersllc.com/ders/ovftool:latest&lt;br /&gt;
&lt;br /&gt;
== 4. Run Container ==&lt;br /&gt;
 cd /nfs/DERs_Drive/Scripts/nested_vsphere_8/&lt;br /&gt;
 docker run --rm -it -v $(pwd):/tmp harbor.dersllc.com/ders/ovftool:latest --schemaValidate /tmp/Nested_ESXi8.0a_Appliance_Template_v1.ova&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/vSphereNested&amp;diff=12</id>
		<title>VMware/vSphereNested</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/vSphereNested&amp;diff=12"/>
		<updated>2023-06-02T19:05:38Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;https://williamlam.com/nested-virtualization/nested-esxi-virtual-appliance&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;https://williamlam.com/nested-virtualization/nested-esxi-virtual-appliance&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://wiki.dersllc.com/index.php?title=VMware/k8s&amp;diff=11</id>
		<title>VMware/k8s</title>
		<link rel="alternate" type="text/html" href="http://wiki.dersllc.com/index.php?title=VMware/k8s&amp;diff=11"/>
		<updated>2023-06-02T19:05:15Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= General Kubernetes Documentation = == Setup Artifactory Proxy to GCR ==  https://jfrog.com/knowledge-base/artifactory-how-to-proxy-a-google-container-registry-gcr/#:~:text=ARTIFACTORY%3A%20How%20to%20proxy%20a%20Google%20Container%20Registry%20(GCR)%3F,-Elina%20Floim&amp;amp;text=Google%20offers%20the%20https%3A%2F%2F,according%20to%20the%20needed%20endpoint.&amp;amp;text=Click%20on%20%E2%80%9CADD%20KEY%E2%80%9D%2C,file%20in%20an%20accessible%20location.  == Setup GCR.IO Registry == 1...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Kubernetes Documentation =&lt;br /&gt;
== Setup Artifactory Proxy to GCR ==&lt;br /&gt;
 https://jfrog.com/knowledge-base/artifactory-how-to-proxy-a-google-container-registry-gcr/#:~:text=ARTIFACTORY%3A%20How%20to%20proxy%20a%20Google%20Container%20Registry%20(GCR)%3F,-Elina%20Floim&amp;amp;text=Google%20offers%20the%20https%3A%2F%2F,according%20to%20the%20needed%20endpoint.&amp;amp;text=Click%20on%20%E2%80%9CADD%20KEY%E2%80%9D%2C,file%20in%20an%20accessible%20location.&lt;br /&gt;
&lt;br /&gt;
== Setup GCR.IO Registry ==&lt;br /&gt;
1. Enable Google Container Registry&lt;br /&gt;
&lt;br /&gt;
2. Setup Service Account via IAM Console. https://console.cloud.google.com/iam-admin/serviceaccounts &amp;lt;br&amp;gt;&lt;br /&gt;
3. Create a Key for the Service Account (JSON) and download the JSON file. &amp;lt;br&amp;gt;&lt;br /&gt;
4. Transfer the JSON file to the JUMPBOX. &amp;lt;br&amp;gt;&lt;br /&gt;
5. Log into GCR via docker.&lt;br /&gt;
 docker login -u _json_key --password-stdin https://gcr.io &amp;lt; {{highlight|keyfile.json}}&lt;br /&gt;
6. Push image to GCR.IO &lt;br /&gt;
 docker pull gcr.io/kuar-demo/kuard-amd64:blue&lt;br /&gt;
 docker tag gcr.io/kuar-demo/kuard-amd64:blue gcr.io/{{highlight|&amp;lt;GCR PROJECT&amp;gt;}}/kuard:latest&lt;br /&gt;
 docker push gcr.io/{{highlight|&amp;lt;GCR PROJECT&amp;gt;}}/kuard:latest&lt;br /&gt;
7. Create docker Registry Secret&lt;br /&gt;
 kubectl create secret docker-registry gcr-json-key \&lt;br /&gt;
 --docker-server=gcr.io \&lt;br /&gt;
 --docker-username=_json_key \&lt;br /&gt;
 --docker-password=&amp;quot;$(cat ~/{{highlight|keyfile.json}})&amp;quot; \&lt;br /&gt;
 --docker-email={{highlight|&amp;lt;valid-email&amp;gt;}}&lt;br /&gt;
8. Set Default K8s Service Account to use the registry secret&lt;br /&gt;
 kubectl patch serviceaccount default \&lt;br /&gt;
 -p &#039;{&amp;quot;imagePullSecrets&amp;quot;: [{&amp;quot;name&amp;quot;: &amp;quot;gcr-json-key&amp;quot;}]}&#039;&lt;br /&gt;
9. Create the KUARD deployment YAML&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; kuard-deployment-gcr.yaml&lt;br /&gt;
 apiVersion: apps/v1&lt;br /&gt;
 kind: Deployment&lt;br /&gt;
 metadata:&lt;br /&gt;
   name: kuard-deployment&lt;br /&gt;
   labels:&lt;br /&gt;
     app: kuard&lt;br /&gt;
 spec:&lt;br /&gt;
   replicas: 3&lt;br /&gt;
   selector:&lt;br /&gt;
     matchLabels:&lt;br /&gt;
       app: kuard&lt;br /&gt;
   template:&lt;br /&gt;
     metadata:&lt;br /&gt;
       labels:&lt;br /&gt;
         app: kuard&lt;br /&gt;
     spec:&lt;br /&gt;
       imagePullSecrets:&lt;br /&gt;
         - name: regcred&lt;br /&gt;
       containers:&lt;br /&gt;
         - image: gcr.io/{{highlight|&amp;lt;GCR PROJECT&amp;gt;}}/kuard:latest&lt;br /&gt;
           name: kuard&lt;br /&gt;
           ports:&lt;br /&gt;
             - containerPort: 8080&lt;br /&gt;
               name: http&lt;br /&gt;
 ---&lt;br /&gt;
 apiVersion: v1&lt;br /&gt;
 kind: Service&lt;br /&gt;
 metadata:&lt;br /&gt;
   name: kuard-service&lt;br /&gt;
 spec:&lt;br /&gt;
   type: LoadBalancer&lt;br /&gt;
   selector:&lt;br /&gt;
     app: kuard&lt;br /&gt;
   ports:&lt;br /&gt;
   - port: 80&lt;br /&gt;
     targetPort: 8080&lt;br /&gt;
 EOF&lt;br /&gt;
10. Deploy the KUARD Deployment.&lt;br /&gt;
 kubectl apply  -f kuard-deployment-gcr.yaml&lt;br /&gt;
11. Check that the containers are up and running.&lt;br /&gt;
 kubectl get pods&lt;br /&gt;
12. Get the External Service IP that will be hosting KUARD.&lt;br /&gt;
 kubectl get service kuard-service&lt;br /&gt;
13. Test that you can access the KUARD URL from a Web Browser&lt;br /&gt;
 http://{{highlight|&amp;lt;EXTERNAL-IP&amp;gt;}}&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>