JERY is a Python 2.7 based simple database workload generator for Oracle and Enterprise Databases. It is designed to run in a special Docker image and it is streaming it's GUI through x11 to your host OS.
- What is Jery?
- Info
- Requirements
- Installation
- Run with own configuration file
- Used Libraries
- Adding an insecure Docker registry
To download install instructions use the readme.pdf (download)
This branch provides JERY which is a basic workload generator. However there is another version implementing a TPC-E like benchmark soltion called JERYe. If you are interested in JERYe, please refer to the branch MasterJERYe.
- Dedicated to Oracle and Enterprise DB
- Mimic Business Intelligence workload (100% massive read)
- Cluster aware
- Create its own test schema based of "SCOTT" data
- Generate CPU intensive activity
- Generate high IO rate (tunable)
- Can be user in user mode or in sysdba mode
- Provide:
- execution time for critical query
- Number of transaction per minute
- Total number of transaction per run
- System statistics
- Snapshot for AWR report
- Ideal for:
- System demonstration
- Calibration
- Performance comparison
However, JERY is not a benchmark tool
JERY is meant to run on Linux Systems only (primarily RHEL and CentOS). For this reason the following installation guide is mainly for RHEL. Since JERY is running in a Docker image, a recent version of Docker needs to be installed on the system.
- Log into your machine as a user with sudo or root privileges
- Make sure your existing yum packages are up-to-date
$ sudo yum update
- Add the yum repo by yourself
$ sudo tee /etc/yum.repos.d/docker.repo <<-EOF
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
- Install the Docker package
$ sudo yum install docker-engine
- Start the Docker daemon
$ sudo service docker start
- Verify docker is installed correctly by running a test image in a container
$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from hello-world
a8219747be10: Pull complete
91c95931e552: Already exists
hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
Digest: sha256:aa03e5d0d5553b4c3473e89c8619cf79df368babd1.7.1cf5daeb82aab55838d
Status: Downloaded newer image for hello-world:latest
Hello from Docker.
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(Assuming it was not already locally available.)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
For more examples and ideas, visit:
http://docs.docker.com/userguide/
* copied from http://docs.master.dockerproject.org/engine/installation/linux/rhel/
Docker install guides for other linux distributions can be found under:
JERY can either be downloaded from a Docker registry or from this GitHub page. These possibilities are described in the following.
- Open a new terminal and type
sudo docker pull oraclekc/jery
- Download the run script and execute it (download)
- download the latest release from this GitHub page (download)
- unzip the build file
- open a new terminal and navigate to the unzipped file (jerydocker.tar)
- import the unzipped file with
docker load < jerydocker.tar
- download the run script and execute it (download)
- Open a new terminal and type
sudo su
- Login to HPE Docker Hub with your Windows NT credentials:
docker login hub.docker.hpecorp.net
- Pull the jerydocker image with the command:
docker pull hub.docker.hpecorp.net/oraclekc/jery:latest
- Rename the pulled image to jerydocker
docker tag hub.docker.hpecorp.net/oraclekc/jery jerydocker
- Download the run script and execute it (download)
- Open a new terminal and type
sudo su
-
Add dockerregistry.oracle.epc.ext.hpe.com:5000 as an insecure registry (how to)
-
Execute the command:
docker pull dockerregistry.oracle.epc.ext.hpe.com:5000/jerydocker
- Rename the pulled image to jerydocker
docker tag dockerregistry.oracle.epc.ext.hpe.com:5000/jerydocker jerydocker
- Download the run script and execute it (download)
There are two options for adding a registry with no authorization to Docker running on RHEL7 (on client which wants to push/pull to registry)
$ dockerd --insecure-registry= dockerregistry.oracle.epc.ext.hpe.com:5000
Refer to https://docs.docker.com/engine/admin/ (CentOS / Red Hat Enterprise Linux / Fedora > Configuring Docker)
- Create the Docker config file
$ sudo mkdir /etc/systemd/system/docker.service.d
$ sudo nano /etc/systemd/system/docker.service.d/docker.conf
- Add the following to the created docker.conf:
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -–insecure-registry=dockerregistry.oracle.epc.ext.hpe.com:5000
- reload + restart the Docker daemon
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
- Check if “dockerregistry.oracle.epc.ext.hpe.com:5000” is added to point “Insecure Registries” of docker info:
$ docker info
The provided startup script offers the possibility to run JERY with an own configuration file in order to load predefined values. This can be done by downloading and editing the config.ini template. (download)
You can pass your own configuration to JERY with the command:
$ ./run.sh /your/path/to/config.ini