Skip to main content

Features

This page describes primary Monk features and points to relevant resources for each of them.

note

The πŸ§ͺ​ icon denotes experimental features. Please don't be upset if they cause problems and let us know if you encounter any bugs related to those.

Supported Cloud Providers

  • GCP
  • AWS
  • Azure
  • DigitalOcean

MonkScript

Our language allows you to specify your entire stack needs in a simple, reusable way. MonkScript is a primary user interface for controlling Monk's Programmable Control Plane. Here's a primer β†’

Programmable Control Plane

Monk understands your workloads by constantly tracking and computing values associated with any cloud instance, running container, firewall rule, data volume, and all other items present in a cluster. This process is scriptable directly from the templates, which makes it easy to express even the most complex workloads.

Custom Variables

Expose your container environment variables through dynamically computed variables, add and edit as required to extend your component functionality. Read more →​

Actions

Abstract any of your containerized software functionalities through our unique actions within the same template. Read more​ β†’

Health Checks

Simplify container calls outside the cluster and easily implement specific health-checks.

Service Discovery

Seamlessly integrate your services to discover and talk to each other with one line of code.

Container Data Introspection

Inspect any data generated by your services by directly calling and extracting it via monk CLI.

πŸ§ͺ Life Cycle Hooks & Auto-scaling

Define cluster and container events. Anything from changing container variables to the whole cluster scaling strategies. For provisioning, start learning here, or check out hooks.

Placement Constraints for Containers

Define explicit deployment of your architecture. Depending on your architecture, your services may need an explicitly defined deployment to ensure they are using an instance on their own, are on instances close to other services, or exactly on the same one as them.

πŸ§ͺ Encrypted at Rest

No need for special handling when it comes to secrets. Monk will load SOPS-encrypted YAML and store all the values re-encrypted in a cluster-wide vault by default. SOPS guide β†’

Interfaces: CLI / GUI

Remote Log Streaming

Instantly inspect your services logs via our CLI or GUI without any 3rd party tools, needing to ssh to instances or finding out where they are deployed.

Built-in CPU/MEM/Disk stats

Instantly inspect your cluster instances utilization directly from our CLI or GUI.

Shell Access to/from Any Container

Directly access shell of any running container from our CLI, without ssh to its instance or needing to find out where they are running.

Orchestration

System Portability to Any Cloud Provider

The Monk runtime natively runs on any Linux instance. You can create clusters spanning across any cloud or on-premise server while ensuring your template will stay portable.

Workload Healing on Container and Instance Level

Our orchestration engine constantly ensures that the cluster and container state is preserved and in the event of down time or service failure it will aim to restore the state.

Automatic, State-Preserving Updates of the Containers, Including Dependencies

Monk is aware of changes happening to each part. Therefore you can easily perform updates with a single line command.

πŸ§ͺ Auto-scaling

Implement horizontal and vertical scaling strategies to keep your system growing.

πŸ§ͺ Built-in Container Image Transport

For deployment of private images within a cluster, our architecture allows for much faster of container images inside the cluster, speeding up deployment and repair processes.

Infrastructure Provisioning

Automatic provisioning of resources such as instances, EBS-type volumes, load balancers, and security groups. Monk engine takes care of all the complexity of provisioning different parts of cloud infrastructure that your system needs.

Service Abstraction

Cloud Load Balancers

Utilize the most popular load balancers (HTTP(s) and ElasticIP) natively baked in and easily definable by our language. Load balancers β†’

πŸ§ͺ 3rd Party Service Abstraction

Include any 3rd party services such as specific Cloud APIs in templates with similar scripting capabilities. Our language can also be used to embed third party services such as SaaS APIs or directly into your system. Compose a small system to see how it works.

πŸ§ͺ Network Abstraction

Encrypted overlay network between the containers with fully automated internet-facing firewall control.

Our orchestration comes with security baked in. Containers can securely communicate with each other, as per your defined criteria, and all secrets all encrypted except when needed. Connecting runnables β†’

Access Control

Multiple Users Cluster Access

Allow multiple users within your organization to perform operations on your running clusters. Regulate types of access to running Monk clusters resources based on the roles of individual users within your organization. Contact us β†’

CI/CD support

Integrate your stack deployment with your favorite CI/CD tools and deploy to your Monk clusters. Currently supporting:

  • CircleCI
  • Github Actions
  • GitLab CI

See the CI/CD Guide→

Rate this page