# kalc, the Kubernetes calculator
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![PyPI version](https://badge.fury.io/py/kubectl-val.svg)](https://badge.fury.io/py/kalc) [![Build Status](https://travis-ci.org/criticalhop/kalc.svg?branch=master)](https://travis-ci.org/criticalhop/kalc)
# Overview
`kalc` is a Kubernetes operations automation system built on pure [AI planning](https://github.com/criticalhop/poodle).
Currently, `kalc` provides a single command, `kalc-optimize` to do automatic cluster rebalancing and optimization.
`kalc` can also be used with [Jupyter Lab](https://jupyter.org/) in interactive mode.
# Quick Start
## Requirements
- Linux x86_64
- Python 3.7+
- 6+ GB RAM, decent CPU
- Up to 20GB of disk space in `/tmp` for generated models
- `kubectl` installed and connected to cluster
## Installation
pip install kalc
## Basic usage
$ kalc-optimize
`kalc-optimize` will generate `bash` scripts containing `kubectl` commands to get to more optimal states. Have a look at those scripts and execute any one of them, then stop and re-run `kalc-optimize`.
## Autopilot
`kalc` can optimize your cluster in background, gradually increasing reliability by rebalancing and reducing cost by freeing nodes with low utilization.
# Architecture
- `kalc-optimize` will download current cluster state by executing `kubectl get all` and will start generating `bash` scripts into current folder
- Each generated `bash` script contains a sequence of `kubectl` commands to get the cluster in a more optimal state: better balanced nodes for availability and OOM/eviction resilience and a more compact packing
- As `kalc` continues to compute, it will emit more optimal states and bigger bash scripts with kubectl commands
`kalc` aims to take into account current policies, anti-affility, SLO levels and best practices from successful production Kubernetes clusters.
# Project Status
`kalc` is a developer preview and currently supports a subset of Kubernetes resources and behaviour model.
We invite you to follow [@criticalhop](https://twitter.com/criticalhop) on [Twitter](https://twitter.com/criticalhop) and to chat with the team at `#kalc` on [freenode](https://freenode.net/). If you have any questions or suggestions - feel free to open a [github issue](https://github.com/criticalhop/kalc/issues) or contact andrew@kalc.io directly.
For enterprise enquiries, use the form on our website: [kalc.io](https://kalc.io) or write us an email at info@kalc.io
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
共41个文件
py:37个
pkg-info:1个
toml:1个
资源分类:Python库 所属语言:Python 资源全名:kalc-0.1.3.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源推荐
资源详情
资源评论
收起资源包目录
kalc-0.1.3.tar.gz (41个子文件)
kalc-0.1.3
PKG-INFO 3KB
pyproject.toml 671B
setup.py 7KB
README.md 3KB
kalc
misc
kind_filter.py 4KB
object_factory.py 323B
const.py 1KB
problem.py 3KB
client_config.py 262B
metrics.py 2KB
util.py 5KB
support_check.py 6KB
script_generator.py 7KB
cli_optimize.py 6KB
model
full.py 822B
kinds
ReplicaSet.py 1KB
PriorityClass.py 1019B
Deployment.py 11KB
Service.py 2KB
LoadBalancer.py 420B
DaemonSet.py 5KB
Pod.py 12KB
Node.py 3KB
Namespace.py 186B
search.py 57KB
kubernetes.py 7KB
system
globals.py 3KB
primitives.py 1KB
Scheduler.py 684B
NameSpace.py 98B
math.py 1KB
base.py 3KB
Controller.py 223B
kubeactions.py 22KB
labelactions.py 4KB
policy.py 5KB
policies
rebalancing.py 10KB
self_antiaffinity.py 7KB
stub.py 1KB
interactive.py 11KB
LICENSE.txt 11KB
共 41 条
- 1
资源评论
挣扎的蓝藻
- 粉丝: 13w+
- 资源: 15万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功