CEV 생성 - Amazon Relational Database Service

CEV 생성

AWS Management Console 또는 AWS CLI를 사용하여 CEV를 생성할 수 있습니다. 멀티테넌트 또는 비 멀티테넌트 아키텍처를 지정합니다. 자세한 내용은 멀티테넌트 아키텍처 고려 사항 단원을 참조하십시오.

일반적으로 CEV 생성에는 약 2시간이 소요됩니다. CEV를 생성한 후 이를 사용하여 RDS Custom DB 인스턴스를 생성할 수 있습니다. 자세한 내용은 RDS Custom for Oracle DB 인스턴스 생성 단원을 참조하십시오.

CEV 생성에 대해 다음과 같은 요구 사항 및 제한 사항에 유의합니다.

  • 단, 설치 파일이 포함된 Amazon S3 버킷이 CEV와 동일한 AWS 리전에 있어야 하며, 그렇지 않으면 생성 프로세스가 실패합니다.

  • CEV 이름은 major-engine-version.customized_string과 같은 19.cdb_cev1 형식이어야 합니다.

  • CEV 이름은 1~50개의 영숫자, 밑줄, 대시 또는 마침표를 포함해야 합니다.

  • CEV 이름에는 19..cdb_cev1에서와 같이 연속된 마침표를 포함할 수 없습니다.

CEV를 생성하는 방법
  1. https://console.aws.amazon.com/rds/에서 AWS Management Console에 로그인한 후 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 사용자 지정 엔진 버전(Custom engine versions)을 선택합니다.

    사용자 지정 엔진 버전(Custom engine versions) 페이지에는 현재 존재하는 모든 CEV가 표시됩니다. CEV를 생성한 적이 없으면 페이지가 비어 있습니다.

  3. 사용자 지정 엔진 버전 생성(Create custom engine version)을 선택합니다.

  4. 엔진 옵션에서 다음을 수행합니다.

    1. 엔진 유형(Engine type)으로 Oracle을 선택합니다.

    2. 아키텍처 설정에서 필요에 따라 멀티테넌트 아키텍처를 선택하여 DB 엔진 custom-oracle-ee-cdb 또는 custom-oracle-se2-cdb를 사용하는 Oracle 멀티테넌트 CEV를 생성합니다. 멀티테넌트 CEV가 있는 RDS Custom for Oracle CDB만 생성할 수 있습니다. 이 옵션을 선택하지 않는 경우 CEV는 엔진 custom-oracle-ee 또는 custom-oracle-se2를 사용하는 비CDB입니다.

      참고

      선택한 아키텍처는 CEV의 영구적인 특성입니다. 나중에 다른 아키텍처를 사용하도록 CEV를 수정할 수 없습니다.

    3. 다음 옵션 중 하나를 선택합니다.

      • 새 CEV 생성 - 처음부터 CEV를 생성합니다. 이 경우 데이터베이스 바이너리를 지정하는 JSON 매니페스트를 지정해야 합니다.

      • 소스에서 CEV 생성 - 복사할 CEV 지정에서 소스 CEV로 사용할 기존 CEV를 선택합니다. 이 경우 새 Amazon Machine Image(AMI)를 지정할 수 있지만 다른 데이터베이스 바이너리를 지정할 수는 없습니다.

    4. 엔진 버전에서 메이저 엔진 버전을 선택합니다.

  5. 버전 세부 정보에서 다음을 수행합니다.

    1. 사용자 지정 엔진 버전 이름에 유효한 이름을 입력합니다. 예를 들어, 19.cdb_cev1을 이름으로 입력할 수 있습니다.

    2. (선택 사항) CEV에 대한 설명을 입력합니다.

  6. 설치 미디어에서 다음을 수행합니다.

    1. (선택 사항) AMI ID의 경우 필드를 비워 최신 서비스 제공 AMI를 사용하거나 이전에 CEV를 생성할 때 사용한 AMI를 입력합니다. 유효한 AMI ID를 가져오려면 다음 방법 중 하나를 사용합니다.

      • 콘솔의 왼쪽 탐색 창에서 사용자 지정 엔진 버전을 선택하고 CEV 이름을 선택합니다. CEV에서 사용하는 AMI ID는 구성 탭에 표시됩니다.

      • AWS CLI에서 describe-db-engine-versions 명령을 사용합니다. ImageID에 대한 출력을 검색합니다.

    2. 매니페스트 파일의 S3 위치(S3 location of manifest files)에서 3단계: Amazon S3에 설치 파일 업로드에 지정한 대로 Amazon S3 버킷의 위치를 입력합니다. 예를 들면 s3://my-custom-installation-files/123456789012/cev1/를 입력합니다.

      참고

      CEV를 생성하는 AWS 리전은 S3 버킷과 동일한 리전이어야 합니다.

    3. (새 CEV 생성의 경우만 해당) CEV 매니페스트의 경우 CEV 매니페스트 생성에서 생성한 JSON 매니페스트를 입력합니다.

  7. KMS 키 섹션에서 키 ARN 입력을 선택하여 사용 가능한 AWS KMS 키를 나열합니다. 그런 다음 목록에서 KMS 키를 선택합니다.

    AWS KMS 키는 RDS Custom에 필수입니다. 자세한 내용은 1단계: 대칭 암호화 AWS KMS 키 생성 또는 재사용 단원을 참조하십시오.

  8. (선택 사항) 새 태그 추가를 선택하여 CEV의 키-값 페어를 생성합니다.

  9. Create custom engine version(사용자 지정 엔진 버전 생성)을 선택합니다.

    JSON 매니페스트의 형식이 잘못되면 콘솔에 CEV 매니페스트를 검증하는 중 오류 발생 메시지가 표시됩니다. 문제를 해결한 후 다시 시도해 주세요.

