From 56ae8b42edab6f9ecd9c8c417ffa112132af9670 Mon Sep 17 00:00:00 2001 From: Xeon Date: Thu, 27 Apr 2023 16:28:20 +0300 Subject: [PATCH 1/2] add manifests --- homework/3.kubernetes-intro/deployment.yaml | 28 +++++++++++++++++++++ homework/3.kubernetes-intro/manifest.yaml | 18 +++++++++++++ homework/3.kubernetes-intro/pod.yaml | 16 ++++++++++++ homework/3.kubernetes-intro/replicaset.yaml | 25 ++++++++++++++++++ 4 files changed, 87 insertions(+) create mode 100644 homework/3.kubernetes-intro/deployment.yaml create mode 100644 homework/3.kubernetes-intro/manifest.yaml create mode 100644 homework/3.kubernetes-intro/pod.yaml create mode 100644 homework/3.kubernetes-intro/replicaset.yaml diff --git a/homework/3.kubernetes-intro/deployment.yaml b/homework/3.kubernetes-intro/deployment.yaml new file mode 100644 index 00000000..51995cf6 --- /dev/null +++ b/homework/3.kubernetes-intro/deployment.yaml @@ -0,0 +1,28 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: kube-doom-deployment +spec: + strategy: + type: RollingUpdate + rollingUpdate: + maxUnavailable: 1 + maxSurge: 0 + replicas: 1 + selector: + matchLabels: + app: kube-doom-pod + template: + metadata: + labels: + app: kube-doom-pod + spec: + hostNetwork: true + serviceAccountName: kubedoom + containers: + - image: storaxdev/kubedoom:0.5.0 + name: kubedoom + ports: + - containerPort: 5900 + protocol: TCP \ No newline at end of file diff --git a/homework/3.kubernetes-intro/manifest.yaml b/homework/3.kubernetes-intro/manifest.yaml new file mode 100644 index 00000000..04f9f2e8 --- /dev/null +++ b/homework/3.kubernetes-intro/manifest.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + name: kubedoom + namespace: kubedoom +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: kubedoom +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: cluster-admin +subjects: + - kind: ServiceAccount + name: kubedoom + namespace: kubedoom \ No newline at end of file diff --git a/homework/3.kubernetes-intro/pod.yaml b/homework/3.kubernetes-intro/pod.yaml new file mode 100644 index 00000000..2ba1a905 --- /dev/null +++ b/homework/3.kubernetes-intro/pod.yaml @@ -0,0 +1,16 @@ +--- +apiVersion: v1 +kind: Pod +metadata: + name: kube-doom-pod + namespace: kubedoom +spec: + hostNetwork: true + serviceAccountName: kubedoom + containers: + - image: storaxdev/kubedoom:0.5.0 + name: kubedoom + ports: + - containerPort: 5900 + protocol: TCP + \ No newline at end of file diff --git a/homework/3.kubernetes-intro/replicaset.yaml b/homework/3.kubernetes-intro/replicaset.yaml new file mode 100644 index 00000000..9cc765ca --- /dev/null +++ b/homework/3.kubernetes-intro/replicaset.yaml @@ -0,0 +1,25 @@ +--- +apiVersion: apps/v1 +kind: ReplicaSet +metadata: + name: kube-doom-replicaset + namespace: kubedoom +spec: + replicas: 2 + selector: + matchLabels: + app: kube-doom-pod + template: + metadata: + labels: + app: kube-doom-pod + spec: + hostNetwork: true + serviceAccountName: kubedoom + containers: + - image: storaxdev/kubedoom:0.5.0 + name: kubedoom + ports: + - containerPort: 5900 + protocol: TCP + \ No newline at end of file From dcb2390ecfeec1f45aa096711a57620a6ba7550c Mon Sep 17 00:00:00 2001 From: Xeon Date: Mon, 1 May 2023 18:30:34 +0300 Subject: [PATCH 2/2] deploy postgres db --- .../deploymet.yaml | 44 +++++++++++++++++++ .../postgres_secret.yaml | 12 +++++ homework/4.resources-and-persistence/pvc.yaml | 12 +++++ 3 files changed, 68 insertions(+) create mode 100644 homework/4.resources-and-persistence/deploymet.yaml create mode 100644 homework/4.resources-and-persistence/postgres_secret.yaml create mode 100644 homework/4.resources-and-persistence/pvc.yaml diff --git a/homework/4.resources-and-persistence/deploymet.yaml b/homework/4.resources-and-persistence/deploymet.yaml new file mode 100644 index 00000000..8f8a3bb8 --- /dev/null +++ b/homework/4.resources-and-persistence/deploymet.yaml @@ -0,0 +1,44 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xeon-postgres +spec: + replicas: 1 + selector: + matchLabels: + app: xeon-postgres + strategy: + rollingUpdate: + maxSurge: 0 + maxUnavailable: 1 + type: RollingUpdate + template: + metadata: + labels: + app: xeon-postgres + spec: + containers: + - image: postgres:10.13 + name: postgres + env: + - name: POSTGRES_DB + value: "testdatabase" + - name: POSTGRES_USER + value: "testuser" + - name: POSTGRES_PASSWORD + valueFrom: + secretKeyRef: + name: postgres-secret + key: db_password + - name: PGDATA + value: /var/lib/postgresql/data/pgdata + ports: + - containerPort: 5432 + volumeMounts: + - name: postgres-data + mountPath: /var/lib/postgresql/data + volumes: + - name: postgres-data + persistentVolumeClaim: + claimName: postgres-data diff --git a/homework/4.resources-and-persistence/postgres_secret.yaml b/homework/4.resources-and-persistence/postgres_secret.yaml new file mode 100644 index 00000000..a53d5cb1 --- /dev/null +++ b/homework/4.resources-and-persistence/postgres_secret.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +data: + db_password: dGVzdHBhc3N3b3Jk +kind: Secret +metadata: + creationTimestamp: "2023-05-01T14:49:28Z" + name: postgres-secret + namespace: default + resourceVersion: "63120" + selfLink: /api/v1/namespaces/default/secrets/postgres-secret + uid: a1a62c4a-1dd3-4f05-9ccc-32d4c6f17003 +type: Opaque diff --git a/homework/4.resources-and-persistence/pvc.yaml b/homework/4.resources-and-persistence/pvc.yaml new file mode 100644 index 00000000..9d579ea2 --- /dev/null +++ b/homework/4.resources-and-persistence/pvc.yaml @@ -0,0 +1,12 @@ +--- +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: + name: postgres-data +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi + storageClassName: csi-ceph-ssd-ms1-retain