add updated package, patch and clean
parent
8925281166
commit
094e655a58
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
|
@ -1,21 +1,23 @@
|
|||
# Kubecost
|
||||
|
||||
[Kubecost](https://kubecost.com/) is an open-source Kubernetes cost monitoring solution.
|
||||
|
||||
Kubecost gives teams visibility into current and historical Kubernetes spend and resource allocation. These models provide cost transparency in Kubernetes environments that support multiple applications, teams, departments, etc.
|
||||
Kubecost gives teams visibility into current and historical Kubernetes spend and resource allocation. These models provide cost transparency in Kubernetes environments that support multiple applications, teams, departments, etc.
|
||||
|
||||
To see more on the functionality of the full Kubecost product, please visit the [features page](https://kubecost.com/#features) on our website.
|
||||
|
||||
Here is a summary of features enabled by this cost model:
|
||||
|
||||
- Real-time cost allocation by Kubernetes service, deployment, namespace, label, statefulset, daemonset, pod, and container
|
||||
- Dynamic asset pricing enabled by integrations with AWS, Azure, and GCP billing APIs
|
||||
- Dynamic asset pricing enabled by integrations with AWS, Azure, and GCP billing APIs
|
||||
- Supports on-prem k8s clusters with custom pricing sheets
|
||||
- Allocation for in-cluster resources like CPU, GPU, memory, and persistent volumes.
|
||||
- Allocation for AWS & GCP out-of-cluster resources like RDS instances and S3 buckets with key (optional)
|
||||
- Easily export pricing data to Prometheus with /metrics endpoint ([learn more](PROMETHEUS.md))
|
||||
- Easily export pricing data to Prometheus with /metrics endpoint ([learn more](https://github.com/kubecost/cost-model/blob/develop/PROMETHEUS.md))
|
||||
- Free and open source distribution (Apache2 license)
|
||||
|
||||
## Requirements
|
||||
|
||||
- Kubernetes 1.8+
|
||||
- kube-state-metrics
|
||||
- Grafana
|
||||
|
|
|
@ -0,0 +1,160 @@
|
|||
questions:
|
||||
# General Settings
|
||||
- variable: kubecostProductConfigs.clusterName
|
||||
label: Cluster Name
|
||||
description: "Used for display in the cost-analyzer UI (Can be renamed in the UI)"
|
||||
type: string
|
||||
required: true
|
||||
default: ""
|
||||
group: General Settings
|
||||
- variable: persistentVolume.enabled
|
||||
label: Enable Persistent Volume for CostAnalyzer
|
||||
description: "If true, Kubecost will create a Persistent Volume Claim for product config data"
|
||||
type: boolean
|
||||
default: false
|
||||
show_subquestion_if: true
|
||||
group: "General Settings"
|
||||
subquestions:
|
||||
- variable: persistentVolume.size
|
||||
label: CostAnalyzer Persistent Volume Size
|
||||
type: string
|
||||
default: "0.2Gi"
|
||||
|
||||
# Prometheus Server
|
||||
- variable: global.prometheus.enabled
|
||||
label: Enable Prometheus
|
||||
description: If false, use an existing Prometheus install
|
||||
type: boolean
|
||||
default: true
|
||||
group: "Prometheus"
|
||||
- variable: prometheus.kubeStateMetrics.enabled
|
||||
label: Enable KubeStateMetrics
|
||||
description: "If true, deploy kube-state-metrics for Kubernetes metrics"
|
||||
type: boolean
|
||||
default: true
|
||||
show_if: "global.prometheus.enabled=true"
|
||||
group: "Prometheus"
|
||||
- variable: prometheus.server.retention
|
||||
label: Prometheus Server Retention
|
||||
description: "Determines when to remove old data"
|
||||
type: string
|
||||
default: "15d"
|
||||
show_if: "global.prometheus.enabled=true"
|
||||
group: "Prometheus"
|
||||
- variable: prometheus.server.persistentVolume.enabled
|
||||
label: Create Persistent Volume for Prometheus
|
||||
description: "If true, prometheus will create a persistent volume claim"
|
||||
type: boolean
|
||||
required: true
|
||||
default: false
|
||||
group: "Prometheus"
|
||||
show_if: "global.prometheus.enabled=true"
|
||||
show_subquestion_if: true
|
||||
subquestions:
|
||||
- variable: prometheus.server.persistentVolume.size
|
||||
label: Prometheus Persistent Volume Size
|
||||
type: string
|
||||
default: "8Gi"
|
||||
- variable: prometheus.server.persistentVolume.storageClass
|
||||
label: Prometheus Persistent Volume StorageClass
|
||||
description: "Prometheus data persistent volume storageClass, if not set use default StorageClass"
|
||||
default: ""
|
||||
type: storageclass
|
||||
- variable: prometheus.server.persistentVolume.existingClaim
|
||||
label: Existing Persistent Volume Claim for Prometheus
|
||||
description: "If not empty, uses the specified existing PVC instead of creating new one"
|
||||
type: pvc
|
||||
default: ""
|
||||
|
||||
# Prometheus Node Exporter
|
||||
- variable: prometheus.nodeExporter.enabled
|
||||
label: Enable NodeExporter
|
||||
description: "If false, do not create NodeExporter daemonset"
|
||||
type: boolean
|
||||
default: true
|
||||
group: "NodeExporter"
|
||||
- variable: prometheus.serviceAccounts.nodeExporter.create
|
||||
label: Enable Service Accounts NodeExporter
|
||||
description: "If false, do not create NodeExporter daemonset"
|
||||
type: boolean
|
||||
default: true
|
||||
group: "NodeExporter"
|
||||
|
||||
# Prometheus AlertManager
|
||||
- variable: prometheus.alertmanager.enabled
|
||||
label: Enable AlertManager
|
||||
type: boolean
|
||||
default: true
|
||||
group: "AlertManager"
|
||||
- variable: prometheus.alertmanager.persistentVolume.enabled
|
||||
label: Create Persistent Volume for AlertManager
|
||||
description: "If true, alertmanager will create a persistent volume claim"
|
||||
type: boolean
|
||||
required: true
|
||||
default: false
|
||||
group: "AlertManager"
|
||||
show_if: "prometheus.alertmanager.enabled=true"
|
||||
show_subquestion_if: true
|
||||
subquestions:
|
||||
- variable: prometheus.alertmanager.persistentVolume.size
|
||||
default: "2Gi"
|
||||
description: "AlertManager data persistent volume size"
|
||||
type: string
|
||||
label: AlertManager Persistent Volume Size
|
||||
- variable: prometheus.alertmanager.persistentVolume.storageClass
|
||||
default: ""
|
||||
description: "Alertmanager data persistent volume storageClass, if not set use default StorageClass"
|
||||
type: storageclass
|
||||
label: AlertManager Persistent Volume StorageClass
|
||||
- variable: prometheus.alertmanager.persistentVolume.existingClaim
|
||||
default: ""
|
||||
description: "If not empty, uses the specified existing PVC instead of creating new one"
|
||||
type: pvc
|
||||
label: Existing Persistent Volume Claim for AlertManager
|
||||
|
||||
# PushGateway
|
||||
- variable: prometheus.pushgateway.enabled
|
||||
label: Enable PushGateway
|
||||
type: boolean
|
||||
default: true
|
||||
group: "PushGateway"
|
||||
- variable: prometheus.pushgateway.persistentVolume.enabled
|
||||
label: Create Persistent Volume for PushGateway
|
||||
description: "If true, PushGateway will create a persistent volume claim"
|
||||
required: true
|
||||
type: boolean
|
||||
default: false
|
||||
group: "PushGateway"
|
||||
show_if: "prometheus.pushgateway.enabled=true"
|
||||
show_subquestion_if: true
|
||||
subquestions:
|
||||
- variable: prometheus.prometheus.pushgateway.persistentVolume.size
|
||||
label: PushGateway Persistent Volume Size
|
||||
type: string
|
||||
default: "2Gi"
|
||||
- variable: prometheus.pushgateway.persistentVolume.storageClass
|
||||
label: PushGateway Persistent Volume StorageClass
|
||||
description: "PushGateway data persistent volume storageClass, if not set use default StorageClass"
|
||||
type: storageclass
|
||||
default: ""
|
||||
- variable: prometheus.pushgateway.persistentVolume.existingClaim
|
||||
label: Existing Persistent Volume Claim for PushGateway
|
||||
description: "If not empty, uses the specified existing PVC instead of creating new one"
|
||||
type: pvc
|
||||
default: ""
|
||||
|
||||
# Services and Load Balancing
|
||||
- variable: ingress.enabled
|
||||
label: Enable Ingress
|
||||
description: "Expose app using Ingress (Layer 7 Load Balancer)"
|
||||
default: true
|
||||
type: boolean
|
||||
show_subquestion_if: true
|
||||
group: "Services and Load Balancing"
|
||||
subquestions:
|
||||
- variable: ingress.hosts[0]
|
||||
default: "xip.io"
|
||||
description: "Hostname to your CostAnalyzer installation"
|
||||
type: hostname
|
||||
required: true
|
||||
label: Hostname
|
|
@ -1,160 +0,0 @@
|
|||
questions:
|
||||
# General Settings
|
||||
- variable: kubecostProductConfigs.clusterName
|
||||
label: Cluster Name
|
||||
description: "Used for display in the cost-analyzer UI (Can be renamed in the UI)"
|
||||
type: string
|
||||
required: true
|
||||
default: ""
|
||||
group: General Settings
|
||||
- variable: persistentVolume.enabled
|
||||
label: Enable Persistent Volume for CostAnalyzer
|
||||
description: "If true, Kubecost will create a Persistent Volume Claim for product config data"
|
||||
type: boolean
|
||||
default: false
|
||||
show_subquestion_if: true
|
||||
group: "General Settings"
|
||||
subquestions:
|
||||
- variable: persistentVolume.size
|
||||
label: CostAnalyzer Persistent Volume Size
|
||||
type: string
|
||||
default: "0.2Gi"
|
||||
|
||||
# Prometheus Server
|
||||
- variable: global.prometheus.enabled
|
||||
label: Enable Prometheus
|
||||
description: If false, use an existing Prometheus install
|
||||
type: boolean
|
||||
default: true
|
||||
group: "Prometheus"
|
||||
- variable: prometheus.kubeStateMetrics.enabled
|
||||
label: Enable KubeStateMetrics
|
||||
description: "If true, deploy kube-state-metrics for Kubernetes metrics"
|
||||
type: boolean
|
||||
default: true
|
||||
show_if: "global.prometheus.enabled=true"
|
||||
group: "Prometheus"
|
||||
- variable: prometheus.server.retention
|
||||
label: Prometheus Server Retention
|
||||
description: "Determines when to remove old data"
|
||||
type: string
|
||||
default: "15d"
|
||||
show_if: "global.prometheus.enabled=true"
|
||||
group: "Prometheus"
|
||||
- variable: prometheus.server.persistentVolume.enabled
|
||||
label: Create Persistent Volume for Prometheus
|
||||
description: "If true, prometheus will create a persistent volume claim"
|
||||
type: boolean
|
||||
required: true
|
||||
default: false
|
||||
group: "Prometheus"
|
||||
show_if: "global.prometheus.enabled=true"
|
||||
show_subquestion_if: true
|
||||
subquestions:
|
||||
- variable: prometheus.server.persistentVolume.size
|
||||
label: Prometheus Persistent Volume Size
|
||||
type: string
|
||||
default: "8Gi"
|
||||
- variable: prometheus.server.persistentVolume.storageClass
|
||||
label: Prometheus Persistent Volume StorageClass
|
||||
description: "Prometheus data persistent volume storageClass, if not set use default StorageClass"
|
||||
default: ""
|
||||
type: storageclass
|
||||
- variable: prometheus.server.persistentVolume.existingClaim
|
||||
label: Existing Persistent Volume Claim for Prometheus
|
||||
description: "If not empty, uses the specified existing PVC instead of creating new one"
|
||||
type: pvc
|
||||
default: ""
|
||||
|
||||
# Prometheus Node Exporter
|
||||
- variable: prometheus.nodeExporter.enabled
|
||||
label: Enable NodeExporter
|
||||
description: "If false, do not create NodeExporter daemonset"
|
||||
type: boolean
|
||||
default: true
|
||||
group: "NodeExporter"
|
||||
- variable: prometheus.serviceAccounts.nodeExporter.create
|
||||
label: Enable Service Accounts NodeExporter
|
||||
description: "If false, do not create NodeExporter daemonset"
|
||||
type: boolean
|
||||
default: true
|
||||
group: "NodeExporter"
|
||||
|
||||
# Prometheus AlertManager
|
||||
- variable: prometheus.alertmanager.enabled
|
||||
label: Enable AlertManager
|
||||
type: boolean
|
||||
default: true
|
||||
group: "AlertManager"
|
||||
- variable: prometheus.alertmanager.persistentVolume.enabled
|
||||
label: Create Persistent Volume for AlertManager
|
||||
description: "If true, alertmanager will create a persistent volume claim"
|
||||
type: boolean
|
||||
required: true
|
||||
default: false
|
||||
group: "AlertManager"
|
||||
show_if: "prometheus.alertmanager.enabled=true"
|
||||
show_subquestion_if: true
|
||||
subquestions:
|
||||
- variable: prometheus.alertmanager.persistentVolume.size
|
||||
default: "2Gi"
|
||||
description: "AlertManager data persistent volume size"
|
||||
type: string
|
||||
label: AlertManager Persistent Volume Size
|
||||
- variable: prometheus.alertmanager.persistentVolume.storageClass
|
||||
default: ""
|
||||
description: "Alertmanager data persistent volume storageClass, if not set use default StorageClass"
|
||||
type: storageclass
|
||||
label: AlertManager Persistent Volume StorageClass
|
||||
- variable: prometheus.alertmanager.persistentVolume.existingClaim
|
||||
default: ""
|
||||
description: "If not empty, uses the specified existing PVC instead of creating new one"
|
||||
type: pvc
|
||||
label: Existing Persistent Volume Claim for AlertManager
|
||||
|
||||
# PushGateway
|
||||
- variable: prometheus.pushgateway.enabled
|
||||
label: Enable PushGateway
|
||||
type: boolean
|
||||
default: true
|
||||
group: "PushGateway"
|
||||
- variable: prometheus.pushgateway.persistentVolume.enabled
|
||||
label: Create Persistent Volume for PushGateway
|
||||
description: "If true, PushGateway will create a persistent volume claim"
|
||||
required: true
|
||||
type: boolean
|
||||
default: false
|
||||
group: "PushGateway"
|
||||
show_if: "prometheus.pushgateway.enabled=true"
|
||||
show_subquestion_if: true
|
||||
subquestions:
|
||||
- variable: prometheus.prometheus.pushgateway.persistentVolume.size
|
||||
label: PushGateway Persistent Volume Size
|
||||
type: string
|
||||
default: "2Gi"
|
||||
- variable: prometheus.pushgateway.persistentVolume.storageClass
|
||||
label: PushGateway Persistent Volume StorageClass
|
||||
description: "PushGateway data persistent volume storageClass, if not set use default StorageClass"
|
||||
type: storageclass
|
||||
default: ""
|
||||
- variable: prometheus.pushgateway.persistentVolume.existingClaim
|
||||
label: Existing Persistent Volume Claim for PushGateway
|
||||
description: "If not empty, uses the specified existing PVC instead of creating new one"
|
||||
type: pvc
|
||||
default: ""
|
||||
|
||||
# Services and Load Balancing
|
||||
- variable: ingress.enabled
|
||||
label: Enable Ingress
|
||||
description: "Expose app using Ingress (Layer 7 Load Balancer)"
|
||||
default: true
|
||||
type: boolean
|
||||
show_subquestion_if: true
|
||||
group: "Services and Load Balancing"
|
||||
subquestions:
|
||||
- variable: ingress.hosts[0]
|
||||
default: "xip.io"
|
||||
description: "Hostname to your CostAnalyzer installation"
|
||||
type: hostname
|
||||
required: true
|
||||
label: Hostname
|
|
@ -1,10 +1,18 @@
|
|||
--- charts-original/Chart.yaml
|
||||
+++ charts/Chart.yaml
|
||||
@@ -4,3 +4,7 @@
|
||||
cloud costs.
|
||||
name: cost-analyzer
|
||||
version: 1.70.0
|
||||
+icon: https://kubecost.com/images/logo-white.png
|
||||
+annotations:
|
||||
@@ -2,9 +2,14 @@
|
||||
artifacthub.io/links: |
|
||||
- name: Homepage
|
||||
url: https://www.kubecost.com
|
||||
+ catalog.cattle.io/certified: partner
|
||||
+ catalog.cattle.io/display-name: Kubecost
|
||||
+ catalog.cattle.io/release-name: kubecost
|
||||
apiVersion: v2
|
||||
appVersion: 1.83.2
|
||||
-description: A Helm chart that sets up Kubecost, Prometheus, and Grafana to monitor
|
||||
+description:
|
||||
+ A Helm chart that sets up Kubecost, Prometheus, and Grafana to monitor
|
||||
cloud costs.
|
||||
+icon: https://partner-charts.rancher.io/assets/logos/kubecost.png
|
||||
name: cost-analyzer
|
||||
version: 1.83.2
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
url: https://kubecost.github.io/rancher-helm-chart/cost-analyzer-1.70.0.tgz
|
||||
url: https://kubecost.github.io/cost-analyzer/cost-analyzer-1.83.2.tgz
|
||||
packageVersion: 01
|
||||
|
|
Loading…
Reference in New Issue