...
To deploy the SOAVirt server in Kubernetes, follow the process outlined below. Note that this documentation assumes that you are using the default built-in WebSocket provider to monitor Virtualize server events. If you are using the legacy, ActiveMQ-based provider, see a previous version of this page for information and directions appropriate for your environment.
...
Code Block | ||||
---|---|---|---|---|
| ||||
apiVersion: apps/v1 kind: StatefulSet metadata: name: soavirt namespace: parasoft-sv-namespace labels: tag: soavirt spec: replicas: 1 selector: matchLabels: tag: soavirt serviceName: soavirt template: metadata: labels: tag: soavirt spec: securityContext: runAsNonRoot: true serviceAccountName: parasoft-account automountServiceAccountToken: true volumes: - name: soavirt-pv persistentVolumeClaim: claimName: soavirt-pvc - name: soavirt-config configMap: name: soavirt-config containers: - name: soavirt image: parasoft/soavirt-server imagePullPolicy: IfNotPresent # When running on Kubernetes nodes with more securityContext: than 32 CPU cores the product will print the following allowPrivilegeEscalation:in false the logs: This machine exceeds the licensed number of CPU capabilities:cores # To reduce the number of cores available, uncomment the following resource drop: ["ALL"] seccompProfile: type: RuntimeDefault specification (if you are using OpenShift, see the note below) or contact Parasoft to enable running on higher core counts. # resources: # volumeMountslimits: # - name: soavirt-pvcpu: "4" securityContext: mountPathallowPrivilegeEscalation: /usr/local/parasoft/soavirt/webapps/ROOT/workspacefalse - namecapabilities: soavirt-config mountPath: /usr/local/parasoft/soavirt/webapps/config.propertiesdrop: ["ALL"] subPathseccompProfile: config.properties ports: - nametype: httpRuntimeDefault containerPortvolumeMounts: 9080 - startupProbename: soavirt-pv httpGetmountPath: /usr/local/parasoft/soavirt/webapps/ROOT/workspace path- name: /soavirt/api/v6/healthchecksoavirt-config port: 9080mountPath: /usr/local/parasoft/soavirt/webapps/config.properties initialDelaySecondssubPath: 30config.properties periodSecondsports: 30 - timeoutSecondsname: 30http failureThresholdcontainerPort: 39080 livenessProbestartupProbe: httpGet: path: /soavirt/api/v6/healthcheck port: 9080 initialDelaySeconds: 30 periodSeconds: 30 timeoutSeconds: 30 env: failureThreshold: 3 - namelivenessProbe: CATALINA_OPTS value: "-Dparasoft.auto.deploy.new=falsehttpGet: path: /soavirt/api/v6/healthcheck -Dparasoft.cloudvm=true port: 9080 initialDelaySeconds: -Dparasoft.cloudvm.config=Kubernetes" 30 - nameperiodSeconds: PARASOFT_POD_NAME30 valueFromtimeoutSeconds: 30 env: fieldRef: - name: CATALINA_OPTS fieldPathvalue: metadata.name"-Dparasoft.auto.deploy.new=false - name: PARASOFT_POD_NAMESPACE -Dparasoft.cloudvm=true valueFrom: fieldRef: -Dparasoft.cloudvm.config=Kubernetes" - fieldPath: metadata.namespacename: PARASOFT_POD_NAME valueFrom: fieldRef: fieldPath: metadata.name - name: PARASOFT_POD_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace |
Info | ||
---|---|---|
| ||
If you are using OpenShift and your host is using more than 32 cores, you will need to look at your OpenShift version's documentation about Quotas and Limit Ranges for CPU as there are significant differences between versions. This link is to the documentation for version 4.16, but you should consult the documentation for your exact version: https://docs.openshift.com/container-platform/4.16/nodes/clusters/nodes-cluster-limit-ranges.html |
Use the yaml file to create the SOAVirt server:
...