Initial release
This commit is contained in:
commit
9427cb9e05
12 changed files with 327 additions and 0 deletions
1
README.md
Normal file
1
README.md
Normal file
|
|
@ -0,0 +1 @@
|
|||
This repo is deploy weave scope with ansible.
|
||||
4
defaults/main.yml
Normal file
4
defaults/main.yml
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
my_context: minikube
|
||||
ingress_domain: "local.dataminem.net"
|
||||
|
||||
scope_version: 1.9.1
|
||||
7
meta/main.yml
Normal file
7
meta/main.yml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
galaxy_info:
|
||||
author: Adrien Reslinger
|
||||
description: Install weave scope to a cluster
|
||||
company: Flaminem
|
||||
min_ansible_version: 2.6
|
||||
galaxy_tags: []
|
||||
|
||||
28
tasks/main.yml
Normal file
28
tasks/main.yml
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
- debug: var=my_context
|
||||
tags: prom
|
||||
|
||||
- name: Weave setup
|
||||
block:
|
||||
- name: namespace
|
||||
k8s:
|
||||
state: present
|
||||
name: weave
|
||||
api_version: v1
|
||||
kind: Namespace
|
||||
|
||||
|
||||
- name: Weave Scope files
|
||||
k8s:
|
||||
state: present
|
||||
context: "{{ my_context }}"
|
||||
resource_definition: "{{ lookup('template', item) | from_yaml }}"
|
||||
with_items:
|
||||
- scope-clusterrolebinding.yaml.j2
|
||||
- scope-clusterrole.yaml.j2
|
||||
- scope-sa.yaml.j2
|
||||
- scope-svc.yaml.j2
|
||||
- scope-ds.yaml.j2
|
||||
- scope.yaml.j2
|
||||
- weave_ingress.yaml.j2
|
||||
tags: weave
|
||||
|
||||
79
templates/scope-clusterrole.yaml.j2
Normal file
79
templates/scope-clusterrole.yaml.j2
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: weave-scope
|
||||
annotations:
|
||||
cloud.weave.works/launcher-info: |-
|
||||
{
|
||||
"original-request": {
|
||||
"url": "/k8s/v1.10/scope.yaml?k8s-version=Q2xpZW50IFZlcnNpb246IHZlcnNpb24uSW5mb3tNYWpvcjoiMSIsIE1pbm9yOiIxMSIsIEdpdFZlcnNpb246InYxLjExLjIiLCBHaXRDb21taXQ6ImJiOWZmYjE2NTRkNGE3MjliYjRjZWMxOGZmMDg4ZWFjYzE1M2MyMzkiLCBHaXRUcmVlU3RhdGU6ImNsZWFuIiwgQnVpbGREYXRlOiIyMDE4LTA4LTA3VDIzOjE3OjI4WiIsIEdvVmVyc2lvbjoiZ28xLjEwLjMiLCBDb21waWxlcjoiZ2MiLCBQbGF0Zm9ybToibGludXgvYW1kNjQifQpTZXJ2ZXIgVmVyc2lvbjogdmVyc2lvbi5JbmZve01ham9yOiIxIiwgTWlub3I6IjExIiwgR2l0VmVyc2lvbjoidjEuMTEuMSIsIEdpdENvbW1pdDoiYjFiMjk5NzgyNzBkYzIyZmVjYzU5MmFjNTVkOTAzMzUwNDU0MzEwYSIsIEdpdFRyZWVTdGF0ZToiY2xlYW4iLCBCdWlsZERhdGU6IjIwMTgtMDctMTdUMTg6NDM6MjZaIiwgR29WZXJzaW9uOiJnbzEuMTAuMyIsIENvbXBpbGVyOiJnYyIsIFBsYXRmb3JtOiJsaW51eC9hbWQ2NCJ9Cg==",
|
||||
"date": "Tue Sep 18 2018 08:36:39 GMT+0000 (UTC)"
|
||||
},
|
||||
"email-address": "support@weave.works"
|
||||
}
|
||||
labels:
|
||||
name: weave-scope
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- pods
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- delete
|
||||
- apiGroups:
|
||||
- ''
|
||||
resources:
|
||||
- pods/log
|
||||
- services
|
||||
- nodes
|
||||
- namespaces
|
||||
- persistentvolumes
|
||||
- persistentvolumeclaims
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps
|
||||
resources:
|
||||
- statefulsets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- batch
|
||||
resources:
|
||||
- cronjobs
|
||||
- jobs
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- extensions
|
||||
resources:
|
||||
- deployments
|
||||
- daemonsets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- extensions
|
||||
resources:
|
||||
- deployments/scale
|
||||
verbs:
|
||||
- get
|
||||
- update
|
||||
- apiGroups:
|
||||
- storage.k8s.io
|
||||
resources:
|
||||
- storageclasses
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
23
templates/scope-clusterrolebinding.yaml.j2
Normal file
23
templates/scope-clusterrolebinding.yaml.j2
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: weave-scope
|
||||
annotations:
|
||||
cloud.weave.works/launcher-info: |-
|
||||
{
|
||||
"original-request": {
|
||||
"url": "/k8s/v1.10/scope.yaml?k8s-version=Q2xpZW50IFZlcnNpb246IHZlcnNpb24uSW5mb3tNYWpvcjoiMSIsIE1pbm9yOiIxMSIsIEdpdFZlcnNpb246InYxLjExLjIiLCBHaXRDb21taXQ6ImJiOWZmYjE2NTRkNGE3MjliYjRjZWMxOGZmMDg4ZWFjYzE1M2MyMzkiLCBHaXRUcmVlU3RhdGU6ImNsZWFuIiwgQnVpbGREYXRlOiIyMDE4LTA4LTA3VDIzOjE3OjI4WiIsIEdvVmVyc2lvbjoiZ28xLjEwLjMiLCBDb21waWxlcjoiZ2MiLCBQbGF0Zm9ybToibGludXgvYW1kNjQifQpTZXJ2ZXIgVmVyc2lvbjogdmVyc2lvbi5JbmZve01ham9yOiIxIiwgTWlub3I6IjExIiwgR2l0VmVyc2lvbjoidjEuMTEuMSIsIEdpdENvbW1pdDoiYjFiMjk5NzgyNzBkYzIyZmVjYzU5MmFjNTVkOTAzMzUwNDU0MzEwYSIsIEdpdFRyZWVTdGF0ZToiY2xlYW4iLCBCdWlsZERhdGU6IjIwMTgtMDctMTdUMTg6NDM6MjZaIiwgR29WZXJzaW9uOiJnbzEuMTAuMyIsIENvbXBpbGVyOiJnYyIsIFBsYXRmb3JtOiJsaW51eC9hbWQ2NCJ9Cg==",
|
||||
"date": "Tue Sep 18 2018 08:36:39 GMT+0000 (UTC)"
|
||||
},
|
||||
"email-address": "support@weave.works"
|
||||
}
|
||||
labels:
|
||||
name: weave-scope
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: weave-scope
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: weave-scope
|
||||
namespace: weave
|
||||
76
templates/scope-ds.yaml.j2
Normal file
76
templates/scope-ds.yaml.j2
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
apiVersion: extensions/v1beta1
|
||||
kind: DaemonSet
|
||||
metadata:
|
||||
name: weave-scope-agent
|
||||
annotations:
|
||||
cloud.weave.works/launcher-info: |-
|
||||
{
|
||||
"original-request": {
|
||||
"url": "/k8s/v1.10/scope.yaml?k8s-version=Q2xpZW50IFZlcnNpb246IHZlcnNpb24uSW5mb3tNYWpvcjoiMSIsIE1pbm9yOiIxMSIsIEdpdFZlcnNpb246InYxLjExLjIiLCBHaXRDb21taXQ6ImJiOWZmYjE2NTRkNGE3MjliYjRjZWMxOGZmMDg4ZWFjYzE1M2MyMzkiLCBHaXRUcmVlU3RhdGU6ImNsZWFuIiwgQnVpbGREYXRlOiIyMDE4LTA4LTA3VDIzOjE3OjI4WiIsIEdvVmVyc2lvbjoiZ28xLjEwLjMiLCBDb21waWxlcjoiZ2MiLCBQbGF0Zm9ybToibGludXgvYW1kNjQifQpTZXJ2ZXIgVmVyc2lvbjogdmVyc2lvbi5JbmZve01ham9yOiIxIiwgTWlub3I6IjExIiwgR2l0VmVyc2lvbjoidjEuMTEuMSIsIEdpdENvbW1pdDoiYjFiMjk5NzgyNzBkYzIyZmVjYzU5MmFjNTVkOTAzMzUwNDU0MzEwYSIsIEdpdFRyZWVTdGF0ZToiY2xlYW4iLCBCdWlsZERhdGU6IjIwMTgtMDctMTdUMTg6NDM6MjZaIiwgR29WZXJzaW9uOiJnbzEuMTAuMyIsIENvbXBpbGVyOiJnYyIsIFBsYXRmb3JtOiJsaW51eC9hbWQ2NCJ9Cg==",
|
||||
"date": "Tue Sep 18 2018 08:36:39 GMT+0000 (UTC)"
|
||||
},
|
||||
"email-address": "support@weave.works"
|
||||
}
|
||||
labels:
|
||||
name: weave-scope-agent
|
||||
app: weave-scope
|
||||
weave-cloud-component: scope
|
||||
weave-scope-component: agent
|
||||
namespace: weave
|
||||
spec:
|
||||
minReadySeconds: 5
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: weave-scope-agent
|
||||
app: weave-scope
|
||||
weave-cloud-component: scope
|
||||
weave-scope-component: agent
|
||||
spec:
|
||||
containers:
|
||||
- name: scope-agent
|
||||
args:
|
||||
- '--mode=probe'
|
||||
- '--probe-only'
|
||||
- '--probe.kubernetes=true'
|
||||
- '--probe.docker.bridge=docker0'
|
||||
- '--probe.docker=true'
|
||||
- 'weave-scope-app.weave.svc.cluster.local:80'
|
||||
command:
|
||||
- /home/weave/scope
|
||||
env:
|
||||
- name: KUBERNETES_NODENAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
apiVersion: v1
|
||||
fieldPath: spec.nodeName
|
||||
image: 'docker.io/weaveworks/scope:{{ scope_version }}'
|
||||
imagePullPolicy: IfNotPresent
|
||||
securityContext:
|
||||
privileged: true
|
||||
volumeMounts:
|
||||
- name: scope-plugins
|
||||
mountPath: /var/run/scope/plugins
|
||||
- name: sys-kernel-debug
|
||||
mountPath: /sys/kernel/debug
|
||||
- name: docker-socket
|
||||
mountPath: /var/run/docker.sock
|
||||
dnsPolicy: ClusterFirstWithHostNet
|
||||
hostNetwork: true
|
||||
hostPID: true
|
||||
serviceAccountName: weave-scope
|
||||
tolerations:
|
||||
- effect: NoSchedule
|
||||
operator: Exists
|
||||
volumes:
|
||||
- name: scope-plugins
|
||||
hostPath:
|
||||
path: /var/run/scope/plugins
|
||||
- name: sys-kernel-debug
|
||||
hostPath:
|
||||
path: /sys/kernel/debug
|
||||
- name: docker-socket
|
||||
hostPath:
|
||||
path: /var/run/docker.sock
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
16
templates/scope-sa.yaml.j2
Normal file
16
templates/scope-sa.yaml.j2
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: weave-scope
|
||||
annotations:
|
||||
cloud.weave.works/launcher-info: |-
|
||||
{
|
||||
"original-request": {
|
||||
"url": "/k8s/v1.10/scope.yaml?k8s-version=Q2xpZW50IFZlcnNpb246IHZlcnNpb24uSW5mb3tNYWpvcjoiMSIsIE1pbm9yOiIxMSIsIEdpdFZlcnNpb246InYxLjExLjIiLCBHaXRDb21taXQ6ImJiOWZmYjE2NTRkNGE3MjliYjRjZWMxOGZmMDg4ZWFjYzE1M2MyMzkiLCBHaXRUcmVlU3RhdGU6ImNsZWFuIiwgQnVpbGREYXRlOiIyMDE4LTA4LTA3VDIzOjE3OjI4WiIsIEdvVmVyc2lvbjoiZ28xLjEwLjMiLCBDb21waWxlcjoiZ2MiLCBQbGF0Zm9ybToibGludXgvYW1kNjQifQpTZXJ2ZXIgVmVyc2lvbjogdmVyc2lvbi5JbmZve01ham9yOiIxIiwgTWlub3I6IjExIiwgR2l0VmVyc2lvbjoidjEuMTEuMSIsIEdpdENvbW1pdDoiYjFiMjk5NzgyNzBkYzIyZmVjYzU5MmFjNTVkOTAzMzUwNDU0MzEwYSIsIEdpdFRyZWVTdGF0ZToiY2xlYW4iLCBCdWlsZERhdGU6IjIwMTgtMDctMTdUMTg6NDM6MjZaIiwgR29WZXJzaW9uOiJnbzEuMTAuMyIsIENvbXBpbGVyOiJnYyIsIFBsYXRmb3JtOiJsaW51eC9hbWQ2NCJ9Cg==",
|
||||
"date": "Tue Sep 18 2018 08:36:39 GMT+0000 (UTC)"
|
||||
},
|
||||
"email-address": "support@weave.works"
|
||||
}
|
||||
labels:
|
||||
name: weave-scope
|
||||
namespace: weave
|
||||
30
templates/scope-svc.yaml.j2
Normal file
30
templates/scope-svc.yaml.j2
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: weave-scope-app
|
||||
annotations:
|
||||
cloud.weave.works/launcher-info: |-
|
||||
{
|
||||
"original-request": {
|
||||
"url": "/k8s/v1.10/scope.yaml?k8s-version=Q2xpZW50IFZlcnNpb246IHZlcnNpb24uSW5mb3tNYWpvcjoiMSIsIE1pbm9yOiIxMSIsIEdpdFZlcnNpb246InYxLjExLjIiLCBHaXRDb21taXQ6ImJiOWZmYjE2NTRkNGE3MjliYjRjZWMxOGZmMDg4ZWFjYzE1M2MyMzkiLCBHaXRUcmVlU3RhdGU6ImNsZWFuIiwgQnVpbGREYXRlOiIyMDE4LTA4LTA3VDIzOjE3OjI4WiIsIEdvVmVyc2lvbjoiZ28xLjEwLjMiLCBDb21waWxlcjoiZ2MiLCBQbGF0Zm9ybToibGludXgvYW1kNjQifQpTZXJ2ZXIgVmVyc2lvbjogdmVyc2lvbi5JbmZve01ham9yOiIxIiwgTWlub3I6IjExIiwgR2l0VmVyc2lvbjoidjEuMTEuMSIsIEdpdENvbW1pdDoiYjFiMjk5NzgyNzBkYzIyZmVjYzU5MmFjNTVkOTAzMzUwNDU0MzEwYSIsIEdpdFRyZWVTdGF0ZToiY2xlYW4iLCBCdWlsZERhdGU6IjIwMTgtMDctMTdUMTg6NDM6MjZaIiwgR29WZXJzaW9uOiJnbzEuMTAuMyIsIENvbXBpbGVyOiJnYyIsIFBsYXRmb3JtOiJsaW51eC9hbWQ2NCJ9Cg==",
|
||||
"date": "Tue Sep 18 2018 08:36:39 GMT+0000 (UTC)"
|
||||
},
|
||||
"email-address": "support@weave.works"
|
||||
}
|
||||
labels:
|
||||
name: weave-scope-app
|
||||
app: weave-scope
|
||||
weave-cloud-component: scope
|
||||
weave-scope-component: app
|
||||
namespace: weave
|
||||
spec:
|
||||
ports:
|
||||
- name: app
|
||||
port: 80
|
||||
protocol: TCP
|
||||
targetPort: 4040
|
||||
selector:
|
||||
name: weave-scope-app
|
||||
app: weave-scope
|
||||
weave-cloud-component: scope
|
||||
weave-scope-component: app
|
||||
42
templates/scope.yaml.j2
Normal file
42
templates/scope.yaml.j2
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
apiVersion: apps/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: weave-scope-app
|
||||
annotations:
|
||||
cloud.weave.works/launcher-info: |-
|
||||
{
|
||||
"original-request": {
|
||||
"url": "/k8s/v1.10/scope.yaml?k8s-version=Q2xpZW50IFZlcnNpb246IHZlcnNpb24uSW5mb3tNYWpvcjoiMSIsIE1pbm9yOiIxMSIsIEdpdFZlcnNpb246InYxLjExLjIiLCBHaXRDb21taXQ6ImJiOWZmYjE2NTRkNGE3MjliYjRjZWMxOGZmMDg4ZWFjYzE1M2MyMzkiLCBHaXRUcmVlU3RhdGU6ImNsZWFuIiwgQnVpbGREYXRlOiIyMDE4LTA4LTA3VDIzOjE3OjI4WiIsIEdvVmVyc2lvbjoiZ28xLjEwLjMiLCBDb21waWxlcjoiZ2MiLCBQbGF0Zm9ybToibGludXgvYW1kNjQifQpTZXJ2ZXIgVmVyc2lvbjogdmVyc2lvbi5JbmZve01ham9yOiIxIiwgTWlub3I6IjExIiwgR2l0VmVyc2lvbjoidjEuMTEuMSIsIEdpdENvbW1pdDoiYjFiMjk5NzgyNzBkYzIyZmVjYzU5MmFjNTVkOTAzMzUwNDU0MzEwYSIsIEdpdFRyZWVTdGF0ZToiY2xlYW4iLCBCdWlsZERhdGU6IjIwMTgtMDctMTdUMTg6NDM6MjZaIiwgR29WZXJzaW9uOiJnbzEuMTAuMyIsIENvbXBpbGVyOiJnYyIsIFBsYXRmb3JtOiJsaW51eC9hbWQ2NCJ9Cg==",
|
||||
"date": "Tue Sep 18 2018 08:36:39 GMT+0000 (UTC)"
|
||||
},
|
||||
"email-address": "support@weave.works"
|
||||
}
|
||||
labels:
|
||||
name: weave-scope-app
|
||||
app: weave-scope
|
||||
weave-cloud-component: scope
|
||||
weave-scope-component: app
|
||||
namespace: weave
|
||||
spec:
|
||||
replicas: 1
|
||||
revisionHistoryLimit: 2
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: weave-scope-app
|
||||
app: weave-scope
|
||||
weave-cloud-component: scope
|
||||
weave-scope-component: app
|
||||
spec:
|
||||
containers:
|
||||
- name: app
|
||||
args:
|
||||
- '--mode=app'
|
||||
command:
|
||||
- /home/weave/scope
|
||||
env: []
|
||||
image: 'docker.io/weaveworks/scope:{{ scope_version }}'
|
||||
imagePullPolicy: IfNotPresent
|
||||
ports:
|
||||
- containerPort: 4040
|
||||
protocol: TCP
|
||||
20
templates/weave_ingress.yaml.j2
Normal file
20
templates/weave_ingress.yaml.j2
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
#will not work: weave hate https...
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: weave
|
||||
namespace: weave
|
||||
annotations:
|
||||
# ingress.kubernetes.io/whitelist-source-range: "10.96.0.0/12, 10.244.0.0/16, 192.168.18.0/24"
|
||||
traefik.frontend.priority: "10"
|
||||
spec:
|
||||
rules:
|
||||
- host: weave.{{ ingress_domain }}
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
backend:
|
||||
serviceName: weave-scope-app
|
||||
servicePort: 80
|
||||
|
||||
1
vars/main.yml
Normal file
1
vars/main.yml
Normal file
|
|
@ -0,0 +1 @@
|
|||
user: "{{ ansible_user_id }}"
|
||||
Loading…
Add table
Add a link
Reference in a new issue