다음을 통해 공유


ResourceDefinition [SPFSDK][VMROLE]

 

적용 대상: Windows Azure Pack

리소스 정의는 갤러리 항목을 통해 테넌트에 제공되는 VM 역할에 대한 템플릿입니다. 템플릿에는 테넌트에서 특정 정보를 수집하는 데 필요한 사용자 인터페이스 외에도 하드웨어, 네트워크, 운영 체제 및 애플리케이션 구성에 대한 구성이 포함됩니다. 리소스 정의는 프라이빗 클라우드에서 일관된 모델을 기반으로 하지만 각 플랫폼에서 VM 역할 배포를 지원하는 데 필요한 플랫폼별 하드웨어 및 네트워크 요소를 포함할 수 있습니다.

형식 계층 구조

VirtualMachineRole(인스턴스) [SPFSDK][VMROLE]. ResourceDefinition

구문

{
    "Name" : "Name of the resource definition",
    "Version" : "Version of the resource definition",
    "Publisher" : "Publisher of resource definition",

    "SchemaVersion" : "1.0",
    "Type" : "Microsoft.Compute/VMRole/1.0",

    "ResourceParameters" : [
        { <ResourceParameters> }
    ],

    "ResourceExtensionReferences" : [ 
        { <ResourceExtensionReferences> }
    ],

    "IntrinsicSettings" : { <IntrinsicSettings> }
}

속성

이름

유형

필수

기본값

Description

Name

String

nulll

이 리소스 정의의 이름입니다.

버전

String

없음

이 리소스 정의의 버전입니다. 버전 형식은 주> 버전입니다<.< minor>.< 빌드합니다>.< 릴리스합니다>. 예를 들어 6.33.2.10입니다.

Publisher

String

null

이 리소스 정의의 게시자 이름입니다.

schemaVersion

String

1.0.0.0

이 속성을 선언해야 하며 이 속성의 값은 항상 1.0입니다.

Type

String

MicrosoftCompute/VMRole

이 속성을 선언해야 합니다. 이 속성의 값은 항상 Microsoft.Compute/VMRole/1.0입니다.

ResourceParameters

매개 변수 및 형식 배열 [SPFSDK][VMROLE]

아니요

null

리소스 정의에 의해 선언된 매개 변수의 배열입니다.

ResourceExtensionReferences

ResourceExtensionReference의 배열 [SPFSDK][VMROLE]

아니요

null

리소스 확장 참조의 배열입니다.

IntrinsicSettings

IntrinsicSettings [SPFSDK][VMROLE]

없음

VM 역할에서 가상 머신을 만들 때의 설정입니다.

설명

다음 코드 예제에서는 샘플 ResourceDefinition 개체를 제공합니다.

{
    "Name" : "MyResource",

    "ResourceConfiguration" : {
        "Version" : "1.0.0.0",

        "ParameterValues" : "{    
                \"MyParameter1\" : \"Value1\",
                \"MyParameter2\" : \"Value2\"
        }"
    },

    "ResourceDefinition" : {
        "Name" : "Name of the resource definition",
        "Version" : "Version of the resource definition",
        "Publisher" : "Publisher of resource definition",

        "Type" : "MicrosoftCompute/VMRole/1.0",

        "SchemaVersion" : "1.0",

        "ResourceParameters" : [
            {
                "Name" : "SQLDeploymentCredential",
                "Type" : "Credential",
                "Description" : "Parameter Description"
            }
        ],

        "ResourceExtensionReferences" : [
            { 
                "ReferenceName" : "MyExtensionReference",

                "Name" : "NameOfImportedResourceExtension",
                "Version" : "1.0.0.0",  
                "Publisher" : "Publisher Name"

                "ResourceExtensionParameterValues" : "{
                        \"SQLInstance\" : \"[Param.MyParameter1]\",
                        \"MyParameter\" : \"MyParameterValue\"
                }"
            }
        ],

        "IntrinsicSettings" : {
            "ScaleOutSettings" : {
                "InitialInstanceCount" : "1",
                "MaximumInstanceCount" : "5", 
                "MinimumInstanceCount" : "1",
                "UpgradeDomainCount" : "2"
            },

            "HardwareProfile": { 
                "VMSize" : "<platform-specific-size-value>"
            },

            "StorageProfile": {
                "OSVirtualHardDiskImage" : "OSVHDImageName:1.0.0.0",

                "DataVirtualHardDisk" : [
                    {
                        "DataVirtualHardDiskImage" : "DataVHDName:1.0.0.0",
                        "Lun" : 0
                    }
                ]
            },

            "NetworkProfile": { 
                "NetworkAdapters" : [
                    {
                        "Name" : "myNic1",
                        "NetworkRef" : "External",

                        "IPAddresses" : [
                            {
                                "Type" : "IPv4 | IPv6",
                                "AllocationMethod" : "Static | Dynamic",

                                "IPAddressConfigurations" : [
                                    {
                                        "ConfigurationName" : "MyIPConfiguration",

                                        "LoadBalancerConfigurations" : [ 
                                            { 
                                                "ConfigurationName" : "MyLBConfiguration", 
                                                "FrontEndNetwork" : "internet",

                                                "PortConfig" : { 
                                                    "Name" : "MyPortConfig",
                                                    "Protocol" : "UDP",
                                                    "FrontEndPort" : 80,
                                                    "BackEndPort" : 8080
                                                },

                                                "Probe": {
                                                    "MaxRetryCount" : 5,
                                                    "Port" : 8080,
                                                    "ProbeIntervalInSeconds" : 20,
                                                    "Protocol" : "HTTP",
                                                    "RequestPath" : "http://myrequest/" 
                                                }
                                            }
                                        ] 
                                    }
                                ] 
                            }  
                        ] 
                    }
                ]
            },

            "OperatingSystemProfile" : {
                "ComputerNamePattern" : "MyComputer###",
                "TimeZone" : "Pacific Standard Time",
                "AdminCredential" : "username:password",

                "WindowsOperatingSystemProfile" : {
                    "WorkgroupName" : "workgroup",   
                    "DomainJoin" : {
                        "DomainToJoin" : "Redmond",
                        "DomainJoinCredentials" : "domain\\user:pwd"
                    }
                },

                "LinuxOperatingSystemProfile" : {
                    "DNSDomainName" : "Redmond",
                    "SSHPublicKey" : "f3:31:a8:c6:82:18:c8:0f:dd:6b:fb:27:98:83:3d:3b"
                }
            } 
        }
    }
}

참고 항목

VM 역할 JSON 참조 [SPFSDK][VMROLE]
VirtualMachineRole(인스턴스) [SPFSDK][VMROLE]
ResourceExtension [SPFSDK][VMROLE]
ResourceConfiguration [SPFSDK][VMROLE]
매개 변수 및 형식 [SPFSDK][VMROLE]
ResourceExtensionReference [SPFSDK][VMROLE]
IntrinsicSettings [SPFSDK][VMROLE]