Bug 1449975

Summary: Accessing Heketi Service from heketi-cli via OCP route is read only
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Tom Llewelyn <tom.llewelyn>
Component: heketiAssignee: Humble Chirammal <hchiramm>
Status: CLOSED NOTABUG QA Contact: Anoop <annair>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: cns-3.5CC: ekuric, hchiramm, mliyazud, rhs-bugs, storage-qa-internal
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-07-25 08:04:56 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Dumps of various commands (customer info redacted) none

Description Tom Llewelyn 2017-05-11 09:39:18 UTC
Created attachment 1277807 [details]
Dumps of various commands (customer info redacted)

Description of problem:

After successfully deploying gluster + heketi using cns-deploy, the heketi-cli command run from one of the OCP masters is able to access read only commands (e.g. heketi-cli topology info) but write commands (e.g. heketi-cli volume create --size=10) fail with an empty error string


Version-Release number of selected component (if applicable):

Heketi Image: rhgs3/rhgs-volmanager-rhel7:3.2.0-10
Heketi Client: heketi-client-4.0.0-9.el7rhgs.x86_64


How reproducible:


Steps to Reproduce:
1. Set up Cluster Native Storage using cns-deploy according to the installation guide:

https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/3.2/html/container-native_storage_for_openshift_container_platform/

2. Run heketi-cli commands against the published route on OCP

Actual results:

heketi-cli topology info  - returns the topology
heketi-cli volume list - returns a list of volumes
heketi-cli volume create --size=10 - returns "Error:"

Expected results:

heketi-cli volume create --size=10 - should return info on created volume

Additional info:

Connecting directly to the heketi pod using oc rsh and then running the volume create command with server set to localhost:8080 the command works and creates the volume.

Comment 3 Tom Llewelyn 2017-05-12 14:05:15 UTC
Turns out this behaviour is due to a trailing / in the HEKETI_CLI_SERVER setting.

If you have a trailing / then GET commands succeed but POST commands fail.

Some meaningful debug output would be helpful here though

Thanks

Tom