Hypertest Docs
HyperTestKnowledge Base
  • Quick Set-up
    • Install HyperTest
    • Deploy your application
    • Mirror Traffic
      • Using Kubernetes
      • Using Amazon ECS
      • Using Docker
      • Using Nginx
      • Using Goreplay
        • ElasticBeanStalk Script for Goreplay
      • Using Apache
      • Using IIS
      • Using Istio
      • Using Kong
      • Using HAProxy
      • Others
  • HyperTest Overview
    • Introduction
    • Architecture
  • Detailed Setup Guide
    • Detailed Setup Guide
      • Installation
        • Linux VM
        • Kubernetes Cluster
          • Hardware Requirements
          • Cluster Setup
            • EKS
              • Existing Application Load Balancer
              • Calculate Setup Cost for EKS Cluster
            • GCP
            • AKS
            • Self Managed
              • Microk8s with EKS-D
          • HyperTest Installation
      • Mirror Traffic
      • Configure HyperTest
      • Automate Starting a Test
        • CI Integration
          • GitHub Checks Integration
            • Mandatory checks
          • Gitlab Integration
          • Bitbucket Integration
          • Jenkins Pipeline
            • Jenkins Plugins for PR events
  • Upgrade HyperTest
    • Upgrade HyperTest
      • Linux VM
      • Kubernetes Cluster
  • User Guides
    • Usage Guide
      • Install and Configure HyperTest
        • Install HyperTest
        • Configure Base DNS
        • Add New Service
      • Tests Runs and Analysis
        • View Test Cases
        • Start New Test Run
        • Understand Your Test Run Analysis
        • Prioritize Your Error Types
        • Track Bugs
        • Ignore Errors/Desired Changes
        • View/Download Report
        • View Consolidated Dashboard Reports
        • Sign-off Reports
        • Reduce Execution Time
        • Deduplication Rules
      • Troubleshooting and FAQs
    • Best Practices Guide
      • Cost Optimization
    • Dashboard Tour
      • Dashboard
      • All Sessions
      • Regression Report
      • Notifications
      • First Test Run
      • Interactions
      • Custom Analysis
      • Configuration
    • User Management
      • Create Admin User
      • Roles, Groups & Users
      • Enabling User Signup
    • Other Guides
      • Basic Nginx Auth for Linux HT
  • Middleware
  • Advanced Features
    • Import test cases from Postman
  • Change Log
  • Troubleshooting
  • FAQs
    • Setup
    • General
    • Regression Report
  • Glossary
    • Session
Powered by GitBook
On this page
  • Brief Steps:
  • 1. Create Service Entry
  • 2. Add Mirror section to Virtual Service
  1. Quick Set-up
  2. Mirror Traffic

Using Istio

PreviousUsing IISNextUsing Kong

Last updated 2 years ago

In this guide, we will create for our external HyperTest logger service and mirror traffic to it using .

Brief Steps:

  1. Create a new Service Entry for HyperTest logger

  2. Add route rule in Virtual Service to mirror traffic to it

1. Create Service Entry

Here we are creating a new Service Entry for Hypertest. The hosts can be anything here as we have used resolution as STATIC so it will use endpoint address.

hypertest-service-entry.yml
apiVersion: networking.istio.io/v1beta1
kind: ServiceEntry
metadata:
  name: hypertest-logger-svc-entry
spec:
  hosts:
    - hypertest.<name_of_your_service>.logger # this can be any value,it is used as a ref later
  location: MESH_EXTERNAL
  ports:
    - number: <hypertest-logger-port> 
      name: http
      protocol: HTTP
  resolution: STATIC
  endpoints:
  - address: <hypertest-vm-ip> 

Create the ServiceEntry using the below command:

kubectl apply -f hypertest-service-entry.yml

2. Add Mirror section to Virtual Service

Now we will add mirror route rule in application's virtual service and point it to host defined in service entry.

Only copy the parts from ## copy from this till ## to this. Rest is just sample Virtual Service file.

service-virtual-service.yaml
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: node-app
spec:
  hosts:
  - "*"
  gateways:
  - node-app-gateway
  http:
  - route:
    - destination:
        host: node-app
        port:
          number: <your-application-port>
    ## copy from this 
    mirror:
      host: hypertest.<name_of_your_service>.logger
    ## to this

Update your application's Virtual Service by the follwoing command:

kubectl apply -f service-virtual-service.yaml

To Verify the mirroring setup, hit any api on the application and check for request in "last mirrored requests" section or Session page in HyperTest.

ServiceEntry
Istio