-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #97 from bharathguvvala/bharathmain
README update
- Loading branch information
Showing
3 changed files
with
46 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
# Build the manager binary | ||
FROM golang:1.19 as builder | ||
FROM golang:1.20 as builder | ||
ARG TARGETOS | ||
ARG TARGETARCH | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#Installation Guide |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,44 @@ | ||
# Ottoscalr | ||
Is a drop-in HPA recommendation framework that can autogenerate and continuously tune the autoscaling policies for all workloads running in a kubernetes cluster. | ||
# OttoScalr | ||
|
||
OttoScalr is an autoscaling solution for kubernetes workloads, that works by continuously monitoring workload resource utilization patterns to proactively configure and tune the horizontal pod autoscaler policies (HPA, ScaledObjects) autonomously ensuring optimal resource utilization and cost efficiency. It is designed to work with various kubernetes workload types viz. deployment and argo rollouts. With its pluggable design to incorporate different flavors of policy recommenders, it can be extended to customize the policy generation algorithms to suit the needs of the workload/cluster administrators. | ||
|
||
|
||
## Features | ||
|
||
- **Autoscalers**: OttoScalr doesn't autoscale the workloads by itself, but works by creating/managing the HPAs and [KEDA ScaledObjects](https://keda.sh/docs/1.5/concepts/scaling-deployments/) which influences how and when workloads are scaled. | ||
- **Controllers**: Ottoscalr is made up of a bunch of controllers that perform a variety of tasks in ensuring that the workloads are configured with the right HPA policy at all times. | ||
- **Workloads**: Support for stateless workloads of kinds -- Deployments and [Argo Rollouts](https://argoproj.github.io/argo-rollouts/) (optional, can be toggled during the deployment) | ||
- **Pluggable Recommenders**: Ottoscalr provides an extensible framework for pluggable recommenders which will generate recommendations of autoscaler configurations which are then enforced on the workload. | ||
- **Graded Policies**: Since there's no one size fits autoscaling policy for a workload. Ottoscalr works with a set of graded policies and takes workload through these policies and doesn't go past the ideal policy recommended by the recommender. | ||
- **Integration with promql compliant metric sources**: Works with any promql compliant metrics source for gathering historical workload resource utilization metrics. | ||
|
||
### What Ottoscalr doesn't do | ||
|
||
- Automatic performance tuning of applications running within a pod. | ||
- Improvement of pod bootstrap latencies. | ||
- Optimization of pod level resource consumption | ||
- Vertical scaling of pods to optimize average utilization. | ||
- Autoscaling for stateful workloads. | ||
|
||
|
||
## Getting Started | ||
|
||
To get started with OttoScalr, you'll need to have a Kubernetes cluster up and running where the ottoscalr can be installed. Please go through the ottoscalr wiki to understand more about its workings. | ||
|
||
## Installation | ||
|
||
Ottoscalr is easy to be installed and configured in any kubernetes cluster. The installation process involves setting up the necessary Kubernetes resources for OttoScalr to run. Detailed instructions will be provided in the [installation guide](INSTALLATION.md). | ||
|
||
## Usage | ||
|
||
Once OttoScalr is installed and running, you can start configuring it to monitor your applications and make scaling decisions. Detailed instructions on how to do this will be provided in the usage guide. | ||
|
||
## Contributing | ||
|
||
Contributions to OttoScalr are welcome! Please read our contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to OttoScalr. | ||
|
||
|
||
## Support | ||
|
||
If you encounter any problems or have any questions about OttoScalr, please open an issue on our GitHub repository. | ||
|