Compartilhar via


ResourceDefinition [SPFSDK][VMROLE]

 

Aplica-se a: Windows Azure Pack

Uma definição de recurso é um modelo para uma função de VM que é oferecida aos locatários por meio de itens da galeria. O modelo inclui a configuração de hardware, rede, sistema operacional e configuração de aplicativo, além da interface do usuário necessária para coletar informações específicas do locatário. As definições de recurso são baseadas em um modelo consistente entre nuvens privadas, mas podem ter elementos de hardware e rede específicos da plataforma, conforme necessário, para dar suporte à implantação de função de VM em cada plataforma.

Hierarquia de Tipos

VirtualMachineRole (Instância) [SPFSDK][VMROLE]. ResourceDefinition

Sintaxe

{
    "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> }
}

Propriedades

Nome

Tipo

Obrigatório

Valor padrão

Descrição

Nome

String

Não

nulll

O nome dessa definição de recurso.

Versão

String

Sim

Nenhum

A versão dessa definição de recurso. O formato da versão é: <principal>.< menor>.< build>.< versão>. Por exemplo, 6.33.2.10.

Publisher

String

Não

nulo

O nome do editor dessa definição de recurso.

schemaVersion

String

Yes

1.0.0.0

Essa propriedade deve ser declarada e o valor dessa propriedade é sempre 1.0.

Type

String

Yes

MicrosoftCompute/VMRole

Essa propriedade deve ser declarada. O valor dessa propriedade é sempre Microsoft.Compute/VMRole/1.0.

ResourceParameters

Matriz de parâmetros e tipos [SPFSDK][VMROLE]

No

nulo

Uma matriz de parâmetros que são declarados pela definição de recurso.

ResourceExtensionReferences

Matriz de ResourceExtensionReference [SPFSDK][VMROLE]

No

nulo

Uma matriz de referências de extensão de recurso.

Intrínsecos

Intrínsecos [SPFSDK][VMROLE]

Sim

Nenhum

As configurações da máquina virtual quando ela é criada a partir da função de VM.

Comentários

O exemplo de código a seguir fornece um objeto ResourceDefinition de exemplo.

{
    "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"
                }
            } 
        }
    }
}

Consulte Também

Referência JSON da função VM [SPFSDK][VMROLE]
VirtualMachineRole (Instância) [SPFSDK][VMROLE]
ResourceExtension [SPFSDK][VMROLE]
ResourceConfiguration [SPFSDK][VMROLE]
Parâmetros e tipos [SPFSDK][VMROLE]
ResourceExtensionReference [SPFSDK][VMROLE]
Intrínsecos [SPFSDK][VMROLE]