This change add's a note to specify env vars to use desired
CPU and Memory for individual VM's as required
Signed-off: Syed Ahsan<syed.ahsan.shamim.zaidi@intel.com>
This script configures a node in the cluster for pod scaling
testing. This configuration is necessary for pushing beyond the
110 pod max default in Kubernetes.
Vagrant file blows up if http_proxy is set but no_proxy is not set. This
was discovered during the testing of the initial patch which was to add
the default CIDR for Vagrant to the no_proxy settings.
Closes issue #136
Signed-off-by: craigsterrett <craig.sterrett@intel.com>
In the rewrite of the report generation code, we regressed to
using the passed in requested number of pods rather than the
actual. Since we typically attempt to launch more pods than the
system is capable of, the math for the stats are done incorrectly
and misreported.
This changes the behavior back to using the correct value of the
total number of pods launched.
Use `tr` rather than `sed` for doing the line/whitespace conversions
on the JSON stream, if asked. Slightly more efficient, and we also drop
the wrapping ""'s, to allow the data to land in logstash without error.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
This change adds the env variable for the support for
virtualbox to support kubernetes communication between
master and worker nodes. Since KVM gives default ip
address to the spinned up VM's, whereas virtualbox uses
same ip address for all, the kubelet was not functioning
, this change fixes it and assigns the ip address to env
variable.
To aid in incorporating the results graphs and tables into other
documents, generate PNG files of the tables and plots alongside
the full PDF report, and place them in the output directory.
Achieve this by processing an html as well as a pdf targetted
output document, and grabbing the png's generated from that
operation.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Debug mode of the report generator now volume mounts the scripts
into the container (rather than just COPYing them in), to allow
interactive edit/run debug cycles. Document it.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Now the new tidy_scaling.R seems to be functional, drop the
deprecated scaling.R.
Yes, we could/should probably have just replaced scaling.R, but
that is just the way it panned out.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Do not account for 'noschedule' nodes in the stats calculations,
as they don't host the pods we are measuring.
Show the boot times in seconds, rather than milliseconds.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
We now use `bc` for some of the stats calculations. Ensure it
is installed, or we silently generate bad field data.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Due to the nature of the shape of the JSON data import, the scaling
R had some hard wired constructs bound to the data shape. This limited
our extending the JSON data.
recode to be more 'R tidyverse' style.
Also add in a launch time stats table, and split the graphing
across 3 pages to de-cramp them (particularly when rendering >1
test run).
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
When in debug mode, mount the scripts dir into the container to
allow 'live' editing and reloading into R. This makes the dev cycle
much faster.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Keep track of memory consumed on the nodes, log that, and
generate an overall cluster value for 'pods-per-Gb'.
Generate this data here, whilst we have the data to hand, as
it can get much more difficult to calculate this information
the further you get down the monitoring stream (such as the
farther you get into an ELK stack).
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Removed hardcoded vagrant box version. This change will now
allow the override of the version, or if no override is passed in
it will take the version on the system, or download the latest version.
Signed-off-by: craigsterrett <craig.sterrett@intel.com>
This udpate allows us to specify an OS specific
include file with function overrides. Useful when using
setup_system.sh on other OSes.
Signed-off-by: Justin Scott <justin.a.scott@intel.com>
The README has not kept upto date with the code. Update to make it
more useful, but try to keep fairly neutral so it does not rot so
fast.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
This change will allow the create_stack.sh script to be called to init
the k8s cluster with a user generated bootstrap token and a pre-defined
master_ip. This will allow us to automate initial deployment of cluster
with a known list of IPs
Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
Add a table to the end of the report showing useful details about
the systems that were under test - version numbers, resources etc.
Fixes: #145
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
The time we measure is the time to launch and delete the whole
deployment, not the 'pod'. Change the graph titles to be more
accurate.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Rather than duplicate the same aes() over all the parts of the ggplot(),
add the aes to the base ggplot, and then default to using that for
all the other additions.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
geom_smooth can generate a mass of warnings when applied to a small
dataset. Use the same test (>20 samples) we do for 'do we draw dots',
but in the inverse - so, we either draw dots (small set) or a smoothed
overlayed line (bit sets).
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
Now the data has the ability to 'step' (that is, increment
the pod count by >1 between samples), use that n_pod value
for the x-axis, rather than a +1 count, so the x-axis makes
a lot more sense.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>
If a RUNTIME is not set, then save it as 'default' in the JSON
rather than an empty string, as the emptry string does not render
well later in any graphing.
Signed-off-by: Graham Whaley <graham.whaley@intel.com>