SWIFT Oracle Marketplace

The SWIFT is a container orchestration, backup, and DR product. It is an Any-To-Any DR solution for containers allowing you to seamlessly synchronize between your source and target container platforms, irrespective of where they are located (any of the public clouds or datacenter). The SWIFT works on top of your existing container platforms like Kubernetes and OpenShift.

Prerequisite

After creating a SWIFT instance, connect to the instance and execute the below command to set a password for the 'admin' user.

# sudo swiftcli user modify admin --password < password_of_your_choice >

Login to the SWIFT dashboard

To access the SWIFT dashboard, use the URL:
https://<swift-host-ip>/swift/dashboard

Login.png

Username: admin

Password: <password_set_in_prerequisite_step>

If you have logged in successfully, then congratulations! You are now ready to migrate the Kubernetes/OpenShift applications to the Azure Kubernetes Service and/or enable DR/backup.

Downloading Operations Guide/Get Additional Help

Login Page.png

If you need more help, download operations guide from login page,

Or if you are already logged in then, Click on Help > Help.

Upload TRAI Image to your Oracle Cloud Infrastructure Registry (OCIR)

TRAI stands for Transient RackWare Agent Image. TRAI is an exclusive container image deployed with the SWIFT. It is used by the SWIFT server to deploy under your SWIFT managed Kubernetes or OpenShift cluster for the transient sync time. To know more about TRAI image, please check the “SWIFTOperationsGuide.pdf”

The TRAI image needs to be uploaded to the container registry for the SWIFT managed Kubernetes or OpenShift cluster. It is an one-time configuration step. The below section highlights steps for uploading TRAI image to Oracle Cloud Infrastructure Registry (OCIR). If you are managing any non-OCI clusters under SWIFT (like you source cloud or on-prem cluster for migration, for example), then you can use the SWIFT Operations Guide for specific steps. The steps overall remain the same for uploading TRAI image to any registry type. 

Note: It's not mandatory to use OCIR registry and you can use a container registry of your choice. Just make the TRAI image available to the source and target namespace by setting up the image pull secret with similar steps as below.

Upload TRAI Image to OCIR

  1. Connect to OCIR with username and token

# docker login .ocir.io
where corresponds to the key for the Container Registry region you're using. for more details follow https://www.oracle.com/webfolder/technetwork/tutorials/obe/oci/registry/index.html#BeforeYouBegin
Example:
# docker login https://phx.ocir.io
Username: a502645/swift
Password:
  1. The TRAI image for the respective SWIFT version is deployed along with the SWIFT. You can find it at /opt/swift/traipod/rackware-trai-docker.tar.gz on your SWIFT server (where the SWIFT is installed). Copy the TRAI image tar file (mentioned above) from the SWIFT server to a host where you have the 'docker' client installed and configured. Change directory where TRAI image is copied
  1. Execute the following command to load the image. With ‘docker images’ command, verify that image is loaded
# docker load < rackware-trai-docker.tar.gz >
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
Rackware-trai Release-1.0.6.37 148d70c65ab7 18 hours ago 837 MB
  1. Tag image which you want to push to OCIR. Use the TAG displayed in step 3 output
# docker tag < IMAGE ID > phx.ocir.io/< Tenancy Namespace >/< username >:< TAG >
Example:
# docker tag 148d70c65ab7 phx.ocir.io/a502645/swift:release-1.0.6.37
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
Rackware-trai Release-1.0.6.37 148d70c65ab7 18 hours ago 837 MB
phx.ocir.io/a502645/swift Release-1.0.6.37 148d70c65ab7 18 hours ago 837 MB
  1. Push the image to OCIR
# docker push phx.ocir.io/< Tenancy Namespace >/< username >:< TAG >
Example:
# docker push phx.ocir.io/a502645/swift:release-1.0.6.37
  1. Once the TRAI image is uploaded to your private registry. You need to make it available to the source and target cluster namespaces which you are going to migrate. To do this, configure the image-pull secret in the namespace
  1. Connect to the K8S/OpenShift source cluster. Create a image pull secret in the in the namespace which you are going to migrate
# kubectl --namespace < app_namespace_to_migrate > create secret docker-registry < secret_name > --docker-server=< region-key >.ocir.io --docker-username=< user-name > --docker-password=< user-password > --docker-email=< user-email >
Example:
# kubectl --namespace app1 create secret docker-registry ocirsecret --docker-server=phx.ocir.io --docker-username='a502645/swift' --docker-password='k]k64r{1sHJSF-;)K8' --docker-email='[email protected]'
  1. Follow the same process on the OCI Kubernetes Cluster. Create image-pull secrete in target namespace
Example:
# kubectl --namespace tgt-app1 create secret docker-registry ocirsecret --docker-server=phx.ocir.io --docker-username='a502645/swift' --docker-password='k]k64r{1sHJSF-;)K8' --docker-email='[email protected]'
  1. Note down the uploaded TRAI image name and version from the registry and also the image-pull secret created on both sides of clusters. You will use those two inputs for sync configuration later. You can also optionally configure these two inputs as defaults under SWIFT managed cluster (from SWIFT cluster administration menu and Config option of the SWIFT dashboard), so you don't have to input these for each sync.

Example: For the above example note the following values

TRAI Image name: phx.ocir.io/a502645/swift:release-1.0.6.37

Image pull secret: ocirsecret


RackWare Inc • Proprietary and Confidential

>