Henry
发布于 2025-01-16 / 27 阅读
0
0

PEGA - 容器化部署添加自定义卷

简介

容器化部署添加自定义卷作为存储其他数据使用。

样例需求

  • 添加一个自定义的外部存储卷

详细步骤

添加 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 名字

部署 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)

以上便是本文的全部内容,感谢您的阅读。



评论