mirror of https://github.com/openkruise/charts.git
kruise-game v1.0.0 release
Signed-off-by: ChrisLiu <chrisliu1995@163.com>
This commit is contained in:
parent
1259df091a
commit
c9c5e95066
|
|
@ -1 +1 @@
|
|||
../versions/kruise-game/1.0.0-rc
|
||||
../versions/kruise-game/1.0.0
|
||||
|
|
@ -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/
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
apiVersion: v1
|
||||
name: kruise-game
|
||||
description: Helm chart for kruise-game components
|
||||
version: 1.0.0
|
||||
appVersion: 1.0.0
|
||||
kubeVersion: ">= 1.18.0-0"
|
||||
sources:
|
||||
- https://github.com/openkruise/kruise-game
|
||||
annotations:
|
||||
artifacthub.io/changes: |
|
||||
- "[Changed]: https://github.com/openkruise/kruise-game/blob/master/CHANGELOG.md"
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
# Kruise Game v1.0.0
|
||||
|
||||
## Configuration
|
||||
|
||||
The following table lists the configurable parameters of the kruise-game chart and their default values.
|
||||
|
||||
| Parameter | Description | Default |
|
||||
|--------------------------------------------|-----------------------------------------------------------------------------|----------------------------------|
|
||||
| `installation.namespace` | Namespace for kruise-game operation installation | `kruise-game-system` |
|
||||
| `installation.createNamespace` | Whether to create the installation.namespace | `true` |
|
||||
| `kruiseGame.fullname` | Nick name for kruise-game deployment and other configurations | `kruise-game-controller-manager` |
|
||||
| `kruiseGame.healthBindPort` | Port for checking health of kruise-game container | `8082` |
|
||||
| `kruiseGame.webhook.port` | Port of webhook served by kruise-game container | `443` |
|
||||
| `kruiseGame.webhook.targetPort` | ObjectSelector for workloads in MutatingWebhookConfigurations | `9876` |
|
||||
| `kruiseGame.apiServerQps` | Indicates the maximum QPS to the master from kruise-game-controller-manager | `5` |
|
||||
| `kruiseGame.apiServerQpsBurst` | Maximum burst for throttle of kruise-game-controller-manager | `10` |
|
||||
| `kruiseGame.gameserverWorkers` | Max concurrent workers for GameServer controller | `10` |
|
||||
| `kruiseGame.gameserversetWorkers` | Max concurrent workers for GameServerSet controller | `10` |
|
||||
| `replicaCount` | Replicas of kruise-game deployment | `1` |
|
||||
| `image.repository` | Repository for kruise-game image | `openkruise/kruise-game-manager` |
|
||||
| `image.tag` | Tag for kruise-game image | `v1.0.0` |
|
||||
| `image.pullPolicy` | ImagePullPolicy for kruise-game container | `Always` |
|
||||
| `serviceAccount.annotations` | The annotations for serviceAccount of kruise-game | ` ` |
|
||||
| `service.port` | Port of kruise-game service | `8443` |
|
||||
| `resources.limits.cpu` | CPU resource limit of kruise-game container | `500m` |
|
||||
| `resources.limits.memory` | Memory resource limit of kruise-game container | `1Gi` |
|
||||
| `resources.requests.cpu` | CPU resource request of kruise-game container | `10m` |
|
||||
| `resources.requests.memory` | Memory resource request of kruise-game container | `64Mi` |
|
||||
| `prometheus.enabled` | Whether to bind metric endpoint | `true` |
|
||||
| `prometheus.monitorService.port` | Port of the monitorservice bind to | `8080` |
|
||||
| `scale.service.port` | Port of the external scaler server binds to | `6000` |
|
||||
| `scale.service.targetPort` | TargetPort of the external scaler server binds to | `6000` |
|
||||
| `network.totalWaitTime` | Maximum time to wait for network ready, the unit is seconds | `60` |
|
||||
| `network.probeIntervalTime` | Time interval for detecting network status, the unit is seconds | `5` |
|
||||
| `cloudProvider.installCRD` | Whether to install CloudProvider CRD | `true` |
|
||||
| `indexOffsetScheduler.enabled` | Whether to install index-offset-scheduler | `false` |
|
||||
| `certificates.autoGenerated` | Whether to auto-generate webhook certificates | `true` |
|
||||
| `certificates.secretName` | Name of the secret containing webhook certificates | `kruise-game-certs` |
|
||||
| `certificates.mountPath` | Path to mount webhook certificates in container | `/tmp/webhook-certs/` |
|
||||
| `certificates.certManager.enabled` | Whether to use cert-manager for certificate management | `false` |
|
||||
| `certificates.certManager.duration` | Certificate validity duration | `8760h0m0s` |
|
||||
| `certificates.certManager.renewBefore` | Time before expiry to renew certificate | `5840h0m0s` |
|
||||
| `certificates.certManager.generateCA` | Whether to generate a Certificate Authority | `true` |
|
||||
| `certificates.certManager.caSecretName` | Name of the secret containing the CA certificate | `kruise-game-ca` |
|
||||
| `certificates.certManager.issuer.generate` | Whether to generate the issuer automatically | `true` |
|
||||
| `certificates.certManager.issuer.name` | Name of the certificate issuer | `kruise-ca` |
|
||||
| `certificates.certManager.issuer.kind` | Type of the certificate issuer | `ClusterIssuer` |
|
||||
| `certificates.certManager.issuer.group` | API group of the certificate issuer | `cert-manager.io` |
|
||||
|
||||
|
||||
|
||||
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
|
||||
|
||||
### Optional: the local image for China
|
||||
|
||||
If you are in China and have problem to pull image from official DockerHub, you can use the registry hosted on Alibaba Cloud:
|
||||
|
||||
```bash
|
||||
$ helm install kruise-game https://... --set image.repository=registry.cn-hangzhou.aliyuncs.com/acs/kruise-game-manager
|
||||
...
|
||||
```
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "kruise-game.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "kruise-game.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "kruise-game.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "kruise-game.labels" -}}
|
||||
helm.sh/chart: {{ include "kruise-game.chart" . }}
|
||||
{{ include "kruise-game.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "kruise-game.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "kruise-game.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "kruise-game.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "kruise-game.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
{{- if and .Values.certificates.certManager.enabled .Values.certificates.certManager.issuer.generate }}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Issuer
|
||||
metadata:
|
||||
name: {{ .Values.kruiseGame.fullname }}-issuer
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
spec:
|
||||
ca:
|
||||
secretName: {{ .Values.certificates.certManager.caSecretName }}
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
{{- if .Values.certificates.certManager.enabled }}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: {{ .Values.kruiseGame.fullname }}-cert
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
spec:
|
||||
commonName: {{ .Values.kruiseGame.fullname }}
|
||||
dnsNames:
|
||||
- {{ .Values.kruiseGame.webhook.serviceName }}.{{ .Values.installation.namespace }}
|
||||
- {{ .Values.kruiseGame.webhook.serviceName }}.{{ .Values.installation.namespace }}.svc
|
||||
- {{ .Values.kruiseGame.webhook.serviceName }}.{{ .Values.installation.namespace }}.svc.{{ .Values.clusterDomain }}
|
||||
secretName: {{ .Values.certificates.secretName }}
|
||||
usages:
|
||||
- server auth
|
||||
- client auth
|
||||
privateKey:
|
||||
rotationPolicy: Always
|
||||
algorithm: RSA
|
||||
size: 2048
|
||||
duration: {{ .Values.certificates.certManager.duration }}
|
||||
renewBefore: {{ .Values.certificates.certManager.renewBefore }}
|
||||
issuerRef:
|
||||
{{- if .Values.certificates.certManager.issuer.generate }}
|
||||
name: {{ .Values.kruiseGame.fullname }}-issuer
|
||||
kind: Issuer
|
||||
group: cert-manager.io
|
||||
{{- else }}
|
||||
{{- if .Values.certificates.certManager.issuer.name }}
|
||||
name: {{ .Values.certificates.certManager.issuer.name }}
|
||||
{{- end }}
|
||||
{{- if .Values.certificates.certManager.issuer.kind }}
|
||||
kind: {{ .Values.certificates.certManager.issuer.kind }}
|
||||
{{- end }}
|
||||
{{- if .Values.certificates.certManager.issuer.group }}
|
||||
group: {{ .Values.certificates.certManager.issuer.group }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
{{- if and .Values.certificates.certManager.enabled .Values.certificates.certManager.generateCA .Values.certificates.certManager.issuer.generate }}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: {{ .Values.kruiseGame.fullname }}-ca
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
spec:
|
||||
isCA: true
|
||||
commonName: {{ .Values.kruiseGame.fullname }}
|
||||
secretName: {{ .Values.certificates.certManager.caSecretName }}
|
||||
privateKey:
|
||||
rotationPolicy: Always
|
||||
algorithm: RSA
|
||||
size: 2048
|
||||
duration: 8760h0m0s # 1 year
|
||||
renewBefore: 720h0m0s # 1 month
|
||||
issuerRef:
|
||||
name: {{ .Values.kruiseGame.fullname }}-selfsigned-issuer
|
||||
kind: Issuer
|
||||
group: cert-manager.io
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
{{- if and .Values.certificates.certManager.enabled .Values.certificates.certManager.generateCA .Values.certificates.certManager.issuer.generate }}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Issuer
|
||||
metadata:
|
||||
{{- with .Values.additionalAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ .Values.kruiseGame.fullname }}-selfsigned-issuer
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
spec:
|
||||
selfSigned: {}
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,77 @@
|
|||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: kruise-game-manager-config
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
data:
|
||||
config.toml: |
|
||||
[kubernetes]
|
||||
enable = true
|
||||
[kubernetes.hostPort]
|
||||
max_port = 9000
|
||||
min_port = 8000
|
||||
|
||||
[alibabacloud]
|
||||
enable = true
|
||||
[alibabacloud.slb]
|
||||
max_port = 700
|
||||
min_port = 500
|
||||
block_ports = [593]
|
||||
[alibabacloud.nlb]
|
||||
max_port = 1502
|
||||
min_port = 1000
|
||||
block_ports = [1025, 1434, 1068]
|
||||
|
||||
[volcengine]
|
||||
enable = true
|
||||
[volcengine.clb]
|
||||
max_port = 600
|
||||
min_port = 550
|
||||
block_ports = [593]
|
||||
|
||||
[aws]
|
||||
enable = false
|
||||
[aws.nlb]
|
||||
max_port = 30050
|
||||
min_port = 30001
|
||||
|
||||
[jdcloud]
|
||||
enable = false
|
||||
[jdcloud.nlb]
|
||||
max_port = 700
|
||||
min_port = 500
|
||||
|
||||
[tencentcloud]
|
||||
enable = true
|
||||
|
||||
[hwcloud]
|
||||
enable = false
|
||||
[hwcloud.elb]
|
||||
max_port = 700
|
||||
min_port = 500
|
||||
block_ports = []
|
||||
|
||||
controller_manager_config.yaml: |
|
||||
apiVersion: controller-runtime.sigs.k8s.io/v1alpha1
|
||||
kind: ControllerManagerConfig
|
||||
health:
|
||||
healthProbeBindAddress: :8081
|
||||
metrics:
|
||||
bindAddress: 127.0.0.1:8080
|
||||
webhook:
|
||||
port: 9443
|
||||
leaderElection:
|
||||
leaderElect: true
|
||||
resourceName: c637bb1e.my.domain
|
||||
# leaderElectionReleaseOnCancel defines if the leader should step down volume
|
||||
# when the Manager ends. This requires the binary to immediately end when the
|
||||
# Manager is stopped, otherwise, this setting is unsafe. Setting this significantly
|
||||
# speeds up voluntary leader transitions as the new leader don't have to wait
|
||||
# LeaseDuration time first.
|
||||
# In the default scaffold provided, the program ends immediately after
|
||||
# the manager stops, so would be fine to enable this option. However,
|
||||
# if you are doing or is intended to do any operation such as perform cleanups
|
||||
# after the manager stops then its usage might be unsafe.
|
||||
# leaderElectionReleaseOnCancel: true
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,299 @@
|
|||
{{- if .Values.indexOffsetScheduler.enabled }}
|
||||
# service account
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: index-offset-scheduler
|
||||
namespace: kruise-game-system
|
||||
---
|
||||
# clusterRole
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
annotations:
|
||||
rbac.authorization.kubernetes.io/autoupdate: 'true'
|
||||
name: index-offset-scheduler
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ''
|
||||
- events.k8s.io
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- coordination.k8s.io
|
||||
resources:
|
||||
- leases
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- coordination.k8s.io
|
||||
resourceNames:
|
||||
- kube-scheduler
|
||||
- index-offset-scheduler
|
||||
resources:
|
||||
- leases
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- coordination.k8s.io
|
||||
resources:
|
||||
- leasecandidates
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- deletecollection
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- nodes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- pods
|
||||
verbs:
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- bindings
|
||||
- pods/binding
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- pods/status
|
||||
verbs:
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- replicationcontrollers
|
||||
- services
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps
|
||||
- extensions
|
||||
resources:
|
||||
- replicasets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps
|
||||
resources:
|
||||
- statefulsets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- policy
|
||||
resources:
|
||||
- poddisruptionbudgets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- persistentvolumeclaims
|
||||
- persistentvolumes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- authentication.k8s.io
|
||||
resources:
|
||||
- tokenreviews
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- authorization.k8s.io
|
||||
resources:
|
||||
- subjectaccessreviews
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- storage.k8s.io
|
||||
resources:
|
||||
- csinodes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- namespaces
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- storage.k8s.io
|
||||
resources:
|
||||
- csidrivers
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- storage.k8s.io
|
||||
resources:
|
||||
- csistoragecapacities
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resourceNames:
|
||||
- kube-scheduler
|
||||
- index-offset-scheduler
|
||||
resources:
|
||||
- endpoints
|
||||
verbs:
|
||||
- delete
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
|
||||
---
|
||||
# ClusterRoleBinding: index-offset-scheduler
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: index-offset-scheduler-as-kube-scheduler
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: index-offset-scheduler
|
||||
namespace: kruise-game-system
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: index-offset-scheduler
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
# ClusterRoleBinding: system:volume-scheduler
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: index-offset-scheduler-as-volume-scheduler
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: index-offset-scheduler
|
||||
namespace: kruise-game-system
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: system:volume-scheduler
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
# RoleBinding: apiserver
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: index-offset-scheduler-extension-apiserver-authentication-reader
|
||||
namespace: kube-system
|
||||
roleRef:
|
||||
kind: Role
|
||||
name: extension-apiserver-authentication-reader
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: index-offset-scheduler
|
||||
namespace: kruise-game-system
|
||||
---
|
||||
# configmap
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: index-offset-scheduler-config
|
||||
namespace: kruise-game-system
|
||||
data:
|
||||
scheduler-config.yaml: |
|
||||
# stable v1 after version 1.25
|
||||
apiVersion: kubescheduler.config.k8s.io/v1
|
||||
kind: KubeSchedulerConfiguration
|
||||
leaderElection:
|
||||
leaderElect: false
|
||||
resourceNamespace: kruise-game-system
|
||||
resourceName: index-offset-scheduler
|
||||
profiles:
|
||||
- schedulerName: index-offset-scheduler
|
||||
plugins:
|
||||
score:
|
||||
enabled:
|
||||
- name: index-offset-scheduler
|
||||
weight: {{ .Values.indexOffsetScheduler.weight }}
|
||||
---
|
||||
# deployment
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: index-offset-scheduler
|
||||
namespace: kruise-game-system
|
||||
labels:
|
||||
app: index-offset-scheduler
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: index-offset-scheduler
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: index-offset-scheduler
|
||||
spec:
|
||||
serviceAccountName: index-offset-scheduler
|
||||
containers:
|
||||
- name: scheduler
|
||||
# change your image
|
||||
image: openkruise/kruise-game-scheduler-index-offset:v1.0
|
||||
imagePullPolicy: Always
|
||||
command:
|
||||
- /app/index-offset-scheduler
|
||||
- --config=/etc/kubernetes/scheduler-config.yaml
|
||||
- --v=5
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 50Mi
|
||||
limits:
|
||||
cpu: 500m
|
||||
memory: 512Mi
|
||||
volumeMounts:
|
||||
- name: config
|
||||
mountPath: /etc/kubernetes
|
||||
# imagePullSecrets:
|
||||
# - name: <your image pull secret>
|
||||
volumes:
|
||||
- name: config
|
||||
configMap:
|
||||
name: index-offset-scheduler-config
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,126 @@
|
|||
{{- if .Values.installation.createNamespace }}
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
labels:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
name: {{ .Values.installation.namespace }}
|
||||
{{- end }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: kruise-game-controller-manager-metrics-service
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
labels:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
spec:
|
||||
ports:
|
||||
- name: https
|
||||
port: {{ .Values.service.port }}
|
||||
protocol: TCP
|
||||
targetPort: https
|
||||
selector:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ .Values.kruiseGame.fullname }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
labels:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kubectl.kubernetes.io/default-container: manager
|
||||
labels:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
spec:
|
||||
# securityContext:
|
||||
# runAsNonRoot: true
|
||||
# TODO(user): For common cases that do not require escalating privileges
|
||||
# it is recommended to ensure that all your Pods/Containers are restrictive.
|
||||
# More info: https://kubernetes.io/docs/concepts/security/pod-security-standards/#restricted
|
||||
# Please uncomment the following code if your project does NOT have to work on old Kubernetes
|
||||
# versions < 1.19 or on vendors versions which do NOT support this field by default (i.e. Openshift < 4.11 ).
|
||||
# seccompProfile:
|
||||
# type: RuntimeDefault
|
||||
containers:
|
||||
- command:
|
||||
- /manager
|
||||
args:
|
||||
- --leader-elect=false
|
||||
- --provider-config=/etc/kruise-game/config.toml
|
||||
- --api-server-qps={{ .Values.kruiseGame.apiServerQps }}
|
||||
- --api-server-qps-burst={{ .Values.kruiseGame.apiServerQpsBurst }}
|
||||
- --gameserver-workers={{ .Values.kruiseGame.gameserverWorkers }}
|
||||
- --gameserverset-workers={{ .Values.kruiseGame.gameserversetWorkers }}
|
||||
- --scale-server-bind-address=:{{ .Values.scale.service.targetPort }}
|
||||
{{- if .Values.prometheus.enabled }}
|
||||
- --metrics-bind-address=:{{ .Values.prometheus.monitorService.port }}
|
||||
{{- end }}
|
||||
{{- if not .Values.certificates.autoGenerated }}
|
||||
- --enable-cert-generation={{ .Values.certificates.autoGenerated }}
|
||||
{{- end }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
name: manager
|
||||
env:
|
||||
- name: "NETWORK_TOTAL_WAIT_TIME"
|
||||
value: {{ .Values.network.totalWaitTime | quote }}
|
||||
- name: "NETWORK_PROBE_INTERVAL_TIME"
|
||||
value: {{ .Values.network.probeIntervalTime | quote }}
|
||||
ports:
|
||||
- name: https
|
||||
containerPort: {{ .Values.prometheus.monitorService.port }}
|
||||
securityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
capabilities:
|
||||
drop:
|
||||
- "ALL"
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: {{ .Values.kruiseGame.healthBindPort }}
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 5
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /readyz
|
||||
port: {{ .Values.kruiseGame.healthBindPort }}
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 5
|
||||
# TODO(user): Configure the resources accordingly based on the project requirements.
|
||||
# More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
volumeMounts:
|
||||
- mountPath: /etc/kruise-game
|
||||
name: provider-config
|
||||
{{- if not .Values.certificates.autoGenerated }}
|
||||
- mountPath: {{ .Values.certificates.mountPath }}
|
||||
name: certificates
|
||||
{{- end }}
|
||||
serviceAccountName: {{ .Values.kruiseGame.fullname }}
|
||||
terminationGracePeriodSeconds: 10
|
||||
volumes:
|
||||
- configMap:
|
||||
defaultMode: 420
|
||||
items:
|
||||
- key: config.toml
|
||||
path: config.toml
|
||||
name: kruise-game-manager-config
|
||||
name: provider-config
|
||||
{{- if not .Values.certificates.autoGenerated }}
|
||||
- name: certificates
|
||||
secret:
|
||||
defaultMode: 420
|
||||
secretName: {{ .Values.certificates.secretName}}
|
||||
optional: {{ and .Values.certificates.autoGenerated ( not .Values.certificates.certManager.enabled ) }}
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
{{- if .Values.prometheus.enabled }}
|
||||
# Prometheus Monitor Service (Metrics)
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
labels:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
name: kruise-game-controller-manager-metrics-monitor
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
spec:
|
||||
endpoints:
|
||||
- path: /metrics
|
||||
port: https
|
||||
selector:
|
||||
matchLabels:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,404 @@
|
|||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ .Values.kruiseGame.fullname }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: kruise-game-leader-election-role
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- create
|
||||
- update
|
||||
- patch
|
||||
- delete
|
||||
- apiGroups:
|
||||
- coordination.k8s.io
|
||||
resources:
|
||||
- leases
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- create
|
||||
- update
|
||||
- patch
|
||||
- delete
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- patch
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: kruise-game-manager-role
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- patch
|
||||
- apiGroups:
|
||||
- admissionregistration.k8s.io
|
||||
resources:
|
||||
- mutatingwebhookconfigurations
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- admissionregistration.k8s.io
|
||||
resources:
|
||||
- validatingwebhookconfigurations
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- alibabacloud.com
|
||||
resources:
|
||||
- poddnats
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- alibabacloud.com
|
||||
resources:
|
||||
- poddnats/status
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- alibabacloud.com
|
||||
resources:
|
||||
- podeips
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- alibabacloud.com
|
||||
resources:
|
||||
- podeips/status
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- apiextensions.k8s.io
|
||||
resources:
|
||||
- customresourcedefinitions
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps.kruise.io
|
||||
resources:
|
||||
- podprobemarkers
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps.kruise.io
|
||||
resources:
|
||||
- statefulsets
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps.kruise.io
|
||||
resources:
|
||||
- statefulsets/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- nodes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- nodes/status
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumeclaims
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumeclaims/status
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumes/status
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- services
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- services/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- elbv2.k8s.aws
|
||||
resources:
|
||||
- targetgroupbindings
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- elbv2.services.k8s.aws
|
||||
resources:
|
||||
- listeners
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- elbv2.services.k8s.aws
|
||||
resources:
|
||||
- targetgroups
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- game.kruise.io
|
||||
resources:
|
||||
- gameservers
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- game.kruise.io
|
||||
resources:
|
||||
- gameservers/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- game.kruise.io
|
||||
resources:
|
||||
- gameservers/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- game.kruise.io
|
||||
resources:
|
||||
- gameserversets
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- game.kruise.io
|
||||
resources:
|
||||
- gameserversets/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- game.kruise.io
|
||||
resources:
|
||||
- gameserversets/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- networking.k8s.io
|
||||
resources:
|
||||
- ingresses
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- networking.k8s.io
|
||||
resources:
|
||||
- ingresses/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: kruise-game-metrics-reader
|
||||
rules:
|
||||
- nonResourceURLs:
|
||||
- "/metrics"
|
||||
verbs:
|
||||
- get
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: kruise-game-proxy-role
|
||||
rules:
|
||||
- apiGroups:
|
||||
- authentication.k8s.io
|
||||
resources:
|
||||
- tokenreviews
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- authorization.k8s.io
|
||||
resources:
|
||||
- subjectaccessreviews
|
||||
verbs:
|
||||
- create
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: kruise-game-leader-election-rolebinding
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: kruise-game-leader-election-role
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ .Values.kruiseGame.fullname }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: kruise-game-manager-rolebinding
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: kruise-game-manager-role
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ .Values.kruiseGame.fullname }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: kruise-game-proxy-rolebinding
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: proxy-role
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ .Values.kruiseGame.fullname }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: kruise-game-external-scaler
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
spec:
|
||||
ports:
|
||||
- port: {{ .Values.scale.service.port }}
|
||||
targetPort: {{ .Values.scale.service.targetPort }}
|
||||
selector:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
{{- if not .Values.certificates.autoGenerated }}
|
||||
apiVersion: admissionregistration.k8s.io/v1
|
||||
kind: MutatingWebhookConfiguration
|
||||
metadata:
|
||||
annotations:
|
||||
{{- if .Values.certificates.certManager.enabled }}
|
||||
{{- if and (not .Values.certificates.certManager.generateCA) .Values.certificates.certManager.issuer.generate }}
|
||||
cert-manager.io/inject-ca-from-secret: {{ .Values.installation.namespace }}/{{ .Values.certificates.certManager.caSecretName }}
|
||||
{{- else }}
|
||||
cert-manager.io/inject-ca-from: {{ .Values.installation.namespace }}/{{ .Values.kruiseGame.fullname }}-cert
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ .Values.kruiseGame.fullname }}
|
||||
name: kruise-game-mutating-webhook
|
||||
webhooks:
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
- v1beta1
|
||||
clientConfig:
|
||||
service:
|
||||
name: {{ .Values.kruiseGame.webhook.serviceName }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
path: /mutate-v1-pod
|
||||
failurePolicy: {{ .Values.kruiseGame.webhook.failurePolicy }}
|
||||
matchPolicy: Equivalent
|
||||
name: mgameserverset.kb.io
|
||||
rules:
|
||||
- operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
- DELETE
|
||||
apiGroups:
|
||||
- ""
|
||||
apiVersions:
|
||||
- v1
|
||||
resources:
|
||||
- pods
|
||||
objectSelector:
|
||||
matchExpressions:
|
||||
- key: game.kruise.io/owner-gss
|
||||
operator: Exists
|
||||
sideEffects: None
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Values.kruiseGame.webhook.serviceName }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
spec:
|
||||
ports:
|
||||
- port: {{ .Values.kruiseGame.webhook.port }}
|
||||
targetPort: {{ .Values.kruiseGame.webhook.targetPort }}
|
||||
selector:
|
||||
control-plane: {{ .Values.kruiseGame.fullname }}
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
{{- if not .Values.certificates.autoGenerated }}
|
||||
apiVersion: admissionregistration.k8s.io/v1
|
||||
kind: ValidatingWebhookConfiguration
|
||||
metadata:
|
||||
annotations:
|
||||
{{- if .Values.certificates.certManager.enabled }}
|
||||
{{- if and (not .Values.certificates.certManager.generateCA) .Values.certificates.certManager.issuer.generate }}
|
||||
cert-manager.io/inject-ca-from-secret: {{ .Values.installation.namespace }}/{{ .Values.certificates.certManager.caSecretName }}
|
||||
{{- else }}
|
||||
cert-manager.io/inject-ca-from: {{ .Values.installation.namespace }}/{{ .Values.kruiseGame.fullname }}-cert
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ .Values.kruiseGame.fullname }}
|
||||
name: kruise-game-validating-webhook
|
||||
webhooks:
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
- v1beta1
|
||||
clientConfig:
|
||||
service:
|
||||
name: {{ .Values.kruiseGame.webhook.serviceName }}
|
||||
namespace: {{ .Values.installation.namespace }}
|
||||
path: /validate-v1alpha1-gss
|
||||
failurePolicy: {{ .Values.kruiseGame.webhook.failurePolicy }}
|
||||
matchPolicy: Equivalent
|
||||
name: vgameserverset.kb.io
|
||||
namespaceSelector: {}
|
||||
objectSelector: {}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- game.kruise.io
|
||||
apiVersions:
|
||||
- v1alpha1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- gameserversets
|
||||
sideEffects: None
|
||||
timeoutSeconds: 10
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,94 @@
|
|||
# Default values for kruise-game.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
# values for kruise-game installation
|
||||
installation:
|
||||
namespace: kruise-game-system
|
||||
createNamespace: true
|
||||
|
||||
kruiseGame:
|
||||
fullname: kruise-game-controller-manager
|
||||
healthBindPort: "8082"
|
||||
webhook:
|
||||
serviceName: kruise-game-webhook-service
|
||||
port: 443
|
||||
targetPort: 9876
|
||||
failurePolicy: Fail
|
||||
apiServerQps: 5
|
||||
apiServerQpsBurst: 10
|
||||
gameserverWorkers: 10
|
||||
gameserversetWorkers: 10
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
repository: openkruise/kruise-game-manager
|
||||
tag: v1.0.0
|
||||
pullPolicy: Always
|
||||
# Overrides the image tag whose default is the chart appVersion.
|
||||
|
||||
serviceAccount:
|
||||
# Annotations to add to the service account
|
||||
annotations: {}
|
||||
|
||||
service:
|
||||
port: 8443
|
||||
|
||||
resources:
|
||||
limits:
|
||||
cpu: 500m
|
||||
memory: 1024Mi
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 64Mi
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
prometheus:
|
||||
enabled: false
|
||||
monitorService:
|
||||
port: 8080
|
||||
scale:
|
||||
service:
|
||||
port: 6000
|
||||
targetPort: 6000
|
||||
|
||||
network:
|
||||
totalWaitTime: 60
|
||||
probeIntervalTime: 5
|
||||
|
||||
cloudProvider:
|
||||
installCRD: true
|
||||
|
||||
indexOffsetScheduler:
|
||||
enabled: false
|
||||
weight: 100
|
||||
|
||||
# Kubernetes cluster domain
|
||||
clusterDomain: cluster.local
|
||||
|
||||
certificates:
|
||||
autoGenerated: true
|
||||
secretName: kruise-game-certs
|
||||
mountPath: /tmp/webhook-certs/
|
||||
certManager:
|
||||
enabled: false
|
||||
duration: 8760h0m0s # 1 year
|
||||
renewBefore: 5840h0m0s # 8 months
|
||||
generateCA: true
|
||||
caSecretName: "kruise-game-ca"
|
||||
# -- Reference to custom Issuer. If issuer.generate is false, then issuer.group, issuer.kind and issuer.name are required
|
||||
issuer:
|
||||
generate: true
|
||||
name: kruise-ca
|
||||
kind: ClusterIssuer
|
||||
group: cert-manager.io
|
||||
Loading…
Reference in New Issue