클라우드 또는 프로젝트 관리자는 환경의 리소스에 대해 규정된 이름 지정 규칙을 사용하며, 배포된 리소스가 사용자 상호 작용 없이 해당 규칙을 따르도록 설정할 수 있습니다. Cloud Assembly에서 일부 또는 모든 배포에 대한 글로벌 이름 지정 템플릿을 생성할 수 있습니다.

프로젝트 수준 사용자 지정 이름 또는 조직 수준 이름을 만드는 것으로 시작할 수 있습니다. 프로젝트 수준 사용자 지정 이름은 조직 수준 이름보다 우선합니다. 이 예는 간단한 조직 사용자 지정 이름으로 시작한 다음 프로젝트 수준 이름 지정을 추가합니다.

경고: 클라우드 템플릿이 있거나 프로젝트당 2000개 이상의 리소스를 동시에 배포하는 API를 사용하고 사용자 지정 이름이 적용된 경우, 이러한 리소스 중 일부에 배포하는 동안 Retries exhausted 오류가 발생할 수 있습니다. 이 시나리오가 일반적이라면 이 문제가 발생하는 프로젝트 또는 조직에 새 사용자 지정 이름을 적용하면 안 됩니다. 대신 사용자 지정 명명 옵션이 아닌 기본 시스템 명명을 사용해야 합니다.

우선 수행할 작업

  • 사용자 지정 명명 기능을 시연하려면 이러한 사용 사례에 두 개의 프로젝트가 필요합니다. 하나는 Sales라는 이름이고 다른 하나는 Marketing이라는 이름입니다. 프로젝트 생성에 대한 자세한 내용은 Cloud Assembly 개발 팀용 프로젝트를 추가하는 방법 항목을 참조하십시오.
  • 조직 및 프로젝트 템플릿에 대해 선택할 때는 어떤 이름 지정 규칙이 우선하는지 이해해야 합니다. 배포 시 리소스 이름 지정 우선 순위의 내용을 참조하십시오.
  • 템플릿 형식을 사용하여 템플릿을 생성할 때 가능한 속성이 제공됩니다. 자세한 내용은 템플릿 형식 사용 항목을 참조하십시오.

조직 수준 사용자 지정 템플릿 생성

