domino_admin_toolkit.checks.test_rabbitmq module
- domino_admin_toolkit.checks.test_rabbitmq.rabbit_pods(platform_namespace, k8s_client)
Retrieves RabbitMQ pods in the Kubernetes namespace.
- Result:
Fails if no pods are found or namespace is not accessible.
- domino_admin_toolkit.checks.test_rabbitmq.rabbitmq_connections_df(rabbitmq_data, k8s_client)
- Return type:
- domino_admin_toolkit.checks.test_rabbitmq.rabbitmq_data(k8s_client)
- domino_admin_toolkit.checks.test_rabbitmq.rabbitmq_feature_flags_df(rabbitmq_data, k8s_client)
- Return type:
- domino_admin_toolkit.checks.test_rabbitmq.rabbitmq_node_df(rabbitmq_data, k8s_client)
- Return type:
- domino_admin_toolkit.checks.test_rabbitmq.rabbitmq_ports_df(rabbitmq_data, k8s_client)
- Return type:
- domino_admin_toolkit.checks.test_rabbitmq.rabbitmq_queue_df(rabbitmq_data, k8s_client)
- Return type:
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_alarms(rabbitmq_node_df)
- Description:
Checks for active alarms on RabbitMQ pods running in a Kubernetes cluster.
- Result:
Fails if any alarms are active on RabbitMQ pods.
- Debugging:
Investigate alarm details for affected pods.
Check RabbitMQ logs and pod health in the Kubernetes cluster.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_connections(rabbitmq_connections_df)
- Description:
Validates RabbitMQ connection details for each pod in the Kubernetes cluster.
- Result:
Fails if any connection is not in the “running” state.
- Debugging:
Inspect connection logs for errors or disconnections.
Verify client and server configurations for compatibility.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_dead_queues(rabbitmq_queue_df)
- Description:
Verifies the state of RabbitMQ queues in a Kubernetes cluster.
- Result:
Fails if any queue is not in the “running” state.
- Debugging:
Check the affected queue’s configuration and RabbitMQ logs.
Restart or reconfigure the queue as necessary.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_disk_space(rabbitmq_node_df)
- Description:
Validates available disk space for RabbitMQ pods running in a Kubernetes cluster.
- Result:
Fails if disk space falls below the configured threshold.
- Debugging:
Check disk usage within RabbitMQ pods.
Clear unused files or increase storage allocation for affected pods.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_fd_usage(rabbitmq_node_df)
- Description:
Checks file descriptor usage for RabbitMQ pods running in a Kubernetes cluster.
- Result:
Fails if file descriptor usage exceeds the configured threshold.
- Debugging:
Investigate processes using excessive file descriptors within affected pods.
Adjust RabbitMQ or OS-level limits for file descriptors as necessary.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_feature_flags(rabbitmq_feature_flags_df)
- Description:
Tests feature flags on RabbitMQ pods in the Kubernetes cluster.
- Result:
Fails if no feature flags are found for any RabbitMQ node. Displays all feature flags in a structured format.
- Debugging:
Ensure RabbitMQ is running the expected flags.
Check RabbitMQ Management API for feature flag issues.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_memory_usage(rabbitmq_node_df)
- Description:
Verifies memory usage for RabbitMQ pods running in a Kubernetes cluster.
- Result:
Fails if memory usage exceeds the configured threshold.
- Debugging:
Check resource allocation for RabbitMQ pods.
Investigate processes consuming high memory within affected pods.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_node_status(rabbitmq_node_df)
- Description:
Checks the status of RabbitMQ pods running in a Kubernetes cluster. Also validates memory settings configuration (Pod Limit, RabbitMQ Limit, Relative %, ConfigMap override).
- Result:
Fails if any RabbitMQ pod is not in the “running” state or if memory settings are incorrectly configured.
- Debugging:
Ensure the RabbitMQ pods are scheduled and running successfully.
Check pod logs and Kubernetes events for failures or connectivity issues.
Verify that Pod Memory Limit matches ConfigMap override value.
Ensure relative memory limit is at least 35%.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_port_connectivity(rabbitmq_ports_df)
- Description:
Validates RabbitMQ port connectivity for each pod in the Kubernetes cluster.
- Result:
Fails if any port is not in an “OK” state.
- Debugging:
Check Kubernetes network policies or firewall rules affecting connectivity.
Ensure RabbitMQ listeners are correctly configured and active.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_queue_depth(rabbitmq_queue_df)
- Description:
Validates queue depth and consumer availability for RabbitMQ queues in a Kubernetes cluster.
- Result:
Fails if any queue has excessive messages with no consumers.
- Debugging:
Identify bottlenecks in message processing within RabbitMQ queues.
Ensure consumers are correctly configured and actively consuming messages.
- domino_admin_toolkit.checks.test_rabbitmq.test_rabbitmq_split_brain(rabbitmq_data, rabbit_pods)
- Description:
Checks for split-brain scenarios in RabbitMQ by comparing node and pod counts in the Kubernetes cluster.
- Result:
Fails if the number of RabbitMQ nodes does not match the number of pods.
- Debugging:
Investigate discrepancies between nodes and pods.
Ensure all RabbitMQ pods are healthy and properly connected.