-- HamidMoghaddam - 18 May 2016

Although the installation guide of the CloudSuite's benchmarks are provided by the Cloudsuite developers, sometimes we need to install each part of a benchmark in the different nodes. The following installation steps are used for implementing the web serving benchmark of CloudSuite on the different VMs of our cloud lab.

Creating Swarm Manager

In order to connect dockers which are installed on different nods we need installing Swarm.

  1. cloned Vm and named it cs-v3-web-swarmmanager-x64 and assigned it 10.0.100.62.
  2. installed docker by this link guide.
  3. opened terminal and wrote: docker pull swarm
  4. If get this error "Cannot connect to the Docker daemon. Is the docker daemon running on this host?" then run sudo usermod -aG docker mike and sudo usermod -aG docker root then logout and login
  5. docker pull progrium/consul
  6. add DOCKER_OPTS="-H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375 \ --cluster-store consul://10.0.100.62:8500 \ --cluster-advertise eth0:2375" to /etc/default/docker
  7. sudo service docker restart
  8. docker run -d -p 8500:8500 --hostname 10.0.100.62 --name consul-store progrium/consul -server -bootstrap
  9. docker run -d --name swarm-agent swarm join --advertise=10.0.100.62:2375 consul://10.0.100.62:8500
  10. docker run -d -p 22222:2375 --name swarm-manager swarm manage consul://10.0.100.62:8500
  11. docker -H tcp://10.0.100.62:22222 network create --driver overlay --subnet=172.28.0.0/16 --ip-range=172.28.5.0/24 my_net

Frontend

In the Frontend machine(IP:10.0.100.12)

1. docker run -d --name swarm-agent swarm join --advertise=10.0.100.12:2375 consul://10.0.100.62:8500

Backend

In the Backend machine(IP:10.0.100.2)

  1. docker run -d --name swarm-agent swarm join --advertise=10.0.100.12:2375 consul://10.0.100.62:8500

Memcache

In the Memcached machine(IP:10.0.100.42)

  1. docker run -d --name swarm-agent swarm join --advertise=10.0.100.42:2375 consul://10.0.100.62:8500

Client

In the Client machine(IP:10.0.100.32)

  1. docker run -d --name swarm-agent swarm join --advertise=10.0.100.32:2375 consul://10.0.100.62:8500

Swarm Manager

Again in the Swarm Maganer Machine:

  1. First check all nodes are healthy : docker -H tcp://10.0.100.62:22222 info (Note: all nodes status should be equal to Health)
  2. docker -H tcp://10.0.100.62:22222 pull cloudsuite/web-serving:db_server
  3. docker -H tcp://10.0.100.62:22222 pull cloudsuite/web-serving:memcached_server
  4. docker -H tcp://10.0.100.62:22222 pull cloudsuite/web-serving:web_server
  5. docker -H tcp://10.0.100.62:22222 pull cloudsuite/web-serving:faban_client
  6. docker -H tcp://10.0.100.62:22222 run -dt -e constraint:node==cs-v3-web-backend-x64 --net=my_net --name=mysql_server cloudsuite/web-serving:db_server
  7. docker -H tcp://10.0.100.62:22222 run -dt -e constraint:node==cs-v3-web-memcached-x64 --net=my_net --name=memcache_server cloudsuite/web-serving:memcached_server
  8. docker -H tcp://10.0.100.62:22222 run -dt -e constraint:node==cs-v3-web-frontend-x64 --net=my_net --name=web_server cloudsuite/web-serving:web_server /etc/bootstrap.sh

Running benchmark

Now it for running benchmark just use following command in the swarm manager machine:

  1. Get IP address of web_server by : docker -H tcp://10.0.100.62:22222 inspect --format '' web_server
  2. Then run benchmark: docker -H tcp://10.0.100.62:22222 run --net=my_net --name=faban_client cloudsuite/web-serving:faban_client [put IP address of step 1 in here]

If you want to see faban(Elgg) web consol then used following steps instead of above two:

  1. docker -H tcp://10.0.100.62:22222 run -it --entrypoint=/bin/bash -e constraint:node==cs-v3-web-client-x64 --net=my_net --name=faban_client cloudsuite/web-serving:faban_client
  2. If not loggined automatically then login to faban client by docker -H tcp://10.0.100.62:22222 attach faban_client
  3. Then run faban: faban/master/bin/startup.sh
  4. Then cd /home/web20_benchmark/build
  5. java -jar Usergen.jar https://[put IP address of web_server in here]:8080
  6. Now use ifconfig to find IP address of faban_client(something like 172.18.0.2)
  7. Access to faban web consol by: https://[IP address of step 6]:9980
Edit | Attach | Watch | Print version | History: r12 < r11 < r10 < r9 < r8 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r12 - 2016-10-07 - HamidMoghaddam
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback