Configuración de clúster
Los objetos de configuración son de clasificación 3 y subordinados a node
y nodearray
. El objeto de configuración define las propiedades configurables para el código de configuración que se ejecuta en los nodos y las configuraciones de CycleCloud Project .
Atributos de objeto
Los atributos de objeto de configuración se comportan como otros objetos, pero se extienden para proporcionar definiciones anidadas. Internamente, las secciones de configuración se combinan, por lo que puede haber un número arbitrario de secciones.
No se necesitan comillas para cadenas o para expresiones booleanas, true o false.
[[[configuraton my-project]]]
Attribute1 = Value1
Attribute2 = Value2
KeyAttribute3.Attribute3 = true
[[[configuraton cyclecloud.mounts.mount1]]]
Attribute1 = Value1
Configuraciones admitidas
CycleCloud admite una serie de objetos de configuración predeterminados. Estos objetos admitidos se encuentran bajo el nombre cyclecloud
.
[[[configuration cyclecloud]]]
CycleCloud admite la configuración parametrizada de muchos servicios del sistema.
Atributo | Tipo | Descripción |
---|---|---|
maintenance_converge.enabled | Boolean | Los nodos cycleCloud se vuelven a configurar cada 20 minutos para asegurarse de que están en el estado correcto. Hay ocasiones en las que es posible que no quiera que sea el comportamiento predeterminado, como cuando se prueban y actualizan manualmente la configuración en un nodo. Si se establece este valor en false, el nodo se configurará solo una vez. Valor predeterminado: true |
node.prevent_metadata_access | Boolean | Impide que los usuarios, que no sean el usuario raíz o el usuario cyclecloud accedan a los metadatos de la máquina virtual desde el nodo. Estas reglas de acceso se aplican en iptables . Valor predeterminado: true |
timezone | String | La zona horaria de un nodo se puede cambiar estableciendo este atributo en cualquier cadena de zona horaria válida, por ejemplo PST , EST . Valor predeterminado: UTC |
ntp.disabled | Boolean | Para no participar en el servicio de hora ntp, establezca true . Valor predeterminado: false |
ntp.servers | List (String) | Lista de servidores NTP que se van a usar. Valor predeterminado: pool.ntp.org |
keepalive.timeout | Entero | Cantidad de tiempo en segundos para mantener un nodo "activo" si no ha terminado de instalar o configurar software. Valor predeterminado: 14400 (4 horas) |
Detectable | Boolean | Indica si este nodo puede ser "detectado" (buscado) por otros nodos iniciados por CycleCloud. Valor predeterminado: false |
autoscale.forced_shutdown_timeout | Entero | Cantidad de tiempo (en minutos) antes de que se produzca un apagado forzado si la escalabilidad automática no puede reducir verticalmente el nodo correctamente. Valor predeterminado: 15 |
security.limits | Entero | Solo Linux. Límites que se van a aplicar al nodo. El dominio, el tipo y el elemento se pueden especificar para cualquier valor válido definido. Valores predeterminados: security.limits.\*.hard.nofile = 524288 y security.limits.\*.soft.nofile = 1048576 |
Montajes | Anidado | Para la exportación y montaje de NFS y montaje de volumen. |
selinux.policy | String | Solo Linux.
Omitir una directiva aplicada selinux para imágenes personalizadas. Ya está deshabilitado en las imágenes principales de CycleCloud. |
install_epel | Boolean | Agregue el repositorio de paquetes extendidos para yum en la imagen variante redHat. Valor predeterminado: true |
disable_rhui | Boolean | No participar en las configuraciones del repositorio de Red Hat. Predeterminado: false |
ganglia.install | Boolean | Para no participar en la instalación de ganglia, establezca false . Valor predeterminado: true |
fail2ban.enabled | Boolean | Opt-out of fail2ban installation by setting false . Valor predeterminado: true |
dns.domain | String | Use nsupdate para forzar una actualización dinámica de registros DNS. Solo es útil cuando la directiva DNS permite y el clúster usa un servidor DNS que permite actualizaciones dinámicas. Valor predeterminado: nil |
dns.alias | String | Use nsupdate para forzar una actualización dinámica de registros DNS. Solo es útil cuando la directiva DNS permite y el clúster usa un servidor DNS que permite actualizaciones dinámicas. Valor predeterminado: nil |
replace_sudoers | Boolean | Permitir que Cyclecloud administre la configuración de los sudoers. La deshabilitación puede interferir con los servicios de usuario o programador. Valor predeterminado: true |
Atributo | Tipo | Descripción |
---|---|---|
keepalive.timeout | Entero | Cantidad de tiempo en segundos para mantener un nodo "activo" si no ha terminado de instalar o configurar software. Valor predeterminado: 14400 (4 horas) |
Detectable | Boolean | Si este nodo se puede "detectar" (buscar) por otros nodos iniciados por CycleCloud. Valor predeterminado: false |
security.limits | Entero | Solo Linux. Límites que se van a aplicar al nodo. El dominio, el tipo y el elemento se pueden especificar para cualquier valor válido definido. Valores predeterminados: security.limits.\*.hard.nofile = 524288 y security.limits.\*.soft.nofile = 1048576 |
Montajes | Anidado | Para la exportación y montaje de NFS y montaje de volumen. |
selinux.policy | String | Solo Linux.
Omita una directiva aplicada selinux en las instancias de clúster. Valor predeterminado: nil |
dns.domain | String | Use nsupdate para forzar una actualización dinámica de registros DNS. Solo resulta útil cuando la directiva DNS permite y el clúster usa un servidor DNS que permite actualizaciones dinámicas. Valor predeterminado: nil |
dns.alias | String | Use nsupdate para forzar una actualización dinámica de registros DNS. Solo resulta útil cuando la directiva DNS permite y el clúster usa un servidor DNS que permite actualizaciones dinámicas. Valor predeterminado: nil |
samba.enabled | Boolean | Solo Linux. Instala Samba en un archivador para su uso con nodos de ejecución de Windows. Valor predeterminado: false |
[[[configuration cyclecloud.cluster]]]
CycleCloud cluster
namespace contiene configuraciones para servicios distribuidos y aplicaciones en clúster.
Atributo | Tipo | Descripción |
---|---|---|
autoscale.idle_time_after_jobs | Entero | Los nodos finalizan si están inactivos durante el tiempo especificado (en segundos) después de ejecutar trabajos. Valor predeterminado: 1800 |
autoscale.idle_time_before_jobs | Entero | Los nodos finalizan si están inactivos durante el tiempo especificado (en segundos) antes de ejecutar trabajos. Valor predeterminado: 1800 |
autoscale.stop_interval | Entero | Retraso de tiempo entre ejecuciones de comprobaciones de detención automática (en segundos). Predeterminado: 60 . |
autoscale.use_node_groups | Boolean | Habilitar nodos agrupados: equivalentes a los grupos de selección de ubicación. Solo efectos PBSPro y clústeres del motor de cuadrícula . Valor predeterminado: true |
[[[configuration cyclecloud.hosts.standalone_dns]]]
CycleCloud configurará el archivo /etc/hosts para que contenga un gran conjunto de hosts para que la resolución de nombres hacia delante e inversa sea funcional. Estas configuraciones actúan para funcionar como reemplazo dns configurado en los nodos individuales, no administrados de forma centralizada, por lo que se denomina DNS independiente.
Atributo | Tipo | Descripción |
---|---|---|
enabled | Boolean | Habilite la administración del archivo de hosts etc. Predeterminado: true . |
alt_suffix | String | Invalide el nombre de dominio predeterminado de la red virtual. Ejemplo: contoso.com |
subredes | List (String) | Lista de bloques CIDR para la resolución de nombres independiente extendida. |
De forma predeterminada, CycleCloud inspeccionará la interfaz de red y creará el archivo /etc/hosts para incluir hosts en la máscara de subred. Se pueden agregar intervalos adicionales mediante el subnets
atributo .
[[[configuration cyclecloud.hosts.standalone_dns]]]
alt_suffix = my-domain.local
subnets = 10.0.1.0/24, 10.0.5.0/24
Para invalidar y deshabilitar el servicio independiente:
[[[configuration ]]]
cyclecloud.hosts.standalone_dns.enabled = false
[[[configuration cyclecloud.mounts]]]
Un subdominio significativo de la configuración cyclecloud es montajes. Cada sección de montaje con nombre corresponde a una entrada en /etc/fstab.
Ejemplo de una sección de montaje denominada primary
.
[[[configuration cyclecloud.mounts.primary]]]
type = nfs
mountpoint = /usr/share/lsf
export_path = /mnt/raid/lsf
options = hard,proto=tcp,mountproto=tcp,retry=30,actimeo=3600,nolock
address = 10.0.0.14
Importante
El nombre de la sección de montaje se correlaciona con el mount
atributo de un [[[volume]]]
objeto .
Atributo | Tipo | Descripción |
---|---|---|
type | String | El atributo type debe establecerse nfs en para que todas las exportaciones NFS se diferencien de los montajes de volumen y de otros tipos de sistema de archivos compartidos. |
export_path | String | Ubicación de la exportación en el archivador NFS. Si no se especifica un export_path , el mountpoint del montaje se usará como export_path . |
fs_type | String | Tipo de sistema de archivos que se va a usar. Por ejemplo ext4 , , xfs . |
Mountpoint | String | Ubicación donde se montará el sistema de archivos después de aplicar cualquier configuración adicional. Si el directorio todavía no existe, se creará. |
cluster_name | String | Nombre del clúster de CycleCloud que exporta el sistema de archivos. Si no se establece, se asume el clúster local del nodo. |
address | String | Nombre de host explícito o dirección IP del sistema de archivos. Si no se establece, la búsqueda intentará buscar el sistema de archivos en un clúster de CycleCloud. |
opciones | String | Cualquier opción no predeterminada que se va a usar al montar el sistema de archivos. |
deshabilitado | Boolean | Si se establece en true , el nodo no montará el sistema de archivos. |
raid_level | Entero | Tipo de configuración RAID que se va a usar cuando se usan varios dispositivos o volúmenes. El valor 0 predeterminado es , lo que significa RAID0, pero se pueden usar otros niveles de raid como 1 o 10 . |
raid_device_symlink | String | Cuando se crea un dispositivo raid, al especificar este atributo se creará un vínculo simbólico al dispositivo raid. De forma predeterminada, este atributo no se establece y, por lo tanto, no se crea ningún vínculo simbólico. Debe establecerse en los casos en los que necesite acceder al dispositivo raid subyacente. |
devices | List (String) | Se trata de una lista de dispositivos que deben componer .mountpoint En general, este parámetro no debe especificarse (ya que CycleCloud lo establecerá en función de las secciones [[[volumen]]], pero puede especificar manualmente los dispositivos si así lo desea. |
vg_name | String | Los dispositivos se configuran en Linux mediante el Administrador de volúmenes lógicos (LVM). El nombre del grupo de volúmenes se asignará automáticamente, pero en los casos en los que se usa un nombre específico, se puede establecer este atributo. El valor predeterminado se establece cyclecloud-vgX en , donde X es un número asignado automáticamente. |
lv_name | String | Los dispositivos se configuran en Linux mediante el Administrador de volúmenes lógicos (LVM). Este valor se asigna automáticamente y no necesita especificación, pero si desea usar un nombre de volumen lógico personalizado, se puede especificar mediante este atributo. Tiene como valor predeterminado lv0 . |
orden | Entero | Al especificar un orden, puede controlar el orden en el que se montan los puntos de montaje. El valor de orden predeterminado para todos los puntos de montaje es 1000, excepto "efímero", que es 0 (siempre se monta primero de forma predeterminada). Puede invalidar este comportamiento por caso según sea necesario. |
encryption.bits | Entero | Número de bits que se van a usar al cifrar el sistema de archivos. Los valores estándar son 128 o 256 el cifrado AES de bits. Este valor es necesario si se desea el cifrado. |
encryption.key | String | Clave de cifrado que se va a usar al cifrar el sistema de archivos. Si se omite, se generará una clave de 2048 bits aleatoria. La clave generada automáticamente es útil para cuando se cifran discos que no se conservan entre reinicios (por ejemplo, el cifrado de dispositivos efímeros). |
encryption.name | String | Nombre del sistema de archivos cifrado, que se usa al guardar claves de cifrado. El valor predeterminado es cyclecloud_cryptX , donde X es un número generado automáticamente. |
encryption.key_path | String | Ubicación del archivo en la que se escribirá la clave en el disco. El valor predeterminado es /root/cyclecloud_cryptX.key , donde X es un número generado automáticamente. |
[[[configuration cyclecloud.exports]]]
De forma similar a los montajes, los nodos cycleCloud se pueden configurar como servidores NFS si la receta del servidor está habilitada. La sección De exportación corresponde a la entrada /etc/exports .
Ejemplo de uso de exportaciones con un objeto de exportación denominado nfs_data
:
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
writable = false
Atributo | Tipo | Descripción |
---|---|---|
type | String |
OBLIGATORIO El atributo type debe establecerse nfs en para que todas las exportaciones NFS se diferencien de otros tipos de sistema de archivos compartidos. |
export_path | String | Ruta de acceso local que se va a exportar como un sistema de archivos NFS. Si el directorio aún no existe, se creará. |
owner | String | La cuenta de usuario que debe poseer el directorio exportado. |
group | String | Grupo del usuario que debe poseer el directorio exportado. |
mode | String | Permisos predeterminados del sistema de archivos en el directorio exportado. |
red | String | Interfaz de red en la que se exporta el directorio. El valor predeterminado es all: * . |
sync | Boolean | Opción de exportación sincrónica o asincrónica. Tiene como valor predeterminado true . |
writable | Boolean | La opción de exportación ro/rw para el sistema de archivos. Tiene como valor predeterminado true . |
opciones | String | Cualquier opción no predeterminada que se va a usar al exportar el sistema de archivos. |
[[[configuration]]]
Hay un número limitado de opciones de configuración disponibles en ningún espacio de nombres, normalmente por motivos heredados.
Atributo | Tipo | Descripción |
---|---|---|
http_proxy | String | Nombre de host o dirección IP del servidor proxy que se va a usar en el nodo (por ejemplo, 10.10.10.10). |
https_proxy | String | Nombre de host o dirección IP del servidor proxy HTTPS que se va a usar en el nodo. (por ejemplo, 10.10.0.1) |
no_proxy | String | Lista separada por comas de nombres de host o direcciones IP para las que no se va a usar un servidor proxy. Valor predeterminado: 169.254.169.254 para permitir el acceso a los metadatos de Azure |