createCloudDBInstance

개요

CloudDB 인스턴스를 생성합니다.

요청

요청 헤더

헤더명 설명
x-ncp-apigw-timestamp 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp}
x-ncp-apigw-api-key APIGW에서 발급받은 키 값, v2를 사용할 경우 api-key는 사용하지 않습니다.
x-ncp-apigw-api-key:{API Gateway API Key}
x-ncp-iam-access-key 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Sub Account Access Key}
x-ncp-apigw-signature-v2 Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature}
Content-Type Request body content type을 application/json으로 지정
Content-Type: application/json

요청 바디

API 요청 시 필드명의 대소문자 구분이 필요합니다

필드명 필수 여부 타입 제약 사항 설명
cloudDBImageProductCode No String Cloud DB 이미지 상품 코드
getCloudDBImageProductList API를 통해서 필요한 입력값을 조회할 수 있습니다.
cloudDBProductCode No String default : 최소 사양으로 선택 Cloud DB 상품 스펙 코드
getCloudDBProductList API를 통해서 필요한 입력값을 조회할 수 있습니다.
dbKindCode Yes String DB 유형 코드< br /> MYSQL , MSSQL , REDIS
collation No String 문자셋
Korean_Wansung_CI_AS , SQL_Latin1_General_CP1_CI_AS 중에 하나 선택하며 MSSQL에서만 선택합니다.
dataStorageTypeCode No String default : SSD 데이터 스토리지 유형 코드
HDD , SSD 코드 중 입력 가능합니다.
isHa No boolean default : true 고가용성 여부
MSSQL은 HA 선택이 되지 않습니다. REDIS, MSSQL만 선택 가능합니다.
hostIp Conditional String 접근 호스트의 IP
접근하고자하는 웹 서버의 IP를 입력합니다. MYSQL만 가능합니다.
cloudDBServerName Conditional String Cloud DB 서버 이름
MSSQL의 경우에는 자체적으로 서버 이름 생성, MYSQL, REDIS는 직접 입력해야 합니다.
cloudDBServiceName Yes String Cloud DB 서비스 이름
Cloud DB에서 사용하고자하는 서비스 이름을 입력합니다.
cloudDBBasicName Conditional String Cloud DB의 DB명
MYSQL에서만 설정 가능합니다.
cloudDBUserName Conditional String 접근 유저명
MYSQL, MSSQL에서만 설정 가능합니다.
cloudDBUserPassword Conditional String 접근 패스워드
MYSQL, MSSQL에서만 설정 가능합니다.
cloudDBPort No integer Cloud DB 포트
(MSSQL)1433, (MYSQL) 3306, (REDIS) 6379, 가용포트 10000 ~ 20000으로 Validation 체크
cloudDBConfigGroupoNo No String default : 0 (mssql_2016_default) Config Group 번호
getCloudDBConfigGroupList API를 이용해서 조회 가능하며 MSSQL에서만 설정 가능합니다. default = 0
isBackup No bool default : false 백업 여부
MYSQL, MSSQL에서는 백업여부 True 고정, REDIS에서만 설정 가능, 고가용성이(isHa) True이면 True, False 불가능합니다.
backupFileRetentionPeriod No integer default : 1일 (1~30까지 입력 가능) 백업 파일 보관 기간
백업 파일을 보관할 기간을 입력합니다. (1일부터 최대 30일까지 입력 가능합니다.)
isAutomaticBackup No bool default : true 자동 백업 여부
자동으로 백업시간을 설정할지에 대한 여부를 선택합니다.
backupTime Conditional String HHMM 15분 단위로 내림 1707 ==> 1700 백업 시간
isAutomaticBackup이 false일 경우 필수로 입력해야 합니다. 0430처럼 백업을 시작하는 시간을 15분 단위로 설정하면 됩니다.
regionNo No String 리전 번호
getRegionList API를 통해서 필요한 입력 값을 조회할 수 있습니다.
zoneNo No String Zone 번호
getZoneList API를 통해서 필요한 입력 값을 조회할 수 있습니다.
responseFormatType No String Resonse의 결과 포맷
API 실행 결과를 응답받을 format을 정합니다. XML과 JSON 중에서 선택 가능합니다.

응답

필드명 타입 설명 비고
returnCode Integer 응답 코드 값
returnMessage String 응답 메시지
totalRows Integer 응답 결과 row 수
cloudDBInstanceList[] String 생성된 cloud DB Instance 정보

예시

요청 예시

