简介
容器化部署添加自定义卷作为存储其他数据使用。
样例需求
- 添加一个自定义的外部存储卷
详细步骤
添加 pvc 配置文件
root@k8s-main-master:/vm-server/dev_app/deploy/web# cat 0-pers_share_folder_pvc.yaml
---
# pv
apiVersion: v1
kind: PersistentVolume
metadata:
name: pers-share-folder-dev-pv
spec:
capacity:
storage: 1024Gi
accessModes:
- ReadWriteOnce
hostPath:
path: /pers_share_folder/dev
---
# pvc
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pers-share-folder-dev-pvc
namespace: dev-upgrade
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1024Gi
创建 pvc
root@k8s-main-master:/vm-server/dev_app/deploy/web# kubectl apply -f 0-pers_share_folder_pvc.yaml
persistentvolume/pers-share-folder-dev-pv created
persistentvolumeclaim/pers-share-folder-dev-pvc created
在 pega.yaml 部署文件中配置自定义存储卷
tier:
- name: "web"
# Create an interactive tier for web users. This tier uses
# the WebUser node type and will be exposed via a service to
# the load balancer.
nodeType: "WebUser"
custom:
volumeMounts:
- name: pers-share-folder-dev-pvc
mountPath: /pers_share_folder
volumes:
- name: pers-share-folder-dev-pvc
persistentVolumeClaim:
claimName: pers-share-folder-dev-pvc
# Pega requestor specific properties
- custom: 自定义配置
- volumeMounts: 挂载卷
- name: 卷名字
- mountPath: 挂载路径
- volumes: 卷定义
- name: 卷名字
- persistentVolumeClaim: 卷类型为 PVC
- claimName: PVC 名字
- volumeMounts: 挂载卷
部署 PEGA web 服务
root@k8s-main-master:/vm-server/dev_app/deploy/web# helm install dev-app-web pega/pega --values pega_deploy.yaml -n dev-upgrade
NAME: dev-app-web
LAST DEPLOYED: Wed Jan 15 23:44:15 2025
NAMESPACE: dev-upgrade
STATUS: deployed
REVISION: 1
TEST SUITE: None
查看容器信息,挂载详情罗列在 mounts 部分
root@k8s-main-master:/home/myserver# kubectl describe pod/dev-upgrade-web-fd9976959-jck5g -n dev-upgrade
Name: dev-upgrade-web-fd9976959-jck5g
Namespace: dev-upgrade
Priority: 0
Service Account: default
Node: k8s-main-worker-1/192.168.122.112
Start Time: Wed, 15 Jan 2025 23:44:17 +0800
Labels: app=dev-upgrade-web
pod-template-hash=fd9976959
Annotations: certificate-check: 2cb1f675c5f532bd68c3851872bf42719f0516208049d403a84068dac54c695c
config-check: df0ebe00fbe91823032e82fecfa421485a8cd77b3a13f2b3051d5924adebdc7c
config-tier-check: 7189c505832c7116eec5a8ce252482e4ca17e367fe0f59f34dce6368de8f0120
Status: Running
IP: 10.244.1.238
IPs:
IP: 10.244.1.238
Controlled By: ReplicaSet/dev-upgrade-web-fd9976959
Containers:
pega-web-tomcat:
Container ID: containerd://1cd38f8fca54a7869c6f1cbcfcbdf8e3be922567b61e6614b26befc933a279d1
Image: platform/pega:8.23.1
Image ID: pega@sha256:def4bf5ba4ce6d9d7e8e00b1afd9a26f107501b105c35c0e647336ce316f8194
Ports: 8080/TCP, 8443/TCP
Host Ports: 0/TCP, 0/TCP
State: Running
Started: Wed, 15 Jan 2025 23:44:20 +0800
Ready: True
Restart Count: 0
Limits:
cpu: 4
memory: 12Gi
Requests:
cpu: 3
memory: 12Gi
Liveness: http-get http://:8081/prweb/PRRestService/monitor/pingService/ping delay=0s timeout=20s period=30s #success=1 #failure=3
Readiness: http-get http://:8080/prweb/PRRestService/monitor/pingService/ping delay=0s timeout=10s period=10s #success=1 #failure=3
Startup: http-get http://:8080/prweb/PRRestService/monitor/pingService/ping delay=10s timeout=10s period=10s #success=1 #failure=30
Environment Variables from:
dev-upgrade-environment-config ConfigMap Optional: false
Environment:
NODE_TYPE: WebUser
PEGA_APP_CONTEXT_PATH: prweb
POD_NAME: dev-upgrade-web-fd9976959-jck5g (v1:metadata.name)
REQUESTOR_PASSIVATION_TIMEOUT: 900
JAVA_OPTS:
CATALINA_OPTS:
INITIAL_HEAP: 8192m
MAX_HEAP: 8192m
NODE_TIER: web
RETRY_TIMEOUT: 30
MAX_RETRIES: 4
Mounts:
/opt/pega/config from pega-volume-config (rw)
/opt/pega/secrets from pega-volume-credentials (rw)
/pers_share_folder from pers-share-folder-dev-pvc (rw)
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-wqxv7 (ro)
以上便是本文的全部内容,感谢您的阅读。