사용자 지정 엔진 버전(Custom engine versions) 페이지가 표시됩니다. CEV가 상태가 생성 중(Creating)으로 표시됩니다. CEV를 생성하는 데 약 2시간이 소요됩니다.

AWS CLI를 사용하여 CEV를 생성하려면 create-custom-db-engine-version 명령을 실행합니다.

다음 옵션이 필요합니다.

  • --engine - 엔진 유형을 지정합니다. CDB에서 custom-oracle-ee-cdb 또는 custom-oracle-se2-cdb를 지정합니다. 비CDB에서 custom-oracle-ee 또는 custom-oracle-se2를 지정합니다. CDB는 custom-oracle-ee-cdb 또는 custom-oracle-se2-cdb로 생성한 CEV에서만 생성할 수 있습니다. 비CDB는 custom-oracle-ee 또는 custom-oracle-se2로 생성한 CEV에서만 생성할 수 있습니다.

  • --engine-version - 엔진 버전을 지정합니다. 형식은 major-engine-version.customized_string입니다. CEV 이름은 1~50개의 영숫자, 밑줄, 대시 또는 마침표를 포함해야 합니다. CEV 이름에는 19..cdb_cev1에서와 같이 연속된 마침표를 포함할 수 없습니다.

  • --kms-key-id - AWS KMS key을 지정합니다.

  • --manifest - manifest_json_string 또는 --manifest file:file_name을 지정합니다. manifest_json_string에서 줄 바꿈 문자는 허용되지 않습니다. 백슬래시(\)를 접두사에 부여하여 JSON 코드에서 큰 따옴표(")를 이스케이프해야 합니다.

    다음 예제에서는 5단계: CEV 매니페스트 준비의 19c에 대한 manifest_json_string을 보여줍니다. 이 예제에는 Oracle base, Oracle home, UNIX/Linux 사용자 및 그룹의 ID와 이름의 새 값을 설정합니다. 이 문자열을 복사하는 경우 명령에 붙여넣기 전에 모든 줄 바꿈 문자를 삭제하세요.

    "{\"mediaImportTemplateVersion\": \"2020-08-14\",\"databaseInstallationFileNames\": [\"V982063-01.zip\"],\"opatchFileNames\": [\"p6880880_190000_Linux-x86-64.zip\"],\"psuRuPatchFileNames\": [\"p32126828_190000_Linux-x86-64.zip\"],\"otherPatchFileNames\": [\"p29213893_1910000DBRU_Generic.zip\",\"p29782284_1910000DBRU_Generic.zip\",\"p28730253_190000_Linux-x86-64.zip\",\"p29374604_1910000DBRU_Linux-x86-64.zip\",\"p28852325_190000_Linux-x86-64.zip\",\"p29997937_190000_Linux-x86-64.zip\",\"p31335037_190000_Linux-x86-64.zip\",\"p31335142_190000_Generic.zip\"]\"installationParameters\":{ \"unixGroupName\":\"dba\", \ \"unixUname\":\"oracle\", \ \"oracleHome\":\"/home/oracle/oracle.19.0.0.0.ru-2020-04.rur-2020-04.r1.EE.1\", \ \"oracleBase\":\"/home/oracle/\"}}"

  • --database-installation-files-s3-bucket-name - 3단계: Amazon S3에 설치 파일 업로드에서 지정한 것과 동일한 버킷 이름을 지정합니다. create-custom-db-engine-version을 실행하는 AWS 리전은 Amazon S3 버킷과 동일한 리전이어야 합니다.

다음 옵션도 지정할 수 있습니다.

  • --description - CEV에 대한 설명을 지정합니다.

  • --database-installation-files-s3-prefix - 3단계: Amazon S3에 설치 파일 업로드에서 지정한 폴더 이름을 지정합니다.

  • --image-id - 재사용할 AMI ID를 지정합니다. 유효한 ID를 찾으려면 describe-db-engine-versions 명령을 실행한 다음 ImageID의 출력을 검색하세요. 기본적으로 RDS Custom for Oracle은 가장 최신 AMI를 사용합니다.

다음 예시에서는 19.cdb_cev1이라는 Oracle 멀티테넌트 CEV를 생성합니다. 예제에서는 사용 가능한 최신 AMI를 사용하는 대신 기존 AMI를 재사용합니다. CEV의 이름이 주요 엔진 버전 번호로 시작하는지 확인하세요.

대상 LinuxmacOS, 또는Unix:

aws rds create-custom-db-engine-version \ --engine custom-oracle-se2-cdb \ --engine-version 19.cdb_cev1 \ --database-installation-files-s3-bucket-name us-east-1-123456789012-custom-installation-files \ --database-installation-files-s3-prefix 123456789012/cev1 \ --kms-key-id my-kms-key \ --description "test cev" \ --manifest manifest_string \ --image-id ami-012a345678901bcde

Windows의 경우:

aws rds create-custom-db-engine-version ^ --engine custom-oracle-se2-cdb ^ --engine-version 19.cdb_cev1 ^ --database-installation-files-s3-bucket-name us-east-1-123456789012-custom-installation-files ^ --database-installation-files-s3-prefix 123456789012/cev1 ^ --kms-key-id my-kms-key ^ --description "test cev" ^ --manifest manifest_string ^ --image-id ami-012a345678901bcde

describe-db-engine-versions 명령을 사용하여 CEV에 대한 세부 정보를 확인합니다.

aws rds describe-db-engine-versions \ --engine custom-oracle-se2-cdb \ --include-all

다음 부분 샘플 출력은 엔진, 파라미터 그룹, 매니페스트 및 기타 정보를 보여줍니다.

{ "DBEngineVersions": [ { "Engine": "custom-oracle-se2-cdb", "EngineVersion": "19.cdb_cev1", "DBParameterGroupFamily": "custom-oracle-se2-cdb-19", "DBEngineDescription": "Containerized Database for Oracle Custom SE2", "DBEngineVersionDescription": "test cev", "Image": { "ImageId": "ami-012a345678901bcde", "Status": "active" }, "ValidUpgradeTarget": [], "SupportsLogExportsToCloudwatchLogs": false, "SupportsReadReplica": true, "SupportedFeatureNames": [], "Status": "available", "SupportsParallelQuery": false, "SupportsGlobalDatabases": false, "MajorEngineVersion": "19", "DatabaseInstallationFilesS3BucketName": "us-east-1-123456789012-custom-installation-files", "DatabaseInstallationFilesS3Prefix": "123456789012/cev1", "DBEngineVersionArn": "arn:aws:rds:us-east-1:123456789012:cev:custom-oracle-se2-cdb/19.cdb_cev1/abcd12e3-4f5g-67h8-i9j0-k1234l56m789", "KMSKeyId": "arn:aws:kms:us-east-1:732027699161:key/1ab2345c-6d78-9ef0-1gh2-3456i7j89k01", "CreateTime": "2023-03-07T19:47:58.131000+00:00", "TagList": [], "SupportsBabelfish": false, ...

CEV 생성 실패

CEV 생성이 실패하면 RDS Custom에서 Creation failed for custom engine version major-engine-version.cev_name 메시지와 함께 RDS-EVENT-0198 오류가 발생하며, 실패 관련 세부 정보가 표시됩니다. 예를 들어, 이벤트는 누락된 파일을 인쇄합니다.

실패한 CEV는 수정할 수 없습니다. 삭제하고 나서 실패 원인을 수정한 후에 CEV를 다시 만들 수 있습니다. CEV 생성에 실패한 이유 문제 해결에 대한 자세한 내용은 Oracle용 RDS Custom에 대한 사용자 지정 엔진 버전 생성 문제 해결 섹션을 참조하세요.