将 REST API 用于数据库

可使用 REST API 来创建并管理数据库模式、数据库实例、数据库映像、数据库工作负载、模式类型以及系统插件。

注: . 在成功认证之后,服务器将返回两个 cookie(即 zsessionidSimpleToken),这些 cookie 应该随附于包含在同一会话中的后续 HTTP 请求。

可使用 HTTP 请求上的 accept-language 头来指定当生成响应数据时应该使用哪种受支持的系统语言。

可使用此 REST API 来完成下列任务:

数据库模式类型 REST 接口

列出模式类型信息

GET /resources/patternTypes/{dbaas_patterntype}/{version}
注: {dbaas_patterntype} 的值可以是 dbaas , dbaas.std.oltp 或 dbaas.std.datamart
表 1. 关于列出模式类型信息的详细信息。
示例 URL https://localhost/resources/patternTypes/dbaas/1.1  
响应内容类型 应用程序/json  
响应示例
{
   "status": "avail",
   "shortname": "dbaas",
   "prereqs": {
      "foundation": "2.0.0.0"
   },
   "version": "1.1",
   "builder": false,
   "name": "IBM Database Patterns",
   "description": "IBM Database Patterns",
   "url": "https://172.16.65.27:9444/storehouse/admin/patterntypes/dbaas/1.1/"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

更新数据库模式类型

PUT /resources/patternTypes/{dbaas_patterntype}/{version_vrmf}
注:
  • {dbaas_patterntype} 的值可为 dbaas.std.oltp 或 dbaas.std.datamart
  • {version_vrmf} 的格式应该为“vrmf”,例如:1.1.0.0
表 2. 有关更新数据库模式类型的详细信息。
示例 URL https://localhost/resources/patternTypes/ dbaas.std.oltp/1.1.0.0  
响应内容类型 应用程序/json  
响应示例
{
  "status": "accepted"
}

Valid status includes “accepted”, “avail”, “deprecated”

“accepted” will accept the license agreement.
“avail” will enable the pattern type
“unavail” will disable the pattern type
 
响应主体
{ "status": "accepted" }
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

显示模式类型的插件的列表

GET /resources/patternTypes/{dbaas_patterntype}/{version}/plugins 
注: {dbaas_patterntype} 的值可以是 dbaas , dbaas.std.oltp 或 dbaas.std.datamart
表 3. 有关显示模式类型的插件的列表的详细信息。
示例 URL https://localhost/resources/patternTypes/dbaas/1.1/plugins  
响应内容类型 应用程序/json  
响应示例
[
   "firewall/1.1.0.0",
   "tsm/1.1.0.0",
   "deployinlet/1.1.0.0",
   "iaas.WCA/1.1.0.0",
   "db2/1.1.0.0",
   "activator/1.1.0.0",
   "jaqlserver/1.1.0.0",
   "autoscaling/1.1.0.0",
   "troubleshooting/1.1.0.0",
   …
]
 
响应头位置 https://localhost/resources/applicationPatterns/a-4e21f6e9-2ca7-4a3a-a5cc-00f04f7b7f08  
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

插件配置 REST 接口

检索插件配置信息

GET /resources/plugins/{dbaas_plugin}/{version_ vrmf }/config
表 4. 有关检索插件配置信息的详细信息。
示例 URL https://localhost/resources/plugins/tsm/1.1.0.0/config  
响应内容类型 应用程序/json  
响应示例
{
   "config": {
      "parms": {
         "tcpserveraddress": "172.16.33.251",
         "tcpport": "1500",
         "adminusername": "admin",
         "db2domain": "DB2DOMAIN",
         "adminpassword": "<xor>bm1s"
      },
      "files": [
         "tsm/tsm_client-6.2.2.0-linuxx86-20110402.tgz"
      ],
      "version": "1.1.0.0",
      "patterntypes": {
         "primary": {
            "dbaas": "1.1"
         },
         "secondary": [
            {
               "webapp": "1.1"
            }
         ]
      },
      "name": "tsm",
      …
}
 
响应码 201 确定
  401 用户无权执行此操作。
  403 禁止访问
  404 找不到该插件。
  500 意外错误

数据库模式 REST 接口

列出所有数据库模式

GET /resources/applicationPatterns/?app_type=database
表 5. 关于列出所有数据库模式的详细信息。
示例 URL https://localhost/resources/applicationPatterns/?app_type=database  
响应内容类型 应用程序/json  
响应示例
[
   {
      "last_modifier": "cbadmin",
      "content_type": "application/json",
      "app_storehouse_base_url": "https://172.16.33.106:9444/storehouse/user/applications/a-4393478a-53b3-4eff-8245-340a7c232070/",
      "app_name": "db_pattern1",
      "locked": "false",
      "creator": "cbadmin",
      "create_time": "2011-09-01T01:57:02Z",
      "last_modified": "2011-09-01T01:57:26Z",
      "app_mgmtserver_url": "https://172.16.33.106:9443/services/applications/a-4393478a-53b3-4eff-8245-340a7c232070",
      "access_rights": {
         "cbadmin": "F"
      },
      "content_md5": "23AC9B1C16C7417BD6009133CA3BD50A",
      "app_type": "database",
      "app_id": "a-4393478a-53b3-4eff-8245-340a7c232070",
      "description": "Blank Database",
      "Collection": "."
   },
   ...   
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

创建数据库模式

POST /resources/applicationPatterns
表 6. 有关创建数据库模式的详细信息。
示例 URL https://localhost/resources/applicationPatterns/  
请求主体内容类型 内容类型 - application/json(主体是应用程序模型 json 文件)

内容类型 - application/zip(主体是压缩文件,其中包括应用程序模型和工件文件)

 
请求主体示例
{
    "model":{
        "app_type":"database",
        "patterntype":"dbaas",
        "version":"1.1",
        "name":"dbp_default",
        "description":"",
        "nodes":[{
                "attributes":{
                    "purpose":"production",
                    "source":"defaultWorkloadStandardApproach",
                    "dbDiskSize":30,
                    "enableBLU":"false"                                      "workloadStandard":"departmental_OLTP",
                    "sqlType":"DB2",
                    "dbTerritory":"US",
                    "dbCodeset":"UTF-8",
                    "dbCollate":"SYSTEM",
                    "versionName":"V97Linux",
                    "fixpackName":"db2_hybrid_en-9.7.0.5-linuxx64-20120112.tgz"
                },
                "type":"DB2",
                "id":"database"
            }
        ]
    }
}
"app_type:" 这必须是“database” "patterntype:" 这必须是“dbaas” 目的:从 Get resources/databaseProvisionPurposes 检索值"source:" 这可能是“workloadStandardApproach”、“defaultworkloadStandardApproach” 或 “cloneApproach”
响应内容类型 应用程序/json  
响应主体示例
{
   "content_type": "application/json",
   "last_modifier": "cbadmin",
   "create_time": "2012-05-14T01:54:48Z",
   "last_modified": "2012-05-14T01:55:53Z",
   "access_rights": {
      "cbadmin": "F"
   },
   "content_md5": "3EB002BE6EB3CE941FDE95668B283E35",
   "app_type": "database",
   "app_name": "dbp_default",
   "app_id": "a-2f6df81b-9fd3-48c7-b230-d7ea3cb1e005",
   "locked": "false",
   "creator": "cbadmin",
   "Collection": "."
}
 
响应头位置 https://localhost/resources/resources/applicationPatterns/a-2f6df81b-9fd3-48c7-b230-d7ea3cb1e005  
响应码 201 创建时间
  401 用户无权执行此操作。
  403 禁止访问
  412 提供的参数无效,例如,JSON 文件无效。
  415 内容类型无效
  500 意外错误

针对数据库模式标识指定的数据库模式上载 SQL 文件

PUT /resources/applicationPatterns/{db_pattern_id}/artifacts/{filename}
注: 如果文件已存在,那么将覆盖该文件。
表 7. 有关针对数据库模式标识指定的数据库模式上载 SQL 文件的详细信息。
示例 URL https://localhost/resources/applicationPatterns/a-8f076605-2201-4461-b80c-635ccc18af1d/artifacts/test.sql  
请求内容类型 application/octet-stream  
请求主体 sql 文件  
响应内容类型 应用程序/json  
响应主体示例
{
   "fileName": "test.sql",
   "file": "artifacts/test.sql",
   "file_name": "test.sql"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  404 找不到由 {dbid} 指定的应用程序。
  500 意外错误

更新由数据库模式标识指定的数据库模式

PUT /resources/applicationPatterns/{db_pattern_id}
表 8. 有关更新由数据库模式标识指定的数据库模式的详细信息。
示例 URL https://localhost/resources/applicationPatterns/a-cdaac959-672c-4df7-a648-b333a3843422  
请求内容类型和主体 内容类型 - application/json(主体是应用程序模型 json 文件)

内容类型 - application/zip(主体是压缩文件,其中包括应用程序模型和工件文件)

 
请求主体示例
{
"model":{
"app_type":"database",
"patterntype":"dbaas",
"version":"1.1",
"name":"db_pattern1",
"description":"",
"nodes":[{
"attributes":{
"purpose":"production",
"source":"defaultWorkloadStandardApproach",
"dbDiskSize":30,
"workloadStandard":"departmental_OLTP",
"sqlType":"DB2",
"dbTerritory":"US",
"dbCodeset":"UTF-8",
"dbCollate":"SYSTEM",
"versionName":"V97Linux",
"fixpackName":" db2_hybrid_en-9.7.0.5-linuxx64-20120112.tgz",
"dbSQLFile":"artifacts/test.sql"
},
"type":"DB2",
"id":"database"
}
]
}
}
 
响应内容类型 应用程序/json  
响应主体示例
{
"content_type": "application/json",
"last_modifier": "cbadmin",
"create_time": "2012-05-14T01:54:48Z",
"last_modified": "2012-05-14T01:55:53Z",
"access_rights": {
"cbadmin": "F"
},
"content_md5": "3EB002BE6EB3CE941FDE95668B283E35",
"app_type": "database",
"app_name": "db_pattern1",
"app_id": "a-2f6df81b-9fd3-48c7-b230-d7ea3cb1e005",
"locked": "false",
"creator": "cbadmin",
"Collection": "."
}
 
响应码 200 确定
注: 如果找不到由 {dbid} 指定的应用程序,那么 200 响应代码将返回以下响应: {"success": "false"})
  401 用户无权执行此操作。
  403 禁止访问
  404 找不到由 {db_pattern_id} 指定的应用程序。
  412 提供的参数无效,例如,json 文件无效。
  500 意外错误

为指定的用户名或组名更新数据库模式访问权

PUT /resources/applicationPatterns/{db_pattern_id}/accessRights/{name}?{user or group }
表 9. 有关为指定的用户名或组名更新数据库模式访问权的详细信息。
示例 URL https://localhost/resources/applicationPatterns/a-cdaac959-672c-4df7-a648-b333a3843422/accessRights/Everyone?group  
响应内容类型 应用程序/json  
响应示例
{ "access_rights": "F"}
 
响应码 200 确定
  401 用户无权执行此操作
  403 禁止访问
  404 找不到由 {dbid} 指定的应用程序。
  412 提供的参数无效,例如,json 文件无效。
  500 意外错误

删除由数据库模式标识指定的数据库模式

DELETE /resources/applicationPatterns/{db_pattern_id}
表 10. 有关删除由数据库模式标识指定的数据库模式的详细信息。
示例 URL https://localhost/resources/applicationPatterns/a-cdaac959-672c-4df7-a648-b333a3843422  
响应内容类型 应用程序/json  
响应主体示例
{
   "success": "true"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  409 冲突
  500 意外错误

数据库实例 REST 接口

列出所有数据库

GET    /resources/databases
表 11. 关于列出所有数据库的详细信息。
响应内容类型 应用程序/json  
响应主体示例
[
   {
      "status": "RUNNING",
      "dbname": "db01",
      "start_time": "2011-03-11T01:52:56.752Z",
      "id": "d-481b6a1e-3771-4d1a-914e-4ad5c392166e"
   },
   {
      "status": "RUNNING",
      "dbname": "db02",
      "start_time": "2011-03-10T02:19:30.688Z",
      "id": "d-57a630bc-5f23-48ae-a525-7fbfd11d035a"
   },
   ...
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

部署由数据库模式标识指定的数据库

POST /resources/applicationPatterns/{db_pattern_id}/virtualApplications
表 12. 有关部署由数据库模式标识指定的数据库的详细信息。
请求内容类型 应用程序/json  
请求主体 按云组部署:
{
	"deployment_name": "restdb",
	"cloud_group": "1",
        "ip_version": "IPv4",
        "ssh_keys":[""],
          "parameters":{
           "database.dbname":"restdb"
        }
}

或按环境概要文件部署:

{
	"deployment_name": "restdb",
	"environment_profile_id": "1",
        "cloud_group": "1",
        "ip_group": "1",
        "ssh_keys":[""],
         "parameters":{
           "database.dbname":"restdb"
        }
}
“deployment_name”是虚拟应用程序名称的可选参数。 缺省情况下,此参数是应用程序的名称。

“cloud_group”是部署所需的。

“ssh_keys”是部署的可选参数。

“ip_version”是部署所需的。

“environment_profile_id”是部署所需的。

“ip_group”是部署所需的。

响应内容类型 应用程序/json  
响应头位置 https://localhost/resources/applicationPatterns/a-bd0b540c-d285-4413-9095-cbbccc180261/virtualApplicationsd-7dadcdcc-d448-45e0-9103-1f3582aca870  
响应示例
{
   "status": "LAUNCHING",
   "deployment_name": "defdb",
   "deployment_url": "https://172.16.65.62:9443/services/deployments/d-c021e8c1-3d1a-4ac4-bdf9-f7312918cc5d",
   "deployment_id": "d-c021e8c1-3d1a-4ac4-bdf9-f7312918cc5d",
   "app_type": null,
   "app_id": "a-2f6df81b-9fd3-48c7-b230-d7ea3cb1e005",
   "creator": "cbadmin",
   "instances": [
   ],
   "creator_name": "cbadmin",
   "role_error": false
}
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 找不到由 {dbid} 指定的应用程序。
  412 前置条件失效(无法部署诸如模板之类的内容)
  500 意外错误

检索由数据库标识指定的数据库信息

GET /resources/databases/{dbid}
表 13: 有关检索由数据库标识指定的数据库详细信息的详细信息。
示例 URL https://localhost/resources/databases/d-4db8c121-58c4-400b-80da-a2e0f916d83f  
响应内容类型 应用程序/json  
响应主体示例
{
   "port": "50000",
   "status": "RUNNING",
   "appdba": {
      "jdbcurl":   "jdbc:db2://10.102.163.32:50000/mydb:user=appdba;password=8ga0AOQ79dkk1VwCQh;";,
      "dbpassword": "8ga0AOQ79dkk1VwCQh"
   },
   "host": "10.102.163.32",
   "dbname": "mydb",
   "id": "d-4db8c121-58c4-400b-80da-a2e0f916d83f",
   "description": "test",
   "appuser": {
      "jdbcurl": "jdbc:db2://10.102.163.32:50000/mydb:user=appuser;password=NQitXSzfpcZ6L3;";,
      "dbpassword": "NQitXSzfpcZ6L3"
   },
   "disksize": 4,
   "sqlType": "DB2",
   "creator":"cbadmin"
}


对于管理员:
{
   "port": "50000",
   "status": "RUNNING",
   "host": "10.102.163.32",
   "dbname": "mydb",
   "id": "d-4db8c121-58c4-400b-80da-a2e0f916d83f",
   "description": "test",
   "disksize": 4,
"sqlType": "DB2",
"creator":"cbadmin"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  404 找不到由 {dbid} 指定的应用程序。
  500 意外错误

销毁由数据库标识指定的数据库

PUT: /resources/virtualApplications/{dbid}
注: 在请求主体中,操作的值为 stop terminate
表 14: 有关销毁由数据库标识指定的数据库的详细信息。
示例 URL https://localhost/resources/virtualApplications/d-7956c64e-0fac-49f2-b04e-efbc131a4cc4  
响应内容类型 应用程序/json  
请求主体
{
"operation": "kill"
}
 
响应码 202 已接受
  401 用户无权执行此操作。
  403 禁止访问
  404 找不到由 {dbid} 指定的应用程序。
  409 冲突
  412 前置条件失效(操作无效)
  500 意外错误

删除由数据库标识指定的数据库

DELETE: /resources/virtualApplications/{dbid}
表 15: 有关删除由数据库标识指定的数据库的详细信息。
示例 URL https://localhost/resources/virtualApplications/d-7956c64e-0fac-49f2-b04e-efbc131a4cc4  
响应内容类型 应用程序/json  
请求主体
{"success":"true"}
 
响应码 200 正常 注意:如果找不到由 {dbid} 指定的部署,那么 200 响应代码返回,响应主体如下:{"success": "false"}
  401 用户无权执行此操作。
  403 禁止访问
  409 冲突(同一操作已在进行中)
  500 意外错误

数据库映像 REST 接口

列出所有数据库映像

GET:   /resources/dbimages
表 16: 关于列出所有数据库映像的详细信息。
示例 URL https://172.16.65.27/resources/dbimages  
响应内容类型 应用程序/json  
响应主体示例
[
   {
      "imagedescription": "test",
      "imagename": "myimage",
      "timestamp": "20070201194742",
      "host": "10.102.195.22",
      "dbname": "mydb",
      "id": "maunal_172.16.37.180_mydb_20110824034523.json",
      "platformtype": "x64",
      "ostype": "linux"
   },
    …
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

按 dbaasversionge 列出数据库映像

GET:   /resources/dbimages?dbaasversionge={version}
表 17: 有关按 dbaasversionge 列出数据库映像的详细信息。
示例 URL https://172.16.65.27/resources/dbimages?dbaasversionge=1.0.0.2  
响应内容类型 应用程序/json  
响应主体示例
[
   {
      "imagedescription": "test",
      "imagename": "myimage",
      "timestamp": "20070201194742",
      "host": "10.102.195.22",
      "dbname": "mydb",
      "id": "maunal_172.16.37.180_mydb_20110824034523.json",
      "platformtype": "x64",
      "ostype": "linux"
   },
    …
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

创建由数据库标识指定的数据库映像

Post: /resources/virtualApplications/{dbid}/operations
注: 创建数据库映像包含以下两个部分: 1) 手动创建数据库映像 2) 自动创建数据库映像
表 18: 有关手动创建由数据库标识指定的数据库映像的详细信息。
请求内容类型 应用程序/json  
请求主体
{
    "role": "database-db2.DB2",
    "type": "backup",
    "global": false,
    "parameters": {
        "imageName": "zjimage",
        "imageDescription": "zjimage1"
    },
    "script": "backup.py",
    "method": "",
    "roleType": "DB2"
   }

“imageName”是创建数据映像时的必需参数

“imageDescription”是可选参数。

 
响应内容类型 应用程序/json  
响应头位置 https://localhost/resources/virtualApplications/d-38751eb2-c965-4526-b4f8-3b8d5896b473/operations/o-df8f696a-24a3-41cd-9148-f29c3146ea4d  
响应主体示例
{
   "method": "",
   "artifacts": [
   ],
   "operationId": "o-df8f696a-24a3-41cd-9148-f29c3146ea4d",
   "global": false,
   "role": "database-db2.DB2",
   "type": "backup",
   "parameters": {
      "imageDescription": "test",
      "imageName": "image1"
   },
   "locale": "en,zh;q=0.7,en-us;q=0.3",
   "script": "backup.py",
   "result": {
      "database-db2.11305274949390.DB2": "PENDING"
   }
   }
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 找不到由 {dbid} 指定的应用程序
  412 前置条件失效(无法部署诸如模板之类的内容)
  500 意外错误
表 19: 有关自动创建由数据库标识指定的数据库映像的详细信息。
请求内容类型 应用程序/json  
请求主体
{
    "role":"database-db2.DB2",
    "type":"auto-backup",
    "parameters":{
        "frequency":"daily"
    }
}
“frequency”:必需参数,值可为 daily、weekly 或 off
 
响应内容类型 应用程序/json  
响应头位置 https://localhost/resources/virtualApplications/d-38751eb2-c965-4526-b4f8-3b8d5896b473/operations/o-df8f696a-24a3-41cd-9148-f29c3146ea4d  
响应主体示例
{
   "artifacts": [
   ],
   "global": false,
   "operation_id": "o-ed9ad4a7-101d-4625-95da-df2b4e6dc33c",
   "role": "database-db2.DB2",
   "locale": [
      "en",
      "zh"
   ],
   "parameters": {
      "frequency": "daily"
   },
   "type": "auto-backup",
   "script": "change_backup.py",
   "result": {
      "database-db2.11318932306120.DB2": "PENDING"
   }
}
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 找不到由 {dbid} 指定的应用程序
  412 前置条件失效(无法部署诸如模板之类的内容)
  500 意外错误

检索由数据库映像标识指定的数据库映像信息

Get: /resources/virtualApplications/{db_imageid}
表 20: 有关检索由数据库映像标识指定的数据库映像信息的详细信息。
示例 URL https://localhost/resources/dbimages/maunal_172.16.37.180_mydb_20110824034523.json  
请求内容类型 应用程序/json  
请求主体
{
      "imagedescription": "test",
      "imagename": "myimage",
      "timestamp": "20070201194742",
      "host": "10.102.195.22",
      "dbname": "mydb",
      "id": "maunal_172.16.37.180_mydb_20110824034523.json",
      "platformtype": "x64",
      "ostype": "linux"
   }
 
响应码 200 确定
  401 用户无权执行此操作。
  404 找不到由 {db_imageid} 指定的应用程序
  500 意外错误

数据库配置 REST 接口

更改由数据库标识指定的 appuser/appdba 密码

Post: /resources/virtualApplications/{dbid}/operations
表 21: 有关更改由数据库标识指定的 appuser/appdba 密码的详细信息。
请求内容类型 应用程序/json  
请求主体
{
    "role": "database-db2.DB2",
    "type": "configuration",
    "global": false,
    "parameters": {
        "DB2.APPDBAPASSWORD": newpassword1",
        "DB2.APPUSERPASSWORD": newpassword2"
    },
    "script": "change.py",
    "method": "",
    "depends": [
        
    ]
   }
 
响应内容类型 应用程序/json  
响应头位置 https://localhost/resources/virtualApplications/d-38751eb2-c965-4526-b4f8-3b8d5896b473/operations/o-d640dcfc-5339-4f37-bfd2-a67c1780e3e0  
响应示例
{
   "method": "",
   "artifacts": [
   ],
   "operationId": "o-d640dcfc-5339-4f37-bfd2-a67c1780e3e0",
   "global": false,
   "role": "database-db2.DB2",
   "depends": [
   ],
   "type": "configuration",
    "parameters": {
        "DB2.APPDBAPASSWORD": newpassword1",
        "DB2.APPUSERPASSWORD": newpassword2"
    },
   "locale": "en,zh;q=0.7,en-us;q=0.3",
   "script": "change.py",
   "result": {
      "database-db2.11305181893569.DB2": "PENDING"
   }
   }
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 找不到由 {dbid} 指定的应用程序
  412 前置条件失效(无法部署诸如模板之类的内容)
  500 意外错误

数据库工作负载 REST 接口

获取数据库工作负载列表

Get: /resources/databaseWorkloads
表 22: 有关获取数据库工作负载列表的详细信息。
响应内容类型 应用程序/json  
请求主体
[
   {
      "rate": "3",
      "workload_type": "Departmental OLTP",
      "workload_file": "customized_oltp.tgz",
      "is_system": "false",
      "version": "1.1.0.0",
      "initial_disk_size": "1",
      "name": "customerized_workload",
      "description": "This is the customized workload"
},   ...
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

检索由数据库工作负载标识指定的数据库工作负载详细信息

Get: /resources/databaseWorkloads/{db_workloadid}
表 23: 有关检索由数据库工作负载标识指定的数据库工作负载详细信息的详细信息。
响应内容类型 应用程序/json  
请求主体
{
      "rate": "3",
      "workload_type": "Departmental OLTP",
      "workload_file": "customized_oltp.tgz",
      "is_system": "false",
      "version": "1.1.0.0",
      "initial_disk_size": "1",
      "name": "customerized_workload",
      "description": "This is the customized workload"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

数据库虚拟机日志记录 REST 接口

从由数据库标识和虚拟机标识指定的数据库 VM 获取日志列表

Get:  /log/virtualApplications/{dbid} /virtualMachines/{vmid}
表 24: 有关从由数据库标识和虚拟机标识指定的数据库虚拟机获取日志列表的详细信息。
示例 URL https://localhost/log/virtualApplications/d-f8ac5627-a14e-417a-a56e-7084475ab704/virtualMachines/database-db2.11315462912266  
响应内容类型 应用程序/json  
响应主体示例
{
    "OS":["/var/log/messages",
        "/var/log/spooler",
        "/var/log/dmesg",
        "/var/log/brcm-iscsi.log",
        "/var/log/maillog",
        "/var/log/rpmpkgs",
        "/var/log/secure",
        "/var/log/cron",
        "/var/log/wtmp",
        "/var/log/yum.log",
        "/var/log/boot.log",
        "/var/log/acpid"
    ],
    "DB2":["/home/db2inst1/sqllib/log/instance.log",
        "/home/db2inst1/sqllib/db2dump/db2diag.log",
        "/home/db2inst1/sqllib/db2dump/db2inst1.nfy",
        "/home/db2inst1/sqllib/db2dump/stmmlog/stmm.0.log"
    ],
    "IWD Agent":["/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.AGENT/trace.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.AGENT/console.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.DB2/trace.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.DB2/console.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/console.log.0",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.systemupdate/trace.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.systemupdate/console.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/trace.log.0",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/install/trace.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/install/console.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.SSH/trace.log",
        "/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.SSH/console.log",
        "/0config/0config.log"
    ]
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

从由数据库标识和虚拟机标识及日志文件路径指定的数据库虚拟机获取日志内容

Get:  /log/virtualApplications/{dbid} /virtualMachines/{vmid}/{logFilePath}
表 25: 有关从由数据库标识和虚拟机标识及日志文件路径指定的数据库虚拟机获取日志内容的详细信息。
示例 URL https://locahost/log/virtualApplications/d-f8ac5627-a14e-417a-a56e-7084475ab704/virtualMachines/database-db2.11315462912266/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.DB2/console.log  
请求头 Range bytes=4849-484932767

(范围用来指定要从日志文件中获取的内容的起始位置和结束位置)

 
响应内容类型 文本/纯文本  
请求主体

[2011-09-08 06:59:57,572] DB2/install.py 47904813321408 pid=14758 INFO Creating and configuring a DB2 instance

[2011-09-08 06:59:57,618] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/tune_OS.sh

[2011-09-08 07:00:17,967] DB2/install.py 47904813321408 pid=14758 INFO Creating and configuring a DB2 database

[2011-09-08 07:00:17,967] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/tune_inst.sh

[2011-09-08 07:01:17,343] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/tune_db.sh

[2011-09-08 07:01:17,343] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/int_db.sh

 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

从由数据库标识和虚拟机标识及日志文件路径指定的数据库 VM 下载日志内容

Get:  /log/virtualApplications/{dbid} /virtualMachines/{vmid}/{logFilePath}?action=download
表 26: 有关从由数据库标识和虚拟机标识及日志文件路径指定的数据库虚拟机下载日志内容的详细信息。
示例 URL https://locahost/log/virtualApplications/d-f8ac5627-a14e-417a-a56e-7084475ab704/virtualMachines/database-db2.11315462912266/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/logs/database-db2.11315462912266.DB2/console.log  
响应内容类型 文本/纯文本  
响应头 Content-Disposition attachment; filename="_opt_IBM_WebSphere_AppServer_profiles_AppSrv01_logs_server1_native_stdout.log"  
请求主体示例

[2011-09-08 06:59:57,572] DB2/install.py 47904813321408 pid=14758 INFO Creating and configuring a DB2 instance

[2011-09-08 06:59:57,618] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/tune_OS.sh

[2011-09-08 07:00:17,967] DB2/install.py 47904813321408 pid=14758 INFO Creating and configuring a DB2 database

[2011-09-08 07:00:17,967] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/tune_inst.sh

[2011-09-08 07:01:17,343] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/tune_db.sh

[2011-09-08 07:01:17,343] DB2/install.py 47904813321408 pid=14758 ERROR not find the script:/opt/IBM/maestro/agent/usr/servers/database-db2.11315462912266/scripts/DB2/workloads/departmental_OLTP/int_db.sh

 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

定制工作负载标准 REST 接口

创建定制数据库工作负载标准

POST /resources/databaseWorkloads
表 27: 创建定制数据库工作负载标准。
示例 URL https://localhost/resources/databaseWorkloads/  
响应内容类型 应用程序/json  
请求主体示例
{
"name":"dwl1",
"description":"the first one",
"workload_type":"Departmental_OLTP",
"initial_disk_size":"1",
"rate":"3",
"is_system":"false",
"version": "1.1.0.1",
"workload_file":"customized_oltp.zip"
}

workload_type:值必须为“Departmental_OLTP”或“Dynamic Data Mart”

initial_disk_size:值必须从 0 到 2000

rate:值必须是从 1 到 3

is_system:值必须为“false”

workload_file:文件必须为压缩文件,并且文件名不能以数字或下划线开头。

响应示例
{
   "rate": "3",
   "workload_type": "Departmental_OLTP",
   "is_system": "false",
"workload_file":"customized_oltp.zip",
   "initial_disk_size": "1",
   "version": "1.1.0.1",
   "name": "dwl1",
   "id": "a82c2322-cd9b-4419-a184-84fec9515f9d ",
   "description": "the first one"
}
 
响应头位置 https://localhost/resources/databaseWorkloads/a82c2322-cd9b-4419-a184-84fec9515f9d  
响应码 201 创建时间
  401 用户无权执行此操作。
  403 禁止访问
  412 提供的参数无效,例如,json 文件无效。
  415 内容类型无效
  500 意外错误

上载由数据库工作负载标准标识指定的定制数据库工作负载标准的压缩文件

PUT /resources/workloadFiles/{db_workload_standard_id}?filename={filename}
注: 此步骤是创建定制工作负载标准所必需的。 如果此文件已经存在,那么执行此操作将覆盖此文件。
表 28: 上载定制数据库工作负载标准的压缩文件
示例 URL https://localhost/resources/workloadFiles/a82c2322-cd9b-4419-a184-84fec9515f9d?filename=customized_oltp.zip {filename} 必须与元 json 文件中“workload_file”的值相同。
请求内容类型 应用程序/x-zip 压缩  
请求主体 压缩文件  
响应内容类型 应用程序/json  
响应主体示例
{
   "success": "true",
   "filename": "customized_oltp.zip"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  404 未找到由 {db_workload_standard_id} 指定的数据库工作负载标准。
  500 意外错误

列出所有数据库工作负载标准

GET /resources/databaseWorkloads/
表 29: 列出所有数据库工作负载标准。
示例 URL https://localhost/resources/databaseWorkloads/  
响应内容类型 应用程序/json  
响应示例
[
   {
      "rate": "3",
      "workload_type": "Departmental OLTP",
      "workload_file": "departmental_OLTP.zip",
      "is_system": "true",
      "version": "1.1.0.1",
      "initial_disk_size": "1",
      "name": "Departmental Transactional",
      "id": "departmental_OLTP",
      "description": "For databases primarily used for online transaction processing (OLTP). The database will be optimized for transactional applications."
   },
   {
      "rate": "3",
      "workload_type": "Dynamic Data Mart",
      "workload_file": "dynamic_datamart.zip",
      "is_system": "true",
      "version": "1.1.0.1",
      "initial_disk_size": "1",
      "name": "Data Mart",
      "id": "dynamic_datamart",
      "description": "For databases primarily used for data warehousing. The database will be optimized for reporting applications."
   },
   {
      "rate": "3",
      "workload_type": "Departmental OLTP",
      "workload_file": " customized_oltp.zip",
      "is_system": "false",
      "version": "1.1.0.1",
      "initial_disk_size": "1",
      "name": "dwl1",
      "id":"a82c2322-cd9b-4419-a184-84fec9515f9d ",
      "description": "the first one"
   }
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

更新由数据库工作负载标准标识指定的定制数据库工作负载标准

注: 无法更新两个缺省数据库工作负载标准,即 "部门事务" 和 "数据集市"。
PUT /resources/databaseWorkloads/{db_workload_standard_id}
表 30: 更新定制数据库工作负载标准。
示例 URL https://localhost/resources/databaseWorkloads/a82c2322-cd9b-4419-a184-84fec9515f9d  
请求内容类型 应用程序/json  
请求主体示例
{
   "rate": "5",
   "workload_type": "Departmental_OLTP",
   "is_system": "false",
   "initial_disk_size": "1",
   "version": "1.1.0.1",
   "name": "dwl1",
   "id": "a82c2322-cd9b-4419-a184-84fec9515f9d ",
   "description": "the first one",
   "workload_file":" customized_oltp.zip"
}

workload_type:值必须为“Departmental_OLTP”或“Dynamic Data Mart”

initial_disk_size:值必须从 0 到 500

rate:值必须是从 1 到 3

is_system:值必须为“false”

workload_file:文件必须为压缩文件,并且文件名不能以数字或下划线开头。

响应内容类型 应用程序/json  
响应主体示例
{
   "rate": "5",
   "workload_type": "Departmental_OLTP",
   "is_system": "false",
   "workload_file": "customized_oltp.zip",
   "initial_disk_size": "1",
   "version": "1.1.0.1",
   "name": "dwl1",
   "id": "a82c2322-cd9b-4419-a184-84fec9515f9d ",
   "description": "the first one"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  404 未找到由 {db_workload_standard_id} 指定的数据库工作负载标准。
  412 提供的参数无效,例如,json 文件无效。
  500 意外错误

下载由定制数据库工作负载标准标识和压缩文件名指定的定制数据库工作负载标准的压缩文件

GET /resources/dbdownloadzip/{db_workload_standard_id}/artifact/{File Name}
表 31: 下载定制数据库工作负载标准的压缩文件。
示例 URL https://locahost/resources/dbdownloadzip/a82c2322-cd9b-4419-a184-84fec9515f9d/artifact/customized_oltp.zip  
响应内容类型 application/octet-stream  
响应主体 定制数据库工作负载标准的压缩文件  
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  404 找不到由 {db_workload_standard_id} 和 {File Name} 指定的定制数据库工作负载标准的压缩文件。
  500 意外错误

下载由缺省数据库工作负载标准标识和压缩文件名指定的缺省数据库工作负载标准的压缩文件

GET /resources/downloadSysZip/{db_workload_standard_id}/artifact/{File Name}
表 32: 下载缺省数据库工作负载标准的压缩文件。
示例 URL https://locahost/resources/downloadSysZip/Departmental_OLTP.zip  
响应内容类型 application/zip  
响应头 内容处理附件;filename="Departmental_OLTP.zip"  
响应主体 预定义的数据库工作负载标准的压缩文件  
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

删除由定制数据库工作负载标准标识指定的定制数据库工作负载标准

注: 无法删除两个缺省数据库工作负载标准,即 "部门事务" 和 "数据集市"。
DELETE /resources/databaseWorkloads/{db_workload_standard_id}
表 33: 删除定制数据库工作负载标准。
示例 URL https://localhost/resources/ databaseWorkloads/a82c2322-cd9b-4419-a184-84fec9515f9d  
请求内容类型 应用程序/json  
请求主体示例
{
   "success": "true"
}
 
响应码 200 确定

注: 如果找不到 {db_workload_standard_id} 指定的数据库工作负载标准,那么将返回 200 响应代码,响应主体: {"success": "false"}

  401 用户无权执行此操作。
  403 禁止访问
  409 冲突
  500 意外错误

用户管理 REST 接口

创建用户

POST /resources/virtualApplications/{dbid}/operations
表 34: 创建用户。
示例 URL https://localhost:port /resources/virtualApplications/d-0a70a575-4bac-420e-8c7a-e663d2448e10/operations/  
响应内容类型 应用程序/json  
请求示例
{"role":"database-db2.DB2",
"type":"createDB2User",
"parameters":{
"sshAccess":"Deny",
"userName":"newuser",
"password":"<xor>bm1s",
"authLevel":["SYSADM","SYSCTRL","SYSMAINT","SYSMON"]},
"groups":{}}
 
响应主体示例
{
   "target": "ALL",
   "artifacts": [
   ],
   "preset_status": "CONFIGURING",
   "global": false,
   "operation_id": "o-6562b92e-3a58-42d1-8601-7275543afff3",
   "rolling": false,
   "role": "database-db2.DB2",
   "locale": [
      "en",
      "zh_CN",
      "en_US"
   ],
   "parameters": {
      "userName": "newuser",
      "password": "< xor >bm1s",
      "sshAccess": "Deny",
      "authLevel": [
         "SYSADM",
         "SYSCTRL",
         "SYSMAINT",
         "SYSMON"
      ]
   },
   "type": "createDB2User",
   "script": "create_db2_user.py",
   "result": {
      "database-db2.11336320285009.DB2": "PENDING"
   }
}
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 找不到由 {dbid} 指定的应用程序
  500 意外错误

更改指定用户的密码

POST /resources/virtualApplications/{dbid}/operations
注: 此步骤是创建定制工作负载标准所必需的。 如果此文件已经存在,那么执行此操作将覆盖此文件。
表 35: 更改密码
示例 URL https://localhost:port /resources/virtualApplications/d-0a70a575-4bac-420e-8c7a-e663d2448e10/operations/  
请求内容类型 应用程序/json  
请求示例
{"role":"database-db2.DB2","type":"resetPassword","parameters":{"userName":"newuser","newPassword":"<xor>a2pp"},"groups":{}}
 
响应主体示例
{
   "target": "ALL",
   "artifacts": [
   ],
   "preset_status": "CONFIGURING",
   "global": false,
   "operation_id": "o-97943167-3704-49c5-a332-2aa4bea7f6f3",
   "rolling": false,
   "role": "database-db2.DB2",
   "locale": [
      "en",
      "zh_CN",
      "en_US"
   ],
   "parameters": {
      "userName": "newuser",
      "newPassword": "<xor>a2pp"
   },
   "type": "resetPassword",
   "script": "change_user_password.py",
   "result": {
      "database-db2.11336320285009.DB2": "PENDING"
   }
}
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 找不到由 {dbid} 指定的应用程序
  500 意外错误

列出指定数据库的所有用户

GET /resources/dbusers?deploymentID={dbid}
表 36: 列出所有用户。
示例 URL https://localhost:port/resources/dbusers?deploymentID= d-0a70a575-4bac-420e-8c7a-e663d2448e10  
响应内容类型 应用程序/json  
响应示例
 [
   {
      "userName": "new1",
      "authLevel": "SYSADM",
      "sshAccess": "Deny"
   },
   {
      "userName": "new2",
      "authLevel": "",
      "sshAccess": "Deny"
   },
   {
      "userName": "user2",
      "authLevel": "SYSADM,SYSMAINT",
      "sshAccess": "Allow"
   },
   {
      "userName": "user4",
      "authLevel": "SYSADM,SYSCTRL,SYSMAINT,SYSMON",
      "sshAccess": "Allow"
   },
   {
      "userName": "newuser",
      "authLevel": "SYSADM,SYSCTRL,SYSMAINT,SYSMON",
      "sshAccess": "Deny"
   }
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

删除指定用户

POST /resources/virtualApplications/{dbid}/operations
表 37: 删除用户。
示例 URL https://localhost:port/resources/virtualApplications/d-0a70a575-4bac-420e-8c7a-e663d2448e10/operations  
请求内容类型 应用程序/json  
请求主体示例
{"role":"database-db2.DB2","type":"userList","global":false,"role_type":"DB2","parameters":{"userName":"newuser"}}
 
响应主体示例
{
   "target": "ALL",
   "artifacts": [
   ],
   "preset_status": "CONFIGURING",
   "global": false,
   "operation_id": "o-f8d41175-99f0-4aa4-a8a7-9dbedbe2a4de",
   "rolling": false,
   "role": "database-db2.DB2",
   "locale": [
      "en",
      "zh_CN",
      "en_US"
   ],
   "parameters": {
      "userName": "newuser"
   },
   "type": "userList",
   "script": "delete_user.py",
   "result": {
      "database-db2.11336320285009.DB2": "PENDING"
   }
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

DB2 修订包 REST 接口

注: 需要执行 "创建" , "上载" 和 "更新" 步骤才能创建修订包。

创建 DB2 修订包

POST /resources/virtualApplications/{dbid}/operations
表 38: 创建 DB2 修订包。
示例 URL https://localhost/resources/db2Fixes/  
请求内容类型 应用程序/json  
请求主体示例
{"name":"v97fp6","description":"db2 v97fp6"}
 
响应内容类型 应用程序/json  
响应主体示例
{
   "name": "v97fp6",
   "id": " cc0c684d-8ca4-4aa3-83e4-8436d5623a16",
   "description": "db2 v97fp6"
}
 
响应头位置 https://localhost/resources/db2Fixes/cc0c684d-8ca4-4aa3-83e4-8436d5623a16  
响应码 201 创建时间
  401 用户无权执行此操作。
  403 禁止访问
  412 提供的参数无效,例如,json 文件可能无效。
  415 内容类型无效
  500 意外错误

按 DB2 修订包包名上载包文件

PUT /resources/fixFiles/{packagename}
注: 如果此文件已存在,那么执行此操作将覆盖此文件。
表 39: 按名称上载程序包文件。
示例 URL https://localhost/resources/fixFiles/v9.7fp6_linuxx64_server.tgz  
请求内容类型 application/x-compressed  
请求主体 程序包文件  
响应内容类型 应用程序/json  
响应主体示例
{
   "fileName": "v9.7fp6_linuxx64_server.tgz",
   "file": "v9.7fp6_linuxx64_server.tgz",
   "file_name": "v9.7fp6_linuxx64_server.tgz"
} 
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

按 DB2 修订包名更新程序包文件

PUT /resources/db2Fixes/{db_fixpack_id}
表 40: 按名称更新程序包文件。
示例 URL https://localhost/resources/db2Fixes/cc0c684d-8ca4-4aa3-83e4-8436d5623a16  
请求内容类型 应用程序/json  
请求主体示例
{"name":"v97fp6","description":"db2 v97fp6","packageFile":"v9.7fp6_linuxx64_server.tgz","id":"cc0c684d-8ca4-4aa3-83e4-8436d5623a16"}
"id:" 必须与 URL 中的 {db2_fixpack_id} 相同。
响应内容类型 应用程序/json  
响应主体示例
 {
   "db2level": "9.7.0.6",
   "packageFile": "v9.7fp6_linuxx64_server.tgz",
   "platform": "linuxx64",
   "db2version": "9.7",
   "id": "cc0c684d-8ca4-4aa3-83e4-8436d5623a16",
   "name": "v97fp6",
   "description": "db2 v97fp6"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  404 未找到由 {db_workload_standard_id} 指定的 DB2 修订包。
  412 提供的参数无效,例如,json 文件可能无效。
  500 意外错误

列出所有 DB2 修订包

GET /resources/db2Fixes /
表 41: 列出所有 DB2 修订包。
示例 URL https://localhost/resources/db2Fixes/  
请求内容类型 应用程序/json  
响应主体示例
[
   {
      "id": "25b3b7ff-dea8-4e97-8715-2a2d7a37a9a1",
      "name": "db2v97fp7",
      "description": "db2 v97fp7",
"db2level": "9.7.0.7",
      "platform": "linuxx64",
      "db2version": "9.7",
"packageFile": "v9.7fp7_linuxx64_server.tgz"
   },
   {
      "id": "cc0c684d-8ca4-4aa3-83e4-8436d5623a16",
      "name": "v97fp6",
      "description": "db2 v97fp6",
"db2level": "9.7.0.6",
      "platform": "linuxx64",
      "db2version": "9.7",
"packageFile": "v9.7fp6_linuxx64_server.tgz"
   }
]
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

列出对 Db2 升级有效的所有修订包

GET /resources/db2FixesKS?forMatadata=true
表 42: 列示对 DB2 升级有效的所有修订包。
示例 URL https://localhost:port/resources/db2FixesKS?forMetadata=true  
响应内容类型 应用程序/json  
响应主体示例
{
   "items": [
      {
         "value": " v9.7fp6_linuxx64_server.tgz",
         "name": " v97fp6"
      }
   ],
   "label": "name",
   "identifier": "value"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

列出对于创建数据库模式或数据库实例有效的所有 DB2 修订包

GET /resources/db2Fixes/
表 43: 列示对于创建数据库模式或数据库实例有效的所有 DB2 修订包。
示例 URL https://localhost/resources/db2Fixes?forUI=true  
响应内容类型 应用程序/json  
响应主体示例
{
   "items": [
      {
         "value": "db2_hybrid_en-9.7.0.5-linuxx64-20120112.tgz",
         "platform": "linuxx64",
         "db2version": "9.7",
         "name": "DB2 Version 9.7 Fix Pack 5 for Linux"
      },
      {
         "value": "db2_hybrid_en-9.7.0.5-aix64-20120112.tgz",
         "platform": "aix64",
         "db2version": "9.7",
         "name": "DB2 Version 9.7 Fix Pack 5 for AIX"
      },
      {
         "value": "db2_hybrid_en-10.1.0.0-linuxx64-20120312.tgz",
         "platform": "linuxx64",
         "db2version": "10.1",
         "name": "DB2 Version 10.1 for Linux"
      },
      {
         "value": "db2_hybrid_en-10.1.0.0-aix64-20120312.tgz",
         "platform": "aix64",
         "db2version": "10.1",
         "name": "DB2 Version 10.1 for AIX"
      },
      {
         "value": "v9.7fp6_linuxx64_server.tgz",
         "platform": "linuxx64",
         "db2version": "9.7",
         "name": " v97fp6"
      }
   ],
   "label": "name",
   "identifier": "value"
}
 
响应码 200 确定
  401 用户无权执行此操作。
  403 禁止访问
  500 意外错误

创建使用 DB2 修订包的数据库模式

POST /resources/applicationPatterns
表 44: 创建使用 DB2 修订包的数据库模式。
示例 URL https://localhost/resources/applicationPatterns/  
请求主体内容类型 内容类型 - application/json(主体是应用程序模型 json 文件)

内容类型 - application/zip(主体是压缩文件,其中包括应用程序模型和工件文件)

 
请求主体示例
{
"model":{
"app_type":"database",
"patterntype":"dbaas",
"version":"1.1",
"name":" respattern ",
"description":"",
"nodes":[{
"attributes":{
"purpose":"production",
"source":"defaultWorkloadStandardApproach",
"dbDiskSize":30,
"enableBLU":"false"
"workloadStandard":"departmental_OLTP",
"sqlType":"DB2",
"dbTerritory":"US",
"dbCodeset":"UTF-8",
"dbCollate":"SYSTEM",
"versionName":"V97Linux",
"fixpackName":" v9.7fp6_linuxx64_server.tgz "
},
"type":"DB2",
"id":"database"

]
}
}
"app_type:" 这必须是“database” "patterntype:" 这必须是“dbaas” 目的:从 Get resources/databaseProvisionPurposes 检索值"source:" 这可能是 “defaultWorkloadStandardApproach"、"workloadStandardApproach" 或 "cloneApproach”

fixpackName: 通过“列出用于创建数据库模式或数据库实例的所有 DB2 修订包”操作来予以检索。

请求内容类型 应用程序/json  
响应主体示例
{
   "content_type": "application/json",
   "last_modifier": "cbadmin",
   "create_time": "2012-02-28T07:36:25Z",
   "last_modified": "2012-02-28T07:36:26Z",
   "access_rights": {
      "cbadmin": "F"
   },
   "content_md5": "397A79B87AEA58F5E814014E57CD61C0",
   "app_type": "database",
   "app_name": "respattern",
   "app_id": "a-bd0b540c-d285-4413-9095-cbbccc180261",
   "locked": "false",
   "creator": "cbadmin",
   "Collection": "."
}
 
响应头位置 https://localhost/resources/resources/applicationPatterns/a-bd0b540c-d285-4413-9095-cbbccc180261  
响应码 201 创建时间
  401 用户无权执行此操作。
  403 禁止访问
  412 提供的参数无效,例如,json 文件可能无效。
  415 内容类型无效
  500 意外错误

以使用 DB2 修订包的数据库模式部署数据库

POST /resources/applicationPatterns/{db_pattern_id}/virtualApplications
表 45: 以使用 DB2 修订包的数据库模式部署数据库
请求内容类型 应用程序/json  
请求主体示例
{
    "cloud_group":"1",
    "ssh_keys":[""
    ],
    "parameters":{
        "database.dbname":"restdb"
    },
    "deployment_name":"restdb"
}
"deployment_name":数据库名称的可选参数。 缺省情况下,它将是数据库的名称。

"cloud_group":部署的必需参数。

响应内容类型 应用程序/json  
响应头位置 https://localhost/resources/applicationPatterns/a-bd0b540c-d285-4413-9095-cbbccc180261/virtualApplicationsd-7dadcdcc-d448-45e0-9103-1f3582aca870  
响应示例
{
   "status": "LAUNCHING",
   "deployment_name": "restdb",
   "deployment_url": "https://172.16.65.196:9443/services/deployments/d-7dadcdcc-d448-45e0-9103-1f3582aca870",
   "deployment_id": "d-7dadcdcc-d448-45e0-9103-1f3582aca870",
   "app_type": null,
   "app_id": "a-bd0b540c-d285-4413-9095-cbbccc180261",
   "creator": "cbadmin",
   "instances": [
   ],
   "creator_name": "cbadmin",
   "role_error": false
}
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 未找到由 {db_workload_standard_id} 指定的 DB2 修订包。
  412 提供的参数无效,例如,json 文件可能无效。
  500 意外错误

升级已部署的数据库

POST /resources/virtualApplications/{dbid}/operations
表 46: 升级已部署的数据库。
示例 URL https://localhost:port /resources/virtualApplications/d-7dadcdcc-d448-45e0-9103-1f3582aca870/operations/  
响应内容类型 应用程序/json  
请求示例
{"role":"database-db2.DB2","type":"applyFixpacks","parameters":{"fixpackName":"v9.7fp6_linuxx64_server.tgz"}}

fixpackName:通过“列出对 DB2 升级有效的所有修订包”操作来予以检索。
响应主体示例
{
   "method": "",
   "artifacts": [
   ],
   "global": false,
   "rolling": false,
   "parameters": {
      "fixpackName": " v9.7fp6_linuxx64_server.tgz "
   },
   "script": "upgrade_db2.py",
   "target": "All",
   "preset_status": "CONFIGURING",
   "operation_id": "o-bfd25639-68e6-4945-b58e-61ee06a29d13",
   "role": "database-db2.DB2",
   "type": "applyFixpacks",
   "locale": [
      "en",
      "en_US",
      "zh_CN"
   ],
   "result": {
      "database-db2.11331028257308.DB2": "PENDING"
   }
}
 
响应码 201 创建时间
  401 用户无权执行此操作。
  404 未找到由 {db_workload_standard_id} 指定的 DB2 修订包。
  412 提供的参数无效,例如,json 文件可能无效。
  500 意外错误

升级数据库应用程序

PUT /resources/virtualApplications/{dbid}
表 47: 升级数据库应用程序。
示例 URL https://localhost /resources/virtualApplications/d-fb6a73e7-f9a2-465f-8357-f26fd7b8a717  
请求主体内容类型 应用程序/json  
请求主体示例
{"operation":"upgrade"}
 
响应主体示例 true  
响应码 202 已接受
  401 用户无权执行此操作。
  403 禁止访问
  404 找不到由 {dbid} 指定的应用程序
  409 冲突
  412 提供的参数无效,例如,json 文件可能无效。
  500 意外错误

删除指定的 DB2 修订包

DELETE /resources/db2Fixes/{db2_fixpack_id}
表 48: 删除指定的 DB2 修订包。
示例 URL https://localhost/resources/db2Fixes/cc0c684d-8ca4-4aa3-83e4-8436d5623a16  
响应内容类型 应用程序/json  
响应示例
{
   "success": "true"
}
 
响应码 200 确定

注释:如果未找到 {db2_fixpack_id} 指定的 DB2 修订包,那么返回 200 响应代码,响应主体:{"success": "false"})

  401 用户无权执行此操作。
  404 禁止访问
  409 冲突
  500 意外错误