Use the Export function to generate the incremental bundle in an internet-accessible environment, copy the bundle file to the existing airgap server and run the Import function to update the harbor, helm charts, and photon repositories on the server. The export operation does run on an existing airgap server as all the data under /photon-reps
is deleted after the incremental bundle is created. Run the export command on a Photon OS VM with internet accessibility. The hardware configuration of the photon VM should be the same as the airgap server.
You can perform the resize disk operation before the upgrade if the storage capacity of the airgap server is lesser than the recommended storage. Resizing the disk operation is supported only for multi-disk airgap servers. For more information, see
Troubleshooting Airgap Server Setup.
Prerequisites
Install the following tools:
Procedure
- Export images to the tar package.
- Download Airgap Script Package from customerconnect.vmware.com.
The package name is VMware-Telco-Cloud-Automation-airgap-files-[release]-[build].tar.gz.
- Extract the Airgap Script Package to the /root folder
- Copy
setup-user-inputs.yml
to user-inputs.yml
under ~/airgap/scripts/vars
in the {root-dir}
folder. Edit user-inputs.yml
and uncomment row of name: photon
and baseline: 2.1.0
as example below:
products:
- name: "tca"
versions: "2.2.0"
- name: "photon"
baseline: "2.1.0"
- Run the Ansible playbook to download and export images to the tar package.
root@photon-machine [ ~/airgap ]# scripts/bin/run.sh export
- To check the image download status, run the command
run.sh status
or go to the folder {root-dir}/airgap/logs
and monitor the log files, export-images.log
and export-helm.log
.
root@photon-machine [ ~/airgap ]# scripts/bin/run.sh status
tail -f {root-dir}/airgap/logs/export-images.log
tail -f {root-dir}/airgap/logs/export-helm.log
- Copy the incremental bundle to the Airgap environment.
All the downloaded files are packaged into a tar.gz bundle file along with the airgap scripts. After the incremental bundle is generated, copy the bundle to the Airgap server's "/photon-reps" folder. The overall size of the bundle file is around 35GB, including Kubernetes images, helm charts, Photon packages, and airgap scripts.
- Import tar packages to the Airgap server's harbor.
root@photon-machine [ ~/airgap ]# docker login [airgap-FQDN/registry]
root@photon-machine [ ~/airgap ]# scripts/bin/run.sh import
Before you import the tar packages, ensure that /photon-reps
partition of airgap server has 110GB free space, user-inputs.yml
is available under ~/airgap/scripts/vars
folder and server_fqdn
has the correct airgap FQDN. If no sufficient space available please extend VM's photon disk size and use run.sh resize
to extend the space then try export operation.
- To check the image import status, either to check with command
run.sh status
or go to the import-images.log
and import-helm.log
files in the {root-dir}/airgap/logs
folder.
root@photon-machine [ ~/airgap ]# scripts/bin/run.sh status
tail -f {root-dir}/airgap/logs/import-images.log
tail -f {root-dir}/airgap/logs/import-helm.log
- (Optional) upgrade Photon OS of airgap server.
root@photon-machine [ ~/airgap ]# scripts/bin/run.sh upgrade