Partager via


ResourceDefinition [SPFSDK][VMROLE]

 

S’applique à : Windows Azure Pack

Une définition de ressource est un modèle pour un rôle de machine virtuelle qui est offert aux locataires par le biais d’éléments de galerie. Le modèle inclut la configuration du matériel, du réseau, du système d’exploitation et de la configuration de l’application en plus de l’interface utilisateur requise pour collecter des informations spécifiques auprès du locataire. Les définitions de ressources sont basées sur un modèle cohérent entre les clouds privés, mais peuvent avoir des éléments matériels et réseau spécifiques à la plateforme, selon les besoins, pour prendre en charge le déploiement de rôles de machine virtuelle sur chaque plateforme.

Hiérarchie des types

VirtualMachineRole (Instance) [SPFSDK][VMROLE]. ResourceDefinition

Syntaxe

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

Propriétés

Nom

Type

Obligatoire

Valeur par défaut

Description

Nom

String

Non

Nulll

Nom de cette définition de ressource.

Version

String

Oui

None

Version de cette définition de ressource. Le format de la version est : <majeur>.< mineure>.< build>.< mise en production>. Par exemple, 6.33.2.10.

Serveur de publication

String

Non

null

Nom de l’éditeur de cette définition de ressource.

SchemaVersion

String

Oui

1.0.0.0

Cette propriété doit être déclarée et la valeur de cette propriété est toujours 1.0.

Type

String

Oui

MicrosoftCompute/VMRole

Cette propriété doit être déclarée. La valeur de cette propriété est toujours Microsoft.Compute/VMRole/1.0.

ResourceParameters

Tableau de paramètres et de types [SPFSDK][VMROLE]

Non

null

Tableau de paramètres déclarés par la définition de ressource.

ResourceExtensionReferences

Tableau de ResourceExtensionReference [SPFSDK][VMROLE]

Non

null

Tableau de références d’extension de ressource.

Settings intrinsèques

Settings intrinsèques [SPFSDK][VMROLE]

Oui

None

Paramètres de la machine virtuelle lorsqu’elle est créée à partir du rôle de machine virtuelle.

Remarques

L’exemple de code suivant fournit un exemple d’objet 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"
                }
            } 
        }
    }
}

Voir aussi

Référence JSON du rôle de machine virtuelle [SPFSDK][VMROLE]
VirtualMachineRole (Instance) [SPFSDK][VMROLE]
ResourceExtension [SPFSDK][VMROLE]
ResourceConfiguration [SPFSDK][VMROLE]
Paramètres et types [SPFSDK][VMROLE]
ResourceExtensionReference [SPFSDK][VMROLE]
Settings intrinsèques [SPFSDK][VMROLE]