Sign inSign up

mellanox/ufm-plugin-rest-rdma

By mellanox

Updated 10 months ago

UFM REST RDMA Plugin

Image
0

2.3K

mellanox/ufm-plugin-rest-rdma repository overview

ufm-rest-rdma

ufm_rest_rdma is an utility to send rest requests over ib to ufm server. ufm_rest_rdma could serve as server and as client.

Deployment:

Server seployment:

To deploy the plugin on UFM Appliance: ∙ login as admin ∙ run enable ∙ run config terminal ∙ make sure that UFM is running using show ufm status o if UFM is down then run it using ufm start ∙ make sure that rest-rdmа plugin is disabled using show ufm plugin ∙ pull the plugin container using docker pull mellanox/ufm-plugin-rest-rdmа ∙ run ufm plugin ufm-plugin-rest-rdma add to enable the plugin ∙ check that plugin is up and running using ufm plugin show

To deploy the plugin with UFM (SA or HA), you should: ∙ install the latest version of UFM ∙ run UFM using /etc/init.d/ufmd start ∙ pull the plugin container using docker pull mellanox/ufm-plugin-rest-rdma ∙ run /opt/ufm/scripts/manage_ufm_plugins.py add -p rest-rdma to enable the plugin ∙ check that plugin is up and running using docker ps

Log file ufm_rest_over_rdma.log is located in /opt/ufm/files/log on the host.

Deployment client.

  1.       pull the plugin container using docker pull mellanox/ufm-plugin-rest-rdma
    
  2.       To load image
    

Run: docker load < ufm-plugin-rest-rdma_[version].tar.gz

Start client to start container as client (on any host in the same fabric as UFM server) run docker run -d --network=host --privileged --name=ufm-plugin-rest-rdma --rm -v /tmp/ibdiagnet:/tmp/ibdiagnet mellanox/ufm-plugin-rest-rdma_[version] client

to enter docker container (if needed to run requests from inside docker) run docker exec -it ufm-plugin-rest-rdma bash

How to run
Server In server mode ufm_rdma.py will started automatically and will be restarted if exit.

Client

If container used as client. There are two options to run client: From inside the docker or using custom script from the hosting server.

  1.       From inside the docker:
    

Enter to the docker and cd /opt/ufm/src/ufm-plugin-rest-rdma How to run client - use help option to see available parameters ./ufm_rdma.py -h 2. From hosting server It is a script located at /opt/ufm/ufm-plugin-ufm-rest/ufm_rest_rdma_client.sh inside docker, that could be copied from docker to client host using command: docker cp ufm-plugin-rest-rdma:/opt/ufm/ufm-plugin-ufm-rest/ufm_rest_rdma_client.sh . and could be used to run REST requests directly from the host with no need to enter to the client docker container

Example: ./ufm_rest_rdma_client.sh -u admin -p 123456 -t simple -a GET -w ufmRest/app/ufm_version

To see available options run ./ufm_rest_rdma_client.sh -h

to load image run:
docker load < ufm-plugin-ufm-rest-[version].tar.gz to start container as server run:
docker run -d --network=host --privileged --name=ufm-plugin-ufm-rest --rm -v /opt/ufm/files/periodicIbdiagnet:/opt/ufm/files/periodicIbdiagnet -v /opt/ufm/files/log:/opt/ufm/files/log -v /opt/ufm/files/conf:/opt/ufm/files/conf ufm-plugin-ufm-rest_[version]

to start container as client run:
docker run -d --network=host --privileged --name=ufm-plugin-ufm-rest --rm ufm-plugin-ufm-rest_[version] client

to enter docker container run:
docker exec -it ufm-plugin-ufm-rest bash
In server mode ufm_rdma.py will started automatically and will be restarted if exit. If ufm_rdma.py server is not running start it: ./ufm_rdma.py -r server
If container used as client. (see abow start command)
cd /opt/ufm/src/ufm-plugin-ufm-rest


To run client use help option to see available parameters
./ufm_rdma.py -h

Examples (listed examples if to run client from inside the client docker container):

Username & Password Authentication
  • to get UFM version:
    ./ufm_rdma.py -r client -u admin -p 123456 -t simple -a GET -w ufmRest/app/ufm_version

  • to get ibdiagnet run result:
    ./ufm_rdma.py -r client -u admin -p 123456 -t ibdiagnet -a POST -w ufmRest/reports/ibdiagnetPeriodic -l '{"general": {"name": "IBDiagnet_CMD_1234567890_199_88", "location": "local", "running_mode": "once"}, "command_flags": {"--pc": ""}}'

Client Certificate Authentication:

Need to pass path to client certificate file and name of UFM server machine:
./ufm_rdma.py -r client -t simple -a GET -w ufmRest/resources/modules -d /path/to/certificate/file/ufm-client.pfx -s ufm.azurehpc.core.azure-test.net

Token Based Authentication:

need to pass it for authentication.

Tag summary

Content type

Image

Digest

sha256:22f14e578

Size

761.6 MB

Last updated

10 months ago

docker pull mellanox/ufm-plugin-rest-rdma