Skip to content

Commit

Permalink
Merge pull request kubewharf#8 from pendoragon/katalyst-charts
Browse files Browse the repository at this point in the history
feat: add charts for colocation, tidal-colocation and overcommit
  • Loading branch information
waynepeking348 authored Jan 16, 2024
2 parents 46fbf38 + 4836375 commit 69c0e10
Show file tree
Hide file tree
Showing 32 changed files with 543 additions and 1 deletion.
7 changes: 7 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,10 @@ jobs:
uses: helm/[email protected]
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

- name: Run chart-releaser on katalyst subcharts
uses: helm/[email protected]
with:
charts_dir: charts/katalyst/charts
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
23 changes: 23 additions & 0 deletions charts/katalyst/charts/colocation/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
18 changes: 18 additions & 0 deletions charts/katalyst/charts/colocation/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
dependencies:
- name: katalyst-webhook
repository: file://../webhook
version: 0.4.0
- name: katalyst-controller
repository: file://../controller
version: 0.4.0
- name: katalyst-metric
repository: file://../metric
version: 0.4.0
- name: katalyst-scheduler
repository: file://../scheduler
version: 0.4.0
- name: katalyst-agent
repository: file://../agent
version: 0.4.0
digest: sha256:506719e440d079587e23e669c9e2a556d900dc48ab610437dcde106411dd30cb
generated: "2024-01-15T20:44:22.169542+08:00"
41 changes: 41 additions & 0 deletions charts/katalyst/charts/colocation/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
apiVersion: v2
name: katalyst-colocation
description: A Helm chart for Katalyst colocation

# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.4.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "v0.4.0"

dependencies:
- name: katalyst-webhook
version: 0.4.0
repository: "file://../webhook"
- name: katalyst-controller
version: 0.4.0
repository: "file://../controller"
- name: katalyst-metric
version: 0.4.0
repository: "file://../metric"
- name: katalyst-scheduler
version: 0.4.0
repository: "file://../scheduler"
- name: katalyst-agent
version: 0.4.0
repository: "file://../agent"
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File renamed without changes.
4 changes: 4 additions & 0 deletions charts/katalyst/charts/controller/templates/rbac.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ rules:
- config.katalyst.kubewharf.io
- autoscaling.katalyst.kubewharf.io
- workload.katalyst.kubewharf.io
- overcommit.katalyst.kubewharf.io
- tide.katalyst.kubewharf.io
resources:
- "*"
verbs:
Expand Down Expand Up @@ -57,6 +59,8 @@ rules:
- get
- list
- watch
- patch
- update
- apiGroups:
- ""
resources:
Expand Down
23 changes: 23 additions & 0 deletions charts/katalyst/charts/overcommit/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
9 changes: 9 additions & 0 deletions charts/katalyst/charts/overcommit/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
dependencies:
- name: katalyst-webhook
repository: file://../webhook
version: 0.4.0
- name: katalyst-controller
repository: file://../controller
version: 0.4.0
digest: sha256:9065c6b424e7d001f87aae94761d240179c95d34b557182611059e46fc50d9ab
generated: "2024-01-15T20:45:42.189169+08:00"
32 changes: 32 additions & 0 deletions charts/katalyst/charts/overcommit/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
apiVersion: v2
name: katalyst-overcommit
description: A Helm chart for Katalyst overcommit

# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.4.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "v0.4.0"

dependencies:
- name: katalyst-webhook
version: 0.4.0
repository: "file://../webhook"
- name: katalyst-controller
version: 0.4.0
repository: "file://../controller"
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.9.0
creationTimestamp: null
name: nodeovercommitconfigs.overcommit.katalyst.kubewharf.io
spec:
group: overcommit.katalyst.kubewharf.io
names:
kind: NodeOvercommitConfig
listKind: NodeOvercommitConfigList
plural: nodeovercommitconfigs
shortNames:
- noc
singular: nodeovercommitconfig
scope: Cluster
versions:
- additionalPrinterColumns:
- jsonPath: .spec.resourceOvercommitRatio
name: OVERCOMMITRATIO
type: string
- jsonPath: .spec.nodeOvercommitSelectorVal
name: SELECTOR
type: string
name: v1alpha1
schema:
openAPIV3Schema:
description: NodeOvercommitConfig is the Schema for the nodeovercommitconfigs
API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: NodeOvercommitConfigSpec is a description of a NodeOvercommitConfig
properties:
nodeOvercommitSelectorVal:
description: NodeOvercommitSelectorVal is the value of node label
selector with key consts.NodeOvercommitSelectorKey, it decides whether
to update Nodes if the Node matches the selector 'consts.NodeOvercommitSelectorKey=NodeOvercommitSelectorVal'
type: string
resourceOvercommitRatio:
additionalProperties:
type: string
description: ResourceOvercommitRatio describes the resource overcommit
ratio that needs to inject into Node.Annotations cpu,memory are
supported.
type: object
type: object
status:
properties:
matchedNodeList:
description: NodeList which the nodeOvercommitConfig rules matched
items:
type: string
type: array
type: object
type: object
served: true
storage: true
subresources:
status: {}
42 changes: 42 additions & 0 deletions charts/katalyst/charts/overcommit/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Overrides katalyst-webhook values
katalyst-webhook:
enabled: true

fullnameOverride: katalyst-webhook

replicaCount: 1

image:
registry: docker.io
repository: kubewharf/katalyst-webhook
pullPolicy: IfNotPresent
tag: ""

podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/path: "/metrics"
prometheus.io/port: "9316"

customArgs:
webhooks: "node,-vpa,-pod"

# Overrides katalyst-controller values
katalyst-controller:
enabled: true

fullnameOverride: katalyst-controller

replicaCount: 1

image:
registry: docker.io
repository: kubewharf/katalyst-controller
pullPolicy: IfNotPresent
tag: ""

customArgs:
controllers: "overcommit,-vpa,-kcc,-spd,-lifecycle"
dry-run: false
leader-elect: true
healthz-enabled: true
v: 2
23 changes: 23 additions & 0 deletions charts/katalyst/charts/tidal-colocation/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
6 changes: 6 additions & 0 deletions charts/katalyst/charts/tidal-colocation/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
dependencies:
- name: katalyst-controller
repository: file://../controller
version: 0.4.0
digest: sha256:cc09971ebc2d7b7e1e3da0a35394185088e9f62bd3d43aba9532e5b971d902ed
generated: "2024-01-15T20:46:20.030616+08:00"
29 changes: 29 additions & 0 deletions charts/katalyst/charts/tidal-colocation/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
apiVersion: v2
name: katalyst-tidal-colocation
description: A Helm chart for Katalyst tidal colocation

# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.4.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "v0.4.0"

dependencies:
- name: katalyst-controller
version: 0.4.0
repository: "file://../controller"
Binary file not shown.
Loading

0 comments on commit 69c0e10

Please sign in to comment.