src/roles/ha_db_hana/tasks/files/constants.yaml (256 lines of code) (raw):
# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.
# Description: This file contains the expected configuration for the pacemaker cluster. The values
# are based on Microsoft's best practices and are subject to change based on the customer's requirements.
# === CRM Configuration Defaults ===
# cibadmin --query --scope crm_config
CRM_CONFIG_DEFAULTS:
cluster-infrastructure: corosync
priority-fencing-delay: ['30', '30s']
stonith-action: reboot
stonith-enabled: 'true'
concurrent-fencing: 'true'
maintenance-mode: 'false'
node-health-strategy: 'custom'
azure-events-az_globalPullState: 'IDLE'
# === Operation Defaults ===
# cibadmin --query --scope op_defaults
OP_DEFAULTS:
record-pending: 'true'
timeout: ['600', '600s']
# === Resource Defaults ===
# cibadmin --query --scope rsc_defaults
RSC_DEFAULTS:
migration-threshold: '5000'
priority: '1'
resource-stickiness: '1000'
# === Constraints ===
# cibadmin --query --scope constraints
CONSTRAINTS:
rsc_colocation:
score: "4000"
rsc-role: "Started"
rsc_order:
kind: "Optional"
# === Valid Configurations for different OS versions ===
# Specify the properties that are different for different OS versions
VALID_CONFIGS:
REDHAT:
priority-fencing-delay: ['15', '15s']
SUSE: {}
AFA:
have-watchdog: "false"
stonith-timeout: ["900s", "900"]
ISCSI:
have-watchdog: "true"
stonith-timeout: ["144", "144s"]
# === Resource Defaults ===
# cibadmin --query --scope resources
RESOURCE_DEFAULTS:
SUSE:
fence_agent:
instance_attributes:
pcmk_delay_max: "15"
pcmk_monitor_retries: "4"
pcmk_action_limit: "3"
pcmk_reboot_timeout: ["900", "900s"]
power_timeout: ["240", "240s"]
pcmk_monitor_timeout: ["120", "120s"]
operations:
monitor:
interval: ["3600", "3600s"]
timeout: ["120", "120s"]
sbd_stonith:
instance_attributes:
pcmk_delay_max: "15"
pcmk_monitor_retries: "4"
pcmk_action_limit: "3"
pcmk_reboot_timeout: ["900", "900s"]
power_timeout: ["240", "240s"]
pcmk_monitor_timeout: ["120", "120s"]
operations:
monitor:
interval: ["600", "600s"]
timeout: ["15", "15s"]
topology:
meta_attributes:
clone-node-max: "1"
target-role: "Started"
interleave: "true"
operations:
monitor:
interval: ["10", "10s"]
timeout: ["600", "600s"]
start:
interval: ["0", "0s"]
timeout: ["600", "600s"]
stop:
interval: ["0", "0s"]
timeout: ["300", "300s"]
hana:
meta_attributes:
notify: "true"
clone-max: "2"
clone-node-max: "1"
target-role: "Started"
interleave: "true"
priority: "100"
instance_attributes:
PREFER_SITE_TAKEOVER: "true"
DUPLICATE_PRIMARY_TIMEOUT: "7200"
AUTOMATED_REGISTER: "true"
operations:
start:
interval: ["0", "0s"]
timeout: ["3600", "3600s"]
stop:
interval: ["0", "0s"]
timeout: ["3600", "3600s"]
promote:
interval: ["0", "0s"]
timeout: ["3600", "3600s"]
monitor:
timeout: ["700", "700s"]
ipaddr:
meta_attributes:
target-role: "Started"
operations:
monitor:
interval: ["10", "10s"]
timeout: ["20", "20s"]
filesystem:
meta_attributes:
clone-node-max: "1"
interleave: "true"
operations:
monitor:
interval: ["120", "120s"]
timeout: ["120", "120s"]
start:
interval: ["0", "0s"]
timeout: ["120", "120s"]
stop:
interval: ["0", "0s"]
timeout: ["120", "120s"]
azurelb:
meta_attributes:
resource-stickiness: "0"
REDHAT:
fence_agent:
instance_attributes:
pcmk_delay_max: "15"
pcmk_monitor_retries: "4"
pcmk_action_limit: "3"
pcmk_reboot_timeout: "900"
power_timeout: "240"
pcmk_monitor_timeout: "120"
operations:
monitor:
interval: ["3600", "3600s"]
sbd_stonith:
instance_attributes:
pcmk_monitor_retries: "4"
pcmk_action_limit: "3"
pcmk_reboot_timeout: ["900", "900s"]
power_timeout: ["240", "240s"]
pcmk_monitor_timeout: ["120", "120s"]
operations:
monitor:
interval: ["600", "600s"]
timeout: ["15", "15s"]
topology:
meta_attributes:
clone-node-max: "1"
clone-max: "2"
target-role: "Started"
interleave: "true"
failure-timeout: "120s"
operations:
monitor:
interval: ["10", "10s"]
timeout: ["600", "600s"]
start:
interval: ["0", "0s"]
timeout: ["600", "600s"]
stop:
interval: ["0", "0s"]
timeout: ["300", "300s"]
methods:
timeout: ["5", "5s"]
interval: ["0", "0s"]
reload:
timeout: ["5", "5s"]
interval: ["0", "0s"]
hana:
meta_attributes:
notify: "true"
clone-max: "2"
clone-node-max: "1"
target-role: "Started"
interleave: "true"
priority: "100"
instance_attributes:
PREFER_SITE_TAKEOVER: "true"
DUPLICATE_PRIMARY_TIMEOUT: "7200"
AUTOMATED_REGISTER: "true"
operations:
start:
interval: ["0", "0s"]
timeout: ["3600", "3600s"]
stop:
interval: ["0", "0s"]
timeout: ["3600", "3600s"]
promote:
interval: ["0", "0s"]
timeout: ["3600", "3600s"]
monitor:
timeout: ["700", "700s"]
ipaddr:
meta_attributes:
target-role: "Started"
operations:
monitor:
interval: ["10", "10s"]
timeout: ["20", "20s"]
start:
interval: ["0", "0s"]
timeout: ["20", "20s"]
stop:
interval: ["0", "0s"]
timeout: ["20", "20s"]
filesystem:
meta_attributes:
clone-node-max: "1"
interleave: "true"
operations:
monitor:
interval: ["20", "20s"]
timeout: ["120", "120s"]
start:
interval: ["0", "0s"]
timeout: ["60", "60s"]
stop:
interval: ["0", "0s"]
timeout: ["60", "60s"]
azurelb:
meta_attributes:
resource-stickiness: "0"
operations:
monitor:
interval: ["10", "10s"]
timeout: ["20", "20s"]
start:
interval: ["0", "0s"]
timeout: ["20", "20s"]
stop:
interval: ["0", "0s"]
timeout: ["20", "20s"]
# === OS Parameters ===
# Run command as root. Format of command is: "parent_key child_key"
# Example: sysctl net.ipv4.tcp_timestamps
OS_PARAMETERS:
DEFAULTS:
sysctl:
net.ipv4.tcp_timestamps: "net.ipv4.tcp_timestamps = 0"
vm.swappiness: "vm.swappiness = 10"
corosync-cmapctl:
runtime.config.totem.token: "runtime.config.totem.token (u32) = 30000"
runtime.config.totem.consensus: "runtime.config.totem.consensus (u32) = 36000"
# === Global INI ===
# Reading the global.ini file to get the provider and path for the SAPHanaSR resource agent
GLOBAL_INI:
SUSE:
provider: "SAPHanaSR"
path: ["/usr/share/SAPHanaSR", "/hana/shared/myHooks"]
execution_order: "1"
REDHAT:
provider: "SAPHanaSR"
path: ["/usr/share/SAPHanaSR/srHook", "/hana/shared/myHooks"]
execution_order: "1"
# === Azure Load Balancer ===
# Azure Load Balancer configuration
AZURE_LOADBALANCER:
PROBES:
probe_threshold: 2
interval_in_seconds: 5
RULES:
idle_timeout_in_minutes: 30
enable_floating_ip: true
enable_tcp_reset: false