Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los objetos Node y nodearray son objetos de rango 2 que están subordinados a cluster. Un nodo representa una sola máquina virtual, mientras que una matriz de nodos puede representar una colección de máquinas virtuales o al menos un conjunto de escalado de máquinas virtuales.
Valores predeterminados del nodo
[[node defaults]] es un nodo abstracto especial que especifica la configuración predeterminada para todos los nodos y nodearrays de un clúster:
[cluster my-cluster]
[[node defaults]]
Credentials = $Credentials
SubnetId = my-rg/my-vnet/my-subnet
MachineType = Standard_D2s_v3
[[nodearray grid]]
ImageName = cycle.image.ubuntu22
MachineType = Standard_H16
$Credentials es una referencia a un parámetro denominado Credentials.
En my-cluster, el nodoarray gridhereda los valores Credential y SubnetId del nodo node defaults, pero usa un tamaño de máquina virtual HPC específico de Standard_H16.
Ejemplo
En esta plantilla de ejemplo se crea un clúster con dos nodos y una matriz de nodos. El nodo proxy usa la IsReturnProxy propiedad para definir el rol especial de ReturnProxy. Este nodo actúa como punto de conexión para un proxy de canal inverso que procede de CycleCloud cuando se inicia el clúster.
[cluster my-cluster]
[[node defaults]]
Credentials = $Credentials
SubnetId = $SubnetId
KeyPairLocation = ~/.ssh/cyclecloud.pem
ImageName = cycle.image.ubuntu22
[[node proxy]]
IsReturnProxy = true
MachineType = Standard_B2
[[node scheduler]]
MachineType = Standard_D4s_v3
[[nodearray execute]]
MachineType = Standard_D16s_v3
Referencia de atributo requerida
Necesita al menos cuatro atributos necesarios para iniciar correctamente un nodo:
| Atributo | Tipo | Definición |
|---|---|---|
| Tipo de Máquina | Cuerda | Tamaño de máquina virtual de Azure |
| SubnetId | Cuerda | Definición de subred con el formato ${rg}/${vnet}/${subnet}. Tenga en cuenta que este valor no es el identificador de recurso completo. |
| Credenciales | Cuerda | Nombre de la cuenta del proveedor de nube. |
El cuarto atributo obligatorio se relaciona con una imagen. Debe proporcionar un atributo de imagen, pero puede elegir entre varios formularios. Para obtener más información, vea Atributos de imagen.
Atributos adicionales
| Atributo | Tipo | Definición |
|---|---|---|
| ComputerName | Cuerda | Nombre de equipo de la máquina virtual. Si especifica este atributo, invalida el nombre generado por el sistema. |
| ComputerNamePrefix | Cuerda | Prefijo agregado a los nombres de equipo generados por el sistema. |
| Zona | Cadena (lista) | Zona de disponibilidad para la máquina virtual o los conjuntos de escalado de máquinas virtuales. Puede ser una lista para el conjunto de escalado de máquinas virtuales. Por ejemplo: Zone = 1,3. |
| KeyPairLocation | Entero | Ubicación donde CycleCloud encuentra un par de claves SSH en el sistema de archivos local. |
| KeepAlive (mantener vivo) | Booleano | Si es true, CycleCloud impide la terminación de este nodo. |
| Casillero | Cuerda | Nombre del casillero que se va a usar para descargar las especificaciones del proyecto. Consulte Uso de proyectos. |
| Atributo | Tipo | Definición |
|---|---|---|
| ComputerName | Cuerda | Nombre de equipo de la máquina virtual. Si especifica un nombre, invalida el nombre generado por el sistema. |
| ComputerNamePrefix | Cuerda | Prefijo agregado a los nombres de equipo generados por el sistema. |
| EphemeralOSDisk | Booleano | Use un disco de arranque efímero para la máquina virtual, si se admite. |
| Zona | Cadena (lista) | Zona de disponibilidad para la máquina virtual o el conjunto de escalado de máquinas virtuales. Puede ser una lista para el conjunto de escalado de máquinas virtuales. Por ejemplo: Zone = 1,3. |
| ProximityPlacementGroupId | Cuerda | Identificador completo del grupo de selección de ubicación de proximidad en el que colocar este nodo. Debe comenzar con /subscriptions/. |
| PlacementGroupId | Cuerda | Si se establece, esta etiqueta coloca el nodo en un único grupo de selección de ubicación con todos los demás nodos que tienen un valor coincidente para PlacementGroupId. Esta configuración ofrece una comunicación de menor latencia y es necesaria para habilitar InfiniBand en tamaños de máquina virtual que lo admiten. El programador normalmente establece este valor según sea necesario, por lo que no es necesario especificarlo manualmente. |
| KeyPairLocation | Entero | Donde CycleCloud encuentra un par de claves SSH en el sistema de archivos local |
| KeepAlive (mantener vivo) | Booleano | Si es true, CycleCloud impide la finalización de este nodo. |
| Casillero | Cuerda | Nombre del contenedor desde el que se descargarán las especificaciones del proyecto. Consulte Uso de proyectos |
| BootDiagnosticsUri | Cuerda | URI de almacenamiento para diagnósticos de arranque (ejemplo: https://mystorageaccount.blob.core.windows.net/), si se especifica. Se aplican cargos de almacenamiento. |
| HybridBenefit | Booleano | Si es verdadero, habilita las licencias de "Ventaja híbrida de Azure" para máquinas virtuales de Windows. |
| Id de Grupo de Seguridad de Red | Cuerda | Si se da, el identificador de recurso completo de un grupo de seguridad de red que se usará para este nodo. También puede especificar este valor como SecurityGroup en una interfaz de red. |
| EnableTerminateNotification (8.2.0+) | Booleano | Si es verdadero, habilita Terminate Notification para enviar eventos de eliminación de la máquina virtual para la gestión local. Esta configuración solo se aplica a las máquinas virtuales del conjunto de escalado. |
| TerminateNotificationTimeout (8.2.2+) | Hora relativa | Si la notificación de finalización está habilitada, esta configuración controla cuánto tiempo las máquinas virtuales tienen que controlar el evento antes de eliminarse. |
| ThrottleCapacity (8.2.2+) | Booleano | Si es true, la matriz de nodos notifica 0 capacidad para el escalado automático durante un valor predeterminado de cinco minutos después de encontrar un problema de capacidad. |
| ThrottleCapacityTime (8.2.2+) | Hora relativa | Si habilita ThrottleCapacity, establezca cuánto tiempo se va a notificar cero disponibilidad tras haberse restringido la capacidad. El valor predeterminado es "5m". |
| HybridBenefitLicense (8.3.0+) | Cuerda | Si HybridBenefit es true, especifique la licencia que se va a usar: RHEL_BYOS, SLES_BYOSo Windows_Server. El valor predeterminado es Windows_Server. |
| FlexScaleSetId (8.3.0+) | Cuerda | Escriba el identificador completo de un conjunto de escalas en modo de orquestación flex que desee usar para la máquina virtual en este nodo. |
| EncryptionAtHost (8.4.0+) | Booleano | Si es true, la máquina virtual tiene habilitado el cifrado en el host . |
| TipoDeSeguridad (8.5.0+) | Cuerda | Establece el tipo de seguridad; ya sea sin definir, TrustedLauncho ConfidentialVM. |
| EnableSecureBoot (8.5.0+) | Booleano | Habilita el arranque seguro si usa máquinas virtuales de inicio seguro o máquinas virtuales confidenciales. |
| EnableVTPM (8.5.0+) | Booleano | Habilita el módulo de plataforma segura virtual si usa máquinas virtuales de inicio seguro o máquinas virtuales confidenciales. |
| ScaleSetUpgradePolicyMode (8.6.2+) | Cuerda | Especifica la directiva de actualización del conjunto de escalado. Esta directiva controla lo que sucede con las máquinas virtuales existentes de un conjunto de escalado al modificar la plantilla de conjunto de escalado fuera de CycleCloud. Por lo general, habilite esta directiva si usa una herramienta automatizada para modificar los conjuntos de escalado existentes, como Azure Policy. Nota: esta directiva no actualiza automáticamente la imagen del sistema operativo. Elija una de las opciones: Automatic, Rolling, o Manual (valor predeterminado). |
Nota:
Un grupo de selección de ubicación por proximidad es una característica general de Azure. Debe crear uno para poder hacer referencia a él en un nodo.
Esta característica permite que las máquinas virtuales de CycleCloud se coloquen con otros recursos de Azure en ese grupo de selección de ubicación por proximidad, pero no habilita las redes de InfiniBand.
Por el contrario, PlacementGroupId es una cadena arbitraria en CycleCloud que se usa para agrupar máquinas virtuales para nodos en un único conjunto de escalado. Este conjunto de escalas está limitado a estar bajo el mismo conmutador de red, pero puede que no se localice junto con otros recursos de Azure.
Puede usar ambas características juntas, pero esta combinación podría reducir el número de máquinas virtuales que puede asignar.
Atributos de imagen
Debe especificar la imagen de máquina virtual para iniciar una máquina virtual. Hay tres formas válidas de definición de imagen: nombres de imagen de CycleCloud predeterminados, definiciones de imágenes de Marketplace e identificadores de imagen.
ImageName
CycleCloud admite varias imágenes predeterminadas de Marketplace para diferentes tipos de sistema operativo. Puede especificar estas imágenes con .ImageName
| Atributo | Tipo | Definición |
|---|---|---|
| ImageName | Cuerda | Nombre de imagen compatible con el ciclo. |
Imágenes de Marketplace
Junto con las imágenes de Marketplace administradas por ciclo, puede usar cualquier imagen de Marketplace especificando, Publisher, Offer, Sku, y ImageVersion.
| Atributo | Tipo | Definición |
|---|---|---|
| Azure.Publisher | Cuerda | Publicador de la imagen de Marketplace de máquina virtual |
| Azure.Offer | Cuerda | Oferta para la imagen de Marketplace de máquina virtual |
| Azure.Sku | Cuerda | SKU de la imagen de Marketplace de máquina virtual |
| Azure.ImageVersion | Cuerda | Versión de imagen de la imagen de Marketplace |
Nota:
También puede especificar una imagen de Marketplace en el ImageName atributo . Codifique como un URN con el formato Publisher:Offer:Sku:ImageVersion.
Imágenes con plan de precios personalizado
Las imágenes de Shared Image Gallery que tienen un plan de precios adjunto requieren información sobre el plan que se va a usar, a menos que esa información se almacene en la imagen de Shared Image Gallery. Especifique esta información con el atributo ImagePlan usando los atributos anidados Publisher, Product y Plan.
Nota:
El uso de imágenes personalizadas con un plan de precios requiere CycleCloud 8.0.2 o posterior.
ImageId
También puede usar el identificador de recurso de una imagen de máquina virtual en la suscripción de la credencial:
| Atributo | Tipo | Definición |
|---|---|---|
| ImageId | Cuerda | Identificador de recurso de la imagen de máquina virtual |
Atributos de imagen
Las imágenes de Marketplace y las imágenes que defina con ImageIds necesitan algunas configuraciones adicionales para trabajar con la extensión del sistema operativo CycleCloud OS.
| Atributo | Tipo | Definición |
|---|---|---|
| DownloadJetpack | Booleano | Si es false, CycleCloud no descarga Jetpack desde la cuenta de almacenamiento. Jetpack ya debe estar instalado. Nota: solo se admiten los nodos de Linux. El valor predeterminado es true. Agregado en la versión 8.4.1. |
| Instalar Jetpack | Booleano | Si es falso, CycleCloud no instala Jetpack en las nuevas máquinas virtuales. El valor predeterminado es true. |
| AwaitInstallation | Booleano | Si es false, CycleCloud no espera a que Jetpack notifique los detalles de instalación al crear la máquina virtual. El valor predeterminado es true. |
| JetpackPlatform | Cuerda | Plataforma del instalador de Jetpack para usar: centos-7, centos-6, ubuntu-14.04, ubuntu-16.04, windows. En desuso en la versión 7.7.0. |
Advertencia
No se recomienda establecer InstallJetpack o AwaitInstallation. Además, la configuración DownloadJetpack requiere una imagen personalizada con la versión correcta de la instalación de Jetpack. Establezca DownloadJetpack únicamente si está experimentando problemas en su entorno al descargar desde cuentas de almacenamiento.
Nota:
Si incluye varias definiciones de imagen en una definición de nodo único, la implementación usa ImageId de forma predeterminada.
Ejemplo de imagen alternativa
En la plantilla de ejemplo siguiente se usan las tres construcciones de imagen alternativas para los nodos:
[cluster image-example]
[[node defaults]]
Credentials = $Credentials
MachineType = Standard_D2_v3
SubnetId = my-rg/my-vnet/my-subnet
[[node cycle-image]]
ImageName = cycle.image.ubuntu16
[[node my-custom-vm-image]]
ImageId = /subscriptions/9B16BFF1-879F-4DB3-A55E-8F8AC1E6D461/resourceGroups/my-rg/providers/Microsoft.Compute/images/jetpack-rhel7-1b1e3e93
# Jetpack already installed on image
DownloadJetpack = false
[[node marketplace-vm-image]]
Azure.Publisher = Canonical
Azure.Offer = UbuntuServer
Azure.Sku = 16.04-LTS
Azure.ImageVersion = latest
[[node custom-marketplace-vm-image]]
ImageName = /subscriptions/9B16BFF1-879F-4DB3-A55E-8F8AC1E6D461/resourceGroups/my-rg/providers/Microsoft.Compute/images/jetpack-rhel8-1b1e3e93
ImagePlan.Name = rhel-lvm8
ImagePlan.Publisher = redhat
ImagePlan.Product = rhel-byos
Atributos de red avanzados
| Atributo | Tipo | Definición |
|---|---|---|
| IsReturnProxy | Booleano | Configure un proxy de canal inverso en este nodo. Solo un nodo por clúster puede tener esta configuración como true. |
| ReturnPath.Hostname | Nombre de host | Nombre de host donde el nodo puede llegar a CycleCloud. |
| ReturnPath.WebserverPort | Entero | Puerto de servidor web donde el nodo puede llegar a CycleCloud. |
| ReturnPath.BrokerPort | Entero | Intermediario donde el nodo puede llegar a CycleCloud. |
Etiquetas
CycleCloud admite el etiquetado de máquinas virtuales y conjuntos de escalado de máquinas virtuales.
| Atributo | Cuerda | Definición |
|---|---|---|
| Etiquetas | Cuerda | Use tags.my-tag = my-tag-value para agregar etiquetas a la implementación además de las etiquetas asignadas por CycleCloud de forma predeterminada. |
Atributos normales o de acceso puntual
CycleCloud admite el uso de máquinas virtuales de Spot mediante los atributos siguientes. Para más información, consulte Máquinas virtuales de Spot.
| Atributo | Cuerda | Definición |
|---|---|---|
| Interrumpible | Booleano | Si es verdadero, la máquina virtual es una máquina virtual Spot que ofrece precios reducidos. |
| PrecioMáximo | Float | El precio máximo que desea pagar por la máquina virtual. (Valor predeterminado: -1) |
Atributos específicos de Nodearray
Todos los atributos de un nodo son válidos para una matriz de nodos, pero una matriz de nodos es un recurso elástico, por lo que hay atributos adicionales disponibles. Nodearray es un controlador para Azure VirtualMachine ScaleSets y puede tener muchos conjuntos de escalado de máquinas virtuales de respaldo.
| Atributo | Cuerda | Definición |
|---|---|---|
| Azure.AllocationMethod | Cuerda | Establezca este atributo a StandAlone para administrar máquinas virtuales únicas o déjelo indefinido para usar conjuntos de escala de máquinas virtuales. |
| Azure.SingleScaleset | Booleano | Use un único conjunto de escalado de máquinas virtuales para todos los nodos (valor predeterminado: false). |
| Azure.SinglePlacementGroup | Booleano | Utilice la configuración de grupo de ubicación única para el conjunto de escalado de máquinas virtuales. (Valor predeterminado: false) |
| Azure.Overprovision | Booleano | Utilice la función de sobreaprovisionamiento de los conjuntos de escalado de máquinas virtuales. Cyclecloud establece dinámicamente este valor en función del escenario. Este valor es una invalidación. |
| Azure.MaxScaleSetSize | Entero | Limite el número de máquinas virtuales en un único conjunto de escalado de máquinas virtuales. Una vez alcanzado este máximo, CycleCloud agrega conjuntos de escalado de máquinas virtuales adicionales al clúster. (Valor predeterminado: '40') |
| InitialCount | Entero | Número de nodos que se van a iniciar cuando se inicia el clúster. |
| MaxCount | Entero | Para asegurarse de que el clúster nunca supera los 10 nodos, especifique un valor de 10. Use MaxCount y MaxCoreCount juntos. La restricción efectiva menor surte efecto. |
| InitialCoreCount | Entero | Número de núcleos que se van a iniciar cuando se inicia el clúster. |
| MaxCoreCount | Entero | Para asegurarse de que el clúster nunca supera los 100 núcleos, especifique un valor de 100. Use MaxCount y MaxCoreCount juntos. La restricción efectiva menor surte efecto. |
| Política de apagado | Cuerda | Indica qué hacer con la máquina virtual cuando se apaga un nodo. Si terminate, la máquina virtual se elimina cuando se apaga el nodo. Si deallocate, el nodo se detiene. (Valor predeterminado: finalizar) |
| Atributo | Cuerda | Definición |
|---|---|---|
| Azure.AllocationMethod | Cuerda | Establezca este valor StandAlone en para administrar máquinas virtuales únicas o dejarla sin definir para usar conjuntos de escalado de máquinas virtuales. |
| Azure.SingleScaleset | Booleano | Use un único conjunto de escalado de máquinas virtuales para todos los nodos (valor predeterminado: false). |
| Azure.SinglePlacementGroup | Booleano | Utilice la configuración de grupo de ubicación única para el conjunto de escalado de máquinas virtuales. (Valor predeterminado: false) |
| Azure.Overprovision | Booleano | Utiliza la funcionalidad de Sobreaprovisionamiento de conjuntos de escalado para máquinas virtuales. CycleCloud establece dinámicamente este valor en función del escenario. Esta configuración actúa como invalidación. |
| Azure.MaxScaleSetSize | Entero | Limite el número de máquinas virtuales en un único conjunto de escalado de máquinas virtuales. Una vez alcanzado este máximo, CycleCloud agrega conjuntos de escalado de máquinas virtuales adicionales al clúster. (Valor predeterminado: '40') |
| InitialCount | Entero | Número de nodos que se van a iniciar cuando se inicia el clúster. |
| MaxCount | Entero | Para asegurarse de que el clúster nunca supera los 10 nodos, especifique un valor de 10. Use MaxCount y MaxCoreCount juntos. La restricción efectiva menor surte efecto. |
| InitialCoreCount | Entero | Número de núcleos que se van a iniciar cuando se inicia el clúster. |
| MaxCoreCount | Entero | Para asegurarse de que el clúster nunca supera los 100 núcleos, especifique un valor de 100. Use MaxCount y MaxCoreCount juntos. La restricción efectiva menor surte efecto. |
| Política de apagado | Cuerda | Indica qué hacer con la máquina virtual cuando se apaga un nodo. Si establece el valor terminate, la máquina virtual se elimina cuando el nodo se apaga. Si establece el valor deallocate, el nodo se detiene en su lugar. (Valor predeterminado: finalizar) |
| ThrottleCapacity | Booleano | Si se debe suspender las solicitudes a Azure al recibir la señal Insufficient Capacity. (Valor predeterminado: false) |
| ThrottleCapacityTime | Hora relativa | Tiempo de retroceso después de recibir la señal Insufficient Capacity de Azure.
AvailableCount se notifica como cero durante este tiempo. (Valor predeterminado: '5m') |
Nota:
A todos los conjuntos de escalado de máquinas virtuales se les ha asignado FaultDomainCount = 1.
Herencia
Puede derivar nodos y matrices de nodos que están estrechamente relacionados con otros nodos de la misma plantilla de clúster. Estas definiciones heredadas reducen el número de declaraciones que necesita al compartir atributos comunes. La sección usada habitualmente [[node defaults]] es una definición abstracta especial que se aplica a todos los nodos y matrices de nodos del clúster.
| Atributo | Cuerda | Definición |
|---|---|---|
| Resumen | Booleano | Si es true, no cree un nodo o una matriz de nodos en el clúster. Use el resumen para la herencia. (Valor predeterminado: false) |
| Extiende | Cadena (lista) | Lista ordenada de nombres heredados de nodos y de matrices de nodos. Los elementos más adelante en la lista tienen prioridad cuando los valores entran en conflicto. El defaults nodo siempre es efectivamente el primero en la lista. (Valor predeterminado: []) |
Objetos subordinados
Los objetos node y nodearray tienen volumen, interfaz de red, cluster-init, input-endpoint y configuración como objetos subordinados.