Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
tke-eos
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
QA
tke-eos
Commits
8ce834c6
Commit
8ce834c6
authored
Oct 28, 2019
by
智勇
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'monitor' into 'master'
Monitor See merge request QA/tke-eos!48
parents
b0801338
d4465779
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
530 additions
and
0 deletions
+530
-0
grafana-ingress.yaml
yamls/monitor/grafana-ingress.yaml
+15
-0
grafana-svc.yaml
yamls/monitor/grafana-svc.yaml
+16
-0
grafana.yaml
yamls/monitor/grafana.yaml
+57
-0
kube-state-metrics-dep.yaml
yamls/monitor/kube-state-metrics-dep.yaml
+57
-0
kube-state-metrics-rbac.yaml
yamls/monitor/kube-state-metrics-rbac.yaml
+96
-0
kube-state-metrics-svc.yaml
yamls/monitor/kube-state-metrics-svc.yaml
+21
-0
prometheus-config-configmap.yaml
yamls/monitor/prometheus-config-configmap.yaml
+156
-0
prometheus-dep.yaml
yamls/monitor/prometheus-dep.yaml
+48
-0
prometheus-pvc.yaml
yamls/monitor/prometheus-pvc.yaml
+12
-0
prometheus-rbac.yaml
yamls/monitor/prometheus-rbac.yaml
+39
-0
prometheus-svc.yaml
yamls/monitor/prometheus-svc.yaml
+13
-0
No files found.
yamls/monitor/grafana-ingress.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
extensions/v1beta1
kind
:
Ingress
metadata
:
name
:
monitoring-grafana
namespace
:
monitor
annotations
:
kubernetes.io/ingress.class
:
'
traefik'
spec
:
rules
:
-
host
:
monitor.liangkebang.net
http
:
paths
:
-
backend
:
serviceName
:
monitoring-grafana
servicePort
:
3000
\ No newline at end of file
yamls/monitor/grafana-svc.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
v1
kind
:
Service
metadata
:
labels
:
# For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons)
# If you are NOT using this as an addon, you should comment out this line.
kubernetes.io/cluster-service
:
'
true'
kubernetes.io/name
:
monitoring-grafana
name
:
monitoring-grafana
namespace
:
monitor
spec
:
ports
:
-
port
:
80
targetPort
:
3000
selector
:
k8s-app
:
grafana
\ No newline at end of file
yamls/monitor/grafana.yaml
0 → 100644
View file @
8ce834c6
#可视化
apiVersion
:
extensions/v1beta1
kind
:
Deployment
metadata
:
name
:
monitoring-grafana
namespace
:
monitor
spec
:
replicas
:
1
selector
:
matchLabels
:
task
:
monitoring
k8s-app
:
grafana
template
:
metadata
:
labels
:
task
:
monitoring
k8s-app
:
grafana
spec
:
containers
:
-
name
:
grafana
image
:
ccr.ccs.tencentyun.com/test1245/grafana:latest
ports
:
-
containerPort
:
3000
protocol
:
TCP
volumeMounts
:
-
mountPath
:
/etc/ssl/certs
name
:
ca-certificates
readOnly
:
true
-
mountPath
:
/var
name
:
grafana-storage
env
:
-
name
:
INFLUXDB_HOST
value
:
monitoring-influxdb
-
name
:
GF_SERVER_HTTP_PORT
value
:
"
3000"
# The following env variables are required to make Grafana accessible via
# the kubernetes api-server proxy. On production clusters, we recommend
# removing these env variables, setup auth for grafana, and expose the grafana
# service using a LoadBalancer or a public IP.
-
name
:
GF_AUTH_BASIC_ENABLED
value
:
"
false"
-
name
:
GF_AUTH_ANONYMOUS_ENABLED
value
:
"
true"
-
name
:
GF_AUTH_ANONYMOUS_ORG_ROLE
value
:
Admin
-
name
:
GF_SERVER_ROOT_URL
# If you're only using the API Server proxy, set this value instead:
# value: /api/v1/namespaces/kube-system/services/monitoring-grafana/proxy
value
:
/
volumes
:
-
name
:
ca-certificates
hostPath
:
path
:
/etc/ssl/certs
-
name
:
grafana-storage
emptyDir
:
{}
yamls/monitor/kube-state-metrics-dep.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
apps/v1beta2
kind
:
Deployment
metadata
:
name
:
kube-state-metrics
namespace
:
monitor
spec
:
selector
:
matchLabels
:
k8s-app
:
kube-state-metrics
replicas
:
1
template
:
metadata
:
labels
:
k8s-app
:
kube-state-metrics
spec
:
serviceAccountName
:
kube-state-metrics
containers
:
-
name
:
kube-state-metrics
image
:
xianyuluo/kube-state-metrics:v1.3.1
ports
:
-
name
:
http-metrics
containerPort
:
8080
-
name
:
telemetry
containerPort
:
8081
readinessProbe
:
httpGet
:
path
:
/healthz
port
:
8080
initialDelaySeconds
:
5
timeoutSeconds
:
5
-
name
:
addon-resizer
image
:
xianyuluo/addon-resizer:1.7
resources
:
limits
:
cpu
:
100m
memory
:
30Mi
requests
:
cpu
:
100m
memory
:
30Mi
env
:
-
name
:
MY_POD_NAME
valueFrom
:
fieldRef
:
fieldPath
:
metadata.name
-
name
:
MY_POD_NAMESPACE
valueFrom
:
fieldRef
:
fieldPath
:
metadata.namespace
command
:
-
/pod_nanny
-
--container=kube-state-metrics
-
--cpu=100m
-
--extra-cpu=1m
-
--memory=100Mi
-
--extra-memory=2Mi
-
--threshold=5
-
--deployment=kube-state-metrics
\ No newline at end of file
yamls/monitor/kube-state-metrics-rbac.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
v1
kind
:
ServiceAccount
metadata
:
name
:
kube-state-metrics
namespace
:
monitor
---
apiVersion
:
rbac.authorization.k8s.io/v1
# kubernetes versions before 1.8.0 should use rbac.authorization.k8s.io/v1beta1
kind
:
Role
metadata
:
namespace
:
monitor
name
:
kube-state-metrics-resizer
rules
:
-
apiGroups
:
[
"
"
]
resources
:
-
pods
verbs
:
[
"
get"
]
-
apiGroups
:
[
"
extensions"
]
resources
:
-
deployments
resourceNames
:
[
"
kube-state-metrics"
]
verbs
:
[
"
get"
,
"
update"
]
---
apiVersion
:
rbac.authorization.k8s.io/v1
# kubernetes versions before 1.8.0 should use rbac.authorization.k8s.io/v1beta1
kind
:
ClusterRole
metadata
:
name
:
kube-state-metrics
rules
:
-
apiGroups
:
[
"
"
]
resources
:
-
configmaps
-
secrets
-
nodes
-
pods
-
services
-
resourcequotas
-
replicationcontrollers
-
limitranges
-
persistentvolumeclaims
-
persistentvolumes
-
namespaces
-
endpoints
verbs
:
[
"
list"
,
"
watch"
]
-
apiGroups
:
[
"
extensions"
]
resources
:
-
daemonsets
-
deployments
-
replicasets
verbs
:
[
"
list"
,
"
watch"
]
-
apiGroups
:
[
"
apps"
]
resources
:
-
statefulsets
verbs
:
[
"
list"
,
"
watch"
]
-
apiGroups
:
[
"
batch"
]
resources
:
-
cronjobs
-
jobs
verbs
:
[
"
list"
,
"
watch"
]
-
apiGroups
:
[
"
autoscaling"
]
resources
:
-
horizontalpodautoscalers
verbs
:
[
"
list"
,
"
watch"
]
---
apiVersion
:
rbac.authorization.k8s.io/v1
# kubernetes versions before 1.8.0 should use rbac.authorization.k8s.io/v1beta1
kind
:
RoleBinding
metadata
:
name
:
kube-state-metrics
namespace
:
monitor
roleRef
:
apiGroup
:
rbac.authorization.k8s.io
kind
:
Role
name
:
kube-state-metrics-resizer
subjects
:
-
kind
:
ServiceAccount
name
:
kube-state-metrics
namespace
:
monitor
---
apiVersion
:
rbac.authorization.k8s.io/v1
# kubernetes versions before 1.8.0 should use rbac.authorization.k8s.io/v1beta1
kind
:
ClusterRoleBinding
metadata
:
name
:
kube-state-metrics
roleRef
:
apiGroup
:
rbac.authorization.k8s.io
kind
:
ClusterRole
name
:
kube-state-metrics
subjects
:
-
kind
:
ServiceAccount
name
:
kube-state-metrics
namespace
:
monitor
\ No newline at end of file
yamls/monitor/kube-state-metrics-svc.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
v1
kind
:
Service
metadata
:
name
:
kube-state-metrics
namespace
:
monitor
labels
:
k8s-app
:
kube-state-metrics
annotations
:
prometheus.io/scrape
:
'
true'
spec
:
ports
:
-
name
:
http-metrics
port
:
8080
targetPort
:
http-metrics
protocol
:
TCP
-
name
:
telemetry
port
:
8081
targetPort
:
telemetry
protocol
:
TCP
selector
:
k8s-app
:
kube-state-metrics
\ No newline at end of file
yamls/monitor/prometheus-config-configmap.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
v1
kind
:
ConfigMap
metadata
:
name
:
prometheus-config
namespace
:
monitor
data
:
prometheus.yml
:
|
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: 'kubernetes-apiservers'
kubernetes_sd_configs:
- role: endpoints
scheme: https
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
action: keep
regex: default;kubernetes;https
- job_name: 'kubernetes-nodes'
kubernetes_sd_configs:
- role: node
scheme: https
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- target_label: __address__
replacement: kubernetes.default.svc:443
- source_labels: [__meta_kubernetes_node_name]
regex: (.+)
target_label: __metrics_path__
replacement: /api/v1/nodes/${1}/proxy/metrics
- job_name: 'kubernetes-cadvisor'
kubernetes_sd_configs:
- role: node
scheme: https
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- target_label: __address__
replacement: kubernetes.default.svc:443
- source_labels: [__meta_kubernetes_node_name]
regex: (.+)
target_label: __metrics_path__
replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
- job_name: 'kubernetes-service-endpoints'
kubernetes_sd_configs:
- role: endpoints
relabel_configs:
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
action: keep
regex: true
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
action: replace
target_label: __scheme__
regex: (https?)
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
action: replace
target_label: __metrics_path__
regex: (.+)
- source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
action: replace
target_label: __address__
regex: ([^:]+)(?::\d+)?;(\d+)
replacement: $1:$2
- action: labelmap
regex: __meta_kubernetes_service_label_(.+)
- source_labels: [__meta_kubernetes_namespace]
action: replace
target_label: kubernetes_namespace
- source_labels: [__meta_kubernetes_service_name]
action: replace
target_label: kubernetes_name
- job_name: 'kubernetes-services'
kubernetes_sd_configs:
- role: service
metrics_path: /probe
params:
module: [http_2xx]
relabel_configs:
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_probe]
action: keep
regex: true
- source_labels: [__address__]
target_label: __param_target
- target_label: __address__
replacement: blackbox-exporter.example.com:9115
- source_labels: [__param_target]
target_label: instance
- action: labelmap
regex: __meta_kubernetes_service_label_(.+)
- source_labels: [__meta_kubernetes_namespace]
target_label: kubernetes_namespace
- source_labels: [__meta_kubernetes_service_name]
target_label: kubernetes_name
- job_name: 'kubernetes-ingresses'
kubernetes_sd_configs:
- role: ingress
relabel_configs:
- source_labels: [__meta_kubernetes_ingress_annotation_prometheus_io_probe]
action: keep
regex: true
- source_labels: [__meta_kubernetes_ingress_scheme,__address__,__meta_kubernetes_ingress_path]
regex: (.+);(.+);(.+)
replacement: ${1}://${2}${3}
target_label: __param_target
- target_label: __address__
replacement: blackbox-exporter.example.com:9115
- source_labels: [__param_target]
target_label: instance
- action: labelmap
regex: __meta_kubernetes_ingress_label_(.+)
- source_labels: [__meta_kubernetes_namespace]
target_label: kubernetes_namespace
- source_labels: [__meta_kubernetes_ingress_name]
target_label: kubernetes_name
- job_name: 'kubernetes-pods'
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
action: keep
regex: true
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
action: replace
target_label: __metrics_path__
regex: (.+)
- source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
action: replace
regex: ([^:]+)(?::\d+)?;(\d+)
replacement: $1:$2
target_label: __address__
- action: labelmap
regex: __meta_kubernetes_pod_label_(.+)
- source_labels: [__meta_kubernetes_namespace]
action: replace
target_label: kubernetes_namespace
- source_labels: [__meta_kubernetes_pod_name]
action: replace
target_label: kubernetes_pod_name
\ No newline at end of file
yamls/monitor/prometheus-dep.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
apps/v1beta2
kind
:
Deployment
metadata
:
name
:
prometheus-dep
namespace
:
monitor
spec
:
replicas
:
1
selector
:
matchLabels
:
app
:
prometheus-dep
template
:
metadata
:
labels
:
app
:
prometheus-dep
spec
:
containers
:
-
image
:
prom/prometheus:v2.3.2
name
:
prometheus
command
:
-
"
/bin/prometheus"
args
:
-
"
--config.file=/etc/prometheus/prometheus.yml"
-
"
--storage.tsdb.path=/prometheus"
-
"
--storage.tsdb.retention=1d"
ports
:
-
containerPort
:
9090
protocol
:
TCP
volumeMounts
:
-
mountPath
:
"
/prometheus"
name
:
data
-
mountPath
:
"
/etc/prometheus"
name
:
config-volume
resources
:
requests
:
cpu
:
100m
memory
:
100Mi
limits
:
cpu
:
500m
memory
:
2500Mi
serviceAccountName
:
prometheus
imagePullSecrets
:
-
name
:
regsecret
volumes
:
-
name
:
data
emptyDir
:
{}
-
name
:
config-volume
configMap
:
name
:
prometheus-config
\ No newline at end of file
yamls/monitor/prometheus-pvc.yaml
0 → 100644
View file @
8ce834c6
kind
:
PersistentVolumeClaim
apiVersion
:
v1
metadata
:
name
:
prometheus
namespace
:
kebe
spec
:
storageClassName
:
cbs-3
accessModes
:
-
ReadWriteOnce
resources
:
requests
:
storage
:
20Gi
\ No newline at end of file
yamls/monitor/prometheus-rbac.yaml
0 → 100644
View file @
8ce834c6
apiVersion
:
rbac.authorization.k8s.io/v1beta1
kind
:
ClusterRole
metadata
:
name
:
prometheus
rules
:
-
apiGroups
:
[
"
"
]
resources
:
-
nodes
-
nodes/proxy
-
services
-
endpoints
-
pods
verbs
:
[
"
get"
,
"
list"
,
"
watch"
]
-
apiGroups
:
-
extensions
resources
:
-
ingresses
verbs
:
[
"
get"
,
"
list"
,
"
watch"
]
-
nonResourceURLs
:
[
"
/metrics"
]
verbs
:
[
"
get"
]
---
apiVersion
:
v1
kind
:
ServiceAccount
metadata
:
name
:
prometheus
namespace
:
monitor
---
apiVersion
:
rbac.authorization.k8s.io/v1beta1
kind
:
ClusterRoleBinding
metadata
:
name
:
prometheus
roleRef
:
apiGroup
:
rbac.authorization.k8s.io
kind
:
ClusterRole
name
:
prometheus
subjects
:
-
kind
:
ServiceAccount
name
:
prometheus
namespace
:
monitor
\ No newline at end of file
yamls/monitor/prometheus-svc.yaml
0 → 100644
View file @
8ce834c6
kind
:
Service
apiVersion
:
v1
metadata
:
name
:
prometheus-svc
namespace
:
monitor
spec
:
type
:
NodePort
ports
:
-
port
:
9090
targetPort
:
9090
nodePort
:
30002
selector
:
app
:
prometheus-dep
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment