この章では、SOA as a Service (SOAaS) APIおよびOSB as a Service (OSBaaS) APIのリソース・モデルと、それらのレスポンスについて説明します。
この章では、特に次の内容を説明します。
この項では、PaaSインフラストラクチャ・ゾーンとミドルウェア・プールのAPIをリストします。
次の表に、表現を返すリソース・プロバイダURIに対するGET操作の例を示します。
次の表に、PaaSインフラストラクチャ・ゾーンを作成するためのリソース・プロバイダURIに対するPOST操作の例を示します。
表54-2 PaaSインフラストラクチャ・ゾーンを作成するためのPOSTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/resourceproviders |
|
リクエスト・ヘッダー |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
{
"useExistingTarget" : false,
"name": "WlaaS_Zone1","type": "self_service_zone",
"credentials": [ {"name":"normal_credential_guid","description":"This is description frpm the REST method","value": "AIME_CLOUD_CRED"}],
"memberTargetType": "host",
"members":["slc05tgu.example.com","slc02pog.example.com"],
"placementConstraints":[{"name":"MAX_CPU_UTILIZATION","value":["80"]},{"name":"MAX_MEMORY_ALLOCATION","value":["80"]}],
"characteristics":[{"name":"ORACLE.SYSMAN.CFW.SELF_SERVICE_ZONE","value":["70F61D030338B79AFEC42E008AF6F6B7"]},
{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_CONTACT","value":["123456789"]},
{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_COST_CENTER","value":["IDC.LEX"]},
{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_DEPARTMENT","value":["FMW"]},
{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_LIFECYCLE_STATUS","value":["Test"]},
{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_LINE_OF_BUS","value":["ST"]},
{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_LOCATION","value":["IDC"]}],
"roles":["MWAS_SSA_USER_ROLE1"]
}
|
|
リクエスト・メソッド |
POST |
次の表に、ミドルウェア・プールを作成するためのリソース・プロバイダURIに対するPOST操作の例を示します。
表54-3 ミドルウェア・プールを作成するためのPOSTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/resourceproviders |
|
リクエスト・ヘッダー |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
{"useExistingTarget":"false",
"name":"WlaaS_Pool1","type":"mwaas_zone","description":"This is a Windows Pool for WLAAS testing",
"memberTargetType":"host",
"members":["slc05tgu.example.com","slc02pog.example.com"],
"parentResourceProviderId":"1",
"placementConstraints":[{"name":"MAX_INSTANCES","value":"10"}],
"memberConstraints":[{"name":"ORACLE.SYSMAN.EMAS.MWC.WLAAS.PLATFORM","value":"226"}],
"characteristics":[{"name":"ORACLE.SYSMAN.CFW.ORCL_GTP_COST_CENTER","value":"IDC"}]
}
|
|
リクエスト・メソッド |
POST |
次の表に、PaaSインフラストラクチャ・ゾーンを更新するためのPUT操作の例を示します。
表54-4 PaaSインフラストラクチャ・ゾーンを更新するためのPUTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/resourceproviders/1 |
|
リクエスト・ヘッダー |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
{"description":"This is description from the REST PUT method",
"placementConstraints":[{"name":"MAX_CPU_UTILIZATION","value":["90"]},
{"name":"MAX_MEMORY_ALLOCATION","value":["90"]}
]
}
|
|
リクエスト・メソッド |
PUT |
次の表に、ミドルウェア・プールを更新するためのPUT操作の例を示します。
次の表に、PaaSインフラストラクチャ・ゾーンまたはミドルウェア・プールを削除するためのDELETE操作の例を示します。
この項では、割当て制限のSOA/OSB APIをリストします。
次の表に、表現を返す割当て制限URIに対するGET操作の例を示します。この操作は、MWaaSのすべてのSSAユーザー・ロールの割当て制限設定を返します。
表54-7 割当て制限設定の詳細を表示するためのGETリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/quotas |
|
リクエスト・ヘッダー |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
なし |
|
リクエスト・メソッド |
GET |
受け取るレスポンスの例を次に示します。
{
name: "Middleware Cloud Quotas"
description: "Middleware Cloud Quotas per SSA User Role"
quotas: [1]
0: {
roleName: "SSA_USER_ROLE"
memory: "4"
javaServersCount: "10"
}-
-
selfLink: "https://slc06ekg.us.example.com:5416/em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/quotas"
}
次の表に、SSAユーザー・ロールの割当て制限を作成するための割当て制限URIに対するPOST操作の例を示します。
次の表に、SSAユーザー・ロールの割当て制限を更新するためのPUT操作の例を示します。
この項では、サービス・テンプレートのAPIをリストします。
次の表に、表現を返すサービス・テンプレートURIに対するGET操作の例を示します。
次の表に、表現を返す特定のサービス・テンプレートURIに対するGET操作の例を示します。
次の表に、サービス・テンプレートを削除するためのDELETE操作の例を示します。
次の表に、SOA/OSBサービス・テンプレートを作成するためのPOSTリクエスト構成をリストします。
次に、リソース・プロバイダを作成するためのサービス・テンプレートURIに対するPOST操作の例を示します。
表54-16 リソース・プロバイダの特性を取得するためのPOSTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/servicetemplates/resourceProviders |
|
リクエスト・ヘッダー |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
{
"serviceType": "OSB_SERVICE",
"serviceTemplateTypeId": "21",
"rscProvAssocOption": [
"byRscLookupChars"
],
"selectedExecutableName": {
"name": "MW_OSBAAS_CREATE_INSTANCE",
"type": "STRING",
"value": "SOAaaSOuterDP",
"defaultValue": "SOAaaSOuterDP",
"required": true,
"secret": false
},
"payloads": [
{
"name": "Profile for OSB",
"value": "<user_input>",
"required": true
}
],
"characteristics": []
}
|
|
リクエスト・メソッド |
POST |
次に、サービス・テンプレート構成を作成するためのサービス・テンプレートURIに対するPOST操作の例を示します。
表54-17 リソース・プロバイダを作成するためのPOSTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/servicetemplates/configurations |
|
リクエスト・ヘッダー |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
Payload: Use b,c responses.
{
"serviceType":"OSB_SERVICE",
"serviceTemplateTypeId":"21",
"rscProvAssocOption":["byRscLookupChars"],
"payloads":[
{
"name":"Profile for OSB",
"value":"oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_FMWBundle:0792B0CF52D06888E053AC75B10A17C8:0.1"
}
],
"resourceProvider": {
"lookupCharacteristics": [
{
"characteristics": [
{
"name": "ORACLE.SYSMAN.EMAS.MWAAS_ZONE",
"values":["C5E76791838043BC71F5D6B70886F13B"]
}
],
"purposeId": 1
}
]
}
}
|
|
リクエスト・メソッド |
POST |
次に、受信したレスポンスを使用してサービス・テンプレートを作成するためのサービス・テンプレートURIに対するPOST操作の例を示します。
表54-18 リソース・プロバイダを作成するためのPOSTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/cfw/v2/servicetemplates |
|
リクエスト・ヘッダー |
Authorization: Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
{
"name": "OSB_ST1",
"displayName": "OSB_ST1",
"serviceType": "OSB_SERVICE",
"serviceTemplateTypeId": "21",
"rscProvAssocOption":["byRscProvInst"],
"roles": [
"SSA_USER1"
],
"payloads": [
{
"name": "Profile for OSB",
"value": "oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_FMWBundle:0792B0CF52D06888E053AC75B10A17C8:0.1",
"required": null
}
],
"selectedExecutableName":
[
{
"name": "MW_OSBAAS_CREATE_INSTANCE",
"value": "SOAaaSOuterDP"
}
],
"resourceProvider": {
"lookupCharacteristics": [
{
"characteristics": [
{
"name": "ORACLE.SYSMAN.EMAS.MWAAS_ZONE",
"values":["C5E76791838043BC71F5D6B70886F13B"]
}
],
"purposeId": 1
}
]
},
"configurations": [
{
"name": "postScriptForInstanceCreation",
"type": "SWLIB",
"description": "Script that is invoked after service instance creation",
"required": false,
"secret": false,
"value":"<URN of Script>"
},
{
"name": "portRangeStart",
"type": "STRING",
"description": "Port Range Start",
"value": "1024",
"required": true,
"secret": false
},
|
{
"name": "preScriptForInstanceCreation",
"type": "SWLIB",
"description": "Script that is invoked before service instance creation",
"required": false,
"secret": false,
"value":"<URN of Script>"
},
{
"name": "destinationFmwBase",
"type": "STRING",
"description": "Middleware Base Location",
"value": "/scratch/osb_mid1",
"required": true,
"secret": false
},
{
"name": "workDir",
"type": "STRING",
"description": "Work Directory",
"value": "$MIDDLEWARE_HOME/work",
"required": true,
"secret": false
},
{
"name": "wlsUserName",
"type": "STRING",
"description": "Weblogic Admin UserName",
"value": "weblogic",
"required": true,
"secret": false
},
{
"name": "startupArguments",
"type": "STRING",
"description": "Server Startup Arguments",
"value" : "",
"required": true,
"secret": false
},
{
"name": "namedCredforHostList",
"type": "STRING",
"description": "Enter the EM Named Credentials to be used for the above hosts in the 'Host for Executing Scripts' field",
"required": false,
"secret": false,
"value":"CredName:CredOwner"
},
{
"name": "destinationAdminServerPassword",
"type": "STRING",
"description": "Password for the WebLogic Server",
"value" : "welcome1"
"required": true,
"secret": true
},
|
|
{
"name": "computedCpuUsagePerServer",
"type": "STRING",
"description": "Avg CPU Usage",
"value": "1.0",
"required": true,
"secret": false
},
{
"name": "portRangeEnd",
"type": "STRING",
"description": "Port Range End",
"value": "65535",
"required": true,
"secret": false
},
{
"name": "jdkHome",
"type": "STRING",
"description": "Jdk Home",
"value": "/usr/local/packages/jdk6",
"required": true,
"secret": false
},
{
"name": "computedMemoryUsagePerServer",
"type": "STRING",
"description": "Max Heap",
"value": "0.45",
"required": true,
"secret": false
},
{
"name": "enableLoadBalancer",
"type": "STRING",
"description": "Is LBR",
"value": "0",
"required": true,
"secret": false
},
{
"name": "preScriptForInstanceDeletion",
"type": "SWLIB",
"description": "Script that is invoked before service instance deletion",
"required": false,
"secret": false
},
{
"name": "isScriptExecuteOnManagedServers",
"type": "STRING",
"description": "Is Script Executable On Managed Server Hosts",
"value": "0",
"required": true,
"secret": false
},
|
|
{
"name": "hostListForScripts",
"type": "STRING",
"description": "Use ',' to separate multiple target hosts",
"required": false,
"secret": false,
"value":"host1,host2"
},
{
"name": "postScriptForInstanceDeletion",
"type": "SWLIB",
"description": "Script that is invoked after service instance deletion",
"required": false,
"secret": false
},
{
"name": "isScriptExecuteOnAdminServer",
"type": "STRING",
"description": "Is Script Executable On Admin Server",
"value": "0",
"required": true,
"secret": false
},
{
"name": "destinationDomainHome",
"type": "STRING",
"description": "Domain Home",
"value": "$MIDDLEWARE_HOME/domains",
"required": true,
"secret": false
}
]
}
|
|
|
リクエスト・メソッド |
POST |
この項では、ロード・バランサ構成に関連するAPIの例について説明します。
次の表にGETリクエスト構成を示します。
次の表に、指定されたロード・バランサ構成の詳細を表示するためのGETリクエスト構成をリストします。
次に、ロード・バランサ構成を作成するためのロード・バランサURIに対するPOST操作の例を示します。
表54-21 ロード・バランサ・プロバイダを作成するためのPOSTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/lbrconfigs |
|
リクエスト・ヘッダー |
Authorization :Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
{
"name": "lbr1",
"description": "desc by rest",
"type": "OHS",
"host": "slc06ekg.example.com",
"agentTargetName": "slc06ekg.example.com:1838",
"credential": "NC_HOST_2014-11-06-070337",
"instanceHome": "/scratch/PS5_OHS/instance_home",
"properties":{ "items":
[
{"name":"HTTP_PORT_RANGE", "value":"8000-9000"},
{"name":"OHS_ROUTING_PROTOCOL", "value": "HTTP"},
{"name":"COMPONENT_NAME", "value": "ohs1"}
]
},
"poolTargets": [ "0FC6D3F6A9FB2456422C1094DA5D14A9" ]
}
|
|
リクエスト・メソッド |
POST |
次の表に、ロード・バランサ構成を編集するためのPUTリクエスト構成を示します。
表54-22 ロード・バランサ構成を編集するためのPUTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/admin/wlaas/v2/lbrconfigs |
|
リクエスト・ヘッダー |
Authorization :Basic c3lzbWFuOnN5c21hbg== |
|
本文 |
{
"name": "lbr1",
"description": "desc by rest",
"type": "OHS",
"id":1004,
"host": "slc06ekg.example.com",
"agentTargetName": "slc06ekg.example.com:1838",
"credential": "NC_HOST_2014-11-06-070337",
"instanceHome": "/scratch/PS5_OHS/instance_home",
"properties":{ "items":
[
{"name":"HTTP_PORT_RANGE", "value":"8000-9000"},
{"name":"OHS_ROUTING_PROTOCOL", "value": "HTTP"},
{"name":"COMPONENT_NAME", "value": "ohs1"}
]
},
"poolTargets": [ "0FC6D3F6A9FB2456422C1094DA5D14A9" ]
}
|
|
リクエスト・メソッド |
PUT |
この項では、次のAPI例について説明します。
次の表に、すべてのサービス・テンプレートを表示するためのGET操作の例を示します。
次の表に、すべてのサービス・インスタンスを表示するためのGET操作の例を示します。
次の表に、UPステータスのすべてのサービス・インスタンスを表示するためのGET操作の例を示します。
次の表に、サービス提供メタデータを表示するためのGET操作の例を示します。
次の表に、サービス・インスタンスをリクエストするためのPOST操作の例を示します。
表54-28 サービス・インスタンス・リクエストを作成するためのPOSTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
em/websvcs/restful/extws/cloudservices/ssa/cfw/v2/services |
|
リクエスト・ヘッダー |
Authorization: Basic c3NhX3VzZXIxOndlbGNvbWUx |
|
本文 |
{
"offeringId":"080C47B7F8EA20ECE053AC75B10A50E3",
"name":"rest_inst01","instanceName":"rest_inst01",
"characteristics": [
{
"name": "ORACLE.SYSMAN.EMAS.MWAAS_ZONE",
"value": "98EB4ECCB01F91E40AA45708112E3920"
]
}
],
"configurations": [
{
"name": "wlsNewPassword",
"type": "STRING",
"description": "New Admin password",
"required": true,
"secret": true,
"value" : "password"
},
{
"name": "destinationDBTargetName",
"type": "STRING",
"description": "SOA Database Service Instance Name",
"required": true,
"secret": false,
"value":"SOADB"
},
{
"name": "soaTokens",
"type": "VECTOR",
"description": "SOA Tokens",
"values": [
"port=80",
"host=www.aol.com"
],
"required": false,
"secret": false
},
{
"name": "destinationDBTargetType",
"type": "STRING",
"description": "SOA Database Service Instance Target Type",
"required": true,
"secret": false,
"value":" oracle_database"
},
{
"name": "destinationSchemaPassword",
"type": "STRING",
"description": "SOA Database Schema Password",
"required": true,
"secret": true,
"value":"DBPassword"
},
|
{
"name": "startupArguments",
"type": "STRING",
"description": "Server Startup Arguments",
"value": "",
"required": true,
"secret": false
},
{
"name": "wlsNewUserName",
"type": "STRING",
"description": "New Admin User Name",
"required": true,
"secret": false,
"value":"weblogic_user"
}
]
}
|
|
|
リクエスト・メソッド |
POST |
次の表に、アクションIDに基づいてサービス・インスタンスに対するアクションを実行するためのGET操作の例を示します。
次の表に、サービス・インスタンスを停止するためのPUT操作の例を示します。
次の表に、サービス・インスタンスを起動するためのPUT操作の例を示します。
次の表に、サービス・インスタンスを削除するためのPUT操作の例を示します。
次の表に、サービス・インスタンスをスケール・アップするためのPUT操作の例を示します。
表54-33 サービス・インスタンスをスケール・アップするためのPUTリクエスト構成
| 機能 | 説明 |
|---|---|
|
URI |
/em/websvcs/restful/extws/cloudservices/ssa/cfw/v2/serviceinstances/21324EF5A81B4D8ECA7F835A209B857E |
|
リクエスト・ヘッダー |
なし |
|
本文 |
{"actionId":29,
"configurations": [{"name": "numberOfServers","value": "2"}]
}
|
|
リクエスト・メソッド |
PUT |
受け取るレスポンスの例を次に示します。
{
"requests":[{"id":"621",
"actionName":"SCALE_UP",
"canonicalLink":{"href":"https://xyxy.example.com:11040/em/websvcs/restful/extws/cloudservices/ssa/cfw/v2/servicerequests/621"}
}]
}