

# AWS CLI를 사용한 License Manager 예시
<a name="cli_license-manager_code_examples"></a>

다음 코드 예시는 License Manager와 함께 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

*작업*은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.

**Topics**
+ [작업](#actions)

## 작업
<a name="actions"></a>

### `create-license-configuration`
<a name="license-manager_CreateLicenseConfiguration_cli_topic"></a>

다음 코드 예시에서는 `create-license-configuration`의 사용 방법을 보여줍니다.

**AWS CLI**  
**예시 1: 라이선스 구성 생성**  
다음 `create-license-configuration` 예시에서는 코어 10개의 하드 제한으로 라이선스 구성을 생성합니다.  

```
aws license-manager create-license-configuration --name my-license-configuration \
    --license-counting-type Core \
    --license-count 10 \
    --license-count-hard-limit
```
출력:  

```
{
  "LicenseConfigurationArn": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-6eb6586f508a786a2ba41EXAMPLE1111"
}
```
**예시 2: 라이선스 구성 생성**  
다음 `create-license-configuration` 예시에서는 vCPU 100개의 소프트 제한으로 라이선스 구성을 생성합니다. 규칙을 사용하여 vCPU 최적화를 활성화합니다.  

```
aws license-manager create-license-configuration --name my-license-configuration
    --license-counting-type vCPU \
    --license-count 100 \
    --license-rules "#honorVcpuOptimization=true"
```
출력:  

```
{
  "LicenseConfigurationArn": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-6eb6586f508a786a2ba41EXAMPLE2222"
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [CreateLicenseConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/create-license-configuration.html)을 참조하세요.

### `delete-license-configuration`
<a name="license-manager_DeleteLicenseConfiguration_cli_topic"></a>

다음 코드 예시에서는 `delete-license-configuration`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성 삭제**  
다음 `delete-license-configuration` 예시에서는 지정된 라이선스 구성을 삭제합니다.  

```
aws license-manager delete-license-configuration \
    --license-configuration-arn arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-6eb6586f508a786a2ba4f56c1EXAMPLE
```
이 명령은 출력을 생성하지 않습니다.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [DeleteLicenseConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/delete-license-configuration.html)을 참조하세요.

### `get-license-configuration`
<a name="license-manager_GetLicenseConfiguration_cli_topic"></a>

다음 코드 예시에서는 `get-license-configuration`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성 정보 가져오기**  
다음 `get-license-configuration` 예시에서는 지정된 라이선스 구성의 세부 정보를 표시합니다.  

```
aws license-manager get-license-configuration \
    --license-configuration-arn arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-38b658717b87478aaa7c00883EXAMPLE
```
출력:  

```
{
    "LicenseConfigurationId": "lic-38b658717b87478aaa7c00883EXAMPLE",
    "LicenseConfigurationArn": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-38b658717b87478aaa7c00883EXAMPLE",
    "Name": "my-license-configuration",
    "LicenseCountingType": "vCPU",
    "LicenseRules": [],
    "LicenseCountHardLimit": false,
    "ConsumedLicenses": 0,
    "Status": "AVAILABLE",
    "OwnerAccountId": "123456789012",
    "ConsumedLicenseSummaryList": [
        {
            "ResourceType": "EC2_INSTANCE",
            "ConsumedLicenses": 0
        },
        {
            "ResourceType": "EC2_HOST",
            "ConsumedLicenses": 0
        },
        {
            "ResourceType": "SYSTEMS_MANAGER_MANAGED_INSTANCE",
            "ConsumedLicenses": 0
        }
    ],
    "ManagedResourceSummaryList": [
        {
            "ResourceType": "EC2_INSTANCE",
            "AssociationCount": 0
        },
        {
            "ResourceType": "EC2_HOST",
            "AssociationCount": 0
        },
        {
            "ResourceType": "EC2_AMI",
            "AssociationCount": 2
        },
        {
            "ResourceType": "SYSTEMS_MANAGER_MANAGED_INSTANCE",
            "AssociationCount": 0
        }
    ]
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [GetLicenseConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/get-license-configuration.html)을 참조하세요.

### `get-service-settings`
<a name="license-manager_GetServiceSettings_cli_topic"></a>

다음 코드 예시에서는 `get-service-settings`의 사용 방법을 보여줍니다.

**AWS CLI**  
**License Manager 설정 가져오기**  
다음 `get-service-settings` 예시에서는 현재 리전의 License Manager에 대한 서비스 설정을 표시합니다.  

```
aws license-manager get-service-settings
```
다음은 교차 계정 리소스 검색이 비활성화된 경우의 예시 출력입니다.  

```
{
    "OrganizationConfiguration": {
        "EnableIntegration": false
    },
    "EnableCrossAccountsDiscovery": false
}
```
다음은 교차 계정 리소스 검색이 활성화된 경우의 예시 출력입니다.  

```
{
    "S3BucketArn": "arn:aws:s3:::aws-license-manager-service-c22d6279-35c4-47c4-bb",
    "OrganizationConfiguration": {
        "EnableIntegration": true
    },
    "EnableCrossAccountsDiscovery": true
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [GetServiceSettings](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/get-service-settings.html)를 참조하세요.

### `list-associations-for-license-configuration`
<a name="license-manager_ListAssociationsForLicenseConfiguration_cli_topic"></a>

다음 코드 예시에서는 `list-associations-for-license-configuration`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성에 대한 연결 가져오기**  
다음 `list-associations-for-license-configuration` 예시에서는 지정된 라이선스 구성의 연결에 대한 자세한 정보를 표시합니다.  

```
aws license-manager list-associations-for-license-configuration \
    --license-configuration-arn arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-38b658717b87478aaa7c00883EXAMPLE
```
출력:  

```
{
    "LicenseConfigurationAssociations": [
        {
            "ResourceArn": "arn:aws:ec2:us-west-2::image/ami-1234567890abcdef0",
            "ResourceType": "EC2_AMI",
            "ResourceOwnerId": "123456789012",
            "AssociationTime": 1568825118.617
        },
        {
            "ResourceArn": "arn:aws:ec2:us-west-2::image/ami-0abcdef1234567890",
            "ResourceType": "EC2_AMI",
            "ResourceOwnerId": "123456789012",
            "AssociationTime": 1568825118.946
        }
    ]
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [ListAssociationsForLicenseConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/list-associations-for-license-configuration.html)을 참조하세요.

### `list-license-configurations`
<a name="license-manager_ListLicenseConfigurations_cli_topic"></a>

다음 코드 예시에서는 `list-license-configurations`의 사용 방법을 보여줍니다.

**AWS CLI**  
**예시 1: 모든 라이선스 구성 나열**  
다음 `list-license-configurations` 예시에서는 모든 라이선스 구성을 나열합니다.  

```
aws license-manager list-license-configurations
```
출력:  

```
{
    "LicenseConfigurations": [
        {
            "LicenseConfigurationId": "lic-6eb6586f508a786a2ba4f56c1EXAMPLE",
            "LicenseConfigurationArn": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-6eb6586f508a786a2ba4f56c1EXAMPLE",
            "Name": "my-license-configuration",
            "LicenseCountingType": "Core",
            "LicenseRules": [],
            "LicenseCount": 10,
            "LicenseCountHardLimit": true,
            "ConsumedLicenses": 0,
            "Status": "AVAILABLE",
            "OwnerAccountId": "123456789012",
            "ConsumedLicenseSummaryList": [
                {
                    "ResourceType": "EC2_INSTANCE",
                    "ConsumedLicenses": 0
                },
                {
                    "ResourceType": "EC2_HOST",
                    "ConsumedLicenses": 0
                },
                {
                    "ResourceType": "SYSTEMS_MANAGER_MANAGED_INSTANCE",
                    "ConsumedLicenses": 0
                }
            ],
            "ManagedResourceSummaryList": [
                {
                    "ResourceType": "EC2_INSTANCE",
                    "AssociationCount": 0
                },
                {
                    "ResourceType": "EC2_HOST",
                    "AssociationCount": 0
                },
                {
                    "ResourceType": "EC2_AMI",
                    "AssociationCount": 0
                },
                {
                    "ResourceType": "SYSTEMS_MANAGER_MANAGED_INSTANCE",
                    "AssociationCount": 0
                }
            ]
        },
        {
            ...
        }
    ]
}
```
**예시 2: 특정 라이선스 구성 나열**  
다음 `list-license-configurations` 예시에서는 지정된 라이선스 구성만 나열합니다.  

```
aws license-manager list-license-configurations \
    --license-configuration-arns arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-38b658717b87478aaa7c00883EXAMPLE
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [ListLicenseConfigurations](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/list-license-configurations.html)를 참조하세요.

### `list-license-specifications-for-resource`
<a name="license-manager_ListLicenseSpecificationsForResource_cli_topic"></a>

다음 코드 예시에서는 `list-license-specifications-for-resource`의 사용 방법을 보여줍니다.

**AWS CLI**  
**리소스의 라이선스 구성 나열**  
다음 `list-license-specifications-for-resource` 예시에서는 지정된 Amazon Machine Image(AMI)에 연결된 라이선스 구성을 나열합니다.  

```
aws license-manager list-license-specifications-for-resource \
    --resource-arn arn:aws:ec2:us-west-2::image/ami-1234567890abcdef0
```
출력:  

```
{
    "LicenseConfigurationArn": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-38b658717b87478aaa7c00883EXAMPLE"
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [ListLicenseSpecificationsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/list-license-specifications-for-resource.html)를 참조하세요.

### `list-resource-inventory`
<a name="license-manager_ListResourceInventory_cli_topic"></a>

다음 코드 예시에서는 `list-resource-inventory`의 사용 방법을 보여줍니다.

**AWS CLI**  
**리소스 인벤토리의 리소스 나열**  
다음 `list-resource-inventory` 예시에서는 Systems Manager 인벤토리를 사용하여 관리되는 리소스를 나열합니다.  

```
aws license-manager list-resource-inventory
```
출력:  

```
{
    "ResourceInventoryList": [
        {
            "Platform": "Red Hat Enterprise Linux Server",
            "ResourceType": "EC2Instance",
            "PlatformVersion": "7.4",
            "ResourceArn": "arn:aws:ec2:us-west-2:1234567890129:instance/i-05d3cdfb05bd36376",
            "ResourceId": "i-05d3cdfb05bd36376",
            "ResourceOwningAccountId": "1234567890129"
        },
        {
            "Platform": "Amazon Linux",
            "ResourceType": "EC2Instance",
            "PlatformVersion": "2",
            "ResourceArn": "arn:aws:ec2:us-west-2:1234567890129:instance/i-0b1d036cfd4594808",
            "ResourceId": "i-0b1d036cfd4594808",
            "ResourceOwningAccountId": "1234567890129"
        },
        {
            "Platform": "Microsoft Windows Server 2019 Datacenter",
            "ResourceType": "EC2Instance",
            "PlatformVersion": "10.0.17763",
            "ResourceArn": "arn:aws:ec2:us-west-2:1234567890129:instance/i-0cdb3b54a2a8246ad",
            "ResourceId": "i-0cdb3b54a2a8246ad",
            "ResourceOwningAccountId": "1234567890129"
        }
    ]
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [ListResourceInventory](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/list-resource-inventory.html)를 참조하세요.

### `list-tags-for-resource`
<a name="license-manager_ListTagsForResource_cli_topic"></a>

다음 코드 예시에서는 `list-tags-for-resource`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성의 태그 나열**  
다음 `list-tags-for-resource` 예시는 지정된 라이선스 구성의 태그를 나열합니다.  

```
aws license-manager list-tags-for-resource \
    --resource-arn arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-6eb6586f508a786a2ba4f56c1EXAMPLE
```
출력:  

```
{
    "Tags": [
        {
            "Key": "project",
            "Value": "lima"
        }
    ]
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [ListTagsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/list-tags-for-resource.html)를 참조하세요.

### `list-usage-for-license-configuration`
<a name="license-manager_ListUsageForLicenseConfiguration_cli_topic"></a>

다음 코드 예시에서는 `list-usage-for-license-configuration`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성에 사용 중인 라이선스 나열**  
다음 `list-usage-for-license-configuration` 예시에서는 지정된 라이선스 구성에 대한 라이선스를 사용하는 리소스의 정보를 나열합니다. 예를 들어 라이선스 유형이 vCPU인 경우 모든 인스턴스는 vCPU당 하나의 라이선스를 사용합니다.  

```
aws license-manager list-usage-for-license-configuration \
    --license-configuration-arn arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-38b658717b87478aaa7c00883EXAMPLE
```
출력:  

```
{
    "LicenseConfigurationUsageList": [
        {
            "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-04a636d18e83cfacb",
            "ResourceType": "EC2_INSTANCE",
            "ResourceStatus": "running",
            "ResourceOwnerId": "123456789012",
            "AssociationTime": 1570892850.519,
            "ConsumedLicenses": 2
        }
    ]
}
```
+  API 세부 정보는 *AWS CLI 명령 참조*의 [ListUsageForLicenseConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/list-usage-for-license-configuration.html)을 참조하세요.

### `tag-resource`
<a name="license-manager_TagResource_cli_topic"></a>

다음 코드 예시에서는 `tag-resource`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성에 태그 추가**  
다음 `tag-resource` 예시에서는 지정된 태그(키 이름 및 값)를 지정된 라이선스 구성에 추가합니다.  

```
aws license-manager tag-resource \
    --tags Key=project,Value=lima \
    --resource-arn arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-6eb6586f508a786a2ba4f56c1EXAMPLE
```
이 명령은 출력을 생성하지 않습니다.  
+  API 세부 정보는 **AWS CLI 명령 참조의 [TagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/tag-resource.html)를 참조하세요.

### `untag-resource`
<a name="license-manager_UntagResource_cli_topic"></a>

다음 코드 예시에서는 `untag-resource`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성에서 태그 제거**  
다음 `untag-resource` 예시에서는 지정된 라이선스 구성에서 지정된 태그(키 이름 및 리소스)를 제거합니다.  

```
aws license-manager untag-resource \
    --tag-keys project \
    --resource-arn arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-6eb6586f508a786a2ba4f56c1EXAMPLE
```
이 명령은 출력을 생성하지 않습니다.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [UntagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/untag-resource.html)를 참조하세요.

### `update-license-configuration`
<a name="license-manager_UpdateLicenseConfiguration_cli_topic"></a>

다음 코드 예시에서는 `update-license-configuration`의 사용 방법을 보여줍니다.

**AWS CLI**  
**라이선스 구성 업데이트**  
다음 `update-license-configuration` 예시에서는 지정된 라이선스 구성을 업데이트하여 하드 제한을 제거합니다.  

```
aws license-manager update-license-configuration \
    --no-license-count-hard-limit \
    --license-configuration-arn arn:aws:license-manager:us-west-2:880185128111:license-configuration:lic-6eb6586f508a786a2ba4f56c1EXAMPLE
```
이 명령은 출력을 생성하지 않습니다.  
다음 `update-license-configuration` 예시에서는 지정된 라이선스 구성을 업데이트하여 상태를 `DISABLED`로 변경합니다.  

```
aws license-manager update-license-configuration \
    --license-configuration-status DISABLED
    --license-configuration-arn arn:aws:license-manager:us-west-2:880185128111:license-configuration:lic-6eb6586f508a786a2ba4f56c1EXAMPLE
```
이 명령은 출력을 생성하지 않습니다.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [UpdateLicenseConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/update-license-configuration.html)을 참조하세요.

### `update-license-specifications-for-resource`
<a name="license-manager_UpdateLicenseSpecificationsForResource_cli_topic"></a>

다음 코드 예시에서는 `update-license-specifications-for-resource`의 사용 방법을 보여줍니다.

**AWS CLI**  
**리소스의 라이선스 구성 업데이트**  
다음 `update-license-specifications-for-resource` 예시는 하나의 라이선스 구성을 제거하고 다른 구성을 추가하여 지정된 Amazon Machine Image(AMI)에 연결된 라이선스 구성을 바꿉니다.  

```
aws license-manager update-license-specifications-for-resource \
    --resource-arn arn:aws:ec2:us-west-2::image/ami-1234567890abcdef0 \
    --remove-license-specifications LicenseConfigurationArn=arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-38b658717b87478aaa7c00883EXAMPLE \
    --add-license-specifications LicenseConfigurationArn=arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-42b6deb06e5399a980d555927EXAMPLE
```
이 명령은 출력을 생성하지 않습니다.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [UpdateLicenseSpecificationsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/update-license-specifications-for-resource.html)를 참조하세요.

### `update-service-settings`
<a name="license-manager_UpdateServiceSettings_cli_topic"></a>

다음 코드 예시에서는 `update-service-settings`의 사용 방법을 보여줍니다.

**AWS CLI**  
**License Manager 설정 업데이트**  
다음 `update-service-settings` 예시에서는 현재 AWS 리전의 License Manager에 대한 교차 계정 리소스 검색을 활성화합니다. Amazon S3 버킷은 Systems Manager 인벤토리에 필요한 리소스 데이터 동기화입니다.  

```
aws license-manager update-service-settings \
    --organization-configuration EnableIntegration=true \
    --enable-cross-accounts-discovery \
    --s3-bucket-arn arn:aws:s3:::aws-license-manager-service-abcd1234EXAMPLE
```
이 명령은 출력을 생성하지 않습니다.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [UpdateServiceSettings](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/license-manager/update-service-settings.html)를 참조하세요.