Skip to content

QuickStart: Usage for Govenors

Warning

This functionality was originally offered by the parent company as a separate product Fathomable. It is undergoing consolidation into Cyvive's core and is restricted to beta customers at this time. Please contact your account manager via live-chat should you wish to participate.

Governance Overview

Cyvive.io is Cloud Native & Layer 4 - 7 OSIMM Compliant and as such implements a Governance via Policy approach through YAML configuration files created per Micro/NanoService.

The language used in configuration description is not arbritary, and is architecturally and contexturally derived from partnership with 3 Universities and over 35 industry publications with containerization viewpoint spanning from MicroServices Architecture through to Enteprise Architecture principles.

The configuration approach is powerful enough to handle governance of any type of application in the modern technology stack including 'cloud functions' while being flexible enough to be used in ordinary conversation between teams, departments and vendors.

A detailed explanation of the configuration options is available

Micro/NanoService Overview

… is best described through the Usage for Developers quickstart.

Governance Inheritence Tree

… is a Don't Repeat Yourself (DRY) approach. As such configuration follows an inheritance path overlaying prior configuration settings where necessary.

Overrides: templatesuitemicro/nanoservice

The use of this inheritance model also allows a segregation of security concerns where naturally authorized individuals interact with the correct Governance layers for enterprise and whole company management of Services.

Template Technology Descriptors

… are logically grouped into four meta-categories, and while the individual template can have any name assigned to it, the template must belong to a meta-category. Where each meta-catagory is based on the following operatingEnvironment logical progression: developmenthigh availability developmentperformanceproduction

Default Template Names

dev (type: development) - single container availability - minimum resource allocation - probes: - ready ha (type: high availability development) - dual container availability - minimum resource allocation - probes: - ready perf (type: performance) - dual container availability - maximum resource allocation - probes: - ready - health prod (type: production) - high availability - horizonal autoscaling - maximum resource allocation - probes: - ready - health

template type selection is controlled via the type field. The following states select the operatingEnvironment: - [] @ dev (default) - ['DEVLIKE'] @ dev (alterantive for direct specification) - ['HALIKE'] @ ha - ['PRODLIKE'] @ prod - ['HALIKE', 'PRODLIKE'] @ perf

Additional information on the template Technology Descriptors is available

Adding a Template Technology Descriptor

… accomplished via a standard POST call. If running via the provided 'httpie' container

http POST cyvive:3000/template technologyDescriptor:='{"customName": {type: ["HADEV"]}}'

Removing a Template Technology Descriptor

… accomplished via standard DELETE call. If running via the provided 'httpie' container

http DELETE cyvive:3000/template/customName

This will not remove any existing deploymentTarget's that utilizing this template it will just remove the template from future deploymentTarget.

Group Technology Descriptor

… is available for all groups under governance. Where applicable identical specifications at the group level override the template level. Its not necessary for group information to be specified as a pre-requisite to adding a Micro/NanoService to a non-existent group.

It is possible Micro/NanoService to inherit configuration information from the group level, thus allowing enhanced security over a traditional deployment model, where keys can be present in the application environment and unknown to developers with Micro/NanoService source code access.

Additional information on the group Technology Descriptors is available

Additional Reading / Information