---
title: Configuring Service Mesh for production
---

# Configuring Service Mesh for production {#ossm-production}

When you are ready to move from a basic installation to production, you must configure your control plane, tracing, and security certificates to meet production requirements.

**Prerequisites**

- Install and configure Red Hat OpenShift Service Mesh.
- Test your configuration in a staging environment.

## Configuring your ServiceMeshControlPlane resource for production {#ossm-smcp-prod_ossm-architecture}

If you have installed a basic `ServiceMeshControlPlane` resource to test Service Mesh, you must configure it to production specification before you use Red Hat OpenShift Service Mesh in production.

You cannot change the `metadata.name` field of an existing `ServiceMeshControlPlane` resource. For production deployments, you must customize the default template.

**Procedure**

1. Configure the Distributed Tracing Platform (Jaeger) for production.

   1. Edit the `ServiceMeshControlPlane` resource to use the `production` deployment strategy, by setting `spec.addons.jaeger.install.storage.type` to `Elasticsearch` and specify additional configuration options under `install`. You can create and configure your Jaeger instance and set `spec.addons.jaeger.name` to the name of the Jaeger instance.

      ```yaml {title="Default Jaeger parameters including Elasticsearch"}
      apiVersion: maistra.io/v2
      kind: ServiceMeshControlPlane
      metadata:
        name: basic
      spec:
        version: v2.6
        tracing:
          sampling: 100
          type: Jaeger
        addons:
          jaeger:
            name: MyJaeger
            install:
              storage:
                type: Elasticsearch
              ingress:
                enabled: true
        runtime:
          components:
            tracing.jaeger.elasticsearch: # only supports resources and image name
              container:
                resources: {}
      ```
   2. Configure the sampling rate for production. For more information, see the Performance and scalability section.
2. Ensure your security certificates are production ready by installing security certificates from an external certificate authority. For more information, see the Security section.

**Verification**

1. Enter the following command to verify that the `ServiceMeshControlPlane` resource updated properly. In this example, `basic` is the name of the `ServiceMeshControlPlane` resource.

   ```terminal
   $ oc get smcp basic -o yaml
   ```

**Additional resources**
{._additional-resources}

- For more information about tuning Service Mesh for performance, see [Performance and scalability](/openshift-docs-markdown/service_mesh/v2x/ossm-performance-scalability#ossm-performance-scalability).
