ランタイム環境
runtimeEnvironmentリソースを使用して、ランタイム環境の詳細を要求し、Secure Agentグループを管理できます。
REST APIを使用して次のタスクを実行できます。
- •ランタイム環境に関する詳細を取得する。
- •Secure Agentグループを作成、更新、削除する。
- •Secure AgentグループでInformatica Intelligent Cloud Servicesとコネクタを有効および無効にする。
- •Secure AgentグループのSecure Agentサービスプロパティを設定する。
ランタイム環境の詳細の取得
runtimeEnvironmentリソースを使用して、ランタイム環境の詳細を取得します。
特定のランタイム環境の詳細または組織のすべてのランタイム環境の詳細を要求できます。
組織のランタイム環境情報を要求するには、次のURIを使用します。
/api/v2/runtimeEnvironment
特定のランタイム環境の詳細を要求する場合、URIにランタイム環境IDまたは名前を含めることができます。次のいずれかのURIを使用します。
/api/v2/runtimeEnvironment/<id>
/api/v2/runtimeEnvironment/name/<name>
URIにランタイム環境名を使用し、ランタイム環境名にスペースが含まれる場合、スペースは%20に置き換えます。以下に例を示します。
/api/v2/runtimeEnvironment/name/my%20runtime%20environment
GET応答
要求されたランタイム環境のランタイム環境情報を返します。runtimeEnvironmentオブジェクトには次の属性が含まれます。
フィールド | タイプ | 説明 |
---|
id | String | ランタイム環境ID。 |
orgId | String | 組織ID。 |
name | String | ランタイム環境名。 |
description | String | ランタイム環境の説明。 |
createTime | Date/Time | ランタイム環境が作成された日時。 |
updateTime | Date/Time | ランタイム環境が最後に更新された日時。 |
createdBy | String | ランタイム環境を作成したユーザー。 |
updatedBy | String | ランタイム環境を最後に更新したユーザー。 |
agents | | ランタイム環境に割り当てられているエージェント。agentリソースを参照してください。 |
isShared | Boolean | Secure Agentグループが共有されているかどうかを示します。次のいずれかの値を返します。 - - true。Secure Agentグループは共有されています。
- - false。Secure Agentグループは共有されていません。
|
federatedId | String | グローバル一意識別子。 |
serverlessConfig | | サーバーレスランタイム環境プロパティを定義する属性。 |
サーバーレスランタイム環境の情報を取得する場合、runtimeEnvironmentオブジェクトにはserverlessConfigオブジェクトも含まれます。serverlessConfigオブジェクトには次の属性が含まれます。
フィールド | タイプ | 説明 |
---|
platform | String | サーバーレスランタイム環境をホストするクラウドプラットフォーム。 |
applicationType | String | サーバーレスランタイム環境を使用できるアプリケーション。 |
status | String | サーバーレスランタイム環境のステータス。 |
statusMessage | String | サーバーレスランタイム環境のステータスメッセージ。 |
statusMessageDetails | String | サーバーレスランタイム環境のAWSからの検証エラーデータ。 |
cloudProviderConfig | | 基本のプロパティとデータ統合プロパティを定義します。 |
infaAccountNumber | String | cloudProviderConfigオブジェクトに含まれます。 クラウドプラットフォームでの情報のアカウント番号。 |
externalId | String | cloudProviderConfigオブジェクトに含まれます。 ロールに関連付ける外部ID。 |
configurationName | String | cloudProviderConfigオブジェクトに含まれます。 サーバーレスランタイム環境の名前 |
configurationDescription | String | cloudProviderConfigオブジェクトに含まれます。 サーバーレスランタイム環境の説明。 |
params | | AWSリソース設定プロパティを定義します。 |
s3 | String | paramsオブジェクトに含まれます。 補足ファイルを保存するためのAmazon S3の場所。 |
subnet | String | paramsオブジェクトに含まれます。 サブネットのID。 |
role | String | paramsオブジェクトに含まれます。 サーバーレスランタイム環境が使用するロールの名前。 |
vpc | String | paramsオブジェクトに含まれます。 VPC(Amazon Virtual Private Cloud)のID。 |
externalId | String | paramsオブジェクトに含まれます。 ロールに設定される外部ID。 |
securityGroup | String | paramsオブジェクトに含まれます。 セキュリティグループID |
accountNumber | String | paramsオブジェクトに含まれます。 クラウドプラットフォームでのアカウント番号。 |
referenceId | String | paramsオブジェクトに含まれます。 サーバーレスランタイム環境の参照に使用される内部ID。 |
computeUnits | String | paramsオブジェクトに含まれます。 タスクが使用できるサーバーレスコンピューティングユニットの最大数。 |
executionTimeout | String | paramsオブジェクトに含まれます。 タスクが完了するまでの待機時間(分)。 |
cloudInstanceId | String | paramsオブジェクトに含まれます。 インスタンスID。 |
zone | String | paramsオブジェクトに含まれます。 可用性ゾーンID。 |
region | String | paramsオブジェクトに含まれます。 クラウドプラットフォームでのリージョン。 |
infaAccountNumber | String | paramsオブジェクトに含まれます。 クラウドプラットフォームでの情報のアカウント番号。 |
awsTags | String | paramsオブジェクトに含まれます。 AWSタグ。 |
maxComputeUnits | String | タスクが使用できるサーバーレスコンピューティングユニットの最大数。 |
executionTimeout | String | タスクが完了するまでの待機時間(分)。 |
GETの例
特定のランタイム環境の詳細を要求するには、次の要求を使用できます。
GET <serverUrl>/api/v2/runtimeEnvironment/00000425000000000004 HTTP/<HTTP version>
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
次のテキストは、JSON形式で返されたリストのサンプルです。
{
"@type": "runtimeEnvironment",
"id": "00000425000000000004",
"orgId": "000004",
"name": "SUT_Agent",
"createTime": "2016-12-09T12:34:01.000Z",
"updateTime": "2016-12-09T17:54:00.000Z",
"createdBy": "org1@infa.com",
"updatedBy": "org1@infa.com",
"agents": [],
"isShared": true,
"federatedId": "6iPQuOsH1YAfnJxhZWPZjI"
}
次のテキストは、サーバーレスランタイム環境の戻りのサンプルです。
{
"@type": "runtimeEnvironment",
"id": "01000000000000000039",
"orgId": "010211",
"name": "Serverless runtime environment 1",
"description": "My serverless runtime environment",
"createTime": "2020-08-25T13:21:16.000Z",
"updateTime": "2020-08-25T13:29:43.000Z",
"createdBy": "admin",
"updatedBy": "admin",
"agents": [],
"isShared": false,
"federatedId": "4sddtYsgbpnpTBjSZB12fs",
"serverlessConfig": {
"platform": "AWS",
"applicationType": "CDI",
"status": "RUNNING",
"statusMessage": "Serverless runtime is running",
"cloudProviderConfig": {
"cloudConfig": [
{
"infaAccountNumber": "064942996470",
"externalId": "7eeafa7c-6dd1-4666-8ac8-7431b1d72def",
"configurationName": "Serverless runtime environment 1",
"configurationDescription": "My serverless runtime environment",
"params": {
"s3": "s3://discale-qa-west2/test1",
"subnet": "subnet-08123adayy51ed327",
"role": "CDI_Serverless_Role",
"vpc": "vpc-02ef05yy73fb7f063",
"externalId": "7eeafa7c-6dd1-4666-8ac8-7431b1d72def",
"securityGroup": "sg-025d67343b0655372",
"accountNumber": "778525666549",
"referenceId": "4sddtYsgbpnpTBjSZB12fs",
"computeUnits": "1",
"executionTimeout": "2880",
"cloudInstanceId": "i-0e3e6g02r1g1364a3",
"zone": "usw2-az3",
"region": "us-west-2",
"infaAccountNumber": "064942996470",
"awsTags": "Key=NAME,Value=test1 Key=EMAIL,Value=test1@informatica.com"
}
}
]
},
"maxComputeUnits": "1",
"executionTimeout": "2880"
}
Secure Agentグループの作成、更新、および削除
runtimeEnvironmentリソースを使用して、Secure Agentグループを作成、更新、および削除できます。
POST要求を使用して、Secure Agentグループを作成および更新します。DELETE要求を使用して、Secure Agentグループを削除します。
POST要求
Secure Agentグループを作成するには、次のURIを使用します。
/api/v2/runtimeEnvironment
要求に次のフィールドを含めます。
フィールド | タイプ | 必須 | 説明 |
---|
name | String | ○ | Secure Agentグループの名前。 |
isShared | Boolean | - | Secure Agentグループをサブ組織と共有できるかどうか。 |
Secure Agentグループを更新するには、次のURIに示すようにエージェントグループIDを含めます。
/api/v2/runtimeEnvironment/<id>
エージェントを追加または削除し、Secure Agentグループの名前を変更できます。エージェントをあるSecure Agentグループから別のグループに移動するには、現在のグループからエージェントを削除する要求を送信してから、新しいグループにエージェントを追加する要求を送信します。
要求に次のフィールドを含めます。
フィールド | タイプ | 必須 | 説明 |
---|
name | String | ○ | Secure Agentグループの名前。 |
isShared | Boolean | - | Secure Agentグループをサブ組織と共有できるかどうか。 |
agents | 配列 | ○ | Secure Agentグループに割り当てられたエージェント。 |
orgId | String | ○ | 組織ID。 |
id | String | ○ | エージェントID。 |
POST応答
フィールド | タイプ | 説明 |
---|
id | String | Secure AgentグループID。 |
orgId | String | 組織ID。 |
name | String | Secure Agentグループ名。 |
description | String | Secure Agentグループの説明。 |
createTime | Date/Time | Secure Agentグループを作成した日時。 |
updateTime | Date/Time | Secure Agentグループが最後に更新された日時。 |
createdBy | String | Secure Agentグループを作成したユーザー。 |
updatedBy | String | Secure Agentグループを最後に更新したユーザー。 |
agents | 配列 | Secure Agentグループに割り当てられたエージェント。詳細については、agentリソースを参照してください。 |
isShared | Boolean | Secure Agentグループが共有されているかどうかを示します。次のいずれかの値を返します。 - - true。Secure Agentグループは共有されています。
- - false。Secure Agentグループは共有されていません。
|
federatedId | String | グローバル一意識別子。 |
serverlessConfig | | サーバーレスランタイム環境プロパティを定義する属性。 |
POST要求の例
Secure Agentグループを作成する要求の例を以下に示します。
POST <serverUrl>/api/v2/runtimeEnvironment HTTP/<HTTP version>
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
{
"@type": "runtimeEnvironment",
"name": "14402",
"isShared": true
}
Secure Agentグループにエージェントを追加する要求の例を以下に示します。
POST <serverUrl>/api/v2/runtimeEnvironment/00000425000000000004 HTTP/<HTTP version>
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
{
"@type": "runtimeEnvironment",
"name": "14401",
"agents": [
{
"@type": "agent",
"id": "01000308000000000003",
"orgId": "010003"
}
],
"isShared": false
}
POST応答の例
次の例のような応答を受信します。
{
"@type": "runtimeEnvironment",
"id": "01000325000000000005",
"orgId": "010003",
"name": "USW1MJ02W6PP-2",
"createTime": "2021-11-09T17:20:55.583Z",
"updateTime": "2021-11-09T17:20:55.583Z",
"createdBy": "ctan",
"updatedBy": "ctan",
"agents": [],
"isShared": false,
"federatedId": "9F4z0pY1kKqdlmLp5kYXkF",
"createTimeUTC": "2021-11-09T22:20:55.583Z",
"updateTimeUTC": "2021-11-09T22:20:55.583Z",
"serverlessConfig": {
"cloudProviderConfig": {
"cloudConfig": []
}
}
}
DELETE要求
Secure Agentグループを削除するには、次のURIに示すようにエージェントグループIDを含めます。
/api/v2/runtimeEnvironment/00000425000000000034
Secure Agentグループの選択の管理
runtimeEnvironmentリソースを使用して、Secure AgentグループでInformatica Intelligent Cloud Servicesとコネクタを有効または無効にすることができます。また、選択の詳細を取得することもできます。
GET要求を使用して、Secure Agentグループの有効化および無効化の選択に関する詳細を取得します。PUT要求を使用して、Secure Agentグループをサービスとコネクタに割り当てます。
GET要求
Secure Agentグループに対して有効になっている選択に関する情報を要求できます。組織のライセンスに基づいて、Secure Agentグループで使用できるすべての選択に関する情報を要求することもできます。応答には、使用可能なサービスとコネクタの名前とIDが含まれます。
有効な選択に関する情報を取得するには、次のURIを使用します。
/api/v2/runtimeEnvironment/<id>/selections
Secure Agentグループで使用できるすべての選択に関する情報を取得するには、次のURIを使用します。
/api/v2/runtimeEnvironment/<id>/selections/details
GET応答
Secure Agentグループの選択を返します。成功した場合、次のフィールドを返します。
フィールド | タイプ | 説明 |
---|
services | | サービスの選択情報を含みます。 |
selections | | 有効なサービスの情報を含みます。 要求に詳細を含める場合は、無効なサービスの選択情報も含みます。 |
id | String | selectionsオブジェクトに含まれます。 サービスID。 |
name | String | selectionsオブジェクトに含まれます。 サービス名。 |
enabled | Boolean | selectionsオブジェクトに含まれます。 Secure Agentグループでサービスが有効になっているかどうか。 |
connectors | | コネクタの選択情報を含みます。 |
selections | | 有効なコネクタの情報を含みます。 要求に詳細を含める場合は、無効なコネクタの選択情報も含みます。 |
id | String | selectionsオブジェクトに含まれます。 コネクタID。 |
name | String | selectionsオブジェクトに含まれます。 コネクタ名。 |
enabled | Boolean | selectionsオブジェクトに含まれます。 Secure Agentグループでコネクタが有効になっているかどうか。 |
Additional services | | Gitなどの追加サービスの選択情報を含みます。 |
selections | | 有効になっている追加サービスの情報を含みます。 要求に詳細を含める場合は、無効になっている追加サービスの選択情報も含みます。 |
id | String | selectionsオブジェクトに含まれます。 サービスID。 |
name | String | selectionsオブジェクトに含まれます。 サービス名。 |
enabled | Boolean | selectionsオブジェクトに含まれます。 Secure Agentグループでサービスが有効になっているかどうか。 |
GET要求の例
有効な選択に関する情報を取得する要求の例を以下に示します。
GET <serverUrl>/api/v2/runtimeEnvironment/00000425000000000004/selections HTTP/<HTTP version>
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
有効な選択と無効な選択に関する情報を取得する要求の例を以下に示します。
GET <serverUrl>/api/v2/runtimeEnvironment/00000425000000000004/selections/details
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
GET応答の例
要求が有効な選択と無効な選択に対するものである場合、次の例のような応答を受信します。
{
"services": {
"selections": [
{
"id": "00000047000000000002",
"name": "Data Integration",
"enabled": true
}
]
},
"connectors": {
"selections": [
{
"id": "01000000000005L",
"name": "Amazon Redshift v2",
"enabled": true
},
{
"id": "01000000000005Q",
"name": "Amazon S3",
"enabled": false
}
]
},
"additionalServices": {
"selections": [
{
"id": "00000048000000000002",
"name": "Git",
"enabled": false
}
]
}
}
PUT要求
Secure Agentグループでサービスとコネクタを有効にするには、次のURIに示すようにエージェントグループIDを含めます。
/api/v2/runtimeEnvironment/<id>/selections
使用可能なすべてのサービスとコネクタのリストを表示し、選択IDを見つけるには、GET要求を使用して、有効な選択と無効な選択に関する情報を取得します。
要求に次のフィールドを含めます。
フィールド | タイプ | 必須 | 説明 |
---|
id | String | ○ | 選択オブジェクトID。 |
name | String | - | 選択オブジェクト名。 |
enabled | Boolean | - | 選択を有効にするか無効にするか。 |
PUT要求の例
Secure Agentグループでデータ統合サービス、Amazon Redshift v2コネクタ、およびGitサービスを選択する場合、要求は次の例のようになります。
PUT <serverUrl>/api/v2/runtimeEnvironment/00000425000000000004/selections HTTP/<HTTP version>
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
{
"services": {
"selections": [
{
"id": "00000047000000000002",
"name": "Data Integration",
"enabled": true
}
]
},
"connectors": {
"selections": [
{
"id": "01000000000005L",
"name": "Amazon Redshift v2",
"enabled": false
},
{
"id": "01000000000005M",
"name": "Amazon S3 v2",
"enabled": false
}
]
},
"additionalServices": {
"selections": [
{
"id": "00000047000000000013",
"name": "Self-hosted Git Repo",
"enabled": true
}
]
}
}
注: ここで示されているIDは一例です。GET要求を使用して、Secure Agentグループで使用できる選択IDと名前を見つけます。
Secure AgentグループのSecure Agentサービスプロパティの設定
runtimeEnvironmentリソースを使用して、Secure AgentグループのSecure Agentサービスプロパティを設定できます。Secure AgentグループにSecure Agentを追加すると、エージェントはデフォルトで、Secure Agentサービスのデフォルト設定ではなく、グループレベルのプロパティ設定を使用します。
Secure Agentグループに対して設定できるSecure Agentサービスプロパティは、グループに割り当てられているサービスとコネクタによって異なります。特定のSecure Agentグループの編集可能なプロパティを表示するには、設定の詳細に対するGET要求を送信します。
Secure AgentグループのSecure Agentサービスプロパティを設定する場合は、次のようなルールが適用されます。
- •グループレベルのプロパティ設定を使用するように設定されたSecure AgentグループにSecure Agentを追加すると、エージェントのプロパティ設定がグループレベルのプロパティ設定に置き換えられます。エージェントにカスタムプロパティがある場合、カスタムプロパティは削除されます。
- •グループレベルのプロパティ設定を使用するように設定されたSecure Agentグループからグループレベルのプロパティ設定を使用しないグループにSecure Agentを移動すると、エージェントではグループレベルで設定されたプロパティ設定が保持されます。
警告: グループレベルのプロパティ設定を使用するSecure Agentグループ内のエージェントに対して、エージェントレベルのSecure Agentサービスプロパティを設定しないでください。エージェントレベルのプロパティを設定する場合は、エージェントプロパティを設定する前に、グループレベルのプロパティ設定を削除します。
GET要求
Secure Agentグループで設定できる編集可能なSecure Agentサービスプロパティのリストを取得するには、GET要求を使用します。
また、Secure Agentサービスのデフォルトのプロパティ設定を上書きしたグループレベルのプロパティのリストを取得することもできます。
URIにSecure AgentグループのIDを含めます。必要に応じて、URIにプラットフォームを含めます。linux64またはwin64を使用できます。デフォルトのプラットフォームはlinux64です。
次のいずれかのURIを使用します。
- •編集可能なプロパティのリストを取得するには、次のURIを使用します。
/api/v2/runtimeEnvironment/<id>/configs/details/<platform>
- •Secure Agentサービスのデフォルトのプロパティ設定を上書きするグループレベルのプロパティのリストを取得するには、次のURIを使用します。
/api/v2/runtimeEnvironment/<id>/configs/<platform>
GET応答
成功時の応答は、Secure Agentサービス、プロパティタイプ、およびプロパティタイプのオブジェクトの次のフィールドを返します。
フィールド | タイプ | 説明 |
---|
name | String | プロパティ名。 |
value | String | Secure Agentグループに追加されたすべてのエージェントに使用される値。 |
isCustom | Boolean | プロパティがカスタムプロパティかどうかを示します。 |
isSensitive | Boolean | プロパティ値で機密データがマスクされているかどうかを示します。 |
GET応答の例
次の例は、Secure Agentサービスのデフォルトのプロパティ設定をオーバーライドしたプロパティに関する情報を取得する要求を示しています。
GET <serverUrl>/api/v2/runtimeEnvironment/<id>/configs/<platform> HTTP/<HTTP version>
Content-Type: application/json
Accept: application/json
icSessionId: <SessionId>
Secure Agentサービスのデフォルトのプロパティ設定を上書きしたプロパティを要求すると、次の例のような応答を受け取る場合があります。
{
"Data_Integration_Server": [
{
"TOMCAT_CFG": [
{
"name": "MySQL_JDBC_DRIVER_JARNAME",
"value": "mysql-connector-java-8.0.13.jar"
},
{
"name": "NetworkTimeoutPeriod",
"value": "335"
}
]
},
{
"PMRDTM_CFG": [
{
"name": "SalesforceConnectionTimeout",
"value": "311"
},
{
"name": "customConfig-DTM-DIX-linux",
"value": "custom-new",
"isCustom": "true"
}
]
}
]
}
PUT要求
Secure AgentグループのSecure Agentサービスプロパティを設定するために使用します。設定したプロパティによって、指定されたSecure Agentサービスのデフォルトのプロパティ設定が上書きされます。URIにSecure AgentグループのIDを含めます。
必要に応じて、URIにプラットフォームを含めます。linux64またはwin64を使用できます。デフォルトのプラットフォームはlinux64です。
次のURIを使用します。
/api/v2/runtimeEnvironment/<id>/configs/<platform>
要求の本文には、次の例のように、Secure Agentサービス名、プロパティタイプ、およびプロパティの名前と値のペアを含めます。
{
"<Secure Agent service name>": [
{
"<Property type 1>": [
{
"name": "<property name>",
"value": "<property value>"
},
{
"name": "<property name>",
"value": "<property value>"
}
]
},
{
"<Property type 2>": [
{
"name": "<property name>",
"value": "<property value>"
},
{
"name": "<property name>",
"value": "<property value>"
}
]
}
]
}
GET応答に示されているサービス名とプロパティ名を使用します。例えば、データ統合サーバーサービスの場合は、Data_Integration_Serverを使用します。
要求に含めないプロパティでは、既存の設定が保持されます。
プロパティタイプのオブジェクトに次のフィールドを含めます。
フィールド | タイプ | 必須 | 説明 |
---|
name | String | ○ | プロパティ名。 |
value | String | ○ | Secure Agentグループに追加されたすべてのエージェントに使用する値。 システムのデフォルト値を使用するには、APP_DEFAULTを使用します。 |
isCustom | Boolean | - | プロパティがカスタムプロパティかどうかを示します。 デフォルトはFalseです。 |
isSensitive | Boolean | - | プロパティ値で機密データがマスクするかどうかを示します。 デフォルトはFalseです。 |
成功した場合は成功コードを返し、失敗した場合はエラーを返します。
PUT要求の例
データ統合サーバーサービスのTOMCAT_CFGプロパティタイプを設定する場合、要求は次の例のようになります。
PUT <serverUrl>/api/v2/runtimeEnvironment/00000425000000000004/configs
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
{
"Data_Integration_Server": [
{
"TOMCAT_CFG": [
{
"name": "MySQL_JDBC_DRIVER_JARNAME",
"value": "mysql-connector-java-8.0.14.jar"
},
{
"name": "customConfig-Tomcat-DIS-linux",
"value": "custom-new",
"isCustom": "true"
}
]
}
]
}
DELETE要求
Secure Agentグループに設定されたSecure Agentサービスのプロパティ設定を削除できます。グループレベルのプロパティを削除すると、グループ内のすべてのSecure Agentの設定がSecure Agentサービスのデフォルト設定に変更されます。Secure Agentグループ用に作成されたカスタムプロパティは削除されます。
Secure Agentグループのプロパティ設定を削除するには、次のURIにSecure AgentグループのIDを含めます。
/api/v2/runtimeEnvironment/<id>/configs
成功した場合は成功コードを返し、失敗した場合はエラーを返します。