PHP APM with Kubernetes
  • Updated on 21 May 2019
  • 1 minute to read
  • Contributors
  • Print
  • Share
  • Dark
    Light

PHP APM with Kubernetes

  • Print
  • Share
  • Dark
    Light

This document details how to install the PHP APM Profiler in your PHP application running on Kubernetes.

Prerequisite

Follow the Retrace Kubernetes Install Guide.

PHP Kubernetes Setup

Dockerfile Configuration

Adjust your Dockerfile to include the PHP Profiler.

RUN mkdir -p /stackify-php-apm && \
    cd /stackify-php-apm && \
    wget https://download.stackify.com/stackify-php-apm/stackify-php-apm-latest.tar.gz;  tar -zxvf stackify-php-apm-latest.tar.gz; rm stackify-php-apm-latest.tar.gz && \
    ./install.sh

RUN echo "[stackify]" >> [php_dir]/php.ini && \
   echo "extension=stackify.so" >> [php_dir]/php.ini && \
   echo "stackify.application_name=PHP Application" >>  [php_dir]/php.ini && \
   echo "stackify.environment_name=Production" >>  [php_dir]/php.ini

Adjust [php_dir] to point to your PHP configuration path.

Pod Configuration

Application containers are required to have the stackify volume mount configured in Retrace Kubernetes Install.

Example Application Pod YAML:

apiVersion: v1
kind: ReplicationController
metadata:
  name: pod-name
spec:
  replicas: 1
  selector:
    app: app-name
  template:
    metadata:
      name: template-name
      labels:
        app: app-name
    spec:
      containers:
      - name: container-name
        image: application-image
        volumeMounts:
          - mountPath: /usr/local/stackify
            name: stackify
      volumes:
        - name: stackify
          hostPath: 
            path: /var/stackify
            type: DirectoryOrCreate

Verify

Start up your PHP application container and make requests. You can then verify results in the Retrace dashboard.

Additional Guides

Was this article helpful?