CA APM OpenShift Monitoring is an extension that provides full monitoring insights into the hosts and applications that you deploy with OpenShift. Use the extension to monitor the availability and performance of your containerized applications, processes, and cloud instances, manage dependencies between your hosts and applications in Docker and Kubernetes container clusters in real time. Use the collected metrics data to streamline up or down-scaling of your environment.
Docker Remote API v17.06 Docker Server version 1.11.x Openshift 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12
| Tags | Date | Supported APM Version | Internal Build Number |
|---|---|---|---|
| latest | 15-Jan-2020 | 11.x, DX APM | Release 20.1.0.0_fixes ( 24 ) |
| 20200114 | 15-Jan-2020 | 11.x, DX APM | Release 20.1.0.0_fixes ( 24 ) |
| 2.0.2 | 18-Feb-2019 | APM SaaS (DxI) , 10.7 SP2 + | Release 10.7.0.45 ( 990045 ) |
| 2.0.1 | 26-Oct-2018 | APM SaaS (DxI) , 10.7 SP2 + | Release 10.6.0.179 ( 990179 ) |
| 2.0 | 03-Oct-2018 | APM SaaS (DxI) , 10.7 SP2 + | Release 10.6.0.173 ( 990173 ) |
| 1.0 | 14-Apr-2018 | 10.7 , SP1 | Release 10.7.0.0_sp (Build 22) |
latest
20200114
2.0.2.5
2.0.2
2.0.1
2.0
1.0
oc new-project caapm
oc adm policy add-cluster-role-to-user cluster-reader system:serviceaccount:caapm:default
oc adm policy add-scc-to-user anyuid system:serviceaccount:caapm:default
oc adm policy add-scc-to-user privileged system:serviceaccount:caapm:default
Alpine based:
oc import-image my-ca/apm-openshiftmonitor --from=docker.io/caapm/openshiftmonitor:latest --confirm
RHEL based:
oc import-image my-ca/apm-openshiftmonitor --from=docker.io/caapm/openshiftmonitor:rhel-20.1.0 --confirm
oc create -f caagent-openshiftmonitor.yml -n caapm
The following YML file contains a deployment & daemonset and the containers need to run in privileged mode.
Before running the above command, ensure you have been given the required role for by your OpenShift administrator.
( https://docs.openshift.com/container-platform/3.3/admin_guide/manage_authorization_policy.html#admin-guide-granting-users-daemonset-permissions )
Replace the following variables with your setup details
[AGENTMANAGER_URL] : Agent/EM Connection details - similar to what we provide on IntroscopeAgent.profile
[AGENTMANAGER_CREDENTIAL] : Agent Manager Credentials needed to connect any SaaS instance
[OPENSHIFT_CONNECTION_URL] : Openshif connection details . This can be obtained by running oc config view
[APITOKEN] : API Token for the connection URL. See How to obtain the APITOKEN section below
[registry_url] : Openshift registry details. See How to obtain the registry details section
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: caagent
labels:
tier: monitoring
app: caagent
version: v1
spec:
# oc adm policy add-scc-to-user privileged -z default
template:
metadata:
labels:
app: caagent
spec:
hostPID: true
hostIPC: true
hostNetwork: true
tolerations:
- key: node-role.kubernetes.io/master
effect: NoSchedule
containers:
- resources:
securityContext:
privileged: true
env:
- name: containerflow
value: enabled
- name: agentManager_url_1
value: [AGENTMANAGER_URL]
- name: agentManager_credential
value: [AGENTMANAGER_CREDENTIAL]
- name: type
value: Openshift
- name: interval
value: "60"
- name: MIN_HEAP_VAL_IN_MB
value: "64"
- name: apmenv_introscope_agent_extensions_bundles_load
value: OpenshiftMonitor, HostMonitor
name: podmonitor
image: [registry_url]/caapm/apm-openshiftmonitor:latest
imagePullPolicy: Always
livenessProbe:
exec:
command:
- /bin/bash
- -c
- "if (( $(expr `date +%s` - `stat -c %Y /tmp/apmia-health/extensions/Docker-health.txt`) > 120 )); then exit 1; fi"
initialDelaySeconds: 120
resources:
limits:
cpu: 2
memory: 700Mi
requests:
cpu: 200m
memory: 300Mi
volumeMounts:
- name: dockersock
mountPath: /var/run/docker.sock
readOnly: true
- name: proc
mountPath: /host/proc
readOnly: true
volumes:
- name: dockersock
hostPath:
path: /var/run/docker.sock
- name: proc
hostPath:
path: /proc
---
apiVersion: v1
kind: DeploymentConfig
metadata:
name: caagent-deployment
labels:
tier: monitoring
app: caagent_v2
version: v1
spec:
replicas: 1
template:
metadata:
labels:
app: caagent_v2
spec:
hostPID: true
hostIPC: true
hostNetwork: true
containers:
- resources:
securityContext:
privileged: true
env:
- name: agentManager_url_1
value: [AGENTMANAGER_URL]
- name: agentManager_credential
value: [AGENTMANAGER_CREDENTIAL]
- name: connectionurl
value: [OPENSHIFT_CONNECTION_URL]
- name: apitoken
value: [APITOKEN]
- name: type
value: Openshift
- name: HostMonitoring
value: disabled
- name: MIN_HEAP_VAL_IN_MB
value: "64"
name: osemetainfo
image: [registry_url]/caapm/apm-openshiftmonitor:latest
resources:
limits:
cpu: 2
memory: 700Mi
requests:
cpu: 200m
memory: 300Mi
imagePullPolicy: Always
livenessProbe:
exec:
command:
- /bin/bash
- -c
- "if (( $(expr `date +%s` - `stat -c %Y /tmp/apmia-health/extensions/Openshift-health.txt`) > 900 )); then exit 1; fi"
initialDelaySeconds: 120
oc sa get-token -n caapm default
oc login -u system:admin
oc get svc -n default
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
docker-registry 172.30.1.1 <none> 5000/TCP 9d
172.30.1.1:5000
If you want to capture data from project1 and project2 only – you need to pass this additional ENV variable during deployment on both DaemonSet and Deployment configuration :
- name: KUBERNETES_NAMESPACE_MONITOR_LIST
value: project1, project2
If you are using the image from latest or 20200114 tag or rhel-20.1.0 tag onwards , you need to pass this additional ENV variable in both Deployment and DaemonSet Pods in order to establish the connection to 10.7 EM. This is not needed in case you are connecting to SaaS or 11.X EM
- name: apmenv_introscope_agent_connection_compatibility_version
value: "10.7"
oc delete -f caagent-openshiftmonitor.yml
Content type
Image
Digest
Size
345.4 MB
Last updated
almost 6 years ago
docker pull caapm/openshiftmonitor:haproxy