프로젝트 수준 템플릿이 없는 배포에 대해 기본 사용자 지정 이름 템플릿을 사용하려면 범위가 조직인 템플릿을 생성합니다.

  1. 인프라 > 관리 > 사용자 지정 이름을 선택하고 새 사용자 지정 이름을 클릭합니다.
  2. 이름을 입력합니다.

    이 예에서는 Prefix and Timestamp for Org를 사용합니다.

  3. 조직을 범위로 선택합니다.
  4. 새 이름 지정 템플릿을 클릭하고 다음 옵션을 구성합니다.
    옵션 샘플 값
    리소스 유형 시스템
    템플릿 형식 mcm-${timestamp}-${######}
    시작 카운터 값 1
    증분 단계 1

    이 구성을 사용하면 모든 프로젝트의 모든 배포가 이 시작 지점부터 증가합니다.

    이 예에서 시작 카운터가 1이고 증분이 1인 경우 첫 번째 배포 번호는 2로 지정됩니다. 배포를 1에서 시작해야 하는 경우에는 시작 카운터를 0으로 설정하고 증분 단계를 1로 설정합니다.

  5. 추가를 클릭합니다.
  6. 다음 예를 사용하여 다른 리소스 유형에 대한 템플릿을 계속 추가합니다.
    리소스 유형 이름 이름 지정 템플릿 형식
    시스템 mcm-${timestamp}-${##}
    네트워크 ntw-${timestamp}-${##}
    스토리지 stg-${timestamp}-${##}
    로드 밸런서 ldb-${timestamp}-${##}
    리소스 그룹 rsg-${timestamp}-${##}
    게이트웨이 gtw-${timestamp}-${##}
    NAT nat-${timestamp}-${##}
    보안 그룹 scg-${timestamp}-${##}
  7. 생성을 클릭합니다.
  8. 정의된 리소스 유형이 포함된 템플릿을 배포하여 이름 템플릿을 테스트합니다.
    조직 수준 사용자 지정 이름을 보여주는 배포된 리소스입니다.

고급 패턴 일치를 사용하여 프로젝트 수준 사용자 지정 템플릿 생성

서로 다른 프로젝트에 할당할 수 있는 단일 사용자 지정 이름 템플릿을 생성할 수 있습니다. 고급 옵션을 사용하여 프로젝트별로 다른 번호 매기기 시작 지점을 설정합니다.

이 예에서는 시스템 리소스를 사용합니다.

  1. 인프라 > 관리 > 사용자 지정 이름을 선택하고 새 사용자 지정 이름을 클릭합니다.
  2. 이름을 입력합니다.

    이 예에서는 Project Name with Advanced Numbering을 사용합니다.

  3. 프로젝트를 범위로 선택합니다.
  4. 새 이름 지정 템플릿을 클릭하고 다음 옵션을 구성합니다.
    옵션 샘플 값
    리소스 유형 시스템
    템플릿 형식 ${project.name}-${#####}
    시작 카운터 값 1
    증분 단계 1

    이 구성을 사용하면 할당된 프로젝트의 배포가 이 시작 지점부터 증가합니다.

    이 예에서 시작 카운터가 1이고 증분이 1인 경우 첫 번째 배포 번호는 2로 지정됩니다. 배포를 1에서 시작해야 하는 경우에는 시작 카운터를 0으로 설정하고 증분 단계를 1로 설정합니다. 1을 시작 값으로 사용하는 경우 값이 고급 일치 패턴 값으로 재정의되지 않는 한 ProjectA는 2로 시작하고 ProjectB는 2로 시작합니다.

  5. 기본 조직 이름 지정 템플릿에 세부 사항을 더 추가하려면 고급을 클릭하고 일치 패턴 추가를 클릭합니다.

    서로 다른 숫자부터 카운터를 시작하도록 다른 이름 지정 패턴을 설정하거나 각 패턴에 숫자를 1로 재설정할 수 있습니다. 예를 들어 Sales 프로젝트 번호 매기기는 100부터 시작되고 Marketing 프로젝트 번호 매기기는 200부터 시작됩니다.

    1. Sales 프로젝트의 패턴을 입력합니다.
      옵션 샘플 값
      패턴 텍스트 Sales-
      시작 카운터 값 100
    2. Marketing 프로젝트의 패턴을 입력합니다.
      옵션 샘플 값
      패턴 텍스트 Marketing-
      시작 카운터 값 200
  6. 추가를 클릭합니다.
  7. 필요에 따라 다른 리소스 유형에 대한 템플릿을 계속 추가합니다.
  8. 프로젝트 할당을 클릭하고 Sales 및 Marketing 프로젝트를 추가합니다.
  9. 생성을 클릭합니다.
  10. 먼저 Sales 프로젝트에 있는 클라우드 템플릿을 배포한 다음 Marketing 프로젝트에 있는 클라우드 템플릿을 배포하여 이름 템플릿을 테스트합니다.
    Sales 프로젝트의 프로젝트 수준 사용자 지정 이름을 보여주는 배포된 리소스입니다.

사용자 지정 속성 및 프로젝트별 값이 있는 사용자 지정 이름의 예

템플릿 형식 자동 채우기 옵션에 제공된 속성 외에도 사용자 지정 속성을 사용할 수 있습니다. 사용자 지정 이름에 사용자 지정 속성을 사용하려면 속성 그룹에서 정의해야 합니다.

클라우드 템플릿의 사용자 지정 속성 값은 사용자 지정 이름의 동일한 속성 값보다 우선합니다.

이 예에서는 costCenter를 속성으로 사용하고 SalesCost를 Sales 프로젝트의 값으로 사용하고 MktCost를 Marketing 프로젝트의 값으로 사용합니다.

  1. costingPG라는 속성 그룹을 생성합니다.
    1. 인프라 > 설계 > 속성 그룹을 선택하고 새 속성 그룹을 클릭합니다.
    2. 입력 값을 클릭합니다.
    3. 이름 costingPG를 입력합니다.
    4. 범위에는 모든 프로젝트에서 사용 가능을 선택합니다.
    5. 새 속성을 클릭하여 다음 값을 구성하고 이름 costCenter를 입력합니다.
      옵션 샘플 값
      이름 costCenter
      유형 String
      기본값 research
    6. 생성을 클릭합니다.
    7. 생성을 클릭하여 새 속성 그룹을 저장합니다.
  2. Sales 프로젝트 및 Marketing 프로젝트에 대한 사용자 지정 속성을 구성합니다.

    이 단계는 Sales 프로젝트의 프로세스를 보여줍니다. 단계를 반복하고 Marketing 프로젝트 값을 사용할 수 있습니다.

    • Sales 속성 이름: costingPG.costCenter. 값: SalesCost.
    • Marketing 속성 이름: costingPG.costCenter. 값: MktCost.
    1. 인프라 > 관리 > 프로젝트를 선택하고 Sales 프로젝트를 엽니다.
    2. 프로비저닝 탭을 클릭하고 사용자 지정 속성 섹션을 찾습니다.
    3. costingPG.costCenter를 속성 이름으로 입력하고 SalesCost를 값으로 입력합니다.
      프로젝트 [프로비저닝] 탭의 [사용자 지정 속성] 섹션에 있는 사용자 지정 속성 costingPG.costCenter 및 SalesCost 값입니다.
    4. 저장을 클릭합니다.
    5. MktCost 및 속성 값을 사용하여 Marketing 프로젝트에서 이 프로세스를 반복합니다.
  3. 프로젝트 수준 사용자 지정 이름을 생성합니다.

    이 예에서는 고급 예제 사용자와 동일한 프로젝트를 사용합니다. 사용자 지정 이름은 한 번에 하나의 프로젝트에만 할당할 수 있습니다. 이 예의 결과를 테스트하기 위해 사용자 지정 이름을 새 프로젝트에 적용하거나 고급 번호 매기기가 포함된 프로젝트 이름 예에서 Sales 및 Marketing 프로젝트를 제거할 수 있습니다.

    이 예에서는 아직 Sales 및 Marketing 프로젝트를 할당하지 않았다고 가정합니다.

    1. 인프라 > 관리 > 사용자 지정 이름을 선택하고 새 사용자 지정 이름을 클릭합니다.
    2. Project Name and costingPG이름으로 입력합니다.
    3. 프로젝트를 범위로 선택합니다.
    4. 새 이름 지정 템플릿을 클릭하고 다음 옵션을 구성합니다.
      표 1.
      옵션
      리소스 유형 시스템
      템플릿 형식 ${project.name}-{costingPG.costCenter}-${#####}
      시작 카운터 값 1
      증분 단계 1
    5. 추가를 클릭합니다.
    6. 프로젝트 할당을 클릭하고 Sales 및 Marketing 프로젝트를 추가합니다.
    7. 생성을 클릭합니다.
  4. 먼저 Sales 프로젝트에 있는 클라우드 템플릿을 배포한 다음 Marketing 프로젝트에 있는 클라우드 템플릿을 배포하여 이름 템플릿을 테스트합니다.
    그림 1. 영업 프로젝트 리소스 이름

    리소스 이름을 Sales-SalesCost-000002로 표시하는 배포 세부 정보입니다.
    그림 2. 마케팅 프로젝트 리소스 이름

    리소스 이름을 Marketing-MktCost-000002로 표시하는 배포 세부 정보입니다.

속성 그룹 및 클라우드 템플릿 사용자 입력이 포함된 사용자 지정 이름의 예

이 예에서는 템플릿의 사용자 입력을 기반으로 사용자 지정 이름을 생성하는 방법을 보여줍니다. 클라우드 템플릿에서 두 가지 사용자 입력(운영 체제 및 크기)을 정의합니다. 사용자 입력 중 하나인 mktSite는 사용자 입력을 수락하는 site.siteCode 사용자 지정 속성을 사용하며 사용자는 이를 클라우드 템플릿에 추가합니다.

  1. 마케팅 프로젝트에 대한 사용자 지정 속성을 정의합니다.
    1. 인프라 > 설계 > 속성 그룹을 선택하고 새 속성 그룹을 클릭합니다.
    2. 입력 값을 클릭합니다.
    3. 속성 그룹의 이름과 설명을 입력합니다.
      옵션
      이름 사이트
      범위

      모든 프로젝트에서 사용 가능.

      속성 그룹을 일반적으로 사용할 수 있어야 합니다. 그래야 속성을 사용자 지정 이름 템플릿 형식으로 사용할 수 있습니다.

    4. 새 속성을 클릭하고 다음 값을 구성합니다.
      옵션
      이름 siteCode
      유형 String
      기본값 West
      추가 옵션 > 열거형 값

      East, West, North 및 South에 대해 별도의 값을 입력합니다.

      이러한 값은 사용자가 선택할 수 있는 사이트 코드를 나타냅니다.

  2. 사용자 지정 명명 템플릿을 생성합니다.
    1. 인프라 > 사용자 지정 이름 > 새 사용자 지정 이름을 선택합니다.
    2. 이름Site-OS-Size for Marketing Project를 입력합니다.
    3. 프로젝트를 선택합니다.

      조직 범위의 사용자 지정 이름이 이미 있는 경우 유일한 옵션인 프로젝트가 선택됩니다.

    4. 새 이름 지정 템플릿을 클릭하고 다음 옵션을 구성합니다.
      옵션
      리소스 유형 시스템
      템플릿 형식

      ${site.siteCode}-${resource.name}-${######}

      site.siteCode 속성은 이전 단계에서 정의한 속성입니다. resource.name은 다음 단계의 클라우드 템플릿에서 정의됩니다.

      시작 카운터 값 1
      증분 단계 1
  3. 템플릿에서 사용자 입력을 정의합니다.

    이 예제에 포함된 사용자 입력에는 운영 체제 및 크기 그리고 site.siteCode 사용자 지정 속성을 기반으로 하는 사용자 입력이 포함됩니다.

    이 단계의 클라우드 템플릿은 데모 목적으로 간단합니다. 기존 템플릿 중 하나에 예제를 적용할 수 있습니다.

    1. 설계 > 새로 만들기 > 빈 캔버스를 선택합니다.
    2. 이름마케팅 템플릿을 입력합니다.
    3. 프로젝트 목록에서 마케팅을 선택합니다.
    4. 생성을 클릭합니다.
    5. 클라우드 템플릿에 대한 코드를 입력하거나 다음 샘플 코드를 사용합니다.

      사용자 입력은 크기 및 OS에 대한 것입니다. 각 입력에 대한 변수는 버전(${input.size}) 및 이미지(${input.OS}) 시스템 속성에서 구성합니다. 마지막으로 이름 속성은 사용자 지정 명명 템플릿에서 사용할 수 있는 리소스 이름(${input.OS}-${input.size})을 구성하는 데 사용됩니다.

      formatVersion: 1
      inputs:
        size:
          type: string
          enum:
            - small
            - medium
        OS:
          type: string
          enum:
            - centos
            - ubuntu
      resources:
        Cloud_vSphere_Network_1:
          type: Cloud.vSphere.Network
          properties:
            networkType: existing
        Cloud_Machine_1:
          type: Cloud.Machine
          properties:
            image: ${input.OS}
            flavor: ${input.size}
            name: ${input.OS}-${input.size}
            networks:
              - network: ${resource.Cloud_vSphere_Network_1.id}
      
    6. site.siteCode 사용자 지정 속성을 사용자 입력으로 추가하려면 오른쪽 창에서 입력 탭을 클릭하고 다음 옵션을 구성합니다.
      옵션
      이름 mktSite
      표시 이름 사이트 선택
      유형 개체
      개체 유형 선택 속성 그룹
      기존 속성 그룹에서 선택 사이트
    7. [코드] 탭에서 추가된 mktSite 사용자 입력을 확인한 다음 사용자 지정 속성을 포함하도록 YAML을 업데이트합니다.

      예를 들어 YAML에 site.siteCode: ${input.mktSite.siteCode}를 추가합니다.

      formatVersion: 1
      inputs:
        size:
          type: string
          title: Select the machine size
          enum:
            - small
            - medium
        OS:
          type: string
          title: Select an operating system
          enum:
            - centos
            - ubuntu
        mktSite:
          type: object
          $ref: /ref/property-groups/site
          title: Select a site
      resources:
        Cloud_vSphere_Network_1:
          type: Cloud.vSphere.Network
          properties:
            networkType: existing
        Cloud_Machine_1:
          type: Cloud.Machine
          properties:
            image: ${input.OS}
            flavor: ${input.size}
            name: ${input.OS}-${input.size}
            networks:
              - network: ${resource.Cloud_vSphere_Network_1.id}
            site.siteCode: ${input.mktSite.siteCode}
  4. 템플릿을 배포하고 사용자 지정 시스템 이름을 확인합니다.

    West는 기본값이므로 West가 아닌 다른 사이트를 선택합니다.


    리소스 이름을 East-centos-small-000011로 표시하는 cloud_machine 배포 세부 정보입니다.

배포 시 리소스 이름 지정 우선 순위

사용자 지정 이름 지정을 구성한 방식을 기반으로 다음 규칙에 따라 배포된 리소스에 이름이 적용됩니다.

일반적인 방법은 일반적인 조직 수준 이름 지정 템플릿을 정의한 다음 프로젝트 관리 요구 사항에 따라 하나 이상의 프로젝트 수준 템플릿을 생성하는 것입니다.

사용자 지정 이름 지정 시나리오 우선 순위
사용자 지정 이름 없음
  • 모든 배포 구성 요소에 대한 배포 리소스 이름이 시스템에서 생성됩니다.
조직 수준 이름
  • 사용자 지정 이름 지정 속성 값과 문자열을 모든 배포에 적용합니다.
  • 배포 프로젝트에 프로젝트 수준 사용자 지정 이름이 있는 경우 조직 수준 이름이 재정의됩니다.
  • 조직 수준 사용자 지정 이름이 정의되지 않은 경우 프로젝트 수준 이름이 할당된 프로젝트에 사용됩니다.
  • 조직 수준 또는 프로젝트 수준 사용자 지정 이름이 정의되지 않은 경우 시스템이 리소스 이름을 생성합니다.
프로젝트 수준 이름
  • 할당된 모든 프로젝트에 프로젝트 수준 사용자 지정 이름 지정 속성 값 및 문자열을 적용합니다.
  • 조직 수준 이름이 있는 경우 프로젝트 수준 이름이 조직 이름보다 우선합니다.
  • 조직 수준 사용자 지정 이름이 정의되지 않은 경우 프로젝트 수준 이름이 할당된 프로젝트에 사용됩니다.
  • 조직 수준 또는 프로젝트 수준 사용자 지정 이름이 정의되지 않은 경우 시스템이 리소스 이름을 생성합니다.

템플릿 형식 사용

템플릿 형식을 정의할 때 문자열 및 속성을 사용할 수 있습니다. 속성을 사용하는 주요 이점은 동일한 속성을 여러 프로젝트의 형식으로 사용할 수 있지만 이름은 값 속성에서 파생된다는 점입니다. 이러한 속성은 프로젝트, 클라우드 템플릿, 플랫폼 및 기타 속성에 따라 다를 수 있습니다.

템플릿 형식 속성에는 여기에서 설명한 제공된 속성과 설계 > 속성 그룹에서 정의한 모든 사용자 지정 속성이 포함됩니다.

  • 유효한 문자
    • 공백은 허용되지 않습니다.
    • 읽기 쉽도록 특수 문자를 사용하여 속성을 구분할 수 있습니다. 허용되는 문자는 _(밑줄) 및 -(파선)입니다.
  • 제공된 속성
    표 2. 제공된 속성
    속성 설명
    끝점

    설명, 입력(AWS) 또는 이름과 같은 클라우드 계정 정보. 끝점은 시스템에만 적용됩니다.

    • ${endpoint.desc}
    • ${endpoint.endpointType}
    • ${endpoint.name}
    프로젝트

    프로젝트 정보.

    • ${project.desc}
    • ${project.name}
    리소스

    클라우드 템플릿의 리소스 이름, 클라우드 템플릿 또는 프로젝트에 있는 사용자 지정 속성을 포함합니다.

    • ${resource.name}
    타임 스탬프

    배포 날짜 및 시간입니다. 숫자 값은 공백이 없는 yyyy mm dd hh mm ss입니다. 예: 20210825120345

    • ${timestamp}
    사용자

    • ${user}
    username

    • ${userName}
    ######

    숫자 속성.

    최대 길이는 19자리입니다.

    두 자리 숫자(##)를 사용하는 경우 번호 매기기가 다시 시작되기 전의 최대 수는 99입니다. ###을 사용하면 999가 지나면 번호 매기기 다시 시작됩니다.

    • ${####}.
    사용자 지정 속성

    사용자 지정 속성은 속성 그룹의 일부여야 합니다. 사용자 지정 이름의 속성에는 속성 그룹 이름 및 속성이 포함됩니다.

    • ${propertygroup.property}

카운터 사용

vRealize Automation의 단일 노드 인스턴스에서 카운터는 사용자 지정 명명 템플릿에 정의한 값을 기준으로 하며 대상 조직 및 프로젝트에 적용될 때 증가합니다.

다중 노드 환경에서 카운터는 템플릿의 값을 기준으로 증가를 시도합니다. 경합이 발생하면 해당 번호 적용이 세 번 시도됩니다. 경합을 해결하기 위해 세 번째 시도 후에 요청이 실패할 수 있습니다. 이 경우 번호 매기기에 간격이 있을 수 있습니다.

다른 이유로 인해 번호 지정에 간격이 발생할 수도 있습니다. 예를 들어 세 개의 가상 시스템을 배포합니다. 프로비저닝 중에 두 번째 시스템이 실패합니다. 배포된 가상 시스템의 카운터는 vm-01 및 vm-03이며 vm-02가 누락되었습니다.

사용자 지정 명명을 사용하지 않고 기본 명명 전략을 선호하는 경우 카운터 값 풀은 노드에 다음과 같이 예약됩니다.

  • 노드1: 1~300
  • 노드2: 301~600
  • 노드3: 601~900

따라서 다중 노드 환경에서는 숫자가 예기치 않게 나타날 수 있습니다. 이 수는 요청을 처리하는 노드에 따라 다릅니다.

사용자 지정 이름을 적용할 수 있는 리소스 유형 목록

하나의 리소스 유형에 대해서만 또는 모든 리소스 유형에 대해 사용자 지정 이름을 생성할 수 있습니다. 사용자 지정 이름이 있는 리소스 유형만 템플릿을 사용합니다. 다른 모든 리소스는 기본 템플릿을 사용합니다.

예를 들어 시스템에 대해서만 프로젝트 수준 사용자 지정 이름을 생성하고 다른 모든 리소스 유형에는 조직 수준 이름이 있으면, 시스템 리소스에는 프로젝트 이름이 사용되고 다른 모든 리소스에는 조직 이름이 사용됩니다.

표 3. 리소스 샘플 목록
사용자 지정 이름 지정 리소스 유형 배포 리소스 유형
시스템
  • Cloud.Machine
  • Cloud.vSphere.Machine
  • Cloud.AWS.EC2.Instance
  • Cloud.GCP.Machine
  • Cloud.Azure.Machine
네트워크
  • Cloud.Network
  • Cloud.vSphere.Network
  • Cloud.NSX.Network
스토리지
  • Cloud.Volume
  • Cloud.vSphere.Disk
  • Cloud.AWS.Volume
  • Cloud.GCP.Disk
  • Cloud.Azure.Disk
로드 밸런서
  • Cloud.LoadBalancer
  • Cloud.NSX.LoadBalancer
리소스 그룹
  • Cloud.Azure.ResourceGroup
게이트웨이
  • Cloud.NSX.Gateway
NAT
  • Cloud.NSX.NAT
보안 그룹
  • Cloud.SecurityGroup

사용자 지정 이름 템플릿 삭제

템플릿을 삭제해도 현재 배포된 리소스 이름 지정에는 영향을 주지 않습니다. 하지만 할당된 모든 프로젝트에 미치는 영향을 확인할 때까지 사용자 지정 이름 템플릿을 삭제해서는 안 됩니다.

이름 지정 템플릿에서 프로젝트를 제거할 수 있습니다. 템플릿은 다른 프로젝트에서 계속 작동합니다.

사용자 지정 이름이 있는 프로젝트 삭제

프로젝트에 사용자 지정 명명 템플릿이 적용된 경우 프로젝트를 삭제하려면 먼저 템플릿에서 프로젝트를 제거해야 합니다.