load test kubernetes proxy and improve scalability - performance

What are the possibilities and options to load test the kubernetes proxy and record the performance. What are the tools that can be used and how can scalability be measured ?

I'm not sure about kube-proxy specifially, but you can try out the node-perf project.
There is also a great demo for scale testing services here.
The networking e2e tests also have a specific networking perf test that you can run against a local or remote cluster.

Related

How to Handle K6 cluster for High Load for a Single Test

I have a performance test script that takes a big load for a single run. I, therefore, need to use several machines to handle that load. My goal is to use a K6 cluster for this task,However, I need to use the K6 cluster to do it. Please share any ideas, tutorials, or documentation you may have with me.
there are currently no resources available to support it. I require guidance in using the K6 cluster.
There is documentation in K6 on how to do that using Kubernetes, but I'm new to Kubernetes.

Enabling web vitals measurement tools in restricted staging environments

I want to able to use https://web.dev/measure/ on our staging environments but unfortunately, our staging environments are heavily restricted only allowing certain IPs to access it.
My Question is. Is it possible to whitelist https://web.dev/measure/ soo that I can run these tests on our stating environments?
I believe the web.dev/measure tool uses the PageSpeed Insights API under the hood, so you could look at your server logs for the API accessing it, and see if they're consistent from run to run. If they are, the you could whitelist that IP.
Honestly, though, I'd recommend looking into Lighthouse CI, as it's designed for your use case. The web.dev/measure tool is designed for learning.

MicroService with DCOS

I decided to move to MicroService architecture, divide a project into multiple services and run those services on DCOS.It really gives a good story to project deployment and maintenance. But it makes development process complex.
For the developer, it was easy to run the application locally while implementation is in progress.Now the project is divided into multiple services and runs on DCOS which require good configuration. so to test application for the developer in the middle of implementation becomes a nightmare.
Guys, anyone is using DCOS with Microservice, can you please suggest what process you are following for internal development.
DCOS is just a tool for your deployment, so in order to give a better answer you'd have to share more about your technology stack in your question. But here some general thoughts: There are different types/levels of testing and there are different considerations for each.
On unit level - This depends on what technology you use for implementing your services and is the reason why languages like go become more and more popular for server development. If you use go for example, you can easily run any service you are currently developing locally (not containerized) on the dev machine. And you can easily run attached unit tests. You would either run dependent services locally or mock them up (probably depending on effort). You may also prefer asking each service team to provide mock services as part of their regular deliveries.
And you will require special environment settings and service configuration for the local environment.So summarized this approach will require you to have means in place to run services locally and depending on the implementation technologies you use it will be easier or harder.
On deployment/integration level - Setting up a minimal cluster on the dev's local machine and/or using dedicated testing- and staging clusters. This allows you to test the services including containerization and in a more final deployment environment with dependencies. You would probably write special test clients for this type of test. And this approach will also require you to have separate environment settings, configuration files, etc. for the different environments. Tools like Jaeger become more popular for helping with debugging errors through multiple services here.
Canary testing. Like the name suggests - You deploy your latest service version to a small portion of your production cluster in order to test it on a limited number of users first before rolling it out to the masses. In this stage you can run user level tests and in fact your users become the testers, so it is to be used carefully. Some organizations prefer to have special beta-type-users that will only get access to those environments.

Network traffic simulation test

I've got a PHP site up and running, and the db is mysql. before launching the site, I would like to test the traffic handling. Now am assuming that there are soe softwares that would simulate the traffic and log the processes running on my site. Any recommendation of software I should use? the traffic doesn't have to be real, but nonetheless, I would like to generate a high traffic to investigate the threshold of the site.
Appreciate the help
You can use Gatling https://github.com/excilys/gatling.
It's a stress tool written in Scala which aims at being more efficient and lighter than Jmeter.
Basically you record a scenario on your website and then run it 'n' times in parallel.
Here is the wiki for more infos https://github.com/excilys/gatling/wiki/Basic-Usage
You can use Jmeter:
It's free.
it's easy to Start with lot of documentation on its Website and on internet
it has a proxy feature to easily create test plan from browser navigation
It is easy to start up processes on other machines. It remote testing, can be done from GUI or console.
The scripts can be written in beanshell, java, or any jsr223 language ( groovy, Javascript, scala, jexl ...)
it has a lot of built- in samplers and thanks to its plugin architecture it's very Easy to add new ones or use any scripting engine to do what's missing
it has great user mailing list
it has very reactive support
it's now a top Level Apache
it can run thousands of users
professional solutions exist to run it from cloud
...
See:
Performing a Stress Test on Web Application?
Best way to stress test a website
How do you test the performance of a website?

How to Test Site Performance in Asia

I'm located in the US and need to test site performance for Asian audiences. Any provide help on how I accomplish this?
Google 'site performance test' and you will find a number of options for testing responsiveness of your website from various locations around the world. I have used Keynote in the past and found it worked very well.
You can use Fiddler to simulate low bandwitch. In menu there is option Rules|Performance|Simulate modem speeds.
You must use a performance test tool, like jmeter. These tools support remote test execution, so you can make the test case on your local machine and run it later from a remote server, in Asia.
To get a server in Asia, you can try Amazon EC2. They have instances in Singapore and Tokyo.

Resources