Unlock the power of choice with CloudPlex and DigitalOcean Get CloudPlex free for 3 months, and Digital Ocean for 1 month

Network & Traffic Management

Pain Point

Network and Traffic Management is a critical function in a cloud application. It includes fine-grained traffic control, retry policies, circuit breakers, and fault injection.

Developers are required to manually configure traffic management policies (circuit breaker, retry policies) for each Docker container. Developers also need to add service information in service mesh resources (virtual service, destination rule). This is a manual and tedious job.

The following are YAML Config file snippets for Circuit Breakers and Retry policy, for a single container.

circutbreaker.yaml

apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: 
  namespace: 
spec:
  host: ..svc.cluster.local   
  trafficPolicy:
    connectionPool:
      tcp:
        maxConnections: 1
      http:
        http1MaxPendingRequests: 1
        maxRequestsPerConnection: 1
    outlierDetection:
      consecutiveErrors: 1
      interval: 1s
      baseEjectionTime: 3m
      maxEjectionPercent: 100

retry-policy.yaml:

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: 
spec:
  hosts:
  - ..svc.cluster.local 
  http:
  - route:
    - destination:
        host: ..svc.cluster.local 
        subset: v1
    retries: 
         attempts: 3 
         perTryTimeout: 2s 
         retryOn:  //for example gateway-error,connect-failure,refused-stream 

How CloudPlex addresses your pain

With CloudPlex, developers only need to provide a few configurations of retry policies, circuit breakers, and fault injection. CloudPlex automatically creates and configures the resources (virtual service, destination rule) for each Docker container. CloudPlex also adds service information, as shown in the screenshot below

circuit-breakers