Single applications, or processes, without their dependencies. A Velocity Service can be a micro-service in a complex micro-service architecture or a large self-contained monolith without external dependencies.
Kubernetes Jobs and Deployments are automatically designated as Velocity Services.
Kubernetes Jobs exist as Velocity Services independently.
Kubernetes Deployments are automatically merged with the following, related k8s resources, which are then designated together as a single Velocity Service:
- Config Maps (specified in the Deployment's
- Secrets (specified in the Deployment's
- k8s Services (defined by the Deployment's Service selector)
- Ingress (defined by the Deployment's Service port)
NOTE: While auto-detected Velocity Services do not need a Velocity Service Identifier, they still require Velocity Annotations and Templates to define their various dependencies and to incorporate dynamically-generated values, such as entity names and connectivity & configuration details.
You can also create Velocity Services from other first-class resource definitions by adding a Velocity Service Identifier annotation to the
metadata.annotationsportion of the resource definition.
For example, cloud resource CRDs (such as AWS S3 bucket, SQS and other similar resource definitions), are not standard k8s resources, but they are seen and treated as first-class entities, which means that they can be designated as Velocity Services with the addition of a Velocity Service Identifier.
User-defined Velocity Services, like auto-detected Velocity Services, will likely require additional Velocity Annotations and Templates to incorporate dynamically-generated values and connectivity & configuration details.
User-defined Velocity Services require a Velocity Service Identifier.
The Velocity Service Identifier sets the name of the service in Velocity, and allows other Velocity Services to reference it, along with any values defined within it, such as ports and entity names, for example.
The identifier is set on the Kubernetes resource's
metadata.annotationsusing the following annotation format: