mesheryctl perf apply

Run a Performance test

Synopsis

Run Performance test using existing profiles or using flags

mesheryctl perf apply [profile-name] [flags]

Examples

Execute a Performance test with the specified performance profile

mesheryctl perf apply meshery-profile [flags]

Execute a Performance test with creating a new performance profile

mesheryctl perf apply meshery-profile-new --url "https://google.com"

Execute a Performance test creating a new performance profile and pass certificate to be used

mesheryctl perf apply meshery-profile-new --url "https://google.com" --cert-path path/to/cert.pem

Execute a performance profile without using the certificate present in the profile

mesheryctl perf apply meshery-profile --url "https://google.com" --disable-cert

Run Performance test using SMP compatible test configuration If the profile already exists, the test will be run overriding the values with the ones provided in the configuration file

mesheryctl perf apply meshery-profile -f path/to/perf-config.yaml

Run performance test using SMP compatible test configuration and override values with flags

mesheryctl perf apply meshery-profile -f path/to/perf-config.yaml [flags]

Choice of load generator - fortio, wrk2 or nighthawk (default: fortio)

mesheryctl perf apply meshery-profile --load-generator wrk2

Execute a Performance test with specified queries per second

mesheryctl perf apply meshery-profile --url https://192.168.1.15/productpage --qps 30

Execute a Performance test with specified service mesh

mesheryctl perf apply meshery-profile --url https://192.168.1.15/productpage --mesh istio

Execute a Performance test creating a new performance profile and pass options to the load generator used If any options are already present in the profile or passed through flags, the –options flag will take precedence over the profile and flag options Options for nighthawk - https://github.com/layer5io/getnighthawk/blob/v1.0.5/pkg/proto/options.pb.go#L882-L1018 Options for fortio - https://github.com/fortio/fortio/blob/v1.57.0/fhttp/httprunner.go#L77-L84 Options for wrk2 - https://github.com/layer5io/gowrk2/blob/v0.6.1/api/gowrk2.go#L47-L53

mesheryctl perf apply meshery-profile-new --url "https://google.com" --options [filepath|json-string]
mesheryctl perf apply meshery-profile-new --url "https://google.com" --options path/to/options.json
mesheryctl perf apply meshery-profile-new --url "https://google.com" --load-generator nighthawk --options '{"requests_per_second": 10, "max_pending_requests": 5}'
mesheryctl perf apply meshery-profile-new --url "https://google.com" --load-generator fortio --options '{"MethodOverride": "POST"}'
mesheryctl perf apply meshery-profile-new --url "https://google.com" --load-generator wrk2 --options '{"DurationInSeconds": 15, "Thread": 3}'

Options

-b, --body string (optional) Load test body. Can be a filepath/string --cert-path string (optional) Path to the certificate to be used for the load test --concurrent-requests string (optional) Number of Parallel Requests --disable-cert (optional) Do not use certificate present in the profile --duration string (optional) Length of test (e.g. 10s, 5m, 2h). For more, see https://golang.org/pkg/time/#ParseDuration -f, --file string (optional) File containing SMP-compatible test configuration. For more, see https://github.com/layer5io/service-mesh-performance-specification -h, --help help for apply --load-generator string (optional) Load-Generator to be used (fortio/wrk2/nighthawk) --mesh string (optional) Name of the Service Mesh --name string (optional) Name of the Test --options string (optional) Additional options to be passed to the load generator. Can be a json string or a filepath containing json --qps string (optional) Queries per second --url string (optional) Endpoint URL to test (required with --profile)

Options inherited from parent commands

--config string path to config file (default "/home/runner/.meshery/config.yaml") -o, --output-format string (optional) format to display in [json|yaml] -t, --token string (required) Path to meshery auth config -v, --verbose verbose output -y, --yes (optional) assume yes for user interactive prompts.

Screenshots

Usage of mesheryctl perf apply perf-apply-usage

See Also

Go back to command reference index