3 Guidelines for OSO Installation
Container Naming Convention and limitations
OSO supports having custom prefix and suffix to be configured and used in the container names. The name field in the chart currently supports up to 63 characters only, including the custom "prefix", "suffix" and default "fixed name". Currently the "fixed-name" configured by default for containers without prefix and suffix is as mentioned in Container Naming Convention.
Note:
Users are advised to limit the number of characters up to 63 in the prefix and suffix configuration accordingly to avoid name truncation.Table 3-1 Container Naming Convention
POD NAME | FIXED CONTAINER NAME |
---|---|
Prometheus-server |
|
Alertmanager |
|
Pushgateway |
|
These are the values user need to populate in order to provide suffix
and prefix in their container names. These values can be found inside
prometheus-custom-values.yaml
file.
global:
# prefix & suffix that will be added to k8Resources
k8Resource:
container:
prefix:
suffix:
Label naming convention guide and limitations
OSO provides three types of label definitions as below to be configured
in prometheus-custom-values.yaml file.
- Global Labels(allResources): These labels are attached to all K8s resources except those which are service or deployment/statefulsets. Depicted with TYPE1 in the provided sample prometheus-custom-values.yaml file for reference.
- LB & NON-LB TYPE label: These labels are attached to load-balancer & non-load balancer types deployments, statefulsets & services. Depicted with TYPE2 in the provided sample prometheus-custom-values.yaml file for reference.
- Service specific label: These labels are attached with each service in their specific service-label metadata sections and can be used to uniquely label services regardless of them being load-balancer/non-loadbalancer. Depicted with TYPE3 in the provided sample prometheus-custom-values.yaml file for reference.
Note:
- While installing OSO with HELM2, custom/unique labels can be assigned to services.
- While installing OSO with HELM3, custom/unique labels can be
assigned, if you skip the helm3's Kubernetes OpenAPI Validation that it
attempts to perform before installation. While installation with helm3 and
specifying custom labels, refer to Installing OSO using CSAR. Users need to be well-versed with these notions and use
the labels accordingly. Go through the official helm3 documentation for more
information on this.
These are the values user need to populate in order to provide custom labels for Kubernates resources. These values can be found inside prometheus-custom-values.yaml file.
customExtension: # TYPE1 Label allResources: labels: {} # TYPE2 Labels lbServices: labels: {} nonlbServices: labels: {} lbDeployments: labels: {} nonlbDeployments: labels: {} lbStatefulSets: labels: {} .. alertmanager: # TYPE-3 Labels: specific to alertmanager service are added here. service: customExtension: labels: {} # TYPE-3 Labels: specific to alertmanager deployement are added here. deployment: customExtension: labels: {}
Note:
Similar to alertmanager service specific labels, prometheus and pushgateway will have their own TYPE3 labels. - Users would need to create and configure a Service Account
along with needed Role and RoleBindings for the intended namespaces. These
service accounts be configured in the prometheus-custom-values.yaml
file in below parameters to be used by
prometheus.
serviceAccountNamePromSvr: "" serviceAccountNameAlertMgr: "" serviceAccountNamePushGw: ""