=====Photon OS=====
Photon OS is an open source Linux container host optimized for cloud-native applications, cloud platforms, and VMware infrastructure.
====Setup====
Setup minimal installed profile of PhotonOS
* Download the latest Photon OS ''OVA with virtual hardware v15'' from [[https://github.com/vmware/photon/wiki/Downloading-Photon-OS]]
* In ESXi:
* ''Create/Register VM'':
* ''Deploy a virtual machine from an OVF or OVA file''
* Name the VM
* Upload the Photon OS OVA file
* Specify the desired ''Target Datastore''
* Accept the License Agreement
* Deselect ''Power on automatically''
* Confirm settings and ''Finish''
* Wait for the files to upload
* If autostart is desired for this machine go to ''Host'' > ''Manage'' > ''System'' > ''Autostart'':
* Click on the current VM
* ''Enable''
* Use ''Start earlier'' and ''Start later'' to set the desired order
* Go to ''Virtual Machines'' on the sidebar and click on the current VM
* ''Actions'' > ''Edit Settings'':
* Set the required CPU and Memory requirements
* If using NVMe storage for the datastore:
* ''Add other device'' > ''NVMe controller''
* ''Hard Disk 1'' > ''Controller location'' > ''NVMe controller 0''
* Save and reopen ''Edit Settings''
* Remove ''SCSI controller 0''
* Select other appropriate VM settings depending on desired applications
* Power on the VM, then shut it down again to generate a MAC address
* Give the VM a static IP address from your router using the generated MAC address (found under ''Hardware Configuration'' > ''Network adapter 1'') and desired hostname
* Power on the VM
* Using an SSH client, connect to the hostname set above, then run:
# Login with root details from the VM note
# Follow instructions to set new password
# Remove docker related packages if not needed to save space and faster updates
tdnf erase containerd docker docker-cli docker-engine
# Update packages:
tdnf upgrade
tdnf clean all
# Disable password expiry:
chage -M -1 root
# Set new hostname:
hostnamectl set-hostname
# Set the timezone to Perth
ln -sf /usr/share/zoneinfo/Australia/Perth /etc/localtime
# Change the SSH port to 50001:
sed -i "s/#Port 22/Port 50001/" /etc/ssh/sshd_config
sed -i "s/-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT/-A INPUT -p tcp -m tcp --dport 50001 -m state --state NEW -j ACCEPT/" /etc/systemd/scripts/ip4save
exit
* Shut down the VM
* Edit VM note to be the following:
Minimal installed profile of PhotonOS
User: root
Ports:
50001/tcp SSH
* Save a snapshot called ''Base Install''
====Update====
* If desired, Log in to ESXi, navigate to the photon based VM and create new temporary snapshot
* Using an SSH client, connect to :50001 then run:
tdnf upgrade
tdnf clean all
reboot # If desired/needed