From e245893f1b99c96b6e8847bed5a9f39f58e44d2d Mon Sep 17 00:00:00 2001 From: fghwett <1058178245@qq.com> Date: Mon, 4 Jul 2022 19:14:22 +0800 Subject: [PATCH] add --- Test/Kubernetes/nginx/nginx-daeminset.yaml | 42 +++++++++++++++++ Test/Kubernetes/nginx/nginx-deployment.yaml | 9 +++- Test/Kubernetes/nginx/nginx-statefulset.yaml | 48 ++++++++++++++++++++ 3 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 Test/Kubernetes/nginx/nginx-daeminset.yaml create mode 100644 Test/Kubernetes/nginx/nginx-statefulset.yaml diff --git a/Test/Kubernetes/nginx/nginx-daeminset.yaml b/Test/Kubernetes/nginx/nginx-daeminset.yaml new file mode 100644 index 0000000..4598bc4 --- /dev/null +++ b/Test/Kubernetes/nginx/nginx-daeminset.yaml @@ -0,0 +1,42 @@ +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: fluentd-elasticsearch + namespace: kube-system + labels: + k8s-app: fluentd-logging +spec: + selector: + matchLabels: + name: fluentd-elasticsearch + template: + metadata: + labels: + name: fluentd-elasticsearch + spec: + tolerations: + - key: node-role.kubernetes.io/master + effect: NoSchedule + containers: + - name: fluentd-elasticsearch + image: fluent/fluentd-kubernetes-daemonset:v1.7.1-debian-syslog-1.0 + resources: + limits: + memory: 200Mi + requests: + cpu: 100m + memory: 200Mi + volumeMounts: + - name: varlog + mountPath: /var/log + - name: varlibdockercontainers + mountPath: /var/lib/docker/containers + readOnly: true + terminationGracePeriodSeconds: 30 + volumes: + - name: varlog + hostPath: + path: /var/log + - name: varlibdockercontainers + hostPath: + path: /var/lib/docker/containers diff --git a/Test/Kubernetes/nginx/nginx-deployment.yaml b/Test/Kubernetes/nginx/nginx-deployment.yaml index 5c8b55c..d1d4efc 100644 --- a/Test/Kubernetes/nginx/nginx-deployment.yaml +++ b/Test/Kubernetes/nginx/nginx-deployment.yaml @@ -10,6 +10,7 @@ metadata: #译名为元数据,即 Deployment 的一些基本属性和 key2: value2 spec: #这是关于该Deployment的描述,可以理解为你期待该Deployment在k8s中如何使用 replicas: 3 #使用该Deployment创建一个应用程序实例 + revisionHistoryLimit: 10 # 该Deployment保留多少个旧的ReplicaSet selector: #标签选择器,与上面的标签共同作用,目前不需要理解 matchLabels: #选择包含标签app:nginx的资源 app: nginx @@ -33,7 +34,13 @@ spec: #这是关于该Deployment的描述,可以理解为你期待该D preStop: exec: command: ["/bin/sh", "-c", "nginx -s quit; while killall -o nginx; do sleep 1; done"] - limits: + resources: + limits: + cpu: 100m + memory: 200Mi + requests: + cpu: 100m + memory: 200Mi # These containers are run during pod initialization initContainers: - name: install diff --git a/Test/Kubernetes/nginx/nginx-statefulset.yaml b/Test/Kubernetes/nginx/nginx-statefulset.yaml new file mode 100644 index 0000000..0089be2 --- /dev/null +++ b/Test/Kubernetes/nginx/nginx-statefulset.yaml @@ -0,0 +1,48 @@ +apiVersion: v1 +kind: Service +metadata: + name: nginx + labels: + app: nginx +spec: + ports: + - port: 80 + name: web + clusterIP: None + selector: + app: nginx +--- +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: web +spec: + selector: + matchLabels: + app: nginx # has to match .spec.template.metadata.labels + serviceName: "nginx" + replicas: 3 # by default is 1 + template: + metadata: + labels: + app: nginx # has to match .spec.selector.matchLabels + spec: + terminationGracePeriodSeconds: 10 # 宽限期秒 + containers: + - name: nginx + image: nginx:1.7.9 + ports: + - containerPort: 80 + name: web + volumeMounts: + - name: www + mountPath: /usr/share/nginx/html + volumeClaimTemplates: + - metadata: + name: www + spec: + accessModes: [ "ReadWriteOnce" ] + storageClassName: "my-storage-class" + resources: + requests: + storage: 1Gi