5.5 KiB
5.5 KiB
Scores Catalog
A Score is a declarative description of a desired state. Find the Score you need and add it to your harmony! block's scores array.
Application Deployment
Scores for deploying and managing end-user applications.
- ApplicationScore: The primary score for deploying a web application. Describes the application, its framework, and the features it requires (e.g., monitoring, CI/CD).
- HelmChartScore: Deploys a generic Helm chart to a Kubernetes cluster.
- ArgoHelmScore: Deploys an application using an ArgoCD Helm chart.
- LAMPScore: A specialized score for deploying a classic LAMP (Linux, Apache, MySQL, PHP) stack.
OKD / Kubernetes Cluster Setup
This collection of Scores is used to provision an entire OKD cluster from bare metal. They are typically used in order.
- OKDSetup01InventoryScore: Discovers and catalogs the physical hardware.
- OKDSetup02BootstrapScore: Configures the bootstrap node, renders iPXE files, and kicks off the SCOS installation.
- OKDSetup03ControlPlaneScore: Renders iPXE configurations for the control plane nodes.
- OKDSetupPersistNetworkBondScore: Configures network bonds on the nodes and port channels on the switches.
- OKDSetup04WorkersScore: Renders iPXE configurations for the worker nodes.
- OKDSetup06InstallationReportScore: Runs post-installation checks and generates a report.
- OKDUpgradeScore: Manages the upgrade process for an existing OKD cluster.
Cluster Services & Management
Scores for installing and managing services inside a Kubernetes cluster.
- K3DInstallationScore: Installs and configes a local K3D (k3s-in-docker) cluster. Used by
K8sAnywhereTopology. - CertManagerHelmScore: Deploys the
cert-managerHelm chart. - ClusterIssuerScore: Configures a
ClusterIssuerforcert-manager, (e.g., for Let's Encrypt). - K8sNamespaceScore: Ensures a Kubernetes namespace exists.
- K8sDeploymentScore: Deploys a generic
Deploymentresource to Kubernetes. - K8sIngressScore: Configures an
Ingressresource for a service.
Monitoring & Alerting
Scores for configuring observability, dashboards, and alerts.
- ApplicationMonitoringScore: A generic score to set up monitoring for an application.
- ApplicationRHOBMonitoringScore: A specialized score for setting up monitoring via the Red Hat Observability stack.
- HelmPrometheusAlertingScore: Configures Prometheus alerts via a Helm chart.
- K8sPrometheusCRDAlertingScore: Configures Prometheus alerts using the
PrometheusRuleCRD. - PrometheusAlertScore: A generic score for creating a Prometheus alert.
- RHOBAlertingScore: Configures alerts specifically for the Red Hat Observability stack.
- NtfyScore: Configures alerts to be sent to a
ntfy.shserver.
Infrastructure & Networking (Bare Metal)
Low-level scores for managing physical hardware and network services.
- DhcpScore: Configures a DHCP server.
- OKDDhcpScore: A specialized DHCP configuration for the OKD bootstrap process.
- OKDBootstrapDhcpScore: Configures DHCP specifically for the bootstrap node.
- DhcpHostBindingScore: Creates a specific MAC-to-IP binding in the DHCP server.
- DnsScore: Configures a DNS server.
- OKDDnsScore: A specialized DNS configuration for the OKD cluster (e.g.,
api.*,*.apps.*). - StaticFilesHttpScore: Serves a directory of static files (e.g., a documentation site) over HTTP.
- TftpScore: Configures a TFTP server, typically for serving iPXE boot files.
- IPxeMacBootFileScore: Assigns a specific iPXE boot file to a MAC address in the TFTP server.
- OKDIpxeScore: A specialized score for generating the iPXE boot scripts for OKD.
- OPNsenseShellCommandScore: Executes a shell command on an OPNsense firewall.
Infrastructure & Networking (Cluster)
Network services that run inside the cluster or as part of the topology.
- LoadBalancerScore: Configures a general-purpose load balancer.
- OKDLoadBalancerScore: Configures the high-availability load balancers for the OKD API and ingress.
- OKDBootstrapLoadBalancerScore: Configures the load balancer specifically for the bootstrap-time API endpoint.
- K8sIngressScore: Configures an Ingress controller or resource.
- HighAvailabilityHostNetworkScore: Configures network bonds on a host and the corresponding port-channels on the switch stack for high-availability.
Tenant Management
Scores for managing multi-tenancy within a cluster.
- TenantScore: Creates a new tenant (e.g., a namespace, quotas, network policies).
- TenantCredentialScore: Generates and provisions credentials for a new tenant.
Utility
Helper scores for discovery and inspection.
- LaunchDiscoverInventoryAgentScore: Launches the agent responsible for the
OKDSetup01InventoryScore. - DiscoverHostForRoleScore: A utility score to find a host matching a specific role in the inventory.
- InspectInventoryScore: Dumps the discovered inventory for inspection.