# Mac OS

{% hint style="info" %}
**Note**: Please check the   [Installation](/rda/installation.md#prerequisites) Prerequisites before you proceed.
{% endhint %}

Run the below commands to verify currently installed RDA prerequisites.

{% hint style="warning" %}
**Note**: Please make sure the below commands are in the PATH variable in the user's login profile.
{% endhint %}

```
docker --version
```

```
docker-compose --version
```

```
python3 --version
```

```
pip3 --version
```

**Step 1**: Request software by contacting <support@cloudfabrix.com>. The following procedure assumes you received the download link.

Download the '**rda-docker-compose-with-ssl.tar**' software package.

**Step 2:**   Create a virtual environment using python3

```
python3 -m venv <name of the environment>
eg.
$ python3 -m venv rda-venv 
```

**Step 3**:  Source virtual env that was created in Step 2 as shown below.

```
$ cd rda-venv 
$ source bin/activate
(rda-venv)$  
```

**Step 4**:  Install docker-compose tool needed to install RDA as shown below

```
(rda-venv)$  pip3 install docker-compose
(rda-venv)$  docker-compose --version
docker-compose version 1.29.0, build 07737305
```

*Note: Make sure docker-compose is installed properly*

\
**Step 5**: Extract the '**rda-docker-compose-with-ssl.tar**' software package under the user's home directory or some other directory.

```
tar -xvf rda-docker-compose-with-ssl.tar
```

![RDA files extracted under rda-venv with the files](/files/-MZGdSCdTNWigojdLxb2)

**Step 3**: Run setup.py python script as shown below.

![Successful installation and setup of RDA on Mac OS](/files/-MZGguoYjI26rOIGUslI)

{% hint style="info" %}
**Note:** The setup.py creates a directory called '**cfx**' under user's home directory for configuration files and exported files. (Ex: /home/\<userid>/cfx)
{% endhint %}

Below are the '**RDA**' directory locations and their purpose.

**/home/\<userid>/cfx/cfxdx/config -->** Location of the **conf.yml** file where many datasource credentials and other settings are configured.

**/home/\<userid>/cfx/cfxdx/output -->** Location of the exported CSV / Excel / JSON files

**Step 4**: To access 'RDA' interface, open up a browser and enter the URL as **<https://ipaddress:9998>**

{% hint style="info" %}
Note:  Access RDA using https\://\<rda-ip-address>:9998/

The default user name is rdademo and the password is rdademo1234&#x20;
{% endhint %}

![](/files/-MYNMC4YMBEUnLOQYPKW)

{% hint style="info" %}
Note:  Default username/password can be changed from docker-compose.yml file under RDA install directory.
{% endhint %}

![](/files/-MYNNWNe1IYe8mY802Ht)

**Step 4**:  Accessing RDA Page

![](https://gblobscdn.gitbook.com/assets%2F-MAygHzNCQ33zRR43qxF%2F-MU5fW7ACtSz0eFXwN_R%2F-MU5hvJLvlR70BiHpRus%2FScreen%20Shot%202021-02-21%20at%202.30.48%20PM.png?alt=media\&token=e686c01f-6347-4a08-b180-64b325bc040d)

![](https://gblobscdn.gitbook.com/assets%2F-MAygHzNCQ33zRR43qxF%2F-MU5fW7ACtSz0eFXwN_R%2F-MU5igvt250LEDag7g3y%2FScreen%20Shot%202021-02-21%20at%202.34.14%20PM.png?alt=media\&token=26e84ec8-5d6d-407a-be03-538f6824652a)

### Install RDA Datanetwork Components (Optional)

The following steps explain how to install Kafka/Zookeeper components needed for RDA Data network bots.\
\
Download  [docker-compose](https://macaw-amer.s3.amazonaws.com/rda/rda-components/kafka-zookeeper/docker-compose.yml) file required to install Kafka/Zookeeper and use the below steps to start Kafka/zookeeper docker instances (these instances in turn will be used by RDA runtime)\
\
bash# cd  /home/macaw/\
bash# mkdir -p **kafka-zookeeper** \
bash# cd kafka-zookeeper\
bash# wget \<docker-compose-file>\
bash# \<edit the file and add the ipaddress or FQDN of  RDA machine>\
bash# docker-compose pull\
bash# docker-compose up -d  \
\
In addition to the above steps, make sure you enable the following ports

```
sudo firewall-cmd --add-port=2181/tcp --permanent
sudo firewall-cmd --add-port=9092/tcp --permanent
```

```
sudo firewall-cmd --reload
```

###

### Upgrade RDA&#x20;

Step 1:  Make sure the docker (desktop) environment is intact as per RDA installation prereqs. Also, docker-compose is available to the user (as shown in the below screenshot).

![](/files/-McQV-kPl43rC8JmKIKU)

Step 2:  Go to the directory where RDA  was previously installed.

![Goto directory where RDA was installed previously](/files/-McQVQiuq7POK9lpj8Nq)

Step 3: Make sure RDA is up and running. This can be verified by running the docker command as shown in the below screenshot.

![Make sure RDA (cfxdx) is up and running using the command 'docker ps -a' as shown above.](/files/-McQW2nrLRvboet1mlId)

Step 4:  Go to the directory where RDA was installed and also, docker-compose.yml is available (as shown in the below screenshot).

![RDA directory with docker-compose.yml file ](/files/-McQWg8Eg_OY-BxqvHXt)

Step 5:  Using the docker-compose command 'docker-compose down' and bring down the RDA instances that are running in your environment as shown in the below screenshot.

![docker-compose down will delete the old RDA containers (as shown above)](/files/-McQkU85N-i2aSoCL__q)

Step 6: Using the docker-compose command, upgrade RDA using the 'docker-compose pull' command as shown in the below screenshot.

![docker-compose pull will download/install latest images from registry (as shown above)](/files/-McQpQK-JK6WdABML11X)

Step 7: Start RDA upgraded instance using 'docker-compose up -d' as shown in the below screenshot.

![](/files/-McQq9_HfpfCeJrx-Rk1)

Access RDA using **https\://\<IPAddress>:9998** and verify the latest version.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cloudfabrix.io/rda/installation/mac-os.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
