stable/ipfs Update, Scrape, NodePort, etc (#15709)

* add swarm port 4001 and support nodeport service

Signed-off-by: Bruno Clermont <bruno@robotinfra.com>

* bump to 0.4.21

Signed-off-by: Bruno Clermont <bruno@robotinfra.com>

* scrape prometheus metrics

Signed-off-by: Bruno Clermont <bruno@robotinfra.com>

* add probes

Signed-off-by: Bruno Clermont <bruno@robotinfra.com>

* bump version

Signed-off-by: Bruno Clermont <bruno@robotinfra.com>

* Fix example port (304001 is > 65534)

Signed-off-by: Bruno Clermont <bruno@robotinfra.com>
This commit is contained in:
Bruno Clermont
2019-07-29 11:00:25 -07:00
committed by Kubernetes Prow Robot
parent 3154874ffd
commit a9ce4492c9
5 changed files with 72 additions and 3 deletions
+2 -2
View File
@@ -1,10 +1,10 @@
apiVersion: v1
description: A Helm chart for the Interplanetary File System
name: ipfs
version: 0.2.4
version: 0.3.0
icon: https://raw.githubusercontent.com/ipfs/logo/master/raster-generated/ipfs-logo-128-ice-text.png
home: https://ipfs.io/
appVersion: v0.4.20
appVersion: v0.4.21
keywords:
- ipfs
- distributed-web
+3
View File
@@ -48,6 +48,9 @@ The following table lists the configurable parameters of the Memcached chart and
| `persistence.annotations` | Extra annotations for the persistent volume claim. | `{}` |
| `persistence.accessModes` | List of access modes for use with the persistent volume claim | `["ReadWriteOnce"]` |
| `persistence.size` | Size of the PVC for each IPFS pod, used as persistent cache | `8Gi` |
| `service.swarm.enabled` | Expose port `4001` (IPFS swarm network port) | `false` |
| `service.swarm.type` | Service type for swarm | `LoadBalancer` |
| `service.swarm.nodePort` | Desired nodePort for service of type NodePort used for swarm requests | blank ('') - will assign a dynamic node port |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
+38
View File
@@ -1,3 +1,4 @@
---
apiVersion: v1
kind: Service
metadata:
@@ -20,3 +21,40 @@ spec:
selector:
app: {{ template "ipfs.name" . }}
release: {{ .Release.Name }}
{{- if .Values.swarm.enabled }}
---
apiVersion: v1
kind: Service
metadata:
name: {{ template "ipfs.servicename" . }}-swarm
labels:
app: {{ template "ipfs.name" . }}
chart: {{ .Chart.Name }}-{{ .Chart.Version }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "5001"
prometheus.io/path: /debug/metrics/prometheus
spec:
type: {{ .Values.swarm.type }}
{{- if .Values.swarm.loadBalancerIP }}
loadBalancerIP: {{ .Values.swarm.loadBalancerIP }}
{{- end }}
{{- if .Values.swarm.externalIP }}
externalIPs:
- {{ .Values.swarm.externalIP }}
{{- end }}
ports:
- port: 4001
{{- if (and (eq .Values.swarm.type "NodePort") (not (empty .Values.swarm.nodePort)))}}
nodePort: {{ .Values.swarm.nodePort }}
{{- end }}
targetPort: 4001
protocol: TCP
name: swarm
selector:
app: {{ template "ipfs.name" . }}
release: {{ .Release.Name }}
{{- end -}}
+16
View File
@@ -23,10 +23,26 @@ spec:
# the persistent volume to be able to start.
fsGroup: 1000
runAsUser: 1000
livenessProbe:
httpGet:
path: /debug/metrics/prometheus
port: api
initialDelaySeconds: 15
periodSeconds: 3
readinessProbe:
httpGet:
path: /debug/metrics/prometheus
port: api
initialDelaySeconds: 15
periodSeconds: 3
containers:
- name: {{ .Chart.Name }}
image: {{ .Values.image }}
ports:
{{- if .Values.swarm.enabled }}
- containerPort: 4001
name: swarm
{{- end }}
- containerPort: 5001
name: api
- containerPort: 8080
+13 -1
View File
@@ -1,10 +1,22 @@
replicaCount: 1
image: ipfs/go-ipfs:v0.4.20
image: ipfs/go-ipfs:v0.4.21
service:
type: ClusterIP
swarm:
enabled: false
type: ClusterIP
# loadBalancerIP: ""
# externalIP: ""
## Further config for service of type NodePort
## Default config with empty string "" will assign a dynamic nodePort
nodePort: ""
## If static nodePort configuration is required it can be enabled as below
## Configure ports in allowable range (eg. 30000 - 32767 on minikube)
# nodePort: 34001
resources: {}
persistence: