Skip to content
This repository has been archived by the owner on May 3, 2024. It is now read-only.

CORTX-32948: OVA Release Instructions #1644

Merged
merged 5 commits into from
Sep 8, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
90 changes: 90 additions & 0 deletions doc/ova/2.0.0/PI-8/CORTX_on_Open_Virtual_Appliance_PI-8.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@

================================
CORTX on Open Virtual Appliance
================================
An Open Virtual Appliance (OVA) is a Virtual Machine (VM) image that consists of a pre-installed and pre-configured operating system as well as one or more applications packaged for easy deployment and testing. This document describes how to use a CORTX OVA for the purposes of single-node CORTX testing.
For our Japanese community, this document has been translated and is available `here <https://qiita.com/Taroi_Japanista/items/0ac03f55dce3f7433adf>`_.

***********************
Recommended Hypervisors
***********************
All of the following hypervisors should work: `VMware ESX Server <https://www.vmware.com/products/esxi-and-esx.html>`_,
`VMware vSphere <https://www.vmware.com/products/vsphere.html>`_,
`VMware Workstation <https://www.vmware.com/products/workstation-pro.html>`_,
`VMware Fusion <https://www.vmware.com/in/products/fusion/fusion-evaluation.html>`_

**Important**: If you are running the VM in any of the VMWare hypervisors, it is not recommended to use VMware Tools, as CORTX may break due to kernel dependencies. For the same reason, please do not update the operating system in the image as that also might cause it to fail.

**Specifications:**

- CORTX OVA image is created with following minimum configuration:

- RAM: 10GB
- Processor: 8
- NIC: 1
- OS Disk: 1 disk of 20GB
- Data Disks: 3 disks of 5GB each

**Prerequisites:**

- Download the latest image from `our release page <https://github.com/Seagate/cortx/releases/latest>`_.
- To perform the S3 IO operations,refer to these instructions in `S3 IO Operations <https://github.com/Seagate/cortx/blob/main/doc/ova/2.0.0/PI-8/S3_IO_Operations.md>`_.
- Import the OVA image using the instruction provided in to `Importing the OVA document <https://github.com/Seagate/cortx/blob/main/doc/Importing_OVA_File.rst>`_.
- Ensure that the Virtualization platform has internet connectivity:

- For VMware related troubleshooting, please refer to `VM Documents <https://docs.vmware.com/en/VMware-vSphere/index.html>`_.
- If on the VMware WorkStation, you do not see an IPv4 network configured, then update virtual networking configuration. See `troubleshooting virtual network <https://github.com/Seagate/cortx/blob/main/doc/troubleshoot_virtual_network.rst>`_.
- for VMWare Fusion see <https://docs.vmware.com/en/VMware-Fusion/12/com.vmware.fusion.using.doc/GUID-E498672E-19DD-40DF-92D3-FC0078947958.html>

**********
Procedure
**********

#. Open the VM console, and login with the below credentials.

* Username: cortx
* Password: opensource!

#. Become the **root** user by running this:

::

sudo su -

**Note** Wait for 5 - 10 mins till the cluster services are started.

#. Run the following command to check the health of CORTX using hctl by running this command:

::

hctl status


#. To perform the S3 IO operations, refer the instructions in `S3 IO operations <https://github.com/Seagate/cortx/blob/main/doc/ova/2.0.0/PI-8/S3_IO_Operations.md>`_.

#. BOOM. You're all done and you're AWESOME.

Thanks for checking out the CORTX system; we hope you liked it. Hopefully you'll stick around and participate in our community and help make it even better.

**********************************
Validate CSM endpoint via REST API
**********************************

#. Validate the CSM endpoint using below command:

::

export IPADDRESS=`ifconfig ens32 | grep inet -w | awk '{print $2}'` && echo $IPADDRESS
curl --request POST "https://$IPADDRESS:31169/api/v2/login?debug" --header 'Content-Tycation/json' -d '{"username":"cortxadmin","password":"Cortxadmin@123"}' -k

Note: If encounter error "-bash: ifconfig: command not found", install ifconfig first with the following.

::

yum install net-tools



Tested by:

- September 7, 2022: Mukul Malhotra (mukul.malhotra@seagate.com) on a Windows laptop with VMWare Workstation 16 Pro.
76 changes: 76 additions & 0 deletions doc/ova/2.0.0/PI-8/S3_IO_Operations.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
CORTX OVA: Performing S3 IO Operations
======================================


## Prerequisites

- Install the AWSCLI packages.
```bash
mkdir -p /var/log/cortx/auth
touch /var/log/cortx/auth/s3iamcli.log
pip3 install awscli
pip3 install awscli-plugin-endpoint
```

- Import OVA on hypervisor i.e. VMware Workstation and wait for 5 to 10 mins during the booting stage till the login screen comes.


## Procedure

- Run the following commands to get the port required to access your s3 server:
```bash
kubectl get pods -o wide -n cortx
kubectl get svc cortx-server-0 -n cortx |grep NodePort
kubectl describe svc cortx-server-0 -n cortx |grep NodePort:
```

- Configure the default access key and secret key.
```bash
aws configure set aws_access_key_id sgiamadmin
aws configure set aws_secret_access_key ldapadmin
```

- Set the endpoint url into variable for the future reference.
```bash
endpoint_url="http://""$(kubectl get svc -n cortx | grep cortx-server-0 | awk '{ print $3 }')"":80"
```

- Configure S3 endpoint in awscli configuration.
```bash
aws configure set plugins.endpoint awscli_plugin_endpoint
aws configure set s3.endpoint_url $endpoint_url
aws configure set s3api.endpoint_url $endpoint_url
```

- Verify configurations.
```bash
cat /root/.aws/config
```

- Create a bucket and list the bucket.
```bash
aws s3 mb s3://mybucket
```

- Create a sample file and copy the object into bucket.
```bash
dd if=/dev/zero of=file10Mb bs=10MB count=1
aws s3 cp file10Mb s3://mybucket/
```

- Validate and download the object from the bucket
```bash
aws s3 ls s3://mybucket/
aws s3 cp s3://mybucket/file10Mb file10Mb-download
```

- Remove the object from the bucket
```bash
aws s3 rm s3://mybucket/ --recursive
```

- Remove the bucket and validate the deleted bucket.
```bash
aws s3 rb s3://mybucket
aws s3 ls
```