curl
-X GET "https://ncloud.apigw.ntruss.com/clouddb/v2/createCloudDBInstance?dbKindCode=MYSQL&dataStorageTypeCode=SSD&isHa=true&hostIp=%25&cloudDBServerName=test&cloudDBServiceName=test&cloudDBUserName=test&cloudDBUserPassword=test123&cloudDBBasicName=test&cloudDBPort=3306&isBackup=true&backupFileRetentionPeriod=1&isAutomaticBackup=true&regionNo=9&zoneNo=90&responseFormatType=json"
-H "accept: application/json"
-H "Content-Type: application/x-www-form-urlencoded"
-H "x-ncp-iam-access-key: Y0Z9EG0lKoeWAQCSHRtM"
-H "x-ncp-apigw-timestamp: 1545634234391"
-H "x-ncp-apigw-signature-v2: B7hM8hQ9DtitHxPFwimCG2Dir7MPLjRRVOkRRaxhYaE="

https://ncloud.apigw.ntruss.com/clouddb/v2/createCloudDBInstance?dbKindCode=MYSQL&dataStorageTypeCode=SSD&isHa=true&hostIp=%25&cloudDBServerName=test&cloudDBServiceName=test&cloudDBUserName=test&cloudDBUserPassword=test123&cloudDBBasicName=test&cloudDBPort=3306&isBackup=true&backupFileRetentionPeriod=1&isAutomaticBackup=true&regionNo=9&zoneNo=90&responseFormatType=json

요청 샘플

  • MySQL 서버 생성
    • 서버스펙 : default 최소사양 (2vCPU, 4G mem)
    • 데이터스토리지 : SSD
    • 고가용성 : true
    • DB명 : testdb
    • User명 : testuser
    • 접근 웹서버 IP : 1.1.1.1
    • region : KR-1
{
  "dbKindCode": "MYSQL",
  "dataStorageTypeCode": "SSD",
  "isHa": true,
  "hostIp": "1.1.1.1",
  "cloudDBServerName": "test",
  "cloudDBServiceName": "test",
  "cloudDBUserName": "testuser",
  "cloudDBUserPassword": "test123",
  "cloudDBBasicName": "testdb",
  "cloudDBPort": 3306,
  "isBackup": true,
  "backupFileRetentionPeriod": 1,
  "isAutomaticBackup": true,
  "regionNo": "1",
  "zoneNo": "2",
  "responseFormatType": "json"
}

응답 예시

connection: keep-alive
content-type: application/json;charset=UTF-8
date: Mon, 24 Dec 2018 08:59:40 GMT
server: nginx
transfer-encoding: chunked
x-ncp-trace-id: 6acpi6di6apj536ob5cksjcor2
{
  "createCloudDBInstanceResponse": {
    "returnCode": "0",
    "returnMessage": "success",
    "totalRows": 1,
    "cloudDBInstanceList": [
      {
        "cloudDBInstanceNo": "881713",
        "cloudDBServiceName": "test",
        "dbKindCode": "MYSQL",
        "engineVersion": "MYSQL5.7.19",
        "cpuCount": 2,
        "dataStorageType": {
          "code": "SSD",
          "codeName": "SSD"
        },
        "licenseCode": "GPL",
        "cloudDBPort": 3306,
        "isHa": true,
        "cloudDBInstanceStatusName": "creating",
        "collation": "",
        "createDate": "2018-12-24T17:59:00+0900",
        "cloudDBImageProductCode": "SPSWMYSQLLINUX01",
        "cloudDBProductCode": "SPSVRDBAAS000001",
        "isCloudDBConfigNeedReboot": false,
        "isCloudDBNeedReboot": false,
        "cloudDBConfigList": [],
        "cloudDBConfigGroupList": [],
        "accessControlGroupList": [],
        "cloudDBServerInstanceList": [
          {
            "cloudDBServerInstanceNo": "",
            "cloudDBServerInstanceStatusName": "pending",
            "cloudDBServerName": "test-001",
            "cloudDBServerRole": {
              "code": "M",
              "codeName": "Master"
            },
            "privateDnsName": "",
            "publicDnsName": "",
            "dataStorageSize": 10737418240,
            "usedDataStorageSize": 0,
            "createDate": "2018-12-24T17:59:00+0900"
          },
          {
            "cloudDBServerName": "test-002",
            "cloudDBServerRole": {
              "code": "H",
              "codeName": "Hidden Master"
            }
          }
        ]
      }
    ]
  }
}

오류 코드

Cloud DB API 요청이 잘못되었거나, 처리 도중 오류가 발생하면 HTTP 상태코드로 성공/실패를 반환하고 JSON 형식으로 상세 메시지를 반환합니다

오류 코드는 Cloud DB API의 ‘공통 오류 코드’와 ‘API Gateway 오류 코드’ 두 가지입니다

오류 코드 응답 메시지 설명
200 Ok
500 Server Error