CLI Overview
This page describes primary MonkOS features and points to relevant resources for each of them.
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.
Programmable Control Plane
MonkOS 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 Kits, 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 Kit. 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 MonkOS runtime natively runs on any Linux instance. You can create clusters spanning across any cloud or on-premise server while ensuring your Kit 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
MonkOS 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. MonkOS supports target-based algorythmic aut-scaling that allows you to specify scale as a function of any given set of metrics.
Infrastructure Provisioning
Automatic provisioning of resources such as instances, EBS-type volumes, load balancers, and security groups. MonkOS 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 Kits 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 MonkOS 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 MonkOS clusters. Currently tested with:
- CircleCI
- Github Actions
- GitLab CI
See the CI/CD Guide→