Naming Conventions
The naming conventions for products are designed to increase consistency across documentation and between the development, staging and production deployments with the aim of increasing the usability of the build, test and deployment scripts.
Abbreviations
- CDC: CESSDA Data Catalogue
- CVS: CESSDA Vocabulary Service
- DVS: Dataverse
- ELSST: European Language Social Science Thesaurus
- EQB: European Question Bank
- GCP: Google Cloud Platform
- GKE: Google Kubernetes Engine
Definitions
- See Glossary
- See also Kubernetes definitions
- See also Google Cloud overview
Workloads and Services
Workloads and services/ingress names generally follow the same pattern and are composed of two parts. The prefix is the lowercase product name abbreviation (e.g. cdc-
, cvs-
, dvs-
, eqb-
) or lowercase functional abbreviation (mgmt-
, monitoring-
). The main part is the name of the component (e.g. certbot
, mailrelay
, reverse
, osmh-indexer
).
So the pattern looks like this
- Management tools:
mgmt-${component_name}
(e.g.mgmt-certbot
,monitoring-prometheus
) - CDC:
cdc-${component_name}
(e.g.cdc-osmh-indexer
) - CVS:
cvs-${component_name}
(e.g.cvs-reverse
) - DVS:
dvs-${component_name}
(e.g.dvs-mailrelay
) - EQB:
eqb-${component_name}
(e.g.eqb-frontend
)
Namespaces
Namespaces are used to group the components of a product within a cluster, whist isolating them from components of other products. Namespaces are named for the product they contain, in the form of ${product_name}
, e.g. cdc
, cvs
, dvs
, eqb
, monitoring
. The exception to this is management tools, which for historical reasons use the cessda-mgmt
namespace. So a cluster typically has multiple namespaces.
Clusters
Clusters are named to reflect the various deployment environments. Simple names are used, using the template ${environment}-cluster
. The cluster names chosen are:
development-cluster
staging-cluster
production-cluster
management-cluster
Storage / Persistent Volume Claims
Names of persistent volumes track the names of the tools that they serve using the template ${product_name}-${component_name}-pvc
. If multiple volumes are used, the naming convention ${product_name}-${component_name}-${function}-pvc
is used.
The naming conventions of persistent volumes managed by stateful sets are defined by Kubernetes.
Configuration / Secrets
Names of ConfigMaps and Secrets are of the form ${product_name}-${component_name}-configmap
and ${product_name}-${component_name}-secret
.
Subdomains
Subdomains are in the form of ${subdomain}.cessda.eu
. The subdomain is not the same as the ${product_name}
, i.e. for the CESSDA Data Catalogue the subdomain is datacatalogue
, whereas the ${product_name}
is cdc
.
For development and staging environments, the ${subdomain}
has -dev
or -staging
appended (e.g. datacatalogue-dev.cessda.eu
).