初始化3.0.0版本

This commit is contained in:
zengqiao
2022-08-18 17:04:05 +08:00
parent 462303fca0
commit 51832385b1
2446 changed files with 93177 additions and 127211 deletions

View File

@@ -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/

View File

@@ -0,0 +1,9 @@
apiVersion: v2
name: ksmysql
description: MySql for KnowStreaming
type: application
version: 0.1.0
appVersion: "5.7.38-1"

View File

@@ -0,0 +1 @@
knowstreaming-mysql

View File

@@ -0,0 +1,55 @@
{{/*
Expand the name of the chart.
*/}}
{{- define "ksmysql.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 "ksmysql.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 "ksmysql.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "ksmysql.labels" -}}
helm.sh/chart: {{ include "ksmysql.chart" . }}
{{ include "ksmysql.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "ksmysql.selectorLabels" -}}
app.kubernetes.io/name: {{ include "ksmysql.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}

View File

@@ -0,0 +1,29 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "ksmysql.fullname" . }}
metadata:
name: {{ include "ksmysql.fullname" . }}
labels:
app: {{ template "ksmysql.name" . }}
chart: {{ template "ksmysql.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
component: server
data:
my.cnf: |
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
skip-host-cache
skip-name-resolve
datadir=/data/mysql
socket=/var/lib/mysql/mysql.sock
secure-file-priv=/var/lib/mysql-files
character-set-server=utf8
user=mysql
symbolic-links=0
pid-file=/var/run/mysqld/mysqld.pid
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

View File

@@ -0,0 +1,10 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ include "ksmysql.fullname" . }}
labels:
{{- include "ksmysql.labels" . | nindent 4 }}
stringData:
rootUser: {{ .Values.mysql.username }}
rootHost: '%'
rootPassword: {{ .Values.mysql.password }}

View File

@@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: {{ .Values.service.name }}
labels:
{{- include "ksmysql.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
protocol: TCP
name: mysql
selector:
{{- include "ksmysql.selectorLabels" . | nindent 4 }}

View File

@@ -0,0 +1,73 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ include "ksmysql.fullname" . }}
labels:
app: {{ template "ksmysql.name" . }}
tier: {{ template "ksmysql.name" . }}
chart: {{ template "ksmysql.name" . }}
release: {{ .Release.Name | quote }}
{{- include "ksmysql.labels" . | nindent 4 }}
spec:
serviceName: "ksmysql"
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "ksmysql.selectorLabels" . | nindent 6 }}
template:
metadata:
labels:
release: {{ .Release.Name | quote }}
{{- include "ksmysql.selectorLabels" . | nindent 8 }}
spec:
containers:
- image: knowstreaming/knowstreaming-mysql:latest
name: {{ .Chart.Name }}
env:
- name: MYSQL_DATABASE
value: {{ .Values.mysql.dbname }}
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
key: rootPassword
name: {{ include "ksmysql.fullname" . }}
- name: MYSQL_ROOT_HOST
valueFrom:
secretKeyRef:
key: rootHost
name: {{ include "ksmysql.fullname" . }}
- name: TZ
value: Asia/Shanghai
resources:
{{- toYaml .Values.resources | nindent 12 }}
ports:
- containerPort: 3306
name: mysql
volumeMounts:
- name: data
mountPath: /data
- name: configmap
mountPath: /etc/my.cnf
subPath: my.cnf
volumes:
- name: configmap
configMap:
name: {{ include "ksmysql.fullname" . }}
{{- if .Values.persistence.enabled }}
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes:
- {{ .Values.persistence.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.size | quote }}
{{- if .Values.persistence.storageClass }}
{{- if (eq "-" .Values.persistence.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: "{{ .Values.persistence.storageClass }}"
{{- end }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,30 @@
# Default values for k11gMysql.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
mysql:
dbname: k11g
username: root
password: "admin2022_"
replicaCount: 1
resources:
limits:
cpu: "1000m"
memory: "2Gi"
requests:
cpu: "1000m"
memory: "2Gi"
service:
name: k11gmysql-server
type: ClusterIP
port: 3306
persistence:
enabled: true
##
# storageClass: "-"
accessMode: ReadWriteOnce
size: 30Gi