서비스 엔드포인트 검색

클러스터가 노출하는 서비스 엔드포인트는 서비스 키(서비스 인증 정보라고도 함)로 사용할 수 있습니다.

다음 방법으로 서비스 엔드포인트를 페치할 수 있습니다.

서비스 엔드포인트는 인스턴스 인증 정보를 표시하지 않습니다. 인스턴스 인증 정보를 가져오려면 클러스터 인증 정보 검색을 참조하십시오.

IBM Cloud CLI를 사용하여 서비스 엔드포인트 확보

서비스 엔드포인트를 확보하려면 IBM Analytics Engine 서버리스 인스턴스에 대한 서비스 키를 작성해야 합니다.

서비스 리소스 키를 작성하려면 다음 명령을 입력하십시오.

ibmcloud resource service-key-create <your_service_key_name> <role> --instance-name <your_service_instance_name>

필수 매개변수는 다음과 같습니다.

  • <your_service_instance_name>: 클러스터를 작성할 때 지정한 서비스 인스턴스의 이름입니다. IBM Cloud 리소스 목록을 확인하여 서비스 인스턴스 이름을 찾을 수 있습니다.
  • <your_service_key_name>: 키에 사용할 임의의 이름입니다. 이 이름은 서비스 키를 검색하는 데 사용됩니다.
  • <role>: 서비스 인증 정보에 대해 생성된 IAM API 키에 지정한 역할입니다. 선택한 역할에 허용된 오퍼레이션만 수행할 수 있습니다. 오퍼레이션을 수행하는 데 필요한 역할에 관한 세부사항은 사용자에게 권한 부여필수 IAM 권한 절을 참조하십시오.

예상 응답:

Creating service key of service instance <service_instance_name> under account <your account name> as <your user name>...
OK
Service key <service key crn> was created.
Name:          service-key-name
ID:            crn:v1:staging:public:ibmanalyticsengine:us-south:a/d628eae2cxxxxx229f2xxxx:1671b660-xxxx-448f-xxx-e1633a2b97c7:resource-key:4f1b043c-xxxx-xxxx-xxxx-cbf90f6155d0
Created At:    Mon Nov 29 11:47:32 UTC 2021
State:         active
Credentials:
               apikey:                   xxxxxx
               endpoints:
                                         applications_api:   https://api-staging.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx660-7f2x-4xxf-9xx4-exxxxxxxxxc7/spark_applications
                                         instance_api:       https://api-staging.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx660-7f2x-4xxf-9xx4-exxxxxxxxxc7
					 history_server_ui:  https://spark-console.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx660-7f2x-4xxf-9xx4-exxxxxxxxxc7/spark_history_ui
					 history_server_api: https://spark-console.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx660-7f2x-4xxf-9xx4-exxxxxxxxxc7/spark_history_api/v1

               iam_apikey_description:   Auto-generated for key 4f1xxx3c-7517-xxx-cbfxxxxxx5d0
               iam_apikey_name:          service-key-name
               iam_role_crn:             crn:v1:bluemix:public:iam::::serviceRole:Writer
               iam_serviceid_crn:        crn:v1:staging:public:iam-identity::a/xxxx::serviceid:ServiceId-3543db7f-xxxx-454a-xxxx-1b20333ebeaa

서비스 리소스 키를 보려면 다음 명령을 입력하십시오.

ibmcloud resource service-key <service_key_name>

필수 매개변수:

  • <service key name>: 키를 작성할 때 입력한 서비스 키의 이름입니다.

샘플 응답: 클러스터 인증 정보는 응답에 리턴되지 않습니다.

{
  "apikey": "xxxxx",
  "endpoints": {
    "applications_api": "https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx-3bxxxbc-4xxx1-axx6-8xxdxx0xxd/spark_applications",
    "instance_api": "https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx-3bxxxbc-4xxx1-axx6-8xxdxx0xxd",
    "history_server_ui": "https://spark-console.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx-3bxxxbc-4xxx1-axx6-8xxdxx0xxd/spark_history_ui",
    "history_server_api":"https://spark-console.us-south.ae.cloud.ibm.com/v3/analytics_engines/xxxx-3bxxxbc-4xxx1-axx6-8xxdxx0xxd/spark_history_api/v1"
  },
  "iam_apikey_description": "Auto-generated for key cabde209-xxxx",
  "iam_apikey_name": "Service credentials-1",
  "iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Reader",
  "iam_serviceid_crn": "crn:v1:bluemix:public:iam-identity::a/xxxxx::serviceid:ServiceId-2fec11aa-xxxx-4918-xxxx-aa3650f99050"
}

샘플 응답에서 endpoints 아래의 특성은 서비스 엔드포인트를 지정합니다. iam_apikey_name 특성에는 IAM 베어러 토큰을 생성하는 데 사용할 수 있는 IAM API 키가 포함됩니다. IBM Analytics Engine 서버리스 인스턴스에 대해 REST API를 호출할 때 권한 부여를 위해 IAM 베어러 토큰을 제공해야 합니다.

IBM Cloud REST API를 사용하여 서비스 엔드포인트 확보

전제조건: IAM Bearer 토큰이 필요합니다. 자세한 정보는 IAM 액세스 토큰 검색을 참조하십시오.

API 서비스 키를 처리하는 API 엔드포인트는 https://resource-controller.cloud.ibm.com/v1/resource_keys입니다.

서비스 리소스 키를 작성하려면 다음을 입력하십시오.

curl -X POST \
  https://resource-controller.cloud.ibm.com/v1/resource_keys \
  -H 'accept: application/json' \
  -H "authorization: Bearer <IAM bearer token>" \
  -H 'content-type: application/json' \
  -d '{"name":"<key name>","source_crn":"<service instance crn>", "parameters":{"role_crn":"<crn of access role>"} }'

샘플 응답:

{
	"id": "crn:v1:staging:public:ibmanalyticsengine:us-south:a/d628eae2cxxxxx229f2xxxx:79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx:resource-key:2278xxxx-xxxx-xxxx-xxxx-59a6da6xxxxe",
	"guid": "2278xxxx-xxxx-xxxx-xxxx-59a6da68xxxx",
	"url": "/v1/resource_keys/crn%3Av1%3Astaging%3Apublic%3Aibmanalyticsengine%3Aus-south%3Aa%2Fd628eae2cxxxxx229f2xxxx%3A79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx%3Aresource-key%3A2278xxxx-xxxx-xxxx-xxxx-59a6da6xxxxe",
	"created_at": "2021-11-30T08:48:47.909145179Z",
	"updated_at": "2021-11-30T08:48:47.909145179Z",
	"deleted_at": null,
	"created_by": "",
	"updated_by": "",
	"deleted_by": "",
	"source_crn": "crn:v1:staging:public:ibmanalyticsengine:us-south:a/d628eae2cxxxxx229f2xxxx:79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx::",
	"name": "service_key_02",
	"role": "crn:v1:bluemix:public:iam::::serviceRole:Writer",
	"crn": "crn:v1:staging:public:ibmanalyticsengine:us-south:a/d628eae2cxxxxx229f2xxxx:79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx:resource-key:2278xxxx-xxxx-xxxx-xxxx-59a6da6xxxxe",
	"state": "active",
	"account_id": "d628eae2cxxxxx229f2xxxx",
	"resource_group_id": "65828fxxxx594594816e872xxxx",
	"resource_id": "18dexxxx-xxxx-xxxx-xxxx-0ed2f93fxxxx",
	"credentials": {
		"apikey": "xxxxx",
		"endpoints": {
			"applications_api": "https://api-staging.us-south.ae.cloud.ibm.com/v3/analytics_engines/79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx/spark_applications",
			"instance_api": "https://api-staging.us-south.ae.cloud.ibm.com/v3/analytics_engines/79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx",
			"history_server_ui": "https://spark-console.us-south.ae.cloud.ibm.com/v3/analytics_engines/79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx/spark_history_ui",
			"history_server_api":"https://spark-console.us-south.ae.cloud.ibm.com/v3/analytics_engines/79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx/spark_history_api/v1"
		},
		"iam_apikey_description": "Auto-generated for key 2278e09d-b815-4c4b-b824-xxxx",
		"iam_apikey_name": "service_key_02",
		"iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Writer",
		"iam_serviceid_crn": "crn:v1:staging:public:iam-identity::a/d628eae2cxxxxx229f2xxxx::serviceid:ServiceId-209exxxx-xxxx-xxxx-xxxx-4ab9ce16xxxx"
	},
	"iam_compatible": true,
	"migrated": false,
	"resource_instance_url": "/v1/resource_instances/crn%3Av1%3Astaging%3Apublic%3Aibmanalyticsengine%3Aus-south%3Aa%2Fd628eae2cxxxxx229f2xxxx%3A79c757e9-xxxx-xxxx-xxxx-dff7f01xxxx%3A%3A",
	"resource_alias_url": null
}

IBM Cloud 콘솔에서 서비스 엔드포인트 확보

이 절의 단계를 수행하여 IBM Cloud 콘솔을 통해 서비스 엔드포인트를 가져오는 경우, 서비스 엔드포인트 및 API 키를 볼 수 있다고 예상되는 서비스 인스턴스의 서비스 인증 정보 페이지로 이동합니다.

IBM Cloud 콘솔에서 서비스 키를 작성하려면 다음을 수행하십시오.

  1. 리소스 목록으로 이동하고 서비스 및 소프트웨어를 클릭한 후 프로비저닝된 서버리스 인스턴스를 선택하십시오.
  2. 왼쪽 사이드바에서 서비스 인증 정보를 클릭하십시오.
  3. 그런 다음 새 인증 정보를 클릭하여 새 서비스 인증 정보를 작성하십시오.
  4. 이름을 입력하고 역할을 선택한 후 추가를 클릭하십시오.
  5. 인증 정보를 클립보드에 복사하십시오.

인스턴스 관리 및 애플리케이션 관리 엔드포인트에서 사용 가능한 오퍼레이션은 API 문서를 참조하십시오. 해당 엔드포인트에서 오퍼레이션을 호출하는 데 필요한 권한에 대한 세부사항은 사용자에게 권한 부여를 참조하십시오.