summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>2018-03-12 17:03:30 +0000
committerRodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>2018-03-21 09:15:44 +0000
commitb5436b214662c629c168c7af760f1f235b99669a (patch)
tree8f8a90c3a03b565d8c60fcd8801e76af4aa9d06f
parentbf892d9cf62b6bc64ea76d8b69a8fe3751cabd75 (diff)
Install RabitMQ for RPC messaging between processes
In NetworkServices Tescases, the TGs (traffic generators) run the traffic in a separate process. In order to synchronize the traffic injection and the runner interval loops, an RPC server is needed to publish/subscribe events. RabbitMQ is a well supported MQ in Linux (used in OpenStack or collectd) and supported by Python implemented projects like oslo.messaging [1]. RabbitMQ default configuration: - Port: 5672 - User/password: yardstick/yardstick [1]https://github.com/openstack/oslo.messaging JIRA: YARDSTICK-1068 Change-Id: I15db294ee430fb38e574a59b9ce1bf0f8b651a67 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
-rw-r--r--docker/Dockerfile3
-rw-r--r--docker/Dockerfile.aarch64.patch4
-rwxr-xr-xinstall.sh5
3 files changed, 9 insertions, 3 deletions
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 959315c6b..b97337e4d 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -39,7 +39,8 @@ RUN ${YARDSTICK_REPO_DIR}/docker/supervisor.sh
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
-EXPOSE 5000
+# nginx=5000, rabbitmq=5672
+EXPOSE 5000 5672
ADD http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img ${IMAGE_DIR}
ADD http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img ${IMAGE_DIR}
diff --git a/docker/Dockerfile.aarch64.patch b/docker/Dockerfile.aarch64.patch
index a2243293c..de272f5a8 100644
--- a/docker/Dockerfile.aarch64.patch
+++ b/docker/Dockerfile.aarch64.patch
@@ -42,8 +42,8 @@ index 2ee5b4c..23e5ea5 100644
RUN pip install appdirs==1.4.0 pyopenssl==17.5.0 python-openstackclient==3.11.0 python-heatclient==1.11.0
@@ -43,8 +44,8 @@ RUN echo "daemon off;" >> /etc/nginx/nginx.conf
-
- EXPOSE 5000
+# nginx=5000, rabbitmq=5672
+EXPOSE 5000 5672
-ADD http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img ${IMAGE_DIR}
-ADD http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img ${IMAGE_DIR}
diff --git a/install.sh b/install.sh
index 1dbf64ddf..6f4ab8c9d 100755
--- a/install.sh
+++ b/install.sh
@@ -85,6 +85,7 @@ apt-get update && apt-get install -y \
libxss-dev \
sudo \
iputils-ping
+ rabbitmq-server
if [[ "${DOCKER_ARCH}" != "aarch64" ]]; then
apt-get install -y libc6:arm64
@@ -94,6 +95,10 @@ apt-get -y autoremove && apt-get clean
git config --global http.sslVerify false
+# Configure and restart RabbitMQ
+rabbitmqctl add_user yardstick yardstick
+rabbitmqctl set_permissions yardstick ".*" ".*" ".*"
+rabbitmqctl reset
# install yardstick + dependencies
easy_install -U pip==9.0.1