{"id":13523890,"url":"https://github.com/gocrane/crane","last_synced_at":"2025-04-10T02:14:39.588Z","repository":{"id":36984768,"uuid":"429285098","full_name":"gocrane/crane","owner":"gocrane","description":"Crane is a FinOps Platform for Cloud Resource Analytics and Economics in Kubernetes clusters. The goal is not only to help users to manage cloud cost easier but also ensure the quality of applications.  ","archived":false,"fork":false,"pushed_at":"2024-12-20T01:55:09.000Z","size":69495,"stargazers_count":1940,"open_issues_count":130,"forks_count":394,"subscribers_count":39,"default_branch":"main","last_synced_at":"2025-04-10T02:14:30.969Z","etag":null,"topics":["analytics","autoscaling","cloud-computing","cloud-native","cncf","cost-control","cost-estimation","cost-optimization","finops","kubernetes","monitoring","prediction","time-series"],"latest_commit_sha":null,"homepage":"https://gocrane.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gocrane.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"docs/roadmaps/roadmap-2022.md","authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-18T03:36:30.000Z","updated_at":"2025-04-08T07:06:43.000Z","dependencies_parsed_at":"2023-01-17T12:15:41.877Z","dependency_job_id":"9f2a95f7-18c6-4af8-92db-2988dc1dd959","html_url":"https://github.com/gocrane/crane","commit_stats":{"total_commits":726,"total_committers":81,"mean_commits":8.962962962962964,"dds":0.6763085399449036,"last_synced_commit":"f51084ff0cfbd63b7f2cfff0f3f87215bd6fa1d7"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gocrane%2Fcrane","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gocrane%2Fcrane/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gocrane%2Fcrane/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gocrane%2Fcrane/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gocrane","download_url":"https://codeload.github.com/gocrane/crane/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248142903,"owners_count":21054671,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics","autoscaling","cloud-computing","cloud-native","cncf","cost-control","cost-estimation","cost-optimization","finops","kubernetes","monitoring","prediction","time-series"],"created_at":"2024-08-01T06:01:04.850Z","updated_at":"2025-04-10T02:14:39.565Z","avatar_url":"https://github.com/gocrane.png","language":"Go","readme":"# Crane: Cloud Resource Analytics and Economics\n\n[![Go Report Card](https://goreportcard.com/badge/github.com/gocrane/crane)](https://goreportcard.com/report/github.com/gocrane/crane)\n[![GoDoc](https://godoc.org/github.com/gocrane/crane?status.svg)](https://godoc.org/github.com/gocrane/crane)\n[![License](https://img.shields.io/github/license/gocrane/crane)](https://www.apache.org/licenses/LICENSE-2.0.html)\n![GoVersion](https://img.shields.io/github/go-mod/go-version/gocrane/crane)\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg alt=\"Crane logo\" height=\"100\" src=\"docs/images/crane.svg\" title=\"Crane\" width=\"200\"/\u003e\n\n\u003c/div\u003e\n\n---\n\n## What is Crane\n\n\u003e English | [中文](README_zh.md)\n\nCrane is a FinOps Platform for Cloud Resource Analytics and Economics in Kubernetes clusters. The goal is not only help user to manage cloud cost easier but also ensure the quality of applications.\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg alt=\"fcs logo\" height=\"200\" src=\"docs/images/Crane-FinOps-Certified-Solution.png\" title=\"FinOps Certified Solution\" width=\"200\"/\u003e\n\n\u003c/div\u003e\n\nCrane is a [FinOps Certified Solution](https://www.finops.org/certifications/finops-certified-solution/) project of the [FinOps Foundation](https://www.finops.org/).\n\n**How to start a Cost-Saving journey on Crane?**\n\n1. **Understanding**: Cost insight for cloud assets and kubernetes resources(Deployments, StatefulSets).\n2. **Analytics**: Periodically analytics the states in cluster and provide optimization recommendations.\n3. **Optimization**: Rich set of functionalities to operate and reduce your cost.\n\nhttps://user-images.githubusercontent.com/35299017/186680122-d7756b47-06be-44cb-8553-1957eaa3ed45.mp4\n\n**Live Demo** for Crane Dashboard: http://dashboard.gocrane.io/\n\n## Main Features\n\n\u003cimg alt=\"Crane Overview\" height=\"330\" src=\"docs/images/crane-overview.png\" width=\"900\"/\u003e\n\n**Cost Visualization and Optimization Evaluation**\n\n- Provides a collection of exporters which collect cloud resource pricing and billing data and ship to your monitoring system like Prometheus.\n- Multi-dimensional cost insight, optimization evaluates are supported. Support Multi-cloud Pricing through `Cloud Provider`。\n\n**Recommendation Framework**\n\nProvide a pluggable framework for analytics and give recommendation for cloud resources, support out-of-box recommenders: Workload Resources/Replicas, Idle Resources. [learn more](https://gocrane.io/docs/tutorials/recommendation/).\n\n**Prediction-driven Horizontal Autoscaling**\n\nEffectiveHorizontalPodAutoscaler supports prediction-driven autoscaling. With this capability, user can forecast the incoming peak flow and scale up their application ahead, also user can know when the peak flow will end and scale down their application gracefully. [learn more](https://gocrane.io/docs/tutorials/using-effective-hpa-to-scaling-with-effectiveness/).\n\n**Load-Aware Scheduling**\n\nProvide a simple but efficient scheduler that schedule pods based on actual node utilization data，and filters out those nodes with high load to balance the cluster. [learn more](https://gocrane.io/docs/tutorials/scheduling-pods-based-on-actual-node-load/).\n\n**Colocation with Enhanced QOS**\n\nQOS-related capabilities ensure the running stability of Pods on Kubernetes. It has the ability of interference detection and active avoidance under the condition of multi-dimensional metrics, and supports reasonable operation and custom metrics access; it has the ability to oversell elastic resources enhanced by the prediction algorithm, reuse and limit the idle resources in the cluster; it has the enhanced bypass cpuset Management capabilities, improve resource utilization efficiency while binding cores. [learn more](docs/tutorials/using-qos-ensurance.md).\n\n## Architecture\n\nThe overall architecture of Crane is shown as below:\n\n\u003cimg alt=\"Crane Overview\" height=\"550\" src=\"docs/images/crane-arch.png\"/\u003e\n\n**Craned** \n\nCraned is the core component which manage the lifecycle of CRDs and APIs. It's deployed by a `Deployment` which consists of two container: \n- Craned: Operators for management CRDs, WebApi for Dashboard, Predictors that provide query TimeSeries API.\n- Dashboard: Web component that built from TDesign's Starter, provide an easy-to-use UI for crane users.\n\n**Fadvisor**\n\nFadvisor provides a collection of exporters which collect cloud resource pricing and billing data and ship to your monitoring system like Prometheus. Fadvisor support Multi-Cloud Pricing API by `Cloud Provider`. \n\n**Metric Adapter**\n\nMetric Adapter implements a `Custom Metric Apiserver`. Metric Adapter consume Crane CRDs and provide HPA Metrics by `Custom/External Metric API`.\n\n**Crane Agent**\n\nCrane Agent is a `DaemonSet` that runs in each node.\n\n## Getting Started\n\n- [Introduction](https://gocrane.io/docs/getting-started/introduction/)\n- [Quick Start](https://gocrane.io/docs/getting-started/installation/quick-start/)\n- [Tutorials](https://gocrane.io/docs/tutorials/)\n\n## Documentation\n\nFull documentation is available on the [Crane website](https://gocrane.io).\n\n## Community\n\n- Slack(English): [https://gocrane.slack.com](https://join.slack.com/t/gocrane/shared_invite/zt-1rirt4xgk-N1ckyMW4acbPLWA8AemhxA)\n\n- Wechat Group (Chinese): \n\n\u003cimg alt=\"Wechat\" src=\"https://github.com/gocrane/crane/assets/6251116/50997b45-187f-4e31-91e2-d679ea2b4bd0\" title=\"Wechat\" width=\"200\"/\u003e\n\u003cimg alt=\"Wechat\" src=\"docs/images/wechat.jpeg\" title=\"Wechat\" width=\"200\"/\u003e\nAdd it and Reply \"Crane\"，Robot will add you in Wechat group.\n\n\n- Bi-weekly Community Call(APAC, Chinese)\n  - [Meeting Link](https://meeting.tencent.com/dm/ri7x8wCCEUut)\n  - [Meeting Notes](https://doc.weixin.qq.com/doc/w3_AHMAlwa_AFU7PT58rVhTFKXV0maR6?scode=AJEAIQdfAAo0gvbrCIAHMAlwa_AFU)\n  - [Video Records](https://www.wolai.com/33xC4HB1JXCCH1x8umfioS)\n\n## RoadMap\n\nPlease see [this document](./docs/roadmaps/roadmap-2022.md) to learn more.\n\n## Contributing\n\nContributors are welcomed to join Crane project. Please check [CONTRIBUTING](./CONTRIBUTING.md) about how to contribute to this project.\n\nFor how to start develop for Crane, you can check [developer's documentation](./docs/developer-guide.md).\n\n## Code of Conduct\n\nCrane adopts [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).\n\n","funding_links":[],"categories":["Go","Repositories","K8S-Tools"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgocrane%2Fcrane","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgocrane%2Fcrane","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgocrane%2Fcrane/lists"}