This is an automated email from the ASF dual-hosted git repository.

innerpeacez pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking-kubernetes.git

commit a2f59da8d0e1753a42a562de4ac70b64cafdd052
Author: innerpeacez <37059529+innerpea...@users.noreply.github.com>
AuthorDate: Wed May 22 23:13:23 2019 +0800

    helm charts (#8)
    
    * deploy skywalking to kubernetes using helm charts
    
    * Configmap automatically get namespace by Release
    
    * fix bug : A volume can only be mounted once
    
    * Parameterize terminationGracePeriodSeconds config.
    
    * one value is configured for elasticsearch host
    
    * oap service type
    
    * resources (cpu memory) "toYaml"
---
 helm/charts/6/6.0.0-GA/skywalking/.helmignore      |  21 ++
 helm/charts/6/6.0.0-GA/skywalking/Chart.yaml       |   9 +
 .../6/6.0.0-GA/skywalking/templates/NOTES.txt      |  19 ++
 .../6/6.0.0-GA/skywalking/templates/_helpers.tpl   |  32 ++
 .../elasticsearch/elasticsearch-service.yml        |  31 ++
 .../elasticsearch/elasticsearch-statefulset.yml    | 122 +++++++
 .../skywalking/templates/oap/oap-config.yml        | 374 +++++++++++++++++++++
 .../skywalking/templates/oap/oap-deployment.yml    |  59 ++++
 .../skywalking/templates/oap/oap-role.yaml         |  24 ++
 .../skywalking/templates/oap/oap-rolebinding.yaml  |  27 ++
 .../skywalking/templates/oap/oap-service.yml       |  31 ++
 .../templates/oap/oap-serviceaccount.yml           |  23 ++
 .../skywalking/templates/ui/ui-deployment.yml      |  45 +++
 .../skywalking/templates/ui/ui-service.yml         |  30 ++
 helm/charts/6/6.0.0-GA/skywalking/values.yaml      | 111 ++++++
 15 files changed, 958 insertions(+)

diff --git a/helm/charts/6/6.0.0-GA/skywalking/.helmignore 
b/helm/charts/6/6.0.0-GA/skywalking/.helmignore
new file mode 100644
index 0000000..f0c1319
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/.helmignore
@@ -0,0 +1,21 @@
+# 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
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/helm/charts/6/6.0.0-GA/skywalking/Chart.yaml 
b/helm/charts/6/6.0.0-GA/skywalking/Chart.yaml
new file mode 100644
index 0000000..2861d97
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/Chart.yaml
@@ -0,0 +1,9 @@
+name: skywalking
+apiVersion: v1
+appVersion: 6.0.0-GA
+description: Apache SkyWalking APM System
+version: 0.1.0
+
+maintainers:
+- name: innerpeacez
+  email: 10146...@qq.com
\ No newline at end of file
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/NOTES.txt 
b/helm/charts/6/6.0.0-GA/skywalking/templates/NOTES.txt
new file mode 100644
index 0000000..e49295c
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/NOTES.txt
@@ -0,0 +1,19 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ui.ingress.enabled }}
+{{- range .Values.ui.ingress.hosts }}
+  http{{ if $.Values.ui.ingress.tls }}s{{ end }}://{{ . }}{{ 
$.Values.ui.ingress.path }}
+{{- end }}
+{{- else if contains "NodePort" .Values.ui.service.type }}
+  export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o 
jsonpath="{.spec.ports[0].nodePort}" services {{ include "skywalking.fullname" 
. }})
+  export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o 
jsonpath="{.items[0].status.addresses[0].address}")
+  echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.ui.service.type }}
+     NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+           You can watch the status of by running 'kubectl get svc -w {{ 
include "skywalking.fullname" . }}'
+  export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ 
include "skywalking.fullname" . }} -o 
jsonpath='{.status.loadBalancer.ingress[0].ip}')
+  echo http://$SERVICE_IP:{{ .Values.service.port }}
+{{- else if contains "ClusterIP" .Values.ui.service.type }}
+  export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l 
"app={{ include "skywalking.name" . }},release={{ .Release.Name }}" -o 
jsonpath="{.items[0].metadata.name}")
+  echo "Visit http://127.0.0.1:8080 to use your application"
+  kubectl port-forward $POD_NAME 8080:80
+{{- end }}
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/_helpers.tpl 
b/helm/charts/6/6.0.0-GA/skywalking/templates/_helpers.tpl
new file mode 100644
index 0000000..817da6d
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/_helpers.tpl
@@ -0,0 +1,32 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+Expand the name of the chart.
+*/}}
+{{- define "skywalking.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 "skywalking.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 "skywalking.chart" -}}
+{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | 
trimSuffix "-" -}}
+{{- end -}}
diff --git 
a/helm/charts/6/6.0.0-GA/skywalking/templates/elasticsearch/elasticsearch-service.yml
 
b/helm/charts/6/6.0.0-GA/skywalking/templates/elasticsearch/elasticsearch-service.yml
new file mode 100644
index 0000000..78b2719
--- /dev/null
+++ 
b/helm/charts/6/6.0.0-GA/skywalking/templates/elasticsearch/elasticsearch-service.yml
@@ -0,0 +1,31 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ template "skywalking.fullname" . }}-elasticsearch
+  labels:
+    service: {{ .Values.elasticsearch.name }}
+spec:
+  clusterIP: None
+  ports:
+  - port: {{ .Values.elasticsearch.ports.http }}
+    name: serving
+  - port: {{ .Values.elasticsearch.ports.tcp }}
+    name: node-to-node
+  selector:
+    service: {{ .Values.elasticsearch.name }}
\ No newline at end of file
diff --git 
a/helm/charts/6/6.0.0-GA/skywalking/templates/elasticsearch/elasticsearch-statefulset.yml
 
b/helm/charts/6/6.0.0-GA/skywalking/templates/elasticsearch/elasticsearch-statefulset.yml
new file mode 100644
index 0000000..e2919d4
--- /dev/null
+++ 
b/helm/charts/6/6.0.0-GA/skywalking/templates/elasticsearch/elasticsearch-statefulset.yml
@@ -0,0 +1,122 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+  name: {{ template "skywalking.fullname" . }}-elasticsearch
+  labels:
+    service: {{ .Values.elasticsearch.name }}
+spec:
+  serviceName: {{ .Values.elasticsearch.name }}
+  # NOTE: This is number of nodes that we want to run
+  # you may update this
+  replicas: {{ .Values.elasticsearch.replicas }}
+  selector:
+    matchLabels:
+      service: {{ .Values.elasticsearch.name }}
+  template:
+    metadata:
+      labels:
+        service: {{ .Values.elasticsearch.name }}
+    spec:
+      terminationGracePeriodSeconds: {{ 
.Values.elasticsearch.terminationGracePeriodSeconds }}
+      initContainers:
+      # NOTE:
+      # This is to fix the permission on the volume
+      # By default elasticsearch container is not run as
+      # non root user.
+      # 
https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html#_notes_for_production_use_and_defaults
+      - name: fix-the-volume-permission
+        image: busybox
+        command:
+        - sh
+        - -c
+        - chown -R 1000:1000 /usr/share/elasticsearch/data
+        securityContext:
+          privileged: true
+        volumeMounts:
+        - name: data
+          mountPath: /usr/share/elasticsearch/data
+      # NOTE:
+      # To increase the default vm.max_map_count to 262144
+      # 
https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html#docker-cli-run-prod-mode
+      - name: increase-the-vm-max-map-count
+        image: busybox
+        command:
+        - sysctl
+        - -w
+        - vm.max_map_count=262144
+        securityContext:
+          privileged: true
+      # To increase the ulimit
+      # 
https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html#_notes_for_production_use_and_defaults
+      - name: increase-the-ulimit
+        image: busybox
+        command:
+        - sh
+        - -c
+        - ulimit -n 65536
+        securityContext:
+          privileged: true
+      containers:
+      - name: elasticsearch
+        image: {{ .Values.elasticsearch.image.repository }}:{{ 
.Values.elasticsearch.image.tag }}
+        ports:
+        - containerPort: {{ .Values.elasticsearch.ports.http }}
+          name: http
+        - containerPort: {{ .Values.elasticsearch.ports.tcp }}
+          name: tcp
+        # NOTE: you can increase this resources
+{{- if .Values.elasticsearch.resources }}
+        resources:
+{{ toYaml .Values.elasticsearch.resources | indent 10 }}
+{{- end }}
+        env:
+          # NOTE: the cluster name; update this
+          - name: cluster.name
+            value: elasticsearch-cluster
+          - name: node.name
+            valueFrom:
+              fieldRef:
+                fieldPath: metadata.name
+          # NOTE: This will tell the elasticsearch node where to connect to 
other nodes to form a cluster
+          - name: {{ .Values.elasticsearch.clusterHost }}
+            value: {{ .Values.elasticsearch.name }}:{{ 
.Values.elasticsearch.ports.tcp }}
+          # NOTE: You can increase the heap size
+          - name: ES_JAVA_OPTS
+            value: {{ .Values.elasticsearch.env.esJavaOpts }}
+        volumeMounts:
+        - name: data
+          mountPath: /usr/share/elasticsearch/data
+  {{- if .Values.elasticsearch.persistence.enabled }}
+  volumeClaimTemplates:
+  - metadata:
+      name: data
+    spec:
+      accessModes:
+      - {{ .Values.elasticsearch.persistence.accessMode }}
+    {{- if .Values.elasticsearch.persistence.storageClass }}
+    {{- if (eq "-" .Values.elasticsearch.persistence.storageClass) }}
+      storageClassName: ""
+    {{- else }}
+      storageClassName: "{{ .Values.elasticsearch.persistence.storageClass }}"
+    {{- end }}
+    {{- end }}
+      resources:
+        requests:
+          storage: "{{ .Values.elasticsearch.persistence.size }}"
+  {{- end -}}
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-config.yml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-config.yml
new file mode 100644
index 0000000..ea80c88
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-config.yml
@@ -0,0 +1,374 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+{{- $oapService := .Values.oap.name -}}
+{{- $namespace := .Release.Namespace -}}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ template "skywalking.fullname" . }}-oap-config
+data:
+  application.yml: |-
+    cluster:
+      kubernetes:
+        watchTimeoutSeconds: 60
+        labelSelector: app={{ $oapService }}
+        uidEnvName: SKYWALKING_COLLECTOR_UID
+        namespace: {{ $namespace }}
+    core:
+      default:
+        restHost: 0.0.0.0
+        restPort: 12800
+        restContextPath: /
+        gRPCHost: 0.0.0.0
+        gRPCPort: 11800
+        downsampling:
+        - Hour
+        - Day
+        - Month
+        recordDataTTL: 90 # Unit is minute
+        minuteMetricsDataTTL: 90 # Unit is minute
+        hourMetricsDataTTL: 36 # Unit is hour
+        dayMetricsDataTTL: 45 # Unit is day
+        monthMetricsDataTTL: 18 # Unit is month
+    storage:
+      elasticsearch:
+        clusterNodes: skywalking-elasticsearch:9200
+        indexShardsNumber: 2
+        indexReplicasNumber: 0
+        bulkActions: 2000 # Execute the bulk every 2000 requests
+        bulkSize: 20 # flush the bulk every 20mb
+        flushInterval: 10 # flush the bulk every 10 seconds whatever the 
number of requests
+        concurrentRequests: 2 # the number of concurrent requests
+    receiver-register:
+      default:
+    receiver-trace:
+      default:
+        bufferPath: /trace-buffer/  # Path to trace buffer files, suggest to 
use absolute path
+        bufferOffsetMaxFileSize: 100 # Unit is MB
+        bufferDataMaxFileSize: 500 # Unit is MB
+        bufferFileCleanWhenRestart: false
+    receiver-jvm:
+      default:
+    service-mesh:
+      default:
+        bufferPath: /mesh-buffer/  # Path to trace buffer files, suggest to 
use absolute path
+        bufferOffsetMaxFileSize: 100 # Unit is MB
+        bufferDataMaxFileSize: 500 # Unit is MB
+        bufferFileCleanWhenRestart: false
+    istio-telemetry:
+      default:
+    query:
+      graphql:
+        path: /graphql
+    alarm:
+      default:
+    telemetry:
+      prometheus:
+
+  log4j2.xml: |-
+    <Configuration status="INFO">
+        <Appenders>
+            <Console name="Console" target="SYSTEM_OUT">
+                <PatternLayout charset="UTF-8" pattern="%d - %c -%-4r [%t] 
%-5p %x - %m%n"/>
+            </Console>
+        </Appenders>
+        <Loggers>
+            <logger name="org.eclipse.jetty" level="INFO"/>
+            <logger name="org.apache.zookeeper" level="INFO"/>
+            <logger name="org.elasticsearch.common.network.IfConfig" 
level="INFO"/>
+            <logger name="io.grpc.netty" level="INFO"/>
+            <logger 
name="org.apache.skywalking.oap.server.receiver.istio.telemetry" level="DEBUG"/>
+            <Root level="INFO">
+                <AppenderRef ref="Console"/>
+            </Root>
+        </Loggers>
+    </Configuration>
+
+  alarm-settings.yml: |-
+    rules:
+      service_resp_time_rule:
+        indicator-name: service_resp_time
+        include-names:
+          - dubbox-provider
+          - dubbox-consumer
+        threshold: 1000
+        op: ">"
+        period: 10
+        count: 1
+    webhooks:
+
+  component-libraries.yml: |-
+    Tomcat:
+      id: 1
+      languages: Java
+    HttpClient:
+      id: 2
+      languages: Java,C#,Node.js
+    Dubbo:
+      id: 3
+      languages: Java
+    H2:
+      id: 4
+      languages: Java
+    Mysql:
+      id: 5
+      languages: Java,C#,Node.js
+    ORACLE:
+      id: 6
+      languages: Java
+    Redis:
+      id: 7
+      languages: Java,C#,Node.js
+    Motan:
+      id: 8
+      languages: Java
+    MongoDB:
+      id: 9
+      languages: Java,C#,Node.js
+    Resin:
+      id: 10
+      languages: Java
+    Feign:
+      id: 11
+      languages: Java
+    OKHttp:
+      id: 12
+      languages: Java
+    SpringRestTemplate:
+      id: 13
+      languages: Java
+    SpringMVC:
+      id: 14
+      languages: Java
+    Struts2:
+      id: 15
+      languages: Java
+    NutzMVC:
+      id: 16
+      languages: Java
+    NutzHttp:
+      id: 17
+      languages: Java
+    JettyClient:
+      id: 18
+      languages: Java
+    JettyServer:
+      id: 19
+      languages: Java
+    Memcached:
+      id: 20
+      languages: Java
+    ShardingJDBC:
+      id: 21
+      languages: Java
+    PostgreSQL:
+      id: 22
+      languages: Java,C#,Node.js
+    GRPC:
+      id: 23
+      languages: Java
+    ElasticJob:
+      id: 24
+      languages: Java
+    RocketMQ:
+      id: 25
+      languages: Java
+    httpasyncclient:
+      id: 26
+      languages: Java
+    Kafka:
+      id: 27
+      languages: Java
+    ServiceComb:
+      id: 28
+      languages: Java
+    Hystrix:
+      id: 29
+      languages: Java
+    Jedis:
+      id: 30
+      languages: Java
+    SQLite:
+      id: 31
+      languages: Java,C#
+    h2-jdbc-driver:
+      id: 32
+      languages: Java
+    mysql-connector-java:
+      id: 33
+      languages: Java
+    ojdbc:
+      id: 34
+      languages: Java
+    Spymemcached:
+      id: 35
+      languages: Java
+    Xmemcached:
+      id: 36
+      languages: Java
+    postgresql-jdbc-driver:
+      id: 37
+      languages: Java
+    rocketMQ-producer:
+      id: 38
+      languages: Java
+    rocketMQ-consumer:
+      id: 39
+      languages: Java
+    kafka-producer:
+      id: 40
+      languages: Java
+    kafka-consumer:
+      id: 41
+      languages: Java
+    mongodb-driver:
+      id: 42
+      languages: Java
+    SOFARPC:
+      id: 43
+      languages: Java
+    ActiveMQ:
+      id: 44
+      languages: Java
+    activemq-producer:
+      id: 45
+      languages: Java
+    activemq-consumer:
+      id: 46
+      languages: Java
+    Elasticsearch:
+      id: 47
+      languages: Java
+    transport-client:
+      id: 48
+      languages: Java
+    http:
+      id: 49
+      languages: Java,C#,Node.js
+    rpc:
+      id: 50
+      languages: Java,C#,Node.js
+    RabbitMQ:
+      id: 51
+      languages: Java
+    rabbitmq-producer:
+      id: 52
+      languages: Java
+    rabbitmq-consumer:
+      id: 53
+      languages: Java
+    Canal:
+      id: 54
+      languages: Java
+    Gson:
+      id: 55
+      languages: Java
+    Redisson:
+      id: 56
+      languages: Java
+    AspNetCore:
+      id: 3001
+      languages: C#
+    EntityFrameworkCore:
+      id: 3002
+      languages: C#
+    SqlClient:
+      id: 3003
+      languages: C#
+    CAP:
+      id: 3004
+      languages: C#
+    StackExchange.Redis:
+      id: 3005
+      languages: C#
+    SqlServer:
+      id: 3006
+      languages: C#
+    Npgsql:
+      id: 3007
+      languages: C#
+    MySqlConnector:
+      id: 3008
+      languages: C#
+    EntityFrameworkCore.InMemory:
+      id: 3009
+      languages: C#
+    EntityFrameworkCore.SqlServer:
+      id: 3010
+      languages: C#
+    EntityFrameworkCore.Sqlite:
+      id: 3011
+      languages: C#
+    Pomelo.EntityFrameworkCore.MySql:
+      id: 3012
+      languages: C#
+    Npgsql.EntityFrameworkCore.PostgreSQL:
+      id: 3013
+      languages: C#
+    InMemoryDatabase:
+      id: 3014
+      languages: C#
+    AspNet:
+      id: 3015
+      languages: C#
+
+    # NoeJS components
+    # [4000, 5000) for Node.js agent
+    HttpServer:
+      id: 4001
+      languages: Node.js
+    express:
+      id: 4002
+      languages: Node.js
+    Egg:
+      id: 4003
+      languages: Node.js
+    Koa:
+      id: 4004
+      languages: Node.js
+
+    # Component Server mapping defines the server display names of some 
components
+    # e.g.
+    # Jedis is a client library in Java for Redis server
+    Component-Server-Mappings:
+      mongodb-driver: MongoDB
+      rocketMQ-producer: RocketMQ
+      rocketMQ-consumer: RocketMQ
+      kafka-producer: Kafka
+      kafka-consumer: Kafka
+      activemq-producer: ActiveMQ
+      activemq-consumer: ActiveMQ
+      rabbitmq-producer: RabbitMQ
+      rabbitmq-consumer: RabbitMQ
+      postgresql-jdbc-driver: PostgreSQL
+      Xmemcached: Memcached
+      Spymemcached: Memcached
+      h2-jdbc-driver: H2
+      mysql-connector-java: Mysql
+      Jedis: Redis
+      StackExchange.Redis: Redis
+      Redisson: Redis
+      SqlClient: SqlServer
+      Npgsql: PostgreSQL
+      MySqlConnector: Mysql
+      EntityFrameworkCore.InMemory: InMemoryDatabase
+      EntityFrameworkCore.SqlServer: SqlServer
+      EntityFrameworkCore.Sqlite: SQLite
+      Pomelo.EntityFrameworkCore.MySql: Mysql
+      Npgsql.EntityFrameworkCore.PostgreSQL: PostgreSQL
+      transport-client: Elasticsearch
+
+
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-deployment.yml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-deployment.yml
new file mode 100644
index 0000000..2bfd271
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-deployment.yml
@@ -0,0 +1,59 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: {{ template "skywalking.fullname" . }}-oap
+  labels:
+    app: {{ .Values.oap.name }}
+spec:
+  replicas: {{ .Values.oap.replicas }}
+  selector:
+    matchLabels:
+      app: {{ .Values.oap.name }}
+  template:
+    metadata:
+      labels:
+        app: {{ .Values.oap.name }}
+    spec:
+      serviceAccountName: {{ .Values.oap.name }}
+      containers:
+      - name: {{ .Values.oap.name }}
+        image: {{ .Values.oap.image.repository }}:{{ .Values.oap.image.tag }}
+        ports:
+        - containerPort: {{ .Values.oap.ports.grpc }}
+          name: grpc
+        - containerPort: {{ .Values.oap.ports.rest }}
+          name: rest
+{{- if .Values.oap.resources }}
+        resources:
+{{ toYaml .Values.oap.resources | indent 10 }}
+{{- end }}
+        env:
+        - name: JAVA_OPTS
+          value: {{ .Values.oap.env.javaOpts }}
+        - name: SKYWALKING_COLLECTOR_UID
+          valueFrom:
+            fieldRef:
+              fieldPath: metadata.uid
+        volumeMounts:
+        - name: config
+          mountPath: /skywalking/config
+      volumes:
+      - name: config
+        configMap:
+          name: {{ template "skywalking.fullname" . }}-oap-config
\ No newline at end of file
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-role.yaml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-role.yaml
new file mode 100644
index 0000000..a348796
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-role.yaml
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+kind: Role
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+  name: {{ template "skywalking.fullname" . }}-oap
+rules:
+- apiGroups: [""]
+  resources: ["pods"]
+  verbs: ["get", "watch", "list"]
\ No newline at end of file
diff --git 
a/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-rolebinding.yaml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-rolebinding.yaml
new file mode 100644
index 0000000..53ce80a
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-rolebinding.yaml
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  name: {{ template "skywalking.fullname" . }}-oap
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: Role
+  name: {{ template "skywalking.fullname" . }}-oap
+subjects:
+- kind: ServiceAccount
+  name: {{ template "skywalking.fullname" . }}-oap
\ No newline at end of file
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-service.yml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-service.yml
new file mode 100644
index 0000000..192ea6c
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-service.yml
@@ -0,0 +1,31 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ template "skywalking.fullname" . }}-oap
+  labels:
+    service: {{ .Values.oap.name }}
+spec:
+  type: {{ .Values.oap.service.type }}
+  ports:
+  - port: {{ .Values.oap.ports.rest }}
+    name: rest
+  - port: {{ .Values.oap.ports.grpc }}
+    name: grpc
+  selector:
+    app: {{ .Values.oap.name }}
\ No newline at end of file
diff --git 
a/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-serviceaccount.yml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-serviceaccount.yml
new file mode 100644
index 0000000..addabf9
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/oap/oap-serviceaccount.yml
@@ -0,0 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: {{ template "skywalking.fullname" . }}-oap
+
+
+
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/ui/ui-deployment.yml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/ui/ui-deployment.yml
new file mode 100644
index 0000000..b11f9fc
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/ui/ui-deployment.yml
@@ -0,0 +1,45 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: {{ template "skywalking.fullname" . }}-ui
+  labels:
+    app: {{ .Values.ui.name }}
+spec:
+  replicas: {{ .Values.ui.replicas }}
+  selector:
+    matchLabels:
+      app: {{ .Values.ui.name }}
+  template:
+    metadata:
+      labels:
+        app: {{ .Values.ui.name }}
+    spec:
+      containers:
+      - name: {{ .Values.ui.name }}
+        image: {{ .Values.ui.image.repository }}:{{ .Values.ui.image.tag }}
+        ports:
+        - containerPort: {{ .Values.ui.ports.page }}
+          name: page
+{{- if .Values.ui.resources }}
+        resources:
+{{ toYaml .Values.ui.resources | indent 10 }}
+{{- end }}
+        env:
+        - name: collector.ribbon.listOfServers
+          value: {{ .Values.oap.name }}:{{ .Values.oap.ports.rest }}
diff --git a/helm/charts/6/6.0.0-GA/skywalking/templates/ui/ui-service.yml 
b/helm/charts/6/6.0.0-GA/skywalking/templates/ui/ui-service.yml
new file mode 100644
index 0000000..ac5c26a
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/templates/ui/ui-service.yml
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ template "skywalking.fullname" . }}-ui
+  labels:
+    service: {{ .Values.ui.name }}
+spec:
+  ports:
+  - port: {{ .Values.ui.ports.page }}
+    name: page
+    targetPort: page
+  type: {{ .Values.ui.service.type }}
+  selector:
+    app: {{ .Values.ui.name }}
\ No newline at end of file
diff --git a/helm/charts/6/6.0.0-GA/skywalking/values.yaml 
b/helm/charts/6/6.0.0-GA/skywalking/values.yaml
new file mode 100644
index 0000000..27604d9
--- /dev/null
+++ b/helm/charts/6/6.0.0-GA/skywalking/values.yaml
@@ -0,0 +1,111 @@
+# Default values for skywalking.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+
+elasticsearch:
+  name: skywalking-elasticsearch
+  replicas: 3
+  image:
+    repository: docker.elastic.co/elasticsearch/elasticsearch-oss
+    tag: 6.3.2
+    pullPolicy: IfNotPresent
+  ports:
+    http: 9200
+    tcp: 9300
+  clusterHost: discovery.zen.ping.unicast.hosts
+  env:
+    esJavaOpts: "-Xms4g -Xmx4g"
+  resources:
+    # 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: 16Gi
+    requests:
+     # cpu: 100m
+     memory: 8Gi
+  persistence:
+    enabled: true
+    ## data Persistent Volume Storage Class
+    ## If defined, storageClassName: <storageClass>
+    ## If set to "-", storageClassName: "", which disables dynamic provisioning
+    ## If undefined (the default) or set to null, no storageClassName spec is
+    ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
+    ##   GKE, AWS & OpenStack)
+    ##
+    storageClass: fast
+    ##
+    ## If you want to reuse an existing claim, you can pass the name of the 
PVC using
+    ## the existingClaim variable
+    # existingClaim: your-claim
+    accessMode: ReadWriteOnce
+    size: 30Gi
+  terminationGracePeriodSeconds: 300
+
+oap:
+  name: skywalking-oap
+  image:
+    repository: skywalking/oap
+    tag: 6.0.0-GA
+    pullPolicy: IfNotPresent
+  ports:
+    grpc: 11800
+    rest: 12800
+  replicas: 3
+  service:
+    type: ClusterIP
+  env:
+    javaOpts: "-Xms256M -Xmx512M"
+  resources:
+    # 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: 2Gi
+    requests:
+     # cpu: 100m
+     memory: 1Gi
+
+ui:
+  name: skywalking-ui
+  replicas: 1
+  image:
+    repository: skywalking/ui
+    tag: 6.0.0-GA
+    pullPolicy: IfNotPresent
+  ports:
+    page: 8080
+  ingress:
+    enabled: false
+    annotations: {}
+      # kubernetes.io/ingress.class: nginx
+      # kubernetes.io/tls-acme: "true"
+    path: /
+    hosts:
+      - chart-example.local
+    tls: []
+    #  - secretName: chart-example-tls
+    #    hosts:
+    #      - chart-example.local
+  service:
+    type: NodePort
+    port: 80
+  resources:
+    # 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: 2Gi
+    requests:
+     # cpu: 100m
+     memory: 1Gi
+
+
+nameOverride: ""
+fullnameOverride: ""

Reply via email to