Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement datatap module #250

Open
snowch opened this issue Aug 20, 2020 · 3 comments
Open

Implement datatap module #250

snowch opened this issue Aug 20, 2020 · 3 comments

Comments

@snowch
Copy link
Member

snowch commented Aug 20, 2020

EPIC - some api examples here: https://github.com/bluedatainc/solutions/blob/master/APIs/v1_bluedata_apis_doc.md#10-create-a-cluster-datatap

@snowch
Copy link
Member Author

snowch commented Aug 20, 2020

	# The datatap needs to be created as a tenant administrator, not as global admin
	cat > ~/.hpecp.conf <<-CAT_EOF
		[default]
		api_host = ${CTRL_PRV_IP}
		api_port = 8080
		use_ssl = ${INSTALL_WITH_SSL}
		verify_ssl = False
		warn_ssl = False
		[tenant2]
		tenant   = /api/v1/tenant/2
		username = ad_admin1
		password = pass123
	CAT_EOF
	cat >datatap.json<<-JSON_EOF
		{
		  "bdfs_root": {
		    "path_from_endpoint": "${MAPR_VMNT}"
		  },
		  "endpoint": {
		    "cluster_name": "${MAPR_CLUSTER_NAME}",
		    "ticket": "${MAPR_TCKT}",
		    "type": "mapr",
		    "secure": true,
		    "cldb": [
		      "${MAPR_CLUSTER1_HOSTS_PRV_IPS[0]}", "${MAPR_CLUSTER1_HOSTS_PRV_IPS[1]}"
		    ],
		    "ticket_type": "servicewithimpersonation",
		    "ticket_user": "${MAPR_USER}",
		    "mapr_tenant_volume": false,
		    "impersonation_enabled": true
		  },
		  "flags": {
		    "read_only": false
		  },
		  "label": {
		    "name": "${MAPR_DTAP_NAME}",
		    "description": "mapr standalone volume"
		  }
		}
	JSON_EOF
	cat datatap.json
	PROFILE=tenant2 hpecp httpclient post /api/v1/dataconn --json-file datatap.json

@jear
Copy link
Contributor

jear commented Aug 20, 2020

POST /api/v1/dataconn/ HTTP/1.1
Host: 127.0.0.1:8080
Content-Length: 460
Accept-Encoding: gzip, deflate
REMOTE_ADDR: 192.168.1.249
Accept: */*
User-Agent: python-requests/2.6.0 CPython/2.7.5 Linux/3.10.0-1127.13.1.el7.x86_64
Connection: keep-alive
X-BDS-SESSION: /api/v2/session/dc67ddaa-f544-43f9-a774-18515b7d5c63
Content-Type: application/json
Authorization: /api/v2/session/dc67ddaa-f544-43f9-a774-18515b7d5c63

{
  "bdfs_root": {
    "path_from_endpoint": "/datatap-poc-pe"
  },
  "endpoint": {
    "kdc_data": [
      {
        "host": "kdc-host.jear.co",
        "port": 8888
      }
    ],
    "realm": "realm",
    "client_principal": "client-principal",
    "browse_only": false,
    "host": "remote-hdp265.jear.co",
    "keytab": "concourse.json",
    "service_id": "hdfs",
    "backup_host": "standby-hdp265.jear.co",
    "type": "hdfs",
    "port": "7777"
  },
  "flags": {
    "read_only": true
  },
  "label": {
    "name": "datatap-jear",
    "description": "datatap-jear"
  }
}

HTTP/1.1 403 Forbidden
Access-Control-Allow-Origin: *
Content-Length: 106
Content-Type: text/plain
Date: Thu, 20 Aug 2020 14:19:58 GMT
Server: HPE Ezmeral Container Platform 5.1

403 Forbidden: 
endpoint: Validation failed for proposed DataTap with the Kerberos credentials provided.

@snowch
Copy link
Member Author

snowch commented Aug 20, 2020

List data:

{
  "_links": {
    "self": {
      "href": "/api/v1/dataconn"
    }
  },
  "_embedded": {
    "data_connectors": [
      {
        "_links": {
          "self": {
            "href": "/api/v1/dataconn/2"
          },
          "query": {
            "href": "/api/v1/dataconn/2{?query}",
            "templated": true
          }
        },
        "_embedded": {
          "label": {
            "_links": {
              "self": {
                "href": "/api/v1/dataconn/2?label"
              }
            },
            "name": "TenantStorage",
            "description": "Protected DataTap for a tenant-specific sandboxed storage space."
          },
          "endpoint": {
            "_links": {
              "self": {
                "href": "/api/v1/dataconn/2?endpoint"
              }
            },
            "type": "mapr",
            "cluster_name": "hcp.mapr.cluster",
            "cldb": [
              "ip-10-1-0-6.us-west-2.compute.internal"
            ],
            "secure": true,
            "ticket": "hcp-service-ticket",
            "ticket_type": "service",
            "ticket_user": "mapr",
            "mapr_tenant_volume": false,
            "impersonation_enabled": false
          },
          "bdfs_root": {
            "_links": {
              "self": {
                "href": "/api/v1/dataconn/2?bdfs_root"
              }
            },
            "path_from_endpoint": "/hcp/tenant-2/dco"
          },
          "flags": {
            "_links": {
              "self": {
                "href": "/api/v1/dataconn/2?flags"
              }
            },
            "read_only": false
          },
          "is_protected": true,
          "status": "created"
        }
      }
    ]
  }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants