Skip to content
This repository was archived by the owner on Dec 3, 2024. It is now read-only.

added kustomize template & k8s resources for sidecar #24

Merged
merged 1 commit into from
Jan 11, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: objectstorage-provisioner-ns

commonAnnotations:
cosi.storage.k8s.io/authors: "Kubernetes Authors"
cosi.storage.k8s.io/license: "Apache V2"
cosi.storage.k8s.io/support: "https://github.com/kubernetes-sigs/container-object-storage-api"

commonLabels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/version: main
app.kubernetes.io/name: container-object-storage-interface-provisioner

resources:
- resources/ns.yaml
- resources/sa.yaml
- resources/rbac.yaml
- resources/secret.yaml
- resources/deployment.yaml
62 changes: 62 additions & 0 deletions resources/deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: objectstorage-provisioner
labels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/version: main
app.kubernetes.io/name: container-object-storage-interface-provisioner
spec:
replicas: 1
minReadySeconds: 30
progressDeadlineSeconds: 600
revisionHistoryLimit: 3
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
selector:
matchLabels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/name: container-object-storage-interface-provisioner
template:
metadata:
labels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/name: container-object-storage-interface-provisioner
app.kubernetes.io/version: main
spec:
serviceAccountName: objectstorage-provisioner-sa
containers:
- name: objectstorage-sample-driver
image: quay.io/containerobjectstorage/objectstorage-sample-driver:latest
resources:
limits:
cpu: 1
memory: 1Gi
requests:
cpu: 100m
memory: 100Mi
envFrom:
- secretRef:
name: objectstorage-provisioner
- name: objectstorage-provisioner-sidecar
image: quay.io/containerobjectstorage/objectstorage-provisioner-sidecar:latest
resources:
limits:
cpu: 1
memory: 1Gi
requests:
cpu: 100m
memory: 100Mi
env:
- name: CONNECT_ADDRESS
valueFrom:
secretKeyRef:
name: objectstorage-provisioner
key: LISTEN_ADDRESS
10 changes: 10 additions & 0 deletions resources/ns.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: objectstorage-provisioner-ns
labels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/version: main
app.kubernetes.io/name: container-object-storage-interface-provisioner
37 changes: 37 additions & 0 deletions resources/rbac.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: objectstorage-provisioner-role
namespace: objectstorage-provisioner-ns
labels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/version: main
app.kubernetes.io/name: container-object-storage-interface-provisioner
rules:
- apiGroups: ["objectstorage.k8s.io"]
resources: ["buckets", "bucketaccess"]
verbs: ["get", "list", "watch", "update", "create", "delete"]
- apiGroups: [""]
resources: ["events"]
verbs: ["list", "watch", "create", "update", "patch"]
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: objectstorage-provisioner-role-binding
namespace: objectstorage-provisioner-ns
labels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/version: main
app.kubernetes.io/name: container-object-storage-interface-provisioner
subjects:
- kind: ServiceAccount
name: objectstorage-provisioner-sa
namespace: objectstorage-provisioner-ns
roleRef:
kind: ClusterRole
name: objectstorage-provisioner-role
apiGroup: rbac.authorization.k8s.io
11 changes: 11 additions & 0 deletions resources/sa.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: objectstorage-provisioner-sa
namespace: objectstorage-provisioner-ns
labels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/version: main
app.kubernetes.io/name: container-object-storage-interface-provisioner
19 changes: 19 additions & 0 deletions resources/secret.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
apiVersion: v1
kind: Secret
metadata:
name: objectstorage-provisioner
namespace: objectstorage-provisioner-ns
labels:
app.kubernetes.io/part-of: container-object-storage-interface
app.kubernetes.io/component: provisioner
app.kubernetes.io/version: main
app.kubernetes.io/name: container-object-storage-interface-provisioner
type: Opaque
stringData:
LISTEN_ADDRESS: 0.0.0.0:9000
data:
# set to space
S3_ENDPOINT: IA==
ACCESS_KEY: IA==
SECRET_KEY: IA==