From 1a18d5ca7f1cd671644423aa73566abc161f9a13 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Thu, 2 Aug 2012 19:44:17 +0530 Subject: [PATCH] Removing the obsolete scripts directory from agent-simulator These are legacy bash scripts which were used to setup configurations of mgmt server when testing its scalability. --- agent-simulator/scripts/__old__/deletePod.sh | 26 -- .../scripts/__old__/deleteServiceOffering.sh | 25 -- agent-simulator/scripts/__old__/deleteVlan.sh | 26 -- .../scripts/__old__/deployVirtualMachine.sh | 26 -- .../scripts/__old__/listRouters.sh | 22 -- .../scripts/__old__/listVirtualMachine.sh | 22 -- .../scripts/__old__/queryAsyncJobResult.sh | 53 ---- agent-simulator/scripts/__old__/run.sh | 25 -- .../scripts/__old__/setupDirectPods.sh | 31 --- agent-simulator/scripts/__old__/setupHosts.sh | 23 -- .../scripts/__old__/setupPodAndNetwork.sh | 39 --- .../scripts/__old__/setupServiceOffering.sh | 24 -- agent-simulator/scripts/__old__/setupVlan.sh | 26 -- .../scripts/__old__/simulator_advanced.sh | 55 ---- .../scripts/__old__/simulator_basic.sh | 53 ---- .../scripts/__old__/startRouter.sh | 26 -- agent-simulator/scripts/__old__/testQuery.sh | 22 -- agent-simulator/scripts/addHostStats.py | 52 ---- agent-simulator/scripts/addHosts.png | Bin 44302 -> 0 bytes .../scripts/guava/__old__/1000routers.sh | 37 --- .../guava/__old__/createAdminAccount.sh | 24 -- .../guava/__old__/createStoragePool.sh | 20 -- .../guava/__old__/createUserAccount.sh | 24 -- .../scripts/guava/__old__/deleteAccount.sh | 25 -- .../scripts/guava/__old__/deletePod.sh | 26 -- .../guava/__old__/deleteServiceOffering.sh | 25 -- .../scripts/guava/__old__/deleteVlan.sh | 26 -- .../guava/__old__/deployVirtualMachine.sh | 27 -- .../guava/__old__/destroyVirtualMachine.sh | 25 -- .../scripts/guava/__old__/listCapacity.sh | 22 -- .../scripts/guava/__old__/listEvents.sh | 22 -- .../scripts/guava/__old__/listHosts.sh | 22 -- .../scripts/guava/__old__/listRouters.sh | 22 -- .../scripts/guava/__old__/listTemplates.sh | 22 -- .../guava/__old__/listVirtualMachine.sh | 22 -- agent-simulator/scripts/guava/__old__/load.sh | 31 --- .../scripts/guava/__old__/networkShutDown.sh | 24 -- .../scripts/guava/__old__/networkStart.sh | 24 -- .../scripts/guava/__old__/reconnectStats.sh | 28 -- .../scripts/guava/__old__/setup.sh | 44 --- .../scripts/guava/__old__/setupDirectPods.sh | 31 --- .../scripts/guava/__old__/setupHosts.sh | 23 -- .../guava/__old__/setupPodAndNetwork.sh | 39 --- .../guava/__old__/setupServiceOffering.sh | 24 -- .../scripts/guava/__old__/setupVlan.sh | 26 -- .../scripts/guava/__old__/startRouter.sh | 26 -- .../guava/__old__/startVirtualMachine.sh | 26 -- .../guava/__old__/stopVirtualMachine.sh | 26 -- .../scripts/guava/__old__/stress.sh | 55 ---- .../scripts/guava/__old__/stress2.sh | 127 --------- agent-simulator/scripts/guava/setup.py | 147 ---------- .../scripts/guava/tests/testProvision.py | 139 ---------- agent-simulator/scripts/kumquat/setup.py | 194 ------------- .../scripts/kumquat/tests/testProvision.py | 259 ------------------ agent-simulator/scripts/run.bat | 19 -- .../scripts/zucchini/__old__/deletePod.sh | 26 -- .../zucchini/__old__/deleteServiceOffering.sh | 25 -- .../scripts/zucchini/__old__/deleteVlan.sh | 26 -- .../scripts/zucchini/__old__/deployBulk-sg.sh | 206 -------------- .../scripts/zucchini/__old__/deployBulk.sh | 159 ----------- .../zucchini/__old__/deployVirtualMachine.sh | 26 -- .../zucchini/__old__/destroySystemVm.sh | 52 ---- .../zucchini/__old__/destroyVirtualMachine.sh | 25 -- .../scripts/zucchini/__old__/listCapacity.sh | 22 -- .../scripts/zucchini/__old__/listEvents.sh | 22 -- .../scripts/zucchini/__old__/listHosts.sh | 22 -- .../scripts/zucchini/__old__/listRouters.sh | 22 -- .../scripts/zucchini/__old__/listTemplates.sh | 22 -- .../zucchini/__old__/listVirtualMachine.sh | 22 -- .../scripts/zucchini/__old__/monitor.sh | 36 --- .../scripts/zucchini/__old__/newsetup.sh | 228 --------------- .../zucchini/__old__/reconnectStats.sh | 28 -- .../scripts/zucchini/__old__/setup.sh | 90 ------ .../zucchini/__old__/setupDirectPods.sh | 31 --- .../scripts/zucchini/__old__/setupHosts.sh | 23 -- .../zucchini/__old__/setupPodAndNetwork.sh | 39 --- .../zucchini/__old__/setupServiceOffering.sh | 24 -- .../scripts/zucchini/__old__/setupVlan.sh | 26 -- .../scripts/zucchini/__old__/setup_sg.sh | 252 ----------------- .../scripts/zucchini/__old__/small.sh | 158 ----------- .../scripts/zucchini/__old__/so_setup.sh | 21 -- .../scripts/zucchini/__old__/startRouter.sh | 26 -- .../zucchini/__old__/startVirtualMachine.sh | 26 -- .../scripts/zucchini/__old__/stopRouter.sh | 49 ---- .../zucchini/__old__/stopVirtualMachine.sh | 49 ---- .../scripts/zucchini/__old__/zucchini219.sh | 119 -------- agent-simulator/scripts/zucchini/setup.py | 217 --------------- .../scripts/zucchini/tests/testListVm.py | 53 ---- .../scripts/zucchini/tests/testProvision.py | 184 ------------- .../zucchini/zucchini.configuration.sql | 46 ---- 90 files changed, 4681 deletions(-) delete mode 100755 agent-simulator/scripts/__old__/deletePod.sh delete mode 100755 agent-simulator/scripts/__old__/deleteServiceOffering.sh delete mode 100755 agent-simulator/scripts/__old__/deleteVlan.sh delete mode 100755 agent-simulator/scripts/__old__/deployVirtualMachine.sh delete mode 100755 agent-simulator/scripts/__old__/listRouters.sh delete mode 100755 agent-simulator/scripts/__old__/listVirtualMachine.sh delete mode 100755 agent-simulator/scripts/__old__/queryAsyncJobResult.sh delete mode 100644 agent-simulator/scripts/__old__/run.sh delete mode 100755 agent-simulator/scripts/__old__/setupDirectPods.sh delete mode 100755 agent-simulator/scripts/__old__/setupHosts.sh delete mode 100755 agent-simulator/scripts/__old__/setupPodAndNetwork.sh delete mode 100755 agent-simulator/scripts/__old__/setupServiceOffering.sh delete mode 100755 agent-simulator/scripts/__old__/setupVlan.sh delete mode 100755 agent-simulator/scripts/__old__/simulator_advanced.sh delete mode 100755 agent-simulator/scripts/__old__/simulator_basic.sh delete mode 100755 agent-simulator/scripts/__old__/startRouter.sh delete mode 100755 agent-simulator/scripts/__old__/testQuery.sh delete mode 100644 agent-simulator/scripts/addHostStats.py delete mode 100644 agent-simulator/scripts/addHosts.png delete mode 100755 agent-simulator/scripts/guava/__old__/1000routers.sh delete mode 100755 agent-simulator/scripts/guava/__old__/createAdminAccount.sh delete mode 100755 agent-simulator/scripts/guava/__old__/createStoragePool.sh delete mode 100755 agent-simulator/scripts/guava/__old__/createUserAccount.sh delete mode 100755 agent-simulator/scripts/guava/__old__/deleteAccount.sh delete mode 100755 agent-simulator/scripts/guava/__old__/deletePod.sh delete mode 100755 agent-simulator/scripts/guava/__old__/deleteServiceOffering.sh delete mode 100755 agent-simulator/scripts/guava/__old__/deleteVlan.sh delete mode 100755 agent-simulator/scripts/guava/__old__/deployVirtualMachine.sh delete mode 100755 agent-simulator/scripts/guava/__old__/destroyVirtualMachine.sh delete mode 100755 agent-simulator/scripts/guava/__old__/listCapacity.sh delete mode 100755 agent-simulator/scripts/guava/__old__/listEvents.sh delete mode 100755 agent-simulator/scripts/guava/__old__/listHosts.sh delete mode 100755 agent-simulator/scripts/guava/__old__/listRouters.sh delete mode 100755 agent-simulator/scripts/guava/__old__/listTemplates.sh delete mode 100755 agent-simulator/scripts/guava/__old__/listVirtualMachine.sh delete mode 100755 agent-simulator/scripts/guava/__old__/load.sh delete mode 100755 agent-simulator/scripts/guava/__old__/networkShutDown.sh delete mode 100755 agent-simulator/scripts/guava/__old__/networkStart.sh delete mode 100755 agent-simulator/scripts/guava/__old__/reconnectStats.sh delete mode 100755 agent-simulator/scripts/guava/__old__/setup.sh delete mode 100755 agent-simulator/scripts/guava/__old__/setupDirectPods.sh delete mode 100755 agent-simulator/scripts/guava/__old__/setupHosts.sh delete mode 100755 agent-simulator/scripts/guava/__old__/setupPodAndNetwork.sh delete mode 100755 agent-simulator/scripts/guava/__old__/setupServiceOffering.sh delete mode 100755 agent-simulator/scripts/guava/__old__/setupVlan.sh delete mode 100755 agent-simulator/scripts/guava/__old__/startRouter.sh delete mode 100755 agent-simulator/scripts/guava/__old__/startVirtualMachine.sh delete mode 100755 agent-simulator/scripts/guava/__old__/stopVirtualMachine.sh delete mode 100755 agent-simulator/scripts/guava/__old__/stress.sh delete mode 100755 agent-simulator/scripts/guava/__old__/stress2.sh delete mode 100644 agent-simulator/scripts/guava/setup.py delete mode 100644 agent-simulator/scripts/guava/tests/testProvision.py delete mode 100644 agent-simulator/scripts/kumquat/setup.py delete mode 100644 agent-simulator/scripts/kumquat/tests/testProvision.py delete mode 100644 agent-simulator/scripts/run.bat delete mode 100755 agent-simulator/scripts/zucchini/__old__/deletePod.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/deleteServiceOffering.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/deleteVlan.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/deployBulk-sg.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/deployBulk.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/deployVirtualMachine.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/destroySystemVm.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/destroyVirtualMachine.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/listCapacity.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/listEvents.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/listHosts.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/listRouters.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/listTemplates.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/listVirtualMachine.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/monitor.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/newsetup.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/reconnectStats.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/setup.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/setupDirectPods.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/setupHosts.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/setupPodAndNetwork.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/setupServiceOffering.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/setupVlan.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/setup_sg.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/small.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/so_setup.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/startRouter.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/startVirtualMachine.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/stopRouter.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/stopVirtualMachine.sh delete mode 100755 agent-simulator/scripts/zucchini/__old__/zucchini219.sh delete mode 100644 agent-simulator/scripts/zucchini/setup.py delete mode 100644 agent-simulator/scripts/zucchini/tests/testListVm.py delete mode 100644 agent-simulator/scripts/zucchini/tests/testProvision.py delete mode 100644 agent-simulator/scripts/zucchini/zucchini.configuration.sql diff --git a/agent-simulator/scripts/__old__/deletePod.sh b/agent-simulator/scripts/__old__/deletePod.sh deleted file mode 100755 index 01cb7ce9e56..00000000000 --- a/agent-simulator/scripts/__old__/deletePod.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -pod_query="GET http://10.91.30.226:8096/client/?command=deletePod&id=$x HTTP/1.0\n\n" - - -echo -e $pod_query | nc -v -q 20 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/__old__/deleteServiceOffering.sh b/agent-simulator/scripts/__old__/deleteServiceOffering.sh deleted file mode 100755 index 1a6c8084628..00000000000 --- a/agent-simulator/scripts/__old__/deleteServiceOffering.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -delete_so="GET http://10.91.30.226:8096/client/?command=deleteServiceOffering&id=$x HTTP/1.0\n\n" - -echo -e $delete_so | nc -v -q 20 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/__old__/deleteVlan.sh b/agent-simulator/scripts/__old__/deleteVlan.sh deleted file mode 100755 index 34ced903850..00000000000 --- a/agent-simulator/scripts/__old__/deleteVlan.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -vlan_query="GET http://10.91.30.226:8096/client/?command=deleteVlanIpRange&id=$x HTTP/1.0\n\n" - - -echo -e $vlan_query | nc -v -q 20 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/__old__/deployVirtualMachine.sh b/agent-simulator/scripts/__old__/deployVirtualMachine.sh deleted file mode 100755 index 15539d23a7c..00000000000 --- a/agent-simulator/scripts/__old__/deployVirtualMachine.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -zoneid=$1 -templateId=$2 -serviceOfferingId=$3 - -query="GET http://10.91.30.226:8096/client/?command=deployVirtualMachine&zoneId=$1&templateId=$2&serviceOfferingId=$3&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 20 10.91.30.226 8096 diff --git a/agent-simulator/scripts/__old__/listRouters.sh b/agent-simulator/scripts/__old__/listRouters.sh deleted file mode 100755 index d98a8e5ea32..00000000000 --- a/agent-simulator/scripts/__old__/listRouters.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.226:8096/client/?command=listRouters&zoneId=$1&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v 10.91.30.226 8096 diff --git a/agent-simulator/scripts/__old__/listVirtualMachine.sh b/agent-simulator/scripts/__old__/listVirtualMachine.sh deleted file mode 100755 index 40e2a444d5a..00000000000 --- a/agent-simulator/scripts/__old__/listVirtualMachine.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.28.33:8096/client/?command=listVirtualMachines&zoneId=$1&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 20 10.91.28.33 8096 diff --git a/agent-simulator/scripts/__old__/queryAsyncJobResult.sh b/agent-simulator/scripts/__old__/queryAsyncJobResult.sh deleted file mode 100755 index 768b331caed..00000000000 --- a/agent-simulator/scripts/__old__/queryAsyncJobResult.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -usage() { - printf "Query job result Usage: %s: -h management-server -j jobid\n" $(basename $0) >&2 -} - -#options -jflag= -hflag= - -jobid= -host="127.0.0.1" #defaults to localhost - -while getopts 'h:j:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - j) jflag=1 - jobid="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [ $jflag != "1" ] -then - usage - exit 2 -fi - - -job_query="GET http://$host:8096/client/?command=queryAsyncJobResult&jobid=$jobid HTTP/1.0\n\n" -echo -e $job_query | nc -v -w 60 $host 8096 diff --git a/agent-simulator/scripts/__old__/run.sh b/agent-simulator/scripts/__old__/run.sh deleted file mode 100644 index 015f3f724e7..00000000000 --- a/agent-simulator/scripts/__old__/run.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - - - -#run.sh runs the agent simulator client. -java -cp cloud-utils.jar:agent-simulator.jar:log4j-1.2.15.jar:apache-log4j-extras-1.0.jar:ws-commons-util-1.0.2.jar:xmlrpc-client-3.1.3.jar:cloud-agent.jar:cloud-core.jar:xmlrpc-common-3.1.3.jar:javaee-api-5.0-1.jar:gson-1.3.jar:commons-httpclient-3.1.jar:commons-logging-1.1.1.jar:commons-codec-1.4.jar:commons-collections-3.2.1.jar:commons-pool-1.4.jar:.:./conf com.cloud.agent.AgentSimulator $@ - - diff --git a/agent-simulator/scripts/__old__/setupDirectPods.sh b/agent-simulator/scripts/__old__/setupDirectPods.sh deleted file mode 100755 index 2a252d4c8a7..00000000000 --- a/agent-simulator/scripts/__old__/setupDirectPods.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 -y=$2 -name=$3 - -pod_query="GET http://10.91.30.226:8096/client/?command=createPod&zoneId=1&name=SSP$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 -HTTP/1.0\n\n" - -echo -e $pod_query | nc -v -q 20 10.91.30.226 8096 - -#vlan_query="GET http://10.91.30.226/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.252 HTTP/1.0\n\n" - -#echo -e $vlan_query | nc -v -q 20 10.91.30.226 8096 diff --git a/agent-simulator/scripts/__old__/setupHosts.sh b/agent-simulator/scripts/__old__/setupHosts.sh deleted file mode 100755 index b36d728ea72..00000000000 --- a/agent-simulator/scripts/__old__/setupHosts.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -name=$1 - -host_query="GET http://10.91.30.226:8096/client/?command=addHost&zoneId=1&podId=$((name+250))&username=sim&password=sim&clustername=simulator-$name&hosttags=RP$name&url=http%3A%2F%2Fsim HTTP/1.0\n\n" -echo -e $host_query | nc -v -w 60 10.91.30.226 8096 diff --git a/agent-simulator/scripts/__old__/setupPodAndNetwork.sh b/agent-simulator/scripts/__old__/setupPodAndNetwork.sh deleted file mode 100755 index 8b224367bd1..00000000000 --- a/agent-simulator/scripts/__old__/setupPodAndNetwork.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -workers=$1 -x=$2 #CIDR - 16bytes -y=$3 #CIDR - 8 bytes - -for name in `seq 1 $workers` -do - pod_query="GET http://10.91.30.226:8096/client/?command=createPod&zoneId=1&name=RP$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://10.91.30.226:8096/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$((name+250))&forVirtualNetwork=false&gateway=182.$y.$x.1&netmask=255.255.255.0&startip=182.$y.$x.2&endip=182.$y.$x.252 HTTP/1.0\n\n" - so_query="GET http://10.91.30.226:8096/client/?command=createServiceOffering&name=RP$name&displayText=RP$name&storageType=local&cpuNumber=1&cpuSpeed=1000&memory=512&offerha=false&usevirtualnetwork=false&hosttags=RP$name HTTP/1.0\n\n" - - echo -e $pod_query | nc -v -w 20 10.91.30.226 8096 - echo -e $vlan_query | nc -v -w 20 10.91.30.226 8096 - echo -e $so_query | nc -v -w 20 10.91.30.226 8096 - - let x+=1 - let y+=1 -done - - - diff --git a/agent-simulator/scripts/__old__/setupServiceOffering.sh b/agent-simulator/scripts/__old__/setupServiceOffering.sh deleted file mode 100755 index fecf242e02c..00000000000 --- a/agent-simulator/scripts/__old__/setupServiceOffering.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -so_query="GET http://10.91.30.226:8096/client/?command=createServiceOffering&name=SO$x&displayText=SO$x&storageType=local&cpuNumber=1&cpuSpeed=1000&memory=512&offerha=false&usevirtualnetwork=false&hosttags=SP$x HTTP/1.0\n\n" - -echo -e $so_query | nc -v -q 20 10.91.30.226 8096 diff --git a/agent-simulator/scripts/__old__/setupVlan.sh b/agent-simulator/scripts/__old__/setupVlan.sh deleted file mode 100755 index 983dceca18c..00000000000 --- a/agent-simulator/scripts/__old__/setupVlan.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 -y=$2 -name=$3 - -vlan_query="GET http://10.91.30.226/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=172.$x.$y.1&netmask=255.255.255.0&startip=172.$x.$y.2&endip=172.$x.$y.252 HTTP/1.0\n\n" - -echo -e $vlan_query | nc -v -q 20 10.91.30.226 8096 diff --git a/agent-simulator/scripts/__old__/simulator_advanced.sh b/agent-simulator/scripts/__old__/simulator_advanced.sh deleted file mode 100755 index e353c0a904a..00000000000 --- a/agent-simulator/scripts/__old__/simulator_advanced.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -a=$1 #CIDR - 16bytes -b=$2 #CIDR - 8 bytes -host=$3 -zoneid=$4 - -zone_query="GET http://$host/client/?command=createZone&networktype=Advanced&securitygroupenabled=false&name=SimulatorAdvanced&dns1=4.2.2.2&internaldns1=4.2.2.2&vlan=10-4000&guestcidraddress=10.1.1.0%2F24 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -w 120 $host 8096 - -let x=a -let y=b -for name in `seq 1 1` -do - pod_query="GET http://$host/client/?command=createPod&zoneid=$zoneid&name=POD$name&netmask=255.255.0.0&startIp=172.$x.$y.2&endIp=172.$x.$y.252&gateway=172.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://$host/client/?command=createVlanIpRange&forVirtualNetwork=true&vlan=untagged&zoneid=$zoneid&podId=$name&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -w 20 $host 8096 - echo -e $vlan_query | nc -v -w 20 $host 8096 -done -let x+=1 -let y+=1 - -name=1 - -clusterid=1 -for cluster in `seq 1 1` -do - cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneid=$zoneid&podId=1&clustername=POD$name-CLUSTER$cluster HTTP/1.0\n\n" - echo -e $cluster_query | nc -v -w 120 $host 8096 - - host_query="GET http://$host/client/?command=addHost&zoneid=$zoneid&podId=1&username=sim&password=sim&clusterid=$cluster&hypervisor=Simulator&clustertype=CloudManaged&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -w 6000 $host 8096 - - spool_query="GET http://$host/client/?command=createStoragePool&zoneid=$zoneid&podId=1&clusterid=$cluster&name=SPOOL$cluster&url=nfs://172.1.25.$((cluster+1))/export/share/$cluster HTTP/1.0\n\n" - echo -e $spool_query | nc -v -w 6000 $host 8096 - let clusterid+=1 -done - -sstorquery="GET http://$host/client/?command=addSecondaryStorage&zoneid=$zoneid&url=nfs://172.1.25.32/export/share/ HTTP/1.0\n\n" -echo -e $sstorquery | nc -v -w 6000 $host 8096 diff --git a/agent-simulator/scripts/__old__/simulator_basic.sh b/agent-simulator/scripts/__old__/simulator_basic.sh deleted file mode 100755 index 11de82a17ab..00000000000 --- a/agent-simulator/scripts/__old__/simulator_basic.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -a=$1 #CIDR - 16bytes -b=$2 #CIDR - 8 bytes -host=$3 #MSHOST -zoneid=$4 - -zone_query="GET http://$host/client/?command=createZone&networktype=Basic&securitygroupenabled=false&name=SimulatorBasic&dns1=4.2.2.2&internaldns1=4.2.2.2&vlan=10-4000 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -w 120 $host 8096 - -let x=a -let y=b - -for name in `seq $zoneid 1` -do - pod_query="GET http://$host/client/?command=createPod&zoneId=$zoneid&name=POD$name&netmask=255.255.255.0&startIp=172.$x.$y.2&endIp=172.$x.$y.252&gateway=172.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://$host/client/?command=createVlanIpRange&vlan=untagged&zoneid=$zoneid&podId=$name&forVirtualNetwork=false&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -w 20 $host 8096 - echo -e $vlan_query | nc -v -w 20 $host 8096 - - let x+=1 - let y+=1 -done - -clusterid=1 - -for podid in `seq $zoneid 1` -do - cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneid=$zoneid&podId=$podid&clustername=POD$name-CLUSTER$cluster HTTP/1.0\n\n" - echo -e $cluster_query | nc -v -w 120 $host 8096 - - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=$podid&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged HTTP/1.0\n\n" - echo -e $host_query | nc -v -w 6000 $host 8096 - let clusterid+=1 -done - -sstorquery="GET http://$host/client/?command=addSecondaryStorage&zoneid=$zoneid&url=nfs://172.1.25.32/export/share/ HTTP/1.0\n\n" -echo -e $sstorquery | nc -v -w 6000 $host 8096 diff --git a/agent-simulator/scripts/__old__/startRouter.sh b/agent-simulator/scripts/__old__/startRouter.sh deleted file mode 100755 index 8f36d65a02c..00000000000 --- a/agent-simulator/scripts/__old__/startRouter.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -start_router="GET http://10.91.30.226:8096/client/?command=startRouter&id=$x HTTP/1.0\n\n" - - -echo -e $start_router | nc -v -q 60 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/__old__/testQuery.sh b/agent-simulator/scripts/__old__/testQuery.sh deleted file mode 100755 index 5571fd272eb..00000000000 --- a/agent-simulator/scripts/__old__/testQuery.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -test="GET http://10.91.30.226:8096/?command=listEvents&page=1 HTTP/1.0\n\n" -echo -e $test | nc -v -q 20 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/addHostStats.py b/agent-simulator/scripts/addHostStats.py deleted file mode 100644 index c53e0d52779..00000000000 --- a/agent-simulator/scripts/addHostStats.py +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -from datetime import datetime -import sys -import matplotlib.cbook as cbook -import matplotlib.image as image -import matplotlib.pyplot as plt - -def formGraph(list_timedelta): - """ Draw a graph of the performance of host add response """ - plt.plot(list(map(lambda x:x.seconds, list_timedelta))) - plt.ylabel("time(s) to add host") - plt.xlabel("number of hosts") - plt.title("Add Host Performance") - plt.grid(True) - plt.show() - - -if __name__=='__main__': - time_file=open(sys.argv[1], 'r') - timelist=[] - diffs=[] - for line in time_file.readlines(): - try: - timelist.append(datetime.strptime(line.strip(), "%d %b %Y %H:%M:%S")) - except ValueError: - print "Unable to parse:",line - - stime=timelist[:-1] - btime=timelist[1:] - - diffs=list(map(lambda x,y: y - x,stime,btime)) - - formGraph(diffs) - - - diff --git a/agent-simulator/scripts/addHosts.png b/agent-simulator/scripts/addHosts.png deleted file mode 100644 index ae40e5022ed276dd79617fc21592f17756c87c34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44302 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 diff --git a/agent-simulator/scripts/guava/__old__/1000routers.sh b/agent-simulator/scripts/guava/__old__/1000routers.sh deleted file mode 100755 index 78717d8fc68..00000000000 --- a/agent-simulator/scripts/guava/__old__/1000routers.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - - -zoneid=$1 -templateId=$2 -serviceOfferingId=$3 - -for j in `seq 1 100` -do - let add=0 - for i in `seq 1 10` - do - let account=$(($i+$add)) - echo Account Name: , $account - query="GET http://127.0.0.1/client/?command=deployVirtualMachine&zoneId=$1&hypervisor=Simulator&templateId=$2&serviceOfferingId=$3&account=DummyAccount$account&domainid=1 HTTP/1.0\n\n" - echo -e $query | nc -v -q 20 127.0.0.1 8096 - done - let add=add+10 - sleep 60s -done diff --git a/agent-simulator/scripts/guava/__old__/createAdminAccount.sh b/agent-simulator/scripts/guava/__old__/createAdminAccount.sh deleted file mode 100755 index fc1ea1c7bed..00000000000 --- a/agent-simulator/scripts/guava/__old__/createAdminAccount.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -name=$1 - -account_query="GET http://127.0.0.1/client/?command=createAccount&accounttype=1&email=simulator%40simulator.com&username=$name&firstname=first$name&lastname=last$name&password=5f4dcc3b5aa765d61d8327deb882cf99&account=$name&domainid=1 HTTP/1.1\n\n" - -echo -e $account_query | nc -v -q 120 127.0.0.1 8096 diff --git a/agent-simulator/scripts/guava/__old__/createStoragePool.sh b/agent-simulator/scripts/guava/__old__/createStoragePool.sh deleted file mode 100755 index 22c58fe3736..00000000000 --- a/agent-simulator/scripts/guava/__old__/createStoragePool.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -spool_query="GET http://127.0.0.1/client/?command=createStoragePool&zoneId=1&podId=1&clusterid=1&name=SPOOL&url=nfs://10.91.25.6/export/share/1 HTTP/1.0\n\n" -echo -e $spool_query | nc -v -q 60 127.0.0.1 8096 diff --git a/agent-simulator/scripts/guava/__old__/createUserAccount.sh b/agent-simulator/scripts/guava/__old__/createUserAccount.sh deleted file mode 100755 index 4418f4f7f13..00000000000 --- a/agent-simulator/scripts/guava/__old__/createUserAccount.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -name=$1 - -account_query="GET http://127.0.0.1/client/?command=createAccount&accounttype=0&email=simulator%40simulator.com&username=$name&firstname=first$name&lastname=last$name&password=5f4dcc3b5aa765d61d8327deb882cf99&account=$name&domainid=1 HTTP/1.1\n\n" - -echo -e $account_query | nc -v -q 120 127.0.0.1 8096 diff --git a/agent-simulator/scripts/guava/__old__/deleteAccount.sh b/agent-simulator/scripts/guava/__old__/deleteAccount.sh deleted file mode 100755 index 5e06ca686ca..00000000000 --- a/agent-simulator/scripts/guava/__old__/deleteAccount.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -delete="GET http://127.0.0.1/client/?command=deleteAccount&id=$x HTTP/1.0\n\n" - -echo -e $delete | nc -v -q 60 127.0.0.1 8096 - diff --git a/agent-simulator/scripts/guava/__old__/deletePod.sh b/agent-simulator/scripts/guava/__old__/deletePod.sh deleted file mode 100755 index 588eecdfb00..00000000000 --- a/agent-simulator/scripts/guava/__old__/deletePod.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -pod_query="GET http://10.91.30.219:8096/client/?command=deletePod&id=$x HTTP/1.0\n\n" - - -echo -e $pod_query | nc -v -q 20 10.91.30.219 8096 - diff --git a/agent-simulator/scripts/guava/__old__/deleteServiceOffering.sh b/agent-simulator/scripts/guava/__old__/deleteServiceOffering.sh deleted file mode 100755 index a5bcd40df5a..00000000000 --- a/agent-simulator/scripts/guava/__old__/deleteServiceOffering.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -delete_so="GET http://10.91.30.219:8096/client/?command=deleteServiceOffering&id=$x HTTP/1.0\n\n" - -echo -e $delete_so | nc -v -q 20 10.91.30.219 8096 - diff --git a/agent-simulator/scripts/guava/__old__/deleteVlan.sh b/agent-simulator/scripts/guava/__old__/deleteVlan.sh deleted file mode 100755 index 48deae4db15..00000000000 --- a/agent-simulator/scripts/guava/__old__/deleteVlan.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -vlan_query="GET http://10.91.30.219:8096/client/?command=deleteVlanIpRange&id=$x HTTP/1.0\n\n" - - -echo -e $vlan_query | nc -v -q 20 10.91.30.219 8096 - diff --git a/agent-simulator/scripts/guava/__old__/deployVirtualMachine.sh b/agent-simulator/scripts/guava/__old__/deployVirtualMachine.sh deleted file mode 100755 index 3f623ecd75b..00000000000 --- a/agent-simulator/scripts/guava/__old__/deployVirtualMachine.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -zoneid=$1 -templateId=$2 -serviceOfferingId=$3 -networkIds=$4 - -query="GET http://10.91.30.219/client/?command=deployVirtualMachine&zoneId=$1&hypervisor=Simulator&templateId=$2&serviceOfferingId=$3&networkIds=$4&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 20 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/destroyVirtualMachine.sh b/agent-simulator/scripts/guava/__old__/destroyVirtualMachine.sh deleted file mode 100755 index 089ccb193d0..00000000000 --- a/agent-simulator/scripts/guava/__old__/destroyVirtualMachine.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -destroy="GET http://10.91.30.219:8096/client/?command=destroyVirtualMachine&id=$x HTTP/1.0\n\n" - -echo -e $destroy | nc -v -q 60 10.91.30.219 8096 - diff --git a/agent-simulator/scripts/guava/__old__/listCapacity.sh b/agent-simulator/scripts/guava/__old__/listCapacity.sh deleted file mode 100755 index 9a1117edc94..00000000000 --- a/agent-simulator/scripts/guava/__old__/listCapacity.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.219:8096/client/?command=listCapacity&zoneId=$1&podid=$2&response=json HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/listEvents.sh b/agent-simulator/scripts/guava/__old__/listEvents.sh deleted file mode 100755 index 79ecdc3d445..00000000000 --- a/agent-simulator/scripts/guava/__old__/listEvents.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -test="GET http://10.91.30.219:8096/?command=listEvents HTTP/1.0\n\n" -echo -e $test | nc -v -q 120 10.91.30.219 8096 - diff --git a/agent-simulator/scripts/guava/__old__/listHosts.sh b/agent-simulator/scripts/guava/__old__/listHosts.sh deleted file mode 100755 index bb0fa11201a..00000000000 --- a/agent-simulator/scripts/guava/__old__/listHosts.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.219:8096/client/?command=listHosts&zoneId=$1&account=admin&domainid=1&page=$2 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/listRouters.sh b/agent-simulator/scripts/guava/__old__/listRouters.sh deleted file mode 100755 index 716a13266b4..00000000000 --- a/agent-simulator/scripts/guava/__old__/listRouters.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.219:8096/client/?command=listRouters&zoneId=$1&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/listTemplates.sh b/agent-simulator/scripts/guava/__old__/listTemplates.sh deleted file mode 100755 index a8bd73a95d2..00000000000 --- a/agent-simulator/scripts/guava/__old__/listTemplates.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.219:8096/client/?command=listTemplates&templatefilter=featured&zoneid=$1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/listVirtualMachine.sh b/agent-simulator/scripts/guava/__old__/listVirtualMachine.sh deleted file mode 100755 index 51a05ed6346..00000000000 --- a/agent-simulator/scripts/guava/__old__/listVirtualMachine.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.219:8096/client/?command=listVirtualMachines&zoneId=$1&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/load.sh b/agent-simulator/scripts/guava/__old__/load.sh deleted file mode 100755 index 8ff31414912..00000000000 --- a/agent-simulator/scripts/guava/__old__/load.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -do - start_vm="GET http://127.0.0.1:8096/client/?command=startVirtualMachine&id=$x HTTP/1.0\n\n" - echo -e $start_vm | nc -v -q 60 127.0.0.1 8096 -done - -sleep 60s - -for x in `seq 3 1102` -do - stop_vm="GET http://127.0.0.1/client/?command=stopVirtualMachine&id=$x HTTP/1.0\n\n" - echo -e $stop_vm | nc -v -q 60 127.0.0.1 8096 -done - -sleep 60s diff --git a/agent-simulator/scripts/guava/__old__/networkShutDown.sh b/agent-simulator/scripts/guava/__old__/networkShutDown.sh deleted file mode 100755 index e9f61e039f4..00000000000 --- a/agent-simulator/scripts/guava/__old__/networkShutDown.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -y=$2 - -for i in `seq $x $y` -do - stop_vm="GET http://127.0.0.1/client/?command=stopVirtualMachine&id=$i HTTP/1.0\n\n" - echo -e $stop_vm | nc -v -q 60 127.0.0.1 8096 -done diff --git a/agent-simulator/scripts/guava/__old__/networkStart.sh b/agent-simulator/scripts/guava/__old__/networkStart.sh deleted file mode 100755 index 088496ee472..00000000000 --- a/agent-simulator/scripts/guava/__old__/networkStart.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -y=$2 - -for i in `seq $x $y` -do - start_vm="GET http://127.0.0.1:8096/client/?command=startVirtualMachine&id=$i HTTP/1.0\n\n" - echo -e $start_vm | nc -v -q 60 127.0.0.1 8096 -done diff --git a/agent-simulator/scripts/guava/__old__/reconnectStats.sh b/agent-simulator/scripts/guava/__old__/reconnectStats.sh deleted file mode 100755 index 8cba78a6ca8..00000000000 --- a/agent-simulator/scripts/guava/__old__/reconnectStats.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - - - -name=$1 -while [ 1 ] -do - mysql -s -r -uroot -Dcloud -h10.1.1.215 -e"select count(id),now(),max(disconnected),mgmt_server_id,status from host group by mgmt_server_id,status;" >> $1 - sleep 5 - echo --------------------------------------------------------------------------------------------------------------------- >> $1 -done diff --git a/agent-simulator/scripts/guava/__old__/setup.sh b/agent-simulator/scripts/guava/__old__/setup.sh deleted file mode 100755 index 3a935273a29..00000000000 --- a/agent-simulator/scripts/guava/__old__/setup.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - - - - -#1. 1 host per cluster - -zone_query="GET http://10.91.30.219/client/?command=createZone&networktype=Advanced&securitygroupenabled=false&name=Go&dns1=4.2.2.2&internaldns1=4.2.2.2&vlan=500-1000&guestcidraddress=10.1.1.0%2F24 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -q 120 10.91.30.219 8096 - -pod_query="GET http://10.91.30.219/client/?command=createPod&zoneId=1&name=Guava&netmask=255.255.0.0&startIp=172.1.2.2&endIp=172.1.255.252&gateway=172.1.2.1 HTTP/1.0\n\n" -echo -e $pod_query | nc -v -q 120 10.91.30.219 8096 - -vlan_query="GET http://10.91.30.219/client/?command=createVlanIpRange&forVirtualNetwork=true&zoneId=1&vlan=untagged&gateway=172.2.1.1&netmask=255.255.0.0&startip=172.2.1.2&endip=172.2.255.254 HTTP/1.0\n\n" -echo -e $vlan_query | nc -v -q 120 10.91.30.219 8096 - -for name in `seq 1 100` -do - cluster_query="GET http://10.91.30.219/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=1&podId=1&clustername=CS$name HTTP/1.0\n\n" - echo -e $cluster_query | nc -v -q 120 10.91.30.219 8096 - - host_query="GET http://10.91.30.219/client/api?_=1302625706202&command=addHost&zoneId=1&podId=1&clusterid=$name&hypervisor=Simulator&clustertype=CloudManaged&hosttags=&username=sim&password=sim&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -q 60 10.91.30.219 8096 - - spool_query="GET http://10.91.30.219/client/?command=createStoragePool&zoneId=1&podId=1&clusterid=$name&name=SPOOL$name&url=nfs://172.1.25.$name/export/share/$name HTTP/1.0\n\n" - echo -e $spool_query | nc -v -q 60 10.91.30.219 8096 -done diff --git a/agent-simulator/scripts/guava/__old__/setupDirectPods.sh b/agent-simulator/scripts/guava/__old__/setupDirectPods.sh deleted file mode 100755 index 594a15b1308..00000000000 --- a/agent-simulator/scripts/guava/__old__/setupDirectPods.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 -y=$2 -name=$3 - -pod_query="GET http://10.91.30.219:8096/client/?command=createPod&zoneId=1&name=SSP$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 -HTTP/1.0\n\n" - -echo -e $pod_query | nc -v -q 20 10.91.30.219 8096 - -#vlan_query="GET http://10.91.30.219/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.252 HTTP/1.0\n\n" - -#echo -e $vlan_query | nc -v -q 20 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/setupHosts.sh b/agent-simulator/scripts/guava/__old__/setupHosts.sh deleted file mode 100755 index f2235afd803..00000000000 --- a/agent-simulator/scripts/guava/__old__/setupHosts.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -name=$1 - -host_query="GET http://10.91.30.219:8096/client/?command=addHost&zoneId=1&podId=$((name+250))&username=sim&password=sim&clustername=simulator-$name&hosttags=RP$name&url=http%3A%2F%2Fsim HTTP/1.0\n\n" -echo -e $host_query | nc -v -q 60 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/setupPodAndNetwork.sh b/agent-simulator/scripts/guava/__old__/setupPodAndNetwork.sh deleted file mode 100755 index d11ecc39c03..00000000000 --- a/agent-simulator/scripts/guava/__old__/setupPodAndNetwork.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -workers=$1 -x=$2 #CIDR - 16bytes -y=$3 #CIDR - 8 bytes - -for name in `seq 1 $workers` -do - pod_query="GET http://10.91.30.219:8096/client/?command=createPod&zoneId=1&name=RP$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://10.91.30.219:8096/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$((name+250))&forVirtualNetwork=false&gateway=182.$y.$x.1&netmask=255.255.255.0&startip=182.$y.$x.2&endip=182.$y.$x.252 HTTP/1.0\n\n" - so_query="GET http://10.91.30.219:8096/client/?command=createServiceOffering&name=RP$name&displayText=RP$name&storageType=local&cpuNumber=1&cpuSpeed=1000&memory=512&offerha=false&usevirtualnetwork=false&hosttags=RP$name HTTP/1.0\n\n" - - echo -e $pod_query | nc -v -q 20 10.91.30.219 8096 - echo -e $vlan_query | nc -v -q 20 10.91.30.219 8096 - echo -e $so_query | nc -v -q 20 10.91.30.219 8096 - - let x+=1 - let y+=1 -done - - - diff --git a/agent-simulator/scripts/guava/__old__/setupServiceOffering.sh b/agent-simulator/scripts/guava/__old__/setupServiceOffering.sh deleted file mode 100755 index 763812a8abe..00000000000 --- a/agent-simulator/scripts/guava/__old__/setupServiceOffering.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -so_query="GET http://10.91.30.219:8096/client/?command=createServiceOffering&name=SO$x&displayText=SO$x&storageType=local&cpuNumber=1&cpuSpeed=1000&memory=512&offerha=false&usevirtualnetwork=false&hosttags=SP$x HTTP/1.0\n\n" - -echo -e $so_query | nc -v -q 20 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/setupVlan.sh b/agent-simulator/scripts/guava/__old__/setupVlan.sh deleted file mode 100755 index e282f367029..00000000000 --- a/agent-simulator/scripts/guava/__old__/setupVlan.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 -y=$2 -name=$3 - -vlan_query="GET http://10.91.30.219/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=172.$x.$y.1&netmask=255.255.255.0&startip=172.$x.$y.2&endip=172.$x.$y.252 HTTP/1.0\n\n" - -echo -e $vlan_query | nc -v -q 20 10.91.30.219 8096 diff --git a/agent-simulator/scripts/guava/__old__/startRouter.sh b/agent-simulator/scripts/guava/__old__/startRouter.sh deleted file mode 100755 index 1b3e040d6e2..00000000000 --- a/agent-simulator/scripts/guava/__old__/startRouter.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -start_router="GET http://10.91.30.219:8096/client/?command=startRouter&id=$x HTTP/1.0\n\n" - - -echo -e $start_router | nc -v -q 60 10.91.30.219 8096 - diff --git a/agent-simulator/scripts/guava/__old__/startVirtualMachine.sh b/agent-simulator/scripts/guava/__old__/startVirtualMachine.sh deleted file mode 100755 index 287d2c4621f..00000000000 --- a/agent-simulator/scripts/guava/__old__/startVirtualMachine.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -start_vm="GET http://10.91.30.219:8096/client/?command=startVirtualMachine&id=$x HTTP/1.0\n\n" - - -echo -e $start_vm | nc -v -q 60 10.91.30.219 8096 - diff --git a/agent-simulator/scripts/guava/__old__/stopVirtualMachine.sh b/agent-simulator/scripts/guava/__old__/stopVirtualMachine.sh deleted file mode 100755 index d20c7b6048e..00000000000 --- a/agent-simulator/scripts/guava/__old__/stopVirtualMachine.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -stop_vm="GET http://127.0.0.1/client/?command=stopVirtualMachine&id=$x HTTP/1.0\n\n" - - -echo -e $stop_vm | nc -v -q 60 127.0.0.1 8096 - diff --git a/agent-simulator/scripts/guava/__old__/stress.sh b/agent-simulator/scripts/guava/__old__/stress.sh deleted file mode 100755 index a02670a8275..00000000000 --- a/agent-simulator/scripts/guava/__old__/stress.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -templateid=3 -account="u" -x=$1 -y=$2 -p=$3 -q=$4 - -for i in `seq 1 3` -do - serviceOfferingId=10 - query="GET http://127.0.0.1/client/?command=deployVirtualMachine&zoneId=$zoneid&hypervisor=Simulator&templateId=$templateid&serviceOfferingId=$serviceOfferingId&account=$account&domainid=1 HTTP/1.0\n\n" - echo -e $query | nc -v -q 20 127.0.0.1 8096 -done - -sleep 15s - -for x in `seq $x $y` -do - destroy="GET http://127.0.0.1:8096/client/?command=destroyVirtualMachine&id=$x HTTP/1.0\n\n" - echo -e $destroy | nc -v -q 60 127.0.0.1 8096 -done - -sleep 240s - -for i in `seq 1 30` -do - serviceOfferingId=9 - query="GET http://127.0.0.1/client/?command=deployVirtualMachine&zoneId=$zoneid&hypervisor=Simulator&templateId=$templateid&serviceOfferingId=$serviceOfferingId&account=$account&domainid=1 HTTP/1.0\n\n" - echo -e $query | nc -v -q 20 127.0.0.1 8096 -done - -sleep 150s - -for x in `seq $p $q` -do - destroy="GET http://127.0.0.1:8096/client/?command=destroyVirtualMachine&id=$x HTTP/1.0\n\n" - echo -e $destroy | nc -v -q 60 127.0.0.1 8096 -done diff --git a/agent-simulator/scripts/guava/__old__/stress2.sh b/agent-simulator/scripts/guava/__old__/stress2.sh deleted file mode 100755 index 5e2b705f919..00000000000 --- a/agent-simulator/scripts/guava/__old__/stress2.sh +++ /dev/null @@ -1,127 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -# Setup Stress. Destroy and Deploy Virtual Machines on -# Guava like environment -#Environment -#1. 1 host per cluster - -# Create 300 Accounts -# Deploy 300 VMs -# Destroy 300 VMs -# Repeat - - -usage() { - printf "Setup Stress\nUsage: %s: -h management-server -z zoneid [-d delay] [-t templateid] -s service-offering-id [-n number of accounts]\n" $(basename $0) >&2 -} - -create_account() { - seq=$1 - account_query="GET http://$host/client/?command=createAccount&accounttype=0&email=simulator%40simulator.com&username=$account_prefix$seq&firstname=first$seq&lastname=last$seq&password=5f4dcc3b5aa765d61d8327deb882cf99&account=$account_prefix$seq&domainid=1 HTTP/1.1\n\n" - echo -e $account_query | nc -v -q 120 $host 8096 -} - -stress() { - #Deploy 300 VMs in these accounts - for ((i=1;i<=$numberofaccounts;i++)) - do - out=$(./deployVirtualMachine.sh -h $host -z $zoneid -t $template -s $service -a $account_prefix$i) - id=$(echo $out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - echo "deployed vm with id: " $id - VmArray[$i]=$id - done - sleep $delay - - rindex=$(($RANDOM%$numberofaccounts)) - #Stop/Start 300 VMs at random - for ((i=1;i<=$numberofaccounts;i++)) - do - ./stopVirtualMachine.sh -h $host -i ${VmArray:$rindex} - rindex=$(($RANDOM%$numberofaccounts)) - echo "stopped vm with id: " ${VmArray:$rindex} - - ./startVirtualMachine.sh -h $host -i ${VmArray:$rindex} - rindex=$(($RANDOM%$numberofaccounts)) - echo "started vm with id: " ${VmArray:$rindex} - done - sleep $delay -} - -#options -hflag=1 -zflag= -dflag=1 -tflag=1 -sflag= -nflag=1 - - -declare -a VmArray -host="127.0.0.1" #default localhost -zoneid= -delay=300 #default 5 minutes -template=2 #default centos -service= -account_prefix="USER" -numberofaccounts=300 - -while getopts 'h:z:d:t:s:n:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - z) zflag=1 - zoneid="$OPTARG" - ;; - d) dflag=1 - delay="$OPTARG" - ;; - t) tflag=1 - template="$OPTARG" - ;; - s) sflag=1 - service="$OPTARG" - ;; - n) nflag=1 - numberofaccounts="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [ $hflag$zflag$dflag$tflag$sflag$nflag != "111111" ] -then - usage - exit 2 -fi - -#Create 300 Accounts -#for ((i=1;i<=$numberofaccounts;i++)) -#do -# create_account $i -#done - -for i in {1..5} -do - #Do the stress test - stress -done diff --git a/agent-simulator/scripts/guava/setup.py b/agent-simulator/scripts/guava/setup.py deleted file mode 100644 index 76d1199bd76..00000000000 --- a/agent-simulator/scripts/guava/setup.py +++ /dev/null @@ -1,147 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -''' -# guava uses nfs storage, before setting up make sure -# * optionally turn off stats collectors -# * expunge.delay and expunge.interval are 60s -''' - -from optparse import OptionParser -from configGenerator import * -import random - - -def getGlobalSettings(): - global_settings = {'expunge.delay': '60', - 'expunge.interval': '60', - 'expunge.workers': '3', - 'workers': '10', - 'use.user.concentrated.pod.allocation': 'true', - 'vm.allocation.algorithm': 'random', - 'vm.op.wait.interval': '5', - 'guest.domain.suffix': 'guava.simulator', - 'instance.name': 'TEST', - 'direct.agent.load.size': '1000', - 'default.page.size': '10000', - 'linkLocalIp.nums': '10', - 'check.pod.cidrs': 'false', - } - for k, v in global_settings.iteritems(): - cfg = configuration() - cfg.name = k - cfg.value = v - yield cfg - - -def describeGuavaResources(dbnode='localhost', mshost='localhost'): - zs = cloudstackConfiguration() - numberofpods = 1 - - clustersPerPod = 100 - hostsPerCluster = 10 - - z = zone() - z.dns1 = '4.2.2.2' - z.dns2 = '192.168.110.254' - z.internaldns1 = '10.91.28.6' - z.internaldns2 = '192.168.110.254' - z.name = 'Guava' - z.networktype = 'Advanced' - z.guestcidraddress = '10.1.1.0/24' - z.vlan='100-3000' - - p = pod() - p.name = 'POD1' - p.gateway = '172.1.2.1' - p.startip = '172.1.2.2' - p.endip = '172.1.255.252' - p.netmask = '255.255.0.0' - - v = iprange() - v.vlan = 'untagged' - v.startip = '172.2.1.2' - v.endip = '172.2.255.252' - v.gateway = '172.2.1.1' - v.netmask = '255.255.0.0' - - curhost = 1 - for i in range(1, clustersPerPod + 1): - c = cluster() - c.clustername = 'POD1-CLUSTER' + str(i) - c.hypervisor = 'Simulator' - c.clustertype = 'CloudManaged' - - for j in range(1, hostsPerCluster + 1): - h = host() - h.username = 'root' - h.password = 'password' - h.url = 'http://sim/test-%d'%(curhost) - c.hosts.append(h) - curhost = curhost + 1 - - ps = primaryStorage() - ps.name = 'spool'+str(i) - ps.url = 'nfs://172.16.24.32/export/path/'+str(i) - c.primaryStorages.append(ps) - p.clusters.append(c) - - - secondary = secondaryStorage() - secondary.url = 'nfs://172.16.25.32/secondary/path' - - z.pods.append(p) - z.ipranges.append(v) - z.secondaryStorages.append(secondary) - zs.zones.append(z) - - '''Add mgt server''' - mgt = managementServer() - mgt.mgtSvrIp = mshost - zs.mgtSvr.append(mgt) - - '''Add a database''' - db = dbServer() - db.dbSvr = opts.dbnode - zs.dbSvr = db - - '''Add some configuration''' - [zs.globalConfig.append(cfg) for cfg in getGlobalSettings()] - - ''''add loggers''' - testClientLogger = logger() - testClientLogger.name = 'TestClient' - testClientLogger.file = '/var/log/testclient.log' - - testCaseLogger = logger() - testCaseLogger.name = 'TestCase' - testCaseLogger.file = '/var/log/testcase.log' - - zs.logger.append(testClientLogger) - zs.logger.append(testCaseLogger) - return zs - - -if __name__ == '__main__': - parser = OptionParser() - parser.add_option('-o', '--output', action='store', default='./guavaCfg', dest='output', help='the path where the json config file generated') - parser.add_option('-d', '--dbnode', dest='dbnode', help='hostname/ip of the database node', action='store') - parser.add_option('-m', '--mshost', dest='mshost', help='hostname/ip of management server', action='store') - - (opts, args) = parser.parse_args() - cfg = describeGuavaResources(opts.dbnode, opts.mshost) - generate_setup_config(cfg, opts.output) diff --git a/agent-simulator/scripts/guava/tests/testProvision.py b/agent-simulator/scripts/guava/tests/testProvision.py deleted file mode 100644 index 5fef55c3829..00000000000 --- a/agent-simulator/scripts/guava/tests/testProvision.py +++ /dev/null @@ -1,139 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - import unittest2 as unittest -except ImportError: - import unittest - -import random -import hashlib -from cloudstackTestCase import * - -class Provision(cloudstackTestCase): - ''' - ''' - def setUp(self): - pass - - - def tearDown(self): - pass - - - def test_1_createAccounts(self, numberOfAccounts=5): - ''' - Create a bunch of user accounts - ''' - mdf = hashlib.md5() - mdf.update('password') - mdf_pass = mdf.hexdigest() - api = self.testClient.getApiClient() - for i in range(1, numberOfAccounts + 1): - acct = createAccount.createAccountCmd() - acct.accounttype = 0 - acct.firstname = 'user' + str(i) - acct.lastname = 'user' + str(i) - acct.password = mdf_pass - acct.username = 'user' + str(i) - acct.email = 'user@example.com' - acct.account = 'user' + str(i) - acct.domainid = 1 - acctResponse = api.createAccount(acct) - self.debug("successfully created account: %s, user: %s, id: %s"%(acctResponse.account, acctResponse.username, acctResponse.id)) - - - def test_2_createServiceOffering(self): - apiClient = self.testClient.getApiClient() - createSOcmd=createServiceOffering.createServiceOfferingCmd() - createSOcmd.name='Sample SO' - createSOcmd.displaytext='Sample SO' - createSOcmd.storagetype='shared' - createSOcmd.cpunumber=1 - createSOcmd.cpuspeed=100 - createSOcmd.memory=128 - createSOcmd.offerha='false' - createSOresponse = apiClient.createServiceOffering(createSOcmd) - return createSOresponse.id - - def deployCmd(self, account, service): - deployVmCmd = deployVirtualMachine.deployVirtualMachineCmd() - deployVmCmd.zoneid = 1 - deployVmCmd.hypervisor='Simulator' - deployVmCmd.account=account - deployVmCmd.domainid=1 - deployVmCmd.templateid=10 - deployVmCmd.serviceofferingid=service - return deployVmCmd - - def listVmsInAccountCmd(self, acct): - api = self.testClient.getApiClient() - listVmCmd = listVirtualMachines.listVirtualMachinesCmd() - listVmCmd.account = acct - listVmCmd.zoneid = 1 - listVmCmd.domainid = 1 - listVmResponse = api.listVirtualMachines(listVmCmd) - return listVmResponse - - - def destroyVmCmd(self, key): - api = self.testClient.getApiClient() - destroyVmCmd = destroyVirtualMachine.destroyVirtualMachineCmd() - destroyVmCmd.id = key - api.destroyVirtualMachine(destroyVmCmd) - - - def test_3_stressDeploy(self): - ''' - Deploy 20 Vms in each account - ''' - service_id = self.test_2_createServiceOffering() - api = self.testClient.getApiClient() - for acct in range(1, 5): - [api.deployVirtualMachine(self.deployCmd('user'+str(acct), service_id)) for x in range(0,20)] - - def test_4_stressDestroy(self): - ''' - Cleanup all Vms in every account - ''' - api = self.testClient.getApiClient() - for acct in range(1, 6): - for vm in self.listVmsInAccountCmd('user'+str(acct)): - if vm is not None: - self.destroyVmCmd(vm.id) - - def test_5_combineStress(self): - for i in range(0, 5): - self.test_3_stressDeploy() - self.test_4_stressDestroy() - - def deployN(self,nargs=300,batchsize=0): - ''' - Deploy Nargs number of VMs concurrently in batches of size {batchsize}. - When batchsize is 0 all Vms are deployed in one batch - VMs will be deployed in 5:2:6 ratio - ''' - cmds = [] - - if batchsize == 0: - self.testClient.submitCmdsAndWait(cmds) - else: - while len(z) > 0: - try: - newbatch = [cmds.pop() for b in range(batchsize)] #pop batchsize items - self.testClient.submitCmdsAndWait(newbatch) - except IndexError: - break diff --git a/agent-simulator/scripts/kumquat/setup.py b/agent-simulator/scripts/kumquat/setup.py deleted file mode 100644 index 2a305a14a88..00000000000 --- a/agent-simulator/scripts/kumquat/setup.py +++ /dev/null @@ -1,194 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -''' -# Kumquat uses nfs storage, before setting up make sure -# * optionally turn off stats collectors -# * expunge.delay and expunge.interval are 60s -''' - -from optparse import OptionParser -from configGenerator import * -import random - - -def getGlobalSettings(): - global_settings = {'expunge.delay': '60', - 'expunge.interval': '60', - 'capacity.skipcounting.hours': '2', - 'cpu.overprovisioning.factor': '1.5', - 'expunge.workers': '3', - 'workers': '10', - 'use.user.concentrated.pod.allocation': 'true', - 'vm.allocation.algorithm': 'random', - 'vm.op.wait.interval': '5', - 'guest.domain.suffix': 'kumquat.simulator', - 'instance.name': 'KIM', - 'direct.agent.load.size': '16', - 'default.page.size': '500', - 'linkLocalIp.nums': '10', - 'check.pod.cidrs': 'false', - 'max.account.public.ips': '10000', - 'max.account.snapshots': '10000', - 'max.account.templates': '10000', - 'max.account.user.vms': '10000', - 'max.account.volumes': '10000', - } - for k, v in global_settings.iteritems(): - cfg = configuration() - cfg.name = k - cfg.value = v - yield cfg - - -def podIpRangeGenerator(): - x=1 - y=2 - while 1: - if y == 255: - x=x+1 - if x == 255: - x=1 - break - - y=1 - - y=y+1 - #pod mangement network - yield ('172.'+str(x)+'.'+str(y)+'.129', '172.'+str(x)+'.'+str(y)+'.130', '172.'+str(x)+'.'+str(y)+'.189') - - -def vlanIpRangeGenerator(): - x=1 - y=2 - while 1: - if y == 255: - x=x+1 - if x==255: - x=1 - break - - y=1 - - y=y+1 - #vlan ip range - yield ('172.'+str(x)+'.'+str(y)+'.129', '172.'+str(x)+'.'+str(y)+'.190', '172.'+str(x)+'.'+str(y)+'.249') - - -def describeKumquatResources(dbnode='localhost', mshost='localhost'): - zs = cloudstackConfiguration() - numberofpods = 5 - - clustersPerPod = 2 - hostsPerCluster = 8 - - curpod = 0 - curhost = 0 - - z = zone() - z.dns1 = '4.2.2.2' - z.dns2 = '192.168.110.254' - z.internaldns1 = '10.91.28.6' - z.internaldns2 = '192.168.110.254' - z.name = 'Kumquat' - z.networktype = 'Advanced' - z.guestcidraddress = '10.1.1.0/24' - z.vlan='100-3000' - - for podRange,vlanRange in zip(podIpRangeGenerator(), vlanIpRangeGenerator()): - p = pod() - curpod=curpod+1 - p.name = 'POD'+str(curpod) - p.gateway=podRange[0] - p.startip=podRange[1] - p.endip=podRange[2] - p.netmask='255.255.255.128' - - for i in range(1,clustersPerPod+1): - c = cluster() - c.clustername = 'POD'+str(curpod)+'-CLUSTER'+str(i) - c.hypervisor = 'Simulator' - c.clustertype = 'CloudManaged' - - ps = primaryStorage() - ps.name = 'spool'+str(i) - ps.url = 'nfs://172.16.24.32/export/path/'+str(curpod)+'/'+str(i) - c.primaryStorages.append(ps) - - for i in range(1, hostsPerCluster + 1): - h = host() - h.username = 'root' - h.password = 'password' - h.url = "http://sim/test-%d"%(curhost) - c.hosts.append(h) - curhost=curhost+1 - - p.clusters.append(c) - - z.pods.append(p) - if curpod == numberofpods: - break - - v = iprange() - v.vlan = 'untagged' - v.gateway='172.2.1.1' - v.startip='172.2.1.2' - v.endip='172.2.255.252' - v.netmask="255.255.0.0" - z.ipranges.append(v) - - secondary = secondaryStorage() - secondary.url = 'nfs://172.16.25.32/secondary/path' - z.secondaryStorages.append(secondary) - zs.zones.append(z) - - '''Add mgt server''' - mgt = managementServer() - mgt.mgtSvrIp = mshost - zs.mgtSvr.append(mgt) - - '''Add a database''' - db = dbServer() - db.dbSvr = opts.dbnode - zs.dbSvr = db - - '''Add some configuration''' - [zs.globalConfig.append(cfg) for cfg in getGlobalSettings()] - - ''''add loggers''' - testClientLogger = logger() - testClientLogger.name = 'TestClient' - testClientLogger.file = '/var/log/testclient.log' - - testCaseLogger = logger() - testCaseLogger.name = 'TestCase' - testCaseLogger.file = '/var/log/testcase.log' - - zs.logger.append(testClientLogger) - zs.logger.append(testCaseLogger) - return zs - - -if __name__ == '__main__': - parser = OptionParser() - parser.add_option('-o', '--output', action='store', default='./KumquatCfg', dest='output', help='the path where the json config file generated') - parser.add_option('-d', '--dbnode', dest='dbnode', help='hostname/ip of the database node', action='store') - parser.add_option('-m', '--mshost', dest='mshost', help='hostname/ip of management server', action='store') - - (opts, args) = parser.parse_args() - cfg = describeKumquatResources(opts.dbnode, opts.mshost) - generate_setup_config(cfg, opts.output) diff --git a/agent-simulator/scripts/kumquat/tests/testProvision.py b/agent-simulator/scripts/kumquat/tests/testProvision.py deleted file mode 100644 index e0d531e8656..00000000000 --- a/agent-simulator/scripts/kumquat/tests/testProvision.py +++ /dev/null @@ -1,259 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - import unittest2 as unittest -except ImportError: - import unittest - -import random -import hashlib -from cloudstackTestCase import * -import string -import time - -import pdb - -class Provision(cloudstackTestCase): - numberOfAccounts = 5 - accounts = [] - - def setUp(self): - pass - - def tearDown(self): - pass - - def setupServiceOffering(self): - socreate = createServiceOffering.createServiceOfferingCmd() - socreate.cpunumber = 1 - socreate.cpuspeed = 100 - socreate.displaytext = 'Sample SO' - socreate.memory = 128 - socreate.name = 'Sample SO' - api = self.testClient.getApiClient() - soresponse = api.createServiceOffering(socreate) - return soresponse.id - - - def test_1_createAccounts(self): - ''' - Create a bunch of user accounts - ''' - mdf = hashlib.md5() - mdf.update('password') - mdf_pass = mdf.hexdigest() - api = self.testClient.getApiClient() - for i in range(1, self.numberOfAccounts + 1): - acct = createAccount.createAccountCmd() - acct.accounttype = 0 - name = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(10)) - acct.firstname = name - acct.lastname = name - acct.password = mdf_pass - acct.username = name - acct.email = 'user@example.com' - acct.account = name - acct.domainid = 1 - acctResponse = api.createAccount(acct) - self.accounts.append(acctResponse.account.name) - self.debug("created account %s with id %d:"%(acctResponse.account.name, acctResponse.account.id)) - - - def deployCmd(self, acct): - deployVmCmd = deployVirtualMachine.deployVirtualMachineCmd() - deployVmCmd.zoneid = 1 - deployVmCmd.hypervisor='Simulator' - deployVmCmd.account=acct - deployVmCmd.domainid=1 - deployVmCmd.templateid=10 - deployVmCmd.serviceofferingid=self.setupServiceOffering() - return deployVmCmd - - - def destroyCmd(self, vmid): - destroyVmCmd = destroyVirtualMachine.destroyVirtualMachineCmd() - destroyVmCmd.zoneid = 1 - destroyVmCmd.id = vmid - return destroyVmCmd - - def startCmd(self, vmid): - startVmCmd = startVirtualMachine.startVirtualMachineCmd() - startVmCmd.id = vmid - return startVmCmd - - def listVmsInAccount(self, acct): - listVm = listVirtualMachines.listVirtualMachinesCmd() - listVm.account = acct - listVm.zoneid = 1 - listVm.domainid = 1 - return self.testClient.getApiClient().listVirtualMachines(listVm) - - def listAccounts(self, acct): - listacct = listAccounts.listAccountsCmd() - listacct.name = acct - listacct.accounttype = 0 - return self.testClient.getApiClient().listAccounts(listacct) - - - def test_2_stressDeploy(self): - api = self.testClient.getApiClient() - for acct in self.accounts: - [api.deployVirtualMachine(self.deployCmd(acct)) for x in range(0, 25)] - - - def test_3_parallelDeployAndDestroy(self): - p_accts = [] - #create 3 user accounts - mdf = hashlib.md5() - mdf.update('password') - mdf_pass = mdf.hexdigest() - api = self.testClient.getApiClient() - for i in range(1, 3): - acct = createAccount.createAccountCmd() - acct.accounttype = 0 - name = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(10)) - acct.firstname = name - acct.lastname = name - acct.password = mdf_pass - acct.username = name - acct.email = 'puser@example.com' - acct.account = name - acct.domainid = 1 - acctResponse = api.createAccount(acct) - p_accts.append(acctResponse.account.name) - self.debug("created account %s under root"%name) - - #deploy VMs each parallely in all three accounts - deployCmds = [] - for acct in p_accts: - for i in range(0, 50): - deployCmds.append(self.deployCmd(acct)) - random.shuffle(deployCmds) - self.execCmds(deployCmds) - - #destroy VMs each parallely in all three accounts - destroyCmds = [] - for acct in p_accts: - acctVms = self.listVmsInAccount(acct) - self.debug("%d vms deployed in account: %s. Destroying them"%(len(acctVms),acct)) - for vm in acctVms[:45]: - destroyCmds.append(self.destroyCmd(vm.id)) - random.shuffle(destroyCmds) - self.execCmds(destroyCmds) - - for acct in p_accts: - acctVms = self.listVmsInAccount(acct) - self.assertEqual(len(acctVms), 5) - listacct = self.listAccounts(acct) - self.assertEqual(int(listacct[0].vmrunning) + int(listacct[0].vmstopped),\ - int(listacct[0].vmtotal)) - self.debug("%d vms found left in account: %s. Finishing Test"%(len(acctVms),acct)) - - - def test_4_listVm(self): - allVms = self.listVmsInAccount(None) - self.debug("%d vms in all"%len(allVms)) - - - def test_5_multipleStartRequests(self): - ''' - Start a few Vms, start them again before they reach running state, - make sure the resource count remains consistent - ''' - mdf = hashlib.md5() - mdf.update('password') - mdf_pass = mdf.hexdigest() - api = self.testClient.getApiClient() - acct = createAccount.createAccountCmd() - acct.accounttype = 0 - name = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(10)) - acct.firstname = name - acct.lastname = name - acct.password = mdf_pass - acct.username = name - acct.email = 'puser@example.com' - acct.account = name - acct.domainid = 1 - acctResponse = api.createAccount(acct) - - for i in range(0, 5): - resp = api.deployVirtualMachine(self.deployCmd(name)) - api.startVirtualMachine(self.startCmd(resp.id)) - - acctVms = self.listVmsInAccount(name) - self.debug("%d vms found in account: %s."%(len(acctVms),name)) - self.assertEqual(5, len(acctVms)) - listacctresponse = self.listAccounts(name) - self.assertEqual(int(listacctresponse[0].vmrunning) +\ - int(listacctresponse[0].vmstopped),\ - int(listacctresponse[0].vmtotal)) - - - def test_6_multipleDestroyRequests(self): - ''' - Start a few Vms, destroy them, destroy them again before they reach - expunging state, make sure the resource count remains consistent - ''' - mdf = hashlib.md5() - mdf.update('password') - mdf_pass = mdf.hexdigest() - api = self.testClient.getApiClient() - acct = createAccount.createAccountCmd() - acct.accounttype = 0 - name = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(10)) - acct.firstname = name - acct.lastname = name - acct.password = mdf_pass - acct.username = name - acct.email = 'puser@example.com' - acct.account = name - acct.domainid = 1 - acctResponse = api.createAccount(acct) - - vmlist = [] - for i in range(0, 5): - resp = api.deployVirtualMachine(self.deployCmd(name)) - vmlist.append(resp.id) - - for vm in vmlist: - api.destroyVirtualMachine(self.destroyCmd(vm)) - time.sleep(1) - api.destroyVirtualMachine(self.destroyCmd(vm)) - - acctVms = self.listVmsInAccount(name) - if acctVms is not None: - self.debug("%d vms found in account: %s."%(len(acctVms),name)) - self.assertEqual(5, len(acctVms)) - listacctresponse = self.listAccounts(name) - self.assertEqual(int(listacctresponse[0].vmrunning) +\ - int(listacctresponse[0].vmstopped),\ - int(listacctresponse[0].vmtotal)) - - - def execCmds(self,cmds=[],batchsize=0): - ''' - When batchsize is 0 all Vms are deployed in one batch - ''' - if batchsize == 0: - self.testClient.submitCmdsAndWait(cmds) - else: - while len(cmds) > 0: - try: - newbatch = [cmds.pop() for b in range(batchsize)] #pop batchsize items - self.testClient.submitCmdsAndWait(newbatch) - except IndexError: - break diff --git a/agent-simulator/scripts/run.bat b/agent-simulator/scripts/run.bat deleted file mode 100644 index 1138ce0cd2b..00000000000 --- a/agent-simulator/scripts/run.bat +++ /dev/null @@ -1,19 +0,0 @@ -rem - Licensed to the Apache Software Foundation (ASF) under one -rem - or more contributor license agreements. See the NOTICE file -rem - distributed with this work for additional information -rem - regarding copyright ownership. The ASF licenses this file -rem - to you under the Apache License, Version 2.0 (the -rem - "License"); you may not use this file except in compliance -rem - with the License. You may obtain a copy of the License at -rem - -rem - http://www.apache.org/licenses/LICENSE-2.0 -rem - -rem - Unless required by applicable law or agreed to in writing, -rem - software distributed under the License is distributed on an -rem - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -rem - KIND, either express or implied. See the License for the -rem - specific language governing permissions and limitations -rem - under the License. - -java -cp cloud-utils.jar;agent-simulator.jar;log4j-1.2.15.jar;apache-log4j-extras-1.0.jar;ws-commons-util-1.0.2.jar;xmlrpc-client-3.1.3.jar;cloud-agent.jar;cloud-core.jar;xmlrpc-common-3.1.3.jar;javaee-api-5.0-1.jar;gson-1.3.jar;commons-httpclient-3.1.jar;commons-logging-1.1.1.jar;commons-codec-1.3.jar;commons-collections-3.2.1.jar;commons-pool-1.4.jar;.\;.\conf com.cloud.agent.AgentSimulator %* - diff --git a/agent-simulator/scripts/zucchini/__old__/deletePod.sh b/agent-simulator/scripts/zucchini/__old__/deletePod.sh deleted file mode 100755 index 01cb7ce9e56..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/deletePod.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -pod_query="GET http://10.91.30.226:8096/client/?command=deletePod&id=$x HTTP/1.0\n\n" - - -echo -e $pod_query | nc -v -q 20 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/deleteServiceOffering.sh b/agent-simulator/scripts/zucchini/__old__/deleteServiceOffering.sh deleted file mode 100755 index 1a6c8084628..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/deleteServiceOffering.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -delete_so="GET http://10.91.30.226:8096/client/?command=deleteServiceOffering&id=$x HTTP/1.0\n\n" - -echo -e $delete_so | nc -v -q 20 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/deleteVlan.sh b/agent-simulator/scripts/zucchini/__old__/deleteVlan.sh deleted file mode 100755 index 34ced903850..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/deleteVlan.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -vlan_query="GET http://10.91.30.226:8096/client/?command=deleteVlanIpRange&id=$x HTTP/1.0\n\n" - - -echo -e $vlan_query | nc -v -q 20 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/deployBulk-sg.sh b/agent-simulator/scripts/zucchini/__old__/deployBulk-sg.sh deleted file mode 100755 index 427fbe2e023..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/deployBulk-sg.sh +++ /dev/null @@ -1,206 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -usage() { - printf "Deploy many VMs: %s: -h management-server -n numberofvms [[-b batchsize] [-w wait for success] [-d db-node]]\n" $(basename $0) >&2 - printf "-w option when specifed waits for successful deployment of batchsize (specifed by -b option) number of VMs. default batchsize =100\n" -} - -getSgListRandom() { - num_groups=$((RANDOM%groups_per_vm)) - if [[ $num_groups -eq 0 ]]; then - num_groups=1 #set back to default - fi - - #form sg list string - local sg_list="" - for ((i=0;i<$num_groups;i++)) - do - sgid=$((RANDOM%numberofgroups)) - if [[ $sgid -eq 0 || $sgid -eq 1 ]]; then - sgid=1 #set back to default security group - sg_list=$sgid","$sg_list - continue - fi - - sg_exists="GET http://$host/client/?command=listSecurityGroups&id=$sgid HTTP/1.0\n\n" - sg_out=$(echo -e $sg_exists | nc -v -q 60 $host 8096) - count=$(echo $sg_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if [[ $count != "1" ]]; then #FAIL: Invalid security group was randomly selected - continue - fi - sg_list=$sgid","$sg_list - done - echo "$sg_list" -} - - -waitDeploy() { - local dbnode=$1 - local batchsize=$2 - while [ 1 ] - do - donecount=$(mysql -uroot -Dcloud -h$dbnode -s -r --skip-column-names -e"select count(*) from async_job where job_cmd like '%DeployVM%' and last_updated is null") - echo "[DEBUG] " $(date) " " $donecount " VMs still deploying" - if [[ $donecount == "0" || $donecount -eq 0 ]] - then - break - fi - sleep $(($donecount*2))s #2 seconds per VM - done -} - -hflag= -nflag=1 -wflag= -bflag= -dflag= -iterator=0 - -declare -a sg_array=('79' '79' '79' '79' '79' '79' '79' '79' '79') -#declare -a sg_array=('72' '73' '74' '75' '76' '77' '78' '79' '80') - -host="127.0.0.1" #defaults to locahost -numberofvms=1040 #defaults -batchsize=100 #default -dbnode= -waitSuccess=false - -while getopts 'h:n:b:d:w' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - n) nflag=1 - numberofvms="$OPTARG" - ;; - w) wflag=1 - waitSuccess=true - ;; - b) bflag=1 - batchsize="$OPTARG" - ;; - d) dflag=1 - dbnode="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [ $hflag$nflag != "11" ] -then - usage - exit 2 -fi - -if [[ $wflag == "1" && $dflag != "1" ]] -then - echo "please specify dbnode -d option" - usage - exit 2 -fi - - -if [[ $bflag == "1" && $wflag != "1" ]] -then - echo "-w option mandatory when -b is given" - usage - exit 2 -fi - -tag1=$(($numberofvms*5/13)) -tag2=$(($numberofvms*2/13)) -tag3=$(($numberofvms*6/13)) - -tag1_so=9 #defaults from a regular installation -tag2_so=10 -tag3_so=11 -vmcount=0 - -echo -n "Service Offering ID with TAG1 hosttag: " -read tag1_so - -echo -n "Service Offering ID with TAG2 hosttag: " -read tag2_so - -echo -n "Service Offering ID with TAG3 hosttag: " -read tag3_so - -echo "Deploying TAG1 VMs with Service Offering: " $tag1_so -for ((c=1;c<$tag1;c++)) -do - if [[ $vmcount -eq $batchsize && waitSuccess ]] - then - waitDeploy $dbnode $batchsize - vmcount=0 - fi - sglist=${sg_array[$((iterator % 9))]} - iterator=$((iterator+1)) - - job_out=$(./deployVirtualMachine.sh -h $host -z 1 -t 2 -s $tag1_so -u -g $sglist) - job_id=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - vmid=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - echo "[DEBUG] $(date) deployed vm: " $vmid " in job: " $job_id - - vmcount=$((vmcount+1)) -done - -sleep 60s - -echo "Deploying TAG2 VMs with Service Offering: " $tag2_so -for ((c=1;c<$tag2;c++)) -do - if [[ $vmcount -eq $batchsize && wflag == "1" ]] - then - waitDeploy $dbnode $batchsize - vmcount=0 - fi - sglist=${sg_array[$((iterator % 9))]} - iterator=$((iterator+1)) - - job_out=$(./deployVirtualMachine.sh -h $host -z 1 -t 2 -s $tag2_so -u -g $sglist) - job_id=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - vmid=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - echo "[DEBUG] $(date) deployed vm: " $vmid " in job: " $job_id - - vmcount=$((vmcount+1)) -done - -sleep 60s - -echo "Deploying TAG3 VMs with Service Offering: " $tag3_so -for ((c=1;c<$tag3;c++)) -do - if [[ $vmcount -eq $batchsize && wflag == "1" ]] - then - waitDeploy $dbnode $batchsize - vmcount=0 - fi - sglist=${sg_array[$((iterator % 9))]} - iterator=$((iterator+1)) - - job_out=$(./deployVirtualMachine.sh -h $host -z 1 -t 2 -s $tag3_so -u -g $sglist) - job_id=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - vmid=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - echo "[DEBUG] $(date) deployed vm: " $vmid " in job: " $job_id - - vmcount=$((vmcount+1)) -done diff --git a/agent-simulator/scripts/zucchini/__old__/deployBulk.sh b/agent-simulator/scripts/zucchini/__old__/deployBulk.sh deleted file mode 100755 index 226a8aa2526..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/deployBulk.sh +++ /dev/null @@ -1,159 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -usage() { - printf "Deploy many VMs: %s: -h management-server -n numberofvms [[-b batchsize] [-w wait for success] [-d db-node]]\n" $(basename $0) >&2 -} - -waitDeploy() { - local dbnode=$1 - local batchsize=$2 - while [ 1 ] - do - donecount=$(mysql -uroot -Dcloud -h$dbnode -s -r --skip-column-names -e"select count(*) from async_job where job_cmd like '%DeployVM%' and last_updated is null") - echo "[DEBUG] " $(date) " " $donecount " VMs still deploying" - if [[ $donecount == "0" || $donecount -eq 0 ]] - then - break - fi - sleep $(($donecount*2))s #2 seconds per VM - done -} - -hflag= -nflag=1 -wflag= -bflag= -dflag= -iterator=0 - -host="127.0.0.1" #defaults to locahost -numberofvms=1040 #defaults -numberofgroups= -groups_per_vm=1 #default one group per vm -batchsize=100 -waitSuccess=false - -while getopts 'h:n:b:d:w' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - n) nflag=1 - numberofvms="$OPTARG" - ;; - w) wflag=1 - waitSuccess=true - ;; - b) bflag=1 - batchsize="$OPTARG" - ;; - d) dflag=1 - dbnode="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [ $hflag$nflag != "11" ] -then - usage - exit 2 -fi - -if [[ $wflag == "1" && $dflag != "1" ]] -then - echo "please specify dbnode -d option" - usage - exit 2 -fi - - -if [[ $bflag == "1" && $wflag != "1" ]] -then - echo "-w option mandatory when -b is given" - usage - exit 2 -fi - -tag1=$(($numberofvms*5/13)) -tag2=$(($numberofvms*2/13)) -tag3=$(($numberofvms*6/13)) - -tag1_so=9 #defaults from a regular installation -tag2_so=10 -tag3_so=11 -vmcount=0 - -echo -n "Service Offering ID with TAG1 hosttag: " -read tag1_so - -echo -n "Service Offering ID with TAG2 hosttag: " -read tag2_so - -echo -n "Service Offering ID with TAG3 hosttag: " -read tag3_so - -echo "Deploying TAG1 VMs with Service Offering: " $tag1_so -for ((c=1;c<$tag1;c++)) -do - if [[ $vmcount -eq $batchsize && waitSuccess ]] - then - waitDeploy $dbnode $batchsize - vmcount=0 - fi - job_out=$(./deployVirtualMachine.sh -h $host -z 1 -t 2 -s $tag1_so -u) - job_id=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - vmid=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - echo "[DEBUG] $(date) deployed vm: " $vmid " in job: " $job_id - vmcount=$((vmcount+1)) -done - -echo "Deploying TAG2 VMs with Service Offering: " $tag2_so -for ((c=1;c<$tag2;c++)) -do - if [[ $vmcount -eq $batchsize && waitSuccess ]] - then - waitDeploy $dbnode $batchsize - vmcount=0 - fi - job_out=$(./deployVirtualMachine.sh -h $host -z 1 -t 2 -s $tag2_so -u) - job_id=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - vmid=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - echo "[DEBUG] $(date) deployed vm: " $vmid " in job: " $job_id - vmcount=$((vmcount+1)) -done - - -echo "Deploying TAG3 VMs with Service Offering: " $tag3_so -for ((c=1;c<$tag3;c++)) -do - if [[ $vmcount -eq $batchsize && waitSuccess ]] - then - waitDeploy $dbnode $batchsize - vmcount=0 - fi - job_out=$(./deployVirtualMachine.sh -h $host -z 1 -t 2 -s $tag3_so -u) - job_id=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - vmid=$(echo $job_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - echo "[DEBUG] $(date) deployed vm: " $vmid " in job: " $job_id - vmcount=$((vmcount+1)) -done diff --git a/agent-simulator/scripts/zucchini/__old__/deployVirtualMachine.sh b/agent-simulator/scripts/zucchini/__old__/deployVirtualMachine.sh deleted file mode 100755 index 15539d23a7c..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/deployVirtualMachine.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -zoneid=$1 -templateId=$2 -serviceOfferingId=$3 - -query="GET http://10.91.30.226:8096/client/?command=deployVirtualMachine&zoneId=$1&templateId=$2&serviceOfferingId=$3&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 20 10.91.30.226 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/destroySystemVm.sh b/agent-simulator/scripts/zucchini/__old__/destroySystemVm.sh deleted file mode 100755 index a2907a1a143..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/destroySystemVm.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -usage() { - printf "Destroy System Virtual Machine\nUsage: %s: -h management-server-ip -i vmid\n" $(basename $0) >&2 -} - - -hflag= -iflag= - -vmid= -host="127.0.0.1" #defaults to localhost - -while getopts 'h:i:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - i) iflag=1 - vmid="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [[ $iflag != "1" ]] -then - usage - exit 2 -fi - -destroy="GET http://$host:8096/client/?command=destroySystemVm&id=$vmid HTTP/1.0\n\n" -echo -e $destroy | nc -v -w 60 $host 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/destroyVirtualMachine.sh b/agent-simulator/scripts/zucchini/__old__/destroyVirtualMachine.sh deleted file mode 100755 index df9201ef728..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/destroyVirtualMachine.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -destroy="GET http://10.91.30.226:8096/client/?command=destroyVirtualMachine&id=$x HTTP/1.0\n\n" - -echo -e $destroy | nc -v -q 60 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/listCapacity.sh b/agent-simulator/scripts/zucchini/__old__/listCapacity.sh deleted file mode 100755 index 9b273058a2c..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/listCapacity.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.226:8096/client/?command=listCapacity&zoneId=$1&podid=$2&response=json HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.226 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/listEvents.sh b/agent-simulator/scripts/zucchini/__old__/listEvents.sh deleted file mode 100755 index bd4e3d8c78c..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/listEvents.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -test="GET http://10.91.30.226:8096/?command=listEvents&page=1 HTTP/1.0\n\n" -echo -e $test | nc -v -q 120 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/listHosts.sh b/agent-simulator/scripts/zucchini/__old__/listHosts.sh deleted file mode 100755 index ec74fdb6ef7..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/listHosts.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.226:8096/client/?command=listHosts&zoneId=$1&account=admin&domainid=1&page=$2 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.226 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/listRouters.sh b/agent-simulator/scripts/zucchini/__old__/listRouters.sh deleted file mode 100755 index 015e5b0a1d1..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/listRouters.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.226:8096/client/?command=listRouters&zoneId=$1&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.226 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/listTemplates.sh b/agent-simulator/scripts/zucchini/__old__/listTemplates.sh deleted file mode 100755 index 1c5fa4da114..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/listTemplates.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.212:8096/client/?command=listTemplates&templatefilter=featured&zoneid=$1 HTTP/1.0\n\n" - -echo -e $query | nc -v -w 120 10.91.30.212 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/listVirtualMachine.sh b/agent-simulator/scripts/zucchini/__old__/listVirtualMachine.sh deleted file mode 100755 index dc20f11e4f6..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/listVirtualMachine.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -query="GET http://10.91.30.226:8096/client/?command=listVirtualMachines&zoneId=$1&account=admin&domainid=1 HTTP/1.0\n\n" - -echo -e $query | nc -v -q 120 10.91.30.226 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/monitor.sh b/agent-simulator/scripts/zucchini/__old__/monitor.sh deleted file mode 100755 index 2cd4f58ea02..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/monitor.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -while [ 1 ] -do - echo ==== $(date) ==== -# mysql -uroot -Dcloud -h$host -e"select count(*), status, mgmt_server_id from host group by status, mgmt_server_id;" - mysql -uroot -Dcloud -h$host -e"select count(*), state, type from vm_instance group by state, type;" - mysql -uroot -Dcloud -h$host -e"select avg(timestampdiff(second,created,last_updated)),count(id),job_cmd,job_status,job_result_code from async_job where last_updated is not null group by job_cmd,job_status,job_result_code;" - mysql -uroot -Dcloud -h$host -e "select count(*) as locks from op_lock;" - echo === last 5 successful DeployVM === - mysql -uroot -Dcloud -h$host -e"select created,last_updated,id, timestampdiff(second,created,last_updated) from async_job where job_cmd like '%DeployVM%' and job_result_code=0 and last_updated is not null order by id desc limit 5;" - echo === nwgroup status === - mysql -uroot -Dcloud -h$host -e"select step, count(*) from op_nwgrp_work group by step;" - mysql -uroot -Dcloud -h$host -e"select avg(timestampdiff(second,created,taken)), count(id),mgmt_server_id from op_nwgrp_work where step='Done' and taken is not null and created < taken group by mgmt_server_id;" - mysql -uroot -Dcloud -h$host -e"select id,mgmt_server_id,instance_id,created,taken,timestampdiff(second,created,taken) from op_nwgrp_work where taken is not null and created!=taken order by id desc limit 5;" - echo - echo - echo - sleep 30s -done diff --git a/agent-simulator/scripts/zucchini/__old__/newsetup.sh b/agent-simulator/scripts/zucchini/__old__/newsetup.sh deleted file mode 100755 index 03e85e308f9..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/newsetup.sh +++ /dev/null @@ -1,228 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -# zucchini uses local storage, before setting up make sure -# * xen.public.network.device is set -# * use.local.storage and systemvm.use.local.storage are true -# * optionally turn off stats collectors -# * expunge.delay and expunge.interval are 60s -# * ping.interval is around 3m -# * turn off dns updates to entire zone, network.dns.basiczone.update=pod -# * capacity.skipcounting.hours=0 -# * direct.agent.load.size=1000 - -# This script will only setup an approximate number of hosts. To achieve the ratio -# by 13. So if 4000 hosts are added, you might see only 3900 come up -# 10 hosts per pod @ 1 host per cluster in a single zone -# Each pod has a /25, so 128 addresses. I think we reserved 5 IP addresses for system VMs in each pod. -# Then we had something like 60 addresses for hosts and 60 addresses for VMs. - -#Environment -#1. Approximately 10 hosts per pod. -#2. Only 3 host tags. -#3. With in each pod, the host tags are the same. Homogenous Pods -#5. In simulator.properties, workers=1 - -usage() { - printf "Setup Zucchini Like Environment\nUsage: %s: -h management-server -z zoneid [-d delay] -n numberofhosts\n" $(basename $0) >&2 -} - -a=1 #CIDR - 16bytes -b=2 #CIDR - 8 bytes - -#options -hflag=1 -zflag= -dflag=1 -nflag=1 - -host="127.0.0.1" #default localhost -zoneid= -delay=300 #default 5 minutes -numberofhosts=1300 #default 1300 hosts -tag1="TAG1" -tag2="TAG2" -tag3="TAG3" - -while getopts 'h:z:d:n:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - z) zflag=1 - zoneid="$OPTARG" - ;; - d) dflag=1 - delay="$OPTARG" - ;; - n) nflag=1 - numberofhosts="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [ $zflag$nflag != "11" ] -then - usage - exit 2 -fi - -numberofpods=$(($numberofhosts/10)) #10 hosts per pod -tag_one_range=$(($numberofpods*5/13)) -tag_two_range=$(($numberofpods*2/13)) -tag_three_range=$(($numberofpods-$tag_one_range-$tag_two_range)) - -clusters_per_pod=10 #each cluster has one host -hosts_per_pod=10 - - -declare -a pod_array -declare -a cluster_array - -echo "Split Ratio :: " $tag_one_range":"$tag_two_range":"$tag_three_range - -#create the zone -zone_query="GET http://$host/client/?command=createZone&networktype=Basic&securitygroupenabled=false&name=Zucchini&dns1=4.2.2.2&internaldns1=4.2.2.2 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -w $delay $host 8096 - -#Add Secondary Storage -sstor_query="GET http://$host/client/?command=addSecondaryStorage&zoneid=$zoneid&url=nfs://172.16.15.32/export/share/secondary HTTP/1.0\n\n" -echo -e $sstor_query | nc -v -w $delay $host 8096 - -let x=a -let y=b - -echo "[DEBUG] $(date) Starting Creation of $numberofpods Pods" -for ((name=1;name<=$numberofpods;name++)) -do - echo "[DEBUG] $(date) Creating pod[POD$name]" - pod_query="GET http://$host/client/?command=createPod&zoneId=$zoneid&name=POD$name&netmask=255.255.255.128&startIp=172.$x.$y.130&endIp=172.$x.$y.189&gateway=172.$x.$y.129 HTTP/1.0\n\n" - pod_out=$(echo -e $pod_query | nc -v -w $delay $host 8096) - pod_id=$(echo $pod_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$pod_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) pod [POD$name] creation failed"; continue - fi - echo "[DEBUG] $(date) Created pod["$pod_id":POD"$name"]" - pod_array[$name]=$pod_id - - echo "[DEBUG] $(date) Creating vlan for pod[POD$name]" - vlan_query="GET http://$host/client/?command=createVlanIpRange&vlan=untagged&zoneid=$zoneid&podId=$pod_id&forVirtualNetwork=false&gateway=172.$x.$y.129&netmask=255.255.255.128&startip=172.$x.$y.190&endip=172.$x.$y.249 HTTP/1.0\n\n" - vlan_out=$(echo -e $vlan_query | nc -v -w $delay $host 8096) - vlan_id=$(echo $vlan_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$vlan_id" =~ ^[0-9]+$ ]] ; then - let y+=1 - if [ "$y" -eq 256 ] - then - let x+=1 - y=1 - fi - exec >&2; echo "[ERROR] $(date) vlan creation for pod[POD$name] failed"; continue - fi - echo "[DEBUG] $(date) Created vlan for pod[POD$name]" - - #add clusters - echo "[DEBUG] $(date) Starting Creation of $clusters_per_pod clusters for pod[POD$name]" - for ((cluster=1;cluster<=$clusters_per_pod;cluster++)) - do - echo "[DEBUG] $(date) Creating cluster[POD$name-CLUSTER$cluster] for pod[POD$name]" - cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=$zoneid&podId=$pod_id&clustername=POD$name-CLUSTER$cluster HTTP/1.0\n\n" - cluster_out=$(echo -e $cluster_query | nc -v -w $delay $host 8096) - cluster_id=$(echo $cluster_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$cluster_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) cluster[POD$name-CLUSTER$cluster] creation for pod[POD$name] failed"; continue - fi - echo "[DEBUG] $(date) Created cluster["$cluster_id":POD"$name"-CLUSTER"$cluster"]" - cluster_array[$(($name*$clusters_per_pod + $cluster))]=$cluster_id - done - echo "[DEBUG] $(date) Finished Creating clusters for pod[POD$name]" - let y+=1 - if [ "$y" -eq 256 ] - then - let x+=1 - y=1 - fi -done -echo "[DEBUG] $(date) Finished Creating $numberofpods Pods" - -#echo "DEBUG:Pods and Clusters" -#echo "PODS:("${#pod_array[@]}")" ${pod_array[@]} -#echo "CLUSTERS:("${#cluster_array[@]}")" ${cluster_array[@]} -echo -echo - -#Add hosts -#TAG1 -for ((i=1;i<=$tag_one_range;i++)) -do - podid=${pod_array[$i]} - for ((j=1;j<=$hosts_per_pod;j++)) - do - clusterid=${cluster_array[$(($i*$clusters_per_pod + $j))]} - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=$podid&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag1 HTTP/1.0\n\n" - host_out=$(echo -e $host_query | nc -v -w $delay $host 8096) - host_id=$(echo $host_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$host_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) host addition failed in [pod:$podid,cluster:$clusterid]"; continue - fi - host_name=$(echo $host_out | sed 's/\(.*\)\(SimulatedAgent.[-0-9a-zA-Z]*\)\(.*\)/\2/g') - echo "[DEBUG] $date added host [$host_id:$host_name] to [pod:$podid,cluster:$clusterid] for TAG1" - done -done - -#TAG2 -for ((i=$(($tag_one_range + 1));i<=$(($tag_one_range + $tag_two_range));i++)) -do - podid=${pod_array[$i]} - for ((j=1;j<=$hosts_per_pod;j++)) - do - clusterid=${cluster_array[$(($i*$clusters_per_pod + $j))]} - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=$podid&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag2 HTTP/1.0\n\n" - host_out=$(echo -e $host_query | nc -v -w $delay $host 8096) - host_id=$(echo $host_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$host_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) host addition failed in [pod:$podid,cluster:$clusterid]"; continue - fi - host_name=$(echo $host_out | sed 's/\(.*\)\(SimulatedAgent.[-0-9a-zA-Z]*\)\(.*\)/\2/g') - echo "[DEBUG] $date added host [$host_id:$host_name] to [pod:$podid,cluster:$clusterid] for TAG2" - done -done - -#TAG3 -for ((i=$(($tag_two_range + $tag_one_range + 1));i<=$(($tag_three_range + $tag_two_range + $tag_one_range));i++)) -do - podid=${pod_array[$i]} - for ((j=1;j<=$hosts_per_pod;j++)) - do - clusterid=${cluster_array[$(($i*$clusters_per_pod + $j))]} - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=$podid&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag3 HTTP/1.0\n\n" - host_out=$(echo -e $host_query | nc -v -w $delay $host 8096) - host_id=$(echo $host_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$host_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) host addition failed in [pod:$podid,cluster:$clusterid]"; continue - fi - host_name=$(echo $host_out | sed 's/\(.*\)\(SimulatedAgent.[-0-9a-zA-Z]*\)\(.*\)/\2/g') - echo "[DEBUG] $date added host [$host_id:$host_name] to [pod:$podid,cluster:$clusterid] for TAG3" - done -done - -echo "Setup complete" -exit 0 diff --git a/agent-simulator/scripts/zucchini/__old__/reconnectStats.sh b/agent-simulator/scripts/zucchini/__old__/reconnectStats.sh deleted file mode 100755 index 8cba78a6ca8..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/reconnectStats.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - - - -name=$1 -while [ 1 ] -do - mysql -s -r -uroot -Dcloud -h10.1.1.215 -e"select count(id),now(),max(disconnected),mgmt_server_id,status from host group by mgmt_server_id,status;" >> $1 - sleep 5 - echo --------------------------------------------------------------------------------------------------------------------- >> $1 -done diff --git a/agent-simulator/scripts/zucchini/__old__/setup.sh b/agent-simulator/scripts/zucchini/__old__/setup.sh deleted file mode 100755 index afb561b79db..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/setup.sh +++ /dev/null @@ -1,90 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - - - - -#1. Approximately 10 hosts per pod. -#2. Only 3 host tags. - -a=$1 #CIDR - 16bytes -b=$2 #CIDR - 8 bytes - -zone_query="GET http://10.91.30.219/client/?command=createZone&name=Zucchini&dns1=4.2.2.2&internaldns1=4.2.2.2&vlan=10-4000&guestcidraddress=10.1.1.0%2F24 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -q 120 10.91.30.219 8096 - -# Pod Ratio: 38:15:47 @ 10 hosts per pod -let x=a -let y=b -for name in `seq 1 152` -do - pod_query="GET http://10.91.30.219:8096/client/?command=createPod&zoneId=1&name=POD$name&cidr=172.$x.$y.0%2F24&startIp=172.$x.$y.2&endIp=172.$x.$y.252&gateway=172.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://10.91.30.219:8096/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -q 20 10.91.30.219 8096 - echo -e $vlan_query | nc -v -q 20 10.91.30.219 8096 - - for cluster in `seq 1 10` - do - host_query="GET http://10.91.30.219:8096/client/?command=addHost&zoneId=1&podId=$name&username=sim&password=sim&clustername=simulator-POD$name-CLUSTER$cluster&hosttags=TAG1&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -q 6000 10.91.30.219 8096 - done - - let x+=1 - let y+=1 -done - -#reset for tag2 -let x=a -let y=b -for name in `seq 153 212` -do - pod_query="GET http://10.91.30.219:8096/client/?command=createPod&zoneId=1&name=POD$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://10.91.30.219:8096/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=182.$y.$x.1&netmask=255.255.255.0&startip=182.$y.$x.2&endip=182.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -q 20 10.91.30.219 8096 - echo -e $vlan_query | nc -v -q 20 10.91.30.219 8096 - - for cluster in `seq 1 10` - do - host_query="GET http://10.91.30.219:8096/client/?command=addHost&zoneId=1&podId=$name&username=sim&password=sim&clustername=simulator-POD$name-CLUSTER$cluster&hosttags=TAG2&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -q 6000 10.91.30.219 8096 - done - - let x+=1 - let y+=1 -done - -#reset for TAG3 -let x=a -let y=b -for name in `seq 213 400` -do - pod_query="GET http://10.91.30.219:8096/client/?command=createPod&zoneId=1&name=POD$name&cidr=192.$x.$y.0%2F24&startIp=192.$x.$y.2&endIp=192.$x.$y.252&gateway=192.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://10.91.30.219:8096/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=192.$y.$x.1&netmask=255.255.255.0&startip=192.$y.$x.2&endip=192.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -q 20 10.91.30.219 8096 - echo -e $vlan_query | nc -v -q 20 10.91.30.219 8096 - - for cluster in `seq 1 10` - do - host_query="GET http://10.91.30.219:8096/client/?command=addHost&zoneId=1&podId=$name&username=sim&password=sim&clustername=simulator-POD$name-CLUSTER$cluster&hosttags=TAG3&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -q 6000 10.91.30.219 8096 - done - - let x+=1 - let y+=1 -done diff --git a/agent-simulator/scripts/zucchini/__old__/setupDirectPods.sh b/agent-simulator/scripts/zucchini/__old__/setupDirectPods.sh deleted file mode 100755 index 199309646ce..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/setupDirectPods.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 -y=$2 -name=$3 - -pod_query="GET http://10.91.30.212:8096/client/?command=createPod&zoneId=1&name=SSP$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 -HTTP/1.0\n\n" - -echo -e $pod_query | nc -v -w 20 10.91.30.212 8096 - -#vlan_query="GET http://10.91.30.212/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.252 HTTP/1.0\n\n" - -#echo -e $vlan_query | nc -v -w 20 10.91.30.212 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/setupHosts.sh b/agent-simulator/scripts/zucchini/__old__/setupHosts.sh deleted file mode 100755 index 29607ce39d4..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/setupHosts.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -name=$1 - -host_query="GET http://10.91.30.226:8096/client/?command=addHost&zoneId=1&podId=$((name+250))&username=sim&password=sim&clustername=simulator-$name&hosttags=RP$name&url=http%3A%2F%2Fsim HTTP/1.0\n\n" -echo -e $host_query | nc -v -q 60 10.91.30.226 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/setupPodAndNetwork.sh b/agent-simulator/scripts/zucchini/__old__/setupPodAndNetwork.sh deleted file mode 100755 index 606daf7b1cb..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/setupPodAndNetwork.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -workers=$1 -x=$2 #CIDR - 16bytes -y=$3 #CIDR - 8 bytes - -for name in `seq 1 $workers` -do - pod_query="GET http://10.91.30.226:8096/client/?command=createPod&zoneId=1&name=RP$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://10.91.30.226:8096/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$((name+250))&forVirtualNetwork=false&gateway=182.$y.$x.1&netmask=255.255.255.0&startip=182.$y.$x.2&endip=182.$y.$x.252 HTTP/1.0\n\n" - so_query="GET http://10.91.30.226:8096/client/?command=createServiceOffering&name=RP$name&displayText=RP$name&storageType=local&cpuNumber=1&cpuSpeed=1000&memory=512&offerha=false&usevirtualnetwork=false&hosttags=RP$name HTTP/1.0\n\n" - - echo -e $pod_query | nc -v -q 20 10.91.30.226 8096 - echo -e $vlan_query | nc -v -q 20 10.91.30.226 8096 - echo -e $so_query | nc -v -q 20 10.91.30.226 8096 - - let x+=1 - let y+=1 -done - - - diff --git a/agent-simulator/scripts/zucchini/__old__/setupServiceOffering.sh b/agent-simulator/scripts/zucchini/__old__/setupServiceOffering.sh deleted file mode 100755 index fecf242e02c..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/setupServiceOffering.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -so_query="GET http://10.91.30.226:8096/client/?command=createServiceOffering&name=SO$x&displayText=SO$x&storageType=local&cpuNumber=1&cpuSpeed=1000&memory=512&offerha=false&usevirtualnetwork=false&hosttags=SP$x HTTP/1.0\n\n" - -echo -e $so_query | nc -v -q 20 10.91.30.226 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/setupVlan.sh b/agent-simulator/scripts/zucchini/__old__/setupVlan.sh deleted file mode 100755 index 0d2587e6cb0..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/setupVlan.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 -y=$2 -name=$3 - -vlan_query="GET http://10.91.30.212/client/?command=createVlanIpRange&vlan=untagged&zoneid=1&podId=$name&forVirtualNetwork=false&gateway=172.$x.$y.1&netmask=255.255.255.0&startip=172.$x.$y.2&endip=172.$x.$y.252 HTTP/1.0\n\n" - -echo -e $vlan_query | nc -v -w 20 10.91.30.212 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/setup_sg.sh b/agent-simulator/scripts/zucchini/__old__/setup_sg.sh deleted file mode 100755 index 94884d99003..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/setup_sg.sh +++ /dev/null @@ -1,252 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -# zucchini uses local storage, before setting up make sure -# * xen.public.network.device is set -# * use.local.storage and systemvm.use.local.storage are true -# * optionally turn off stats collectors -# * expunge.delay and expunge.interval are 60s -# * ping.interval is around 3m -# * turn off dns updates to entire zone, network.dns.basiczone.update=pod -# * capacity.skipcounting.hours=0 -# * direct.agent.load.size=1000 -# * security groups are enabled - -# This script will only setup an approximate number of hosts. To achieve the ratio -# by 13. So if 4000 hosts are added, you might see only 3900 come up -# 10 hosts per pod @ 1 host per cluster in a single zone -# Each pod has a /25, so 128 addresses. I think we reserved 5 IP addresses for system VMs in each pod. -# Then we had something like 60 addresses for hosts and 60 addresses for VMs. - -#Environment -#1. Approximately 10 hosts per pod. -#2. Only 3 host tags. -#3. With in each pod, the host tags are the same. Homogenous Pods -#5. In simulator.properties, workers=1 - -usage() { - printf "Setup Zucchini Like Environment\nUsage: %s: -h management-server -z zoneid [-d delay] -n numberofhosts [-g numberof security groups]\n" $(basename $0) >&2 -} - -a=1 #CIDR - 16bytes -b=2 #CIDR - 8 bytes - -#options -hflag=1 -zflag= -dflag=1 -nflag=1 -gflag=1 - -host="127.0.0.1" #default localhost -zoneid= -delay=300 #default 5 minutes -numberofhosts=1300 #default 1300 hosts -numberofgroups=130 #default 130 groups -tag1="TAG1" -tag2="TAG2" -tag3="TAG3" - -while getopts 'h:z:d:n:g:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - z) zflag=1 - zoneid="$OPTARG" - ;; - d) dflag=1 - delay="$OPTARG" - ;; - n) nflag=1 - numberofhosts="$OPTARG" - ;; - g) gflag=1 - numberofgroups="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [ $zflag$nflag != "11" ] -then - usage - exit 2 -fi - -numberofpods=$(($numberofhosts/10)) #10 hosts per pod -tag_one_range=$(($numberofpods*5/13)) -tag_two_range=$(($numberofpods*2/13)) -tag_three_range=$(($numberofpods-$tag_one_range-$tag_two_range)) - -clusters_per_pod=10 #each cluster has one host -hosts_per_pod=10 - - -declare -a pod_array -declare -a cluster_array - -echo "Split Ratio :: " $tag_one_range":"$tag_two_range":"$tag_three_range - -#create the zone -zone_query="GET http://$host/client/?command=createZone&networktype=Basic&securitygroupenabled=true&name=Zucchini&dns1=4.2.2.2&internaldns1=4.2.2.2 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -w $delay $host 8096 - -#Add Secondary Storage -sstor_query="GET http://$host/client/?command=addSecondaryStorage&zoneid=$zoneid&url=nfs://172.16.15.32/export/share/secondary HTTP/1.0\n\n" -echo -e $sstor_query | nc -v -w $delay $host 8096 - -let x=a -let y=b - -echo "[DEBUG] $(date) Starting Creation of $numberofpods Pods" -for ((name=1;name<=$numberofpods;name++)) -do - echo "[DEBUG] $(date) Creating pod[POD$name]" - pod_query="GET http://$host/client/?command=createPod&zoneId=$zoneid&name=POD$name&netmask=255.255.255.128&startIp=172.$x.$y.130&endIp=172.$x.$y.189&gateway=172.$x.$y.129 HTTP/1.0\n\n" - pod_out=$(echo -e $pod_query | nc -v -w $delay $host 8096) - pod_id=$(echo $pod_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$pod_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) pod [POD$name] creation failed"; continue - fi - echo "[DEBUG] $(date) Created pod["$pod_id":POD"$name"]" - pod_array[$name]=$pod_id - - echo "[DEBUG] $(date) Creating vlan for pod[POD$name]" - vlan_query="GET http://$host/client/?command=createVlanIpRange&vlan=untagged&zoneid=$zoneid&podId=$pod_id&forVirtualNetwork=false&gateway=172.$x.$y.129&netmask=255.255.255.128&startip=172.$x.$y.190&endip=172.$x.$y.249 HTTP/1.0\n\n" - vlan_out=$(echo -e $vlan_query | nc -v -w $delay $host 8096) - vlan_id=$(echo $vlan_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$vlan_id" =~ ^[0-9]+$ ]] ; then - let y+=1 - if [ "$y" -eq 256 ] - then - let x+=1 - y=1 - fi - exec >&2; echo "[ERROR] $(date) vlan creation for pod[POD$name] failed"; continue - fi - echo "[DEBUG] $(date) Created vlan for pod[POD$name]" - - #add clusters - echo "[DEBUG] $(date) Starting Creation of $clusters_per_pod clusters for pod[POD$name]" - for ((cluster=1;cluster<=$clusters_per_pod;cluster++)) - do - echo "[DEBUG] $(date) Creating cluster[POD$name-CLUSTER$cluster] for pod[POD$name]" - cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=$zoneid&podId=$pod_id&clustername=POD$name-CLUSTER$cluster HTTP/1.0\n\n" - cluster_out=$(echo -e $cluster_query | nc -v -w $delay $host 8096) - cluster_id=$(echo $cluster_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$cluster_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) cluster[POD$name-CLUSTER$cluster] creation for pod[POD$name] failed"; continue - fi - echo "[DEBUG] $(date) Created cluster["$cluster_id":POD"$name"-CLUSTER"$cluster"]" - cluster_array[$(($name*$clusters_per_pod + $cluster))]=$cluster_id - done - echo "[DEBUG] $(date) Finished Creating clusters for pod[POD$name]" - let y+=1 - if [ "$y" -eq 256 ] - then - let x+=1 - y=1 - fi -done -echo "[DEBUG] $(date) Finished Creating $numberofpods Pods" - -#echo "DEBUG:Pods and Clusters" -#echo "PODS:("${#pod_array[@]}")" ${pod_array[@]} -#echo "CLUSTERS:("${#cluster_array[@]}")" ${cluster_array[@]} -echo -echo - - -echo "[DEBUG] $(date) Creating $numberofgroups security groups" -for ((sg=1;sg<=$numberofgroups;sg++)) -do - sg_create_query="GET http://$host/client/?command=createSecurityGroup&name=zGroup$sg&description=zGroup$sg&domainid=1&account=admin HTTP/1.0\n\n" - sg_create_out=$(echo -e $sg_create_query | nc -v -w $delay $host 8096) - sg_id=$(echo $sg_create_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$sg_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) security group[zGroup$sg] creation failed"; continue - fi - echo "[DEBUG] $(date) Created security group[$sg_id:zGroup$sg]" - - echo "[DEBUG] $(date) Adding ingress rule start,end=$((2000 + $sg)), $((2000 + $sg)) to security group[$sg_id:zGroup$sg]" - sg_auth_query="GET http://$host/client/?command=authorizeSecurityGroupIngress&domainid=1&account=admin&securitygroupid=$sg_id&protocol=TCP&startport=$((2000 + $sg))&endport=$((2000 + $sg))&usersecuritygrouplist[0].account=admin&usersecuritygrouplist[0].group=zGroup$sg HTTP/1.0\n\n" - sg_auth_out=$(echo -e $sg_auth_query | nc -v -w $delay $host 8096) -done -echo "[DEBUG] $(date) Finished Creating security groups" - -#Add hosts -#TAG1 -for ((i=1;i<=$tag_one_range;i++)) -do - podid=${pod_array[$i]} - for ((j=1;j<=$hosts_per_pod;j++)) - do - clusterid=${cluster_array[$(($i*$clusters_per_pod + $j))]} - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=$podid&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag1 HTTP/1.0\n\n" - host_out=$(echo -e $host_query | nc -v -w $delay $host 8096) - host_id=$(echo $host_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$host_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) host addition failed in [pod:$podid,cluster:$clusterid]"; continue - fi - host_name=$(echo $host_out | sed 's/\(.*\)\(SimulatedAgent.[-0-9a-zA-Z]*\)\(.*\)/\2/g') - echo "[DEBUG] $date added host [$host_id:$host_name] to [pod:$podid,cluster:$clusterid] for TAG1" - done -done - -#TAG2 -for ((i=$(($tag_one_range + 1));i<=$(($tag_one_range + $tag_two_range));i++)) -do - podid=${pod_array[$i]} - for ((j=1;j<=$hosts_per_pod;j++)) - do - clusterid=${cluster_array[$(($i*$clusters_per_pod + $j))]} - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=$podid&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag2 HTTP/1.0\n\n" - host_out=$(echo -e $host_query | nc -v -w $delay $host 8096) - host_id=$(echo $host_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$host_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) host addition failed in [pod:$podid,cluster:$clusterid]"; continue - fi - host_name=$(echo $host_out | sed 's/\(.*\)\(SimulatedAgent.[-0-9a-zA-Z]*\)\(.*\)/\2/g') - echo "[DEBUG] $date added host [$host_id:$host_name] to [pod:$podid,cluster:$clusterid] for TAG2" - done -done - -#TAG3 -for ((i=$(($tag_two_range + $tag_one_range + 1));i<=$(($tag_three_range + $tag_two_range + $tag_one_range));i++)) -do - podid=${pod_array[$i]} - for ((j=1;j<=$hosts_per_pod;j++)) - do - clusterid=${cluster_array[$(($i*$clusters_per_pod + $j))]} - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=$podid&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag3 HTTP/1.0\n\n" - host_out=$(echo -e $host_query | nc -v -w $delay $host 8096) - host_id=$(echo $host_out | sed 's/\(.*\)\([0-9]*\)\(.*\)/\2/g') - if ! [[ "$host_id" =~ ^[0-9]+$ ]] ; then - exec >&2; echo "[ERROR] $(date) host addition failed in [pod:$podid,cluster:$clusterid]"; continue - fi - host_name=$(echo $host_out | sed 's/\(.*\)\(SimulatedAgent.[-0-9a-zA-Z]*\)\(.*\)/\2/g') - echo "[DEBUG] $date added host [$host_id:$host_name] to [pod:$podid,cluster:$clusterid] for TAG3" - done -done - -echo "Setup complete" -exit 0 diff --git a/agent-simulator/scripts/zucchini/__old__/small.sh b/agent-simulator/scripts/zucchini/__old__/small.sh deleted file mode 100755 index 429cdd05a70..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/small.sh +++ /dev/null @@ -1,158 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -# zucchini uses local storage, before setting up make sure -# * xen.public.network.device is set -# * use.local.storage and systemvm.use.local.storage are true -# * optionally turn off stats collector -# * expunge.delay and expunge.interval are 60s -# * capacity.skipcounting.hours=0 - -#Environment -#1. Small setup for zucchini : 13, 26, 39, 52 hosts only -#2. Only 3 host tags. -#5. simulator.properties, workers=1 - -usage() { - printf "Setup Zucchini Like Environment\nUsage: %s: -h management-server -z zoneid [-d delay] -n numberofhosts\n" $(basename $0) >&2 -} - -a=1 #CIDR - 16bytes -b=2 #CIDR - 8 bytes - -#options -hflag=1 -zflag=1 -dflag=1 -nflag=1 - -host="127.0.0.1" #default localhost -zoneid= -delay=300 #default 5 minutes -numberofhosts=13 #default 13 hosts -tag1="TAG1" -tag2="TAG2" -tag3="TAG3" - -while getopts 'h:z:d:n:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - z) zflag=1 - zoneid="$OPTARG" - ;; - d) dflag=1 - delay="$OPTARG" - ;; - n) nflag=1 - numberofhosts="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [ $hflag$zflag$dflag$nflag != "1111" ] -then - usage - exit 2 -fi - -if [ $numberofhosts -gt 52 ] -then - echo "Can't exceed 52 hosts" - exit 130 -fi - -numberofpods=3 #130 hosts per pod. So need only 3. each pod is homogenous -tag_one_range=$(($numberofhosts*5/13)) -tag_two_range=$(($numberofhosts*2/13)) -tag_three_range=$(($numberofhosts-$tag_one_range-$tag_two_range)) - -#create the zone -zone_query="GET http://$host/client/?command=createZone&networktype=Basic&securitygroupenabled=true&name=Zucchini&dns1=4.2.2.2&internaldns1=4.2.2.2 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -w $delay $host 8096 - -sstor_query="GET http://$host/client/?command=addSecondaryStorage&zoneid=$zoneid&url=nfs://172.16.15.32/export/share/secondary HTTP/1.0\n\n" -echo -e $sstor_query | nc -v -w $delay $host 8096 - -let x=a -let y=b -for name in `seq 1 $numberofpods` -do - pod_query="GET http://$host/client/?command=createPod&zoneId=$zoneid&name=POD$name&netmask=255.255.255.0&startIp=172.$x.$y.2&endIp=172.$x.$y.131&gateway=172.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://$host/client/?command=createVlanIpRange&vlan=untagged&zoneid=$zoneid&podId=$name&forVirtualNetwork=false&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.131 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -w $delay $host 8096 - echo -e $vlan_query | nc -v -w $delay $host 8096 - - let x+=1 - let y+=1 -done - -#add clusters - -#for i in `seq 1 10` -# cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=$zoneid&podId=$podid&clustername=POD$podid-CLUSTER$cluster HTTP/1.0\n\n" -# echo -e $cluster_query | nc -v -w $delay $host 8096 -#do - -clusterid=1 -#TAG1 -for cluster in `seq 1 $tag_one_range` -do - cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=$zoneid&podId=1&clustername=POD1-CLUSTER$cluster HTTP/1.0\n\n" - echo -e $cluster_query | nc -v -w $delay $host 8096 - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=1&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag1 HTTP/1.0\n\n" - echo -e $host_query | nc -v -w $delay $host 8096 - let clusterid+=1 -done - -#TAG2 -for cluster in `seq $(($tag_one_range + 1)) $(($tag_one_range + $tag_two_range))` -do - cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=$zoneid&podId=2&clustername=POD2-CLUSTER$cluster HTTP/1.0\n\n" - echo -e $cluster_query | nc -v -w $delay $host 8096 - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=2&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag2 HTTP/1.0\n\n" - echo -e $host_query | nc -v -w $delay $host 8096 - let clusterid+=1 -done - -#TAG3 -for cluster in `seq $(($tag_two_range + $tag_one_range + 1)) $(($tag_three_range + $tag_two_range + $tag_one_range))` -do - cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=$zoneid&podId=3&clustername=POD3-CLUSTER$cluster HTTP/1.0\n\n" - echo -e $cluster_query | nc -v -w $delay $host 8096 - host_query="GET http://$host/client/?command=addHost&zoneId=$zoneid&podId=3&username=sim&password=sim&clusterid=$clusterid&url=http%3A%2F%2Fsim&hypervisor=Simulator&clustertype=CloudManaged&hosttags=$tag3 HTTP/1.0\n\n" - echo -e $host_query | nc -v -w $delay $host 8096 - let clusterid+=1 - -done - -for i in {1..60} -do - sg_create_query="GET http://$host/client/?command=createSecurityGroup&name=TestGroup1&description=Test HTTP/1.0\n\n" - echo -e $sg_create_query | nc -v -w $delay $host 8096 - - sg_auth_query="GET http://$host/client/?command=authorizeSecurityGroupIngress&domainid=1&account=admin&securitygroupid=$((i+2))&protocol=TCP&startport=2002&endport=2002&usersecuritygrouplist[0].account=admin&usersecuritygrouplist[0].group=TestGroup1 HTTP/1.0\n\n" - echo -e $sg_create_query | nc -v -w $delay $host 8096 -done - -echo "Setup complete" -exit 0 diff --git a/agent-simulator/scripts/zucchini/__old__/so_setup.sh b/agent-simulator/scripts/zucchini/__old__/so_setup.sh deleted file mode 100755 index ffdd243400f..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/so_setup.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -./setupServiceOffering.sh -h $host -i T1 -l -m 7168 -c 1024 -n 1 -g TAG1 -./setupServiceOffering.sh -h $host -i T2 -l -m 7168 -c 1024 -n 1 -g TAG2 -./setupServiceOffering.sh -h $host -i T3 -l -m 7168 -c 1024 -n 1 -g TAG3 diff --git a/agent-simulator/scripts/zucchini/__old__/startRouter.sh b/agent-simulator/scripts/zucchini/__old__/startRouter.sh deleted file mode 100755 index 8f36d65a02c..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/startRouter.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -start_router="GET http://10.91.30.226:8096/client/?command=startRouter&id=$x HTTP/1.0\n\n" - - -echo -e $start_router | nc -v -q 60 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/startVirtualMachine.sh b/agent-simulator/scripts/zucchini/__old__/startVirtualMachine.sh deleted file mode 100755 index d25cd492138..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/startVirtualMachine.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - -x=$1 - -start_vm="GET http://10.91.30.226:8096/client/?command=startVirtualMachine&id=$x HTTP/1.0\n\n" - - -echo -e $start_vm | nc -v -q 60 10.91.30.226 8096 - diff --git a/agent-simulator/scripts/zucchini/__old__/stopRouter.sh b/agent-simulator/scripts/zucchini/__old__/stopRouter.sh deleted file mode 100755 index c933b7dbc6b..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/stopRouter.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -usage() { - printf "Stop Router: %s: -h management-server -i vmid\n" $(basename $0) >&2 -} - -iflag= -hflag= - -host="127.0.0.1" #defaults to localhost -vmid= - -while getopts 'h:i:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - i) iflag=1 - vmid="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [[ $iflag != "1" ]] -then - usage - exit 2 -fi -stop_vm="GET http://$host:8096/client/?command=stopRouter&id=$vmid HTTP/1.0\n\n" -echo -e $stop_vm | nc -v -w 60 $host 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/stopVirtualMachine.sh b/agent-simulator/scripts/zucchini/__old__/stopVirtualMachine.sh deleted file mode 100755 index 1ed1106f0e6..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/stopVirtualMachine.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -usage() { - printf "Stop Virtual Machine: %s: -h management-server -i vmid\n" $(basename $0) >&2 -} - -iflag= -hflag= - -host="127.0.0.1" #defaults to localhost -vmid= - -while getopts 'h:i:' OPTION -do - case $OPTION in - h) hflag=1 - host="$OPTARG" - ;; - i) iflag=1 - vmid="$OPTARG" - ;; - ?) usage - exit 2 - ;; - esac -done - -if [[ $iflag != "1" ]] -then - usage - exit 2 -fi -stop_vm="GET http://$host:8096/client/?command=stopVirtualMachine&id=$vmid HTTP/1.0\n\n" -echo -e $stop_vm | nc -v -w 60 $host 8096 diff --git a/agent-simulator/scripts/zucchini/__old__/zucchini219.sh b/agent-simulator/scripts/zucchini/__old__/zucchini219.sh deleted file mode 100755 index ca54e5c4556..00000000000 --- a/agent-simulator/scripts/zucchini/__old__/zucchini219.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env bash -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - - - - - -#1. Approximately 10 hosts per pod. -#2. Only 3 host tags. - -a=$1 #CIDR - 16bytes -b=$2 #CIDR - 8 bytes -host=$3 #MSHOST -zone=$4 - -zone_query="GET http://$host/client/?command=createZone&name=Zucchini&dns1=4.2.2.2&internaldns1=4.2.2.2&vlan=10-4000&guestcidraddress=10.1.1.0%2F24 HTTP/1.0\n\n" -echo -e $zone_query | nc -v -w 120 $host 8096 - -# Pod Ratio: 38:15:47 -let x=a -let y=b -for name in `seq 1 152` -do - pod_query="GET http://$host/client/?command=createPod&zoneId=$zone&name=POD$name&cidr=172.$x.$y.0%2F24&startIp=172.$x.$y.2&endIp=172.$x.$y.252&gateway=172.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://$host/client/?command=createVlanIpRange&vlan=untagged&zoneid=$zone&podId=$name&forVirtualNetwork=false&gateway=172.$y.$x.1&netmask=255.255.255.0&startip=172.$y.$x.2&endip=172.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -w 20 $host 8096 - echo -e $vlan_query | nc -v -w 20 $host 8096 - - let x+=1 - let y+=1 -done - - -let x=a -let y=b -for name in `seq 153 212` -do - pod_query="GET http://$host/client/?command=createPod&zoneId=$zone&name=POD$name&cidr=182.$x.$y.0%2F24&startIp=182.$x.$y.2&endIp=182.$x.$y.252&gateway=182.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://$host/client/?command=createVlanIpRange&vlan=untagged&zoneid=$zone&podId=$name&forVirtualNetwork=false&gateway=182.$y.$x.1&netmask=255.255.255.0&startip=182.$y.$x.2&endip=182.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -w 20 $host 8096 - echo -e $vlan_query | nc -v -w 20 $host 8096 - - let x+=1 - let y+=1 -done - -let x=a -let y=b -for name in `seq 213 400` -do - - pod_query="GET http://$host/client/?command=createPod&zoneId=$zone&name=POD$name&cidr=192.$x.$y.0%2F24&startIp=192.$x.$y.2&endIp=192.$x.$y.252&gateway=192.$x.$y.1 HTTP/1.0\n\n" - vlan_query="GET http://$host/client/?command=createVlanIpRange&vlan=untagged&zoneid=$zone&podId=$name&forVirtualNetwork=false&gateway=192.$y.$x.1&netmask=255.255.255.0&startip=192.$y.$x.2&endip=192.$y.$x.252 HTTP/1.0\n\n" - echo -e $pod_query | nc -v -w 20 $host 8096 - echo -e $vlan_query | nc -v -w 20 $host 8096 - - let x+=1 - let y+=1 -done - -#add clusters -#for name in `seq 1 400` -#do -# for cluster in `seq 1 10` -# do -# cluster_query="GET http://$host/client/?command=addCluster&hypervisor=Simulator&clustertype=CloudManaged&zoneId=$zone&podId=$name&clustername=POD$name-CLUSTER$cluster HTTP/1.0\n\n" -# echo -e $cluster_query | nc -v -w 120 $host 8096 -# done -#done - -# @ 10 hosts per pod @ 10 clusters per pod -clusterid=1 -#TAG1 -for podid in `seq 58 152` -do - for i in `seq 1 10` - do - host_query="GET http://$host/client/?command=addHost&zoneId=$zone&podId=$podid&username=sim&password=sim&clustername=CLUSTER$clusterid&hosttags=TAG1&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -w 6000 $host 8096 - done - let clusterid+=1 -done - -#TAG2 -for podid in `seq 153 212` -do - for i in `seq 1 10` - do - host_query="GET http://$host/client/?command=addHost&zoneId=$zone&podId=$podid&username=sim&password=sim&clustername=CLUSTER$clusterid&hosttags=TAG2&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -w 6000 $host 8096 - done - let clusterid+=1 -done - -#TAG3 -for podid in `seq 213 400` -do - for i in `seq 1 10` - do - host_query="GET http://$host/client/?command=addHost&zoneId=$zone&podId=$podid&username=sim&password=sim&cluster=CLUSTER$clusterid&hosttags=TAG3&url=http%3A%2F%2Fsim HTTP/1.0\n\n" - echo -e $host_query | nc -v -w 6000 $host 8096 - done - let clusterid+=1 -done diff --git a/agent-simulator/scripts/zucchini/setup.py b/agent-simulator/scripts/zucchini/setup.py deleted file mode 100644 index 6624f060656..00000000000 --- a/agent-simulator/scripts/zucchini/setup.py +++ /dev/null @@ -1,217 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -''' -# zucchini uses local storage, before setting up make sure -# * xen.public.network.device is set -# * use.local.storage and systemvm.use.local.storage are true -# * optionally turn off stats collectors -# * expunge.delay and expunge.interval are 60s -# * ping.interval is around 3m -# * turn off dns updates to entire zone, network.dns.basiczone.update=pod -# * capacity.skipcounting.hours=0 -# * direct.agent.load.size=1000 -# * security groups are enabled -# This script will only setup an approximate number of hosts. To achieve the ratio -# by 13. So if 4000 hosts are added, you might see only 3900 come up -# 10 hosts per pod @ 1 host per cluster in a single zone -# Each pod has a /25, so 128 addresses. I think we reserved 5 IP addresses for system VMs in each pod. -# Then we had something like 60 addresses for hosts and 60 addresses for VMs. - -#Environment -#1. Approximately 10 hosts per pod. -#2. Only 3 host tags. -#3. With in each pod, the host tags are the same. Homogenous Pods -#5. In simulator.properties, workers=1 -''' - -from optparse import OptionParser -from configGenerator import * -import random - -def getGlobalSettings(): - global_settings = {'expunge.delay': '60', - 'expunge.interval': '60', - 'expunge.workers': '3', - 'workers': '10', - 'network.dns.basiczone.updates':'pod', - 'use.user.concentrated.pod.allocation':'false', - 'vm.allocation.algorithm':'firstfit', - 'capacity.check.period':'0', -# 'host.stats.interval':'-1', -# 'vm.stats.interval':'-1', -# 'storage.stats.interval':'-1', -# 'router.stats.interval':'-1', - 'vm.op.wait.interval':'5', - 'xen.public.network.device':'10.10.10.10', #only a dummy for the simulator - 'guest.domain.suffix':'zucchini.simulator', - 'instance.name':'ZIM', - 'direct.agent.load.size':'1000', - 'default.page.size':'10000', - 'linkLocalIp.nums':'4', - 'system.vm.use.local.storage':'true', - 'use.local.storage':'true', - 'check.pod.cidrs':'false', - } - for k,v in global_settings.iteritems(): - cfg=configuration() - cfg.name=k - cfg.value=v - yield cfg - -def podIpRangeGenerator(): - x=1 - y=2 - while 1: - if y == 255: - x=x+1 - if x == 255: - x=1 - break - y=1 - y=y+1 - #pod mangement network - yield ('172.'+str(x)+'.'+str(y)+'.129', '172.'+str(x)+'.'+str(y)+'.130', '172.'+str(x)+'.'+str(y)+'.189') - - -def vlanIpRangeGenerator(): - x=1 - y=2 - while 1: - if y == 255: - x=x+1 - if x==255: - x=1 - break - y=1 - y=y+1 - #vlan ip range - yield ('172.'+str(x)+'.'+str(y)+'.129', '172.'+str(x)+'.'+str(y)+'.190', '172.'+str(x)+'.'+str(y)+'.249') - - -def describeZucchiniResources(numberOfAgents=1300, dbnode='localhost', mshost='localhost', randomize=False, sgenabled=False): - zs=cloudstackConfiguration() - numberofpods=numberOfAgents/10 - tagOneHosts = numberOfAgents*5/13 - tagTwoHosts = numberOfAgents*2/13 - tagThreeHosts = numberOfAgents-tagOneHosts-tagTwoHosts - - clustersPerPod=10 - hostsPerPod=10 - - z = zone() - z.dns1 = '4.2.2.2' - z.dns2 = '192.168.110.254' - z.internaldns1 = '10.91.28.6' - z.internaldns2 = '192.168.110.254' - z.name = 'Zucchini' - z.networktype = 'Basic' - z.securitygroupenabled = sgenabled - - hosttags=['TAG1' for x in range(tagOneHosts)] + ['TAG2' for x in range(tagTwoHosts)] + ['TAG3' for x in range(tagThreeHosts)] - curhost=0 - curpod=0 - if randomize: - random.shuffle(hosttags) #randomize the host distribution - - for podRange,vlanRange in zip(podIpRangeGenerator(), vlanIpRangeGenerator()): - p = pod() - curpod=curpod+1 - p.name = 'POD'+str(curpod) - p.gateway=podRange[0] - p.startip=podRange[1] - p.endip=podRange[2] - p.netmask='255.255.255.128' - - v = iprange() - v.gateway=vlanRange[0] - v.startip=vlanRange[1] - v.endip=vlanRange[2] - v.netmask="255.255.255.128" - p.guestIpRanges.append(v) - - for i in range(1,clustersPerPod+1): - c = cluster() - c.clustername = 'POD'+str(curpod)+'-CLUSTER'+str(i) - c.hypervisor = 'Simulator' - c.clustertype = 'CloudManaged' - - try: - h = host() - h.username = 'root' - h.password = 'password' - h.url = "http://sim/test-%d"%(curhost) - h.hosttags = hosttags.pop() - c.hosts.append(h) - curhost=curhost+1 - p.clusters.append(c) - except IndexError: - break - #end clusters - z.pods.append(p) - if curpod == numberofpods or curhost == numberOfAgents: - break - #end pods - secondary = secondaryStorage() - secondary.url = 'nfs://172.16.25.32/secondary/path' - z.secondaryStorages.append(secondary) - zs.zones.append(z) - - '''Add mgt server''' - mgt = managementServer() - mgt.mgtSvrIp = mshost #could be the LB balancing the cluster of management server as well - zs.mgtSvr.append(mgt) - - '''Add a database''' - db = dbServer() - db.dbSvr = opts.dbnode - zs.dbSvr = db - - '''Add some configuration''' - [zs.globalConfig.append(cfg) for cfg in getGlobalSettings()] - - ''''add loggers''' - testClientLogger = logger() - testClientLogger.name = "TestClient" - testClientLogger.file = "/var/log/testclient.log" - - testCaseLogger = logger() - testCaseLogger.name = "TestCase" - testCaseLogger.file = "/var/log/testcase.log" - - zs.logger.append(testClientLogger) - zs.logger.append(testCaseLogger) - return zs - -if __name__=="__main__": - parser = OptionParser() - # parser.add_option('-h','--host',dest='host',help='location of management server(s) or load-balancer') - parser.add_option('-n', '--number-of-agents', action='store', dest='agents', help='number of agents in the deployment') - parser.add_option('-g', '--enable-security-groups', dest='sgenabled', help='specify if security groups are to be enabled', default=False, action='store_true') - parser.add_option('-o', '--output', action='store', default='./z.cfg', dest='output', help='the path where the json config file generated') - parser.add_option('-d', '--dbnode', dest='dbnode', help='hostname/ip of the database node', action='store') - parser.add_option('-m', '--mshost', dest='mshost', help='hostname/ip of management server', action='store') - parser.add_option('-r', '--randomize', dest='randomize', help='randomize the distribution of tags (hetergenous clusters)', action='store_true', default=False) - - (opts, args) = parser.parse_args() - mandatories = ['agents'] - for m in mandatories: - if not opts.__dict__[m]: - print 'mandatory option missing' - - cfg = describeZucchiniResources(int(opts.agents), opts.dbnode, opts.mshost, opts.randomize, opts.sgenabled) - generate_setup_config(cfg, opts.output) diff --git a/agent-simulator/scripts/zucchini/tests/testListVm.py b/agent-simulator/scripts/zucchini/tests/testListVm.py deleted file mode 100644 index ca72bfd8fa4..00000000000 --- a/agent-simulator/scripts/zucchini/tests/testListVm.py +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - import unittest2 as unittest -except ImportError: - import unittest - -import timeit -import random -from cloudstackAPI import * -from cloudstackTestCase import * - - -class ListVmTests(cloudstackTestCase): - ''' - List Virtual Machine tests - ''' - - def setUp(self): - pass - - def tearDown(self): - pass - - def listAllVm(self): - numVms = 0 - api = self.testClient.getApiClient() - listVmCmd = listVirtualMachines.listVirtualMachinesCmd() - listVmCmd.account = 'admin' - listVmCmd.zoneid = 1 - listVmCmd.domainid = 1 - listVmResponse = api.listVirtualMachines(listVmCmd) - if listVmResponse is not None: - numVms = len(listVmResponse) - - @unittest.skip("skipping") - def test_timeListVm(self): - t = timeit.Timer(self.listAllVm) - l = t.repeat(50, 50) diff --git a/agent-simulator/scripts/zucchini/tests/testProvision.py b/agent-simulator/scripts/zucchini/tests/testProvision.py deleted file mode 100644 index 01c1e1d02ef..00000000000 --- a/agent-simulator/scripts/zucchini/tests/testProvision.py +++ /dev/null @@ -1,184 +0,0 @@ -#!/usr/bin/env python -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - import unittest2 as unittest -except ImportError: - import unittest -import random -from cloudstackAPI import * -from cloudstackTestCase import * - -class Provision(cloudstackTestCase): - ''' - This should test basic provisioning of virtual machines - 1. Deploy a no-frills VM - 2. Deploy with tags - hosttags - 3. Deploy with/without security groups - ''' - - solist = {} - sgid = [] - - def setUp(self): - pass - - - def tearDown(self): - pass - - - def test_0_createServiceOfferings(self): - for tag in ['TAG1', 'TAG2', 'TAG3']: - csocmd = createServiceOffering.createServiceOfferingCmd() - csocmd.cpunumber = 1 - csocmd.cpuspeed = 2048 - csocmd.displaytext = tag - csocmd.memory = 7168 - csocmd.name = tag - csocmd.hosttags = tag - csocmd.storagetype = 'local' - csoresponse = self.testClient.getApiClient().createServiceOffering(csocmd) - self.debug(csoresponse) - self.solist[tag]=csoresponse.id - - - def test_1_createSecurityGroupAndRules(self): - apiClient = self.testClient.getApiClient() - sgCmd=createSecurityGroup.createSecurityGroupCmd() - sgCmd.description='default-ps' - sgCmd.name='default-ps' - sgCmd.account='admin' - sgCmd.domainid='1' - sgRes = apiClient.createSecurityGroup(sgCmd) - self.sgid.append(sgRes.id) - - ruleCmd=authorizeSecurityGroupIngress.authorizeSecurityGroupIngressCmd() - ruleCmd.cidrlist = '172.1.0.0/12' - ruleCmd.startport = '1' - ruleCmd.endport = '65535' - ruleCmd.protocol = 'TCP' - ruleCmd.securitygroupid = sgRes.id - ruleCmd.account='admin' - ruleCmd.domainid='1' - sgIngressresponse=apiClient.authorizeSecurityGroupIngress(ruleCmd) - - ruleCmd=authorizeSecurityGroupIngress.authorizeSecurityGroupIngressCmd() - ruleCmd.cidrlist = '172.1.0.0/12' - ruleCmd.startport = '22' - ruleCmd.endport = '22' - ruleCmd.protocol = 'TCP' - ruleCmd.securitygroupid = sgRes.id - ruleCmd.account='admin' - ruleCmd.domainid='1' - sgIngressresponse=apiClient.authorizeSecurityGroupIngress(ruleCmd) - - ruleCmd=authorizeSecurityGroupIngress.authorizeSecurityGroupIngressCmd() - ruleCmd.cidrlist = '10.0.0.0/8' - ruleCmd.startport = '80' - ruleCmd.endport = '80' - ruleCmd.protocol = 'TCP' - ruleCmd.securitygroupid = sgRes.id - ruleCmd.account='admin' - ruleCmd.domainid='1' - sgIngressresponse=apiClient.authorizeSecurityGroupIngress(ruleCmd) - self.debug("Security group created with id: %d"%sgRes.id) - - - - @unittest.skip("needs fixing") - def test_2_DeployVMWithHostTags(self): - ''' - Deploy 3 virtual machines one with each hosttag - ''' - for k,v in self.solist: - deployVmCmd = deployVirtualMachine.deployVirtualMachineCmd() - deployVmCmd.zoneid = 1 - deployVmCmd.hypervisor='Simulator' - deployVmCmd.serviceofferingid=v - deployVmCmd.account='admin' - deployVmCmd.domainid=1 - deployVmCmd.templateid=10 - deployVmResponse = self.testClient.getApiClient().deployVirtualMachine(deployVmCmd) - self.debug("Deployed VM :%d in job: %d"%(deployVmResponse[0].id, deployVmResponse[0].jobid)) - - - def deployCmd(self, tag, sgid): - deployVmCmd = deployVirtualMachine.deployVirtualMachineCmd() - deployVmCmd.zoneid = 1 - deployVmCmd.hypervisor='Simulator' - deployVmCmd.serviceofferingid=self.solist[tag] - deployVmCmd.account='admin' - deployVmCmd.domainid=1 - deployVmCmd.templateid=10 - deployVmCmd.securitygroupids=sgid - return deployVmCmd - - - def listVmsInAccountCmd(self, acct='admin'): - api = self.testClient.getApiClient() - listVmCmd = listVirtualMachines.listVirtualMachinesCmd() - listVmCmd.account = acct - listVmCmd.zoneid = 1 - listVmCmd.domainid = 1 - listVmResponse = api.listVirtualMachines(listVmCmd) - return listVmResponse - - - def destroyCmd(self, vmid): - destroyVmCmd = destroyVirtualMachine.destroyVirtualMachineCmd() - destroyVmCmd.zoneid=1 - destroyVmCmd.id=vmid - self.testClient.getApiClient().destroyVirtualMachine(destroyVmCmd) - - - def deployN(self,nargs=300,batchsize=0): - ''' - Deploy Nargs number of VMs concurrently in batches of size {batchsize}. - When batchsize is 0 all Vms are deployed in one batch - VMs will be deployed in 5:2:6 ratio - ''' - tag1=nargs*5/13 - tag2=nargs*2/13 - tag3=nargs-tag1-tag2 - - cmds = [] - [cmds.append(self.deployCmd('TAG1', self.sgid[0])) for i in range(tag1)] - [cmds.append(self.deployCmd('TAG2', self.sgid[0])) for i in range(tag2)] - [cmds.append(self.deployCmd('TAG3', self.sgid[0])) for i in range(tag3)] - random.shuffle(cmds) #with mix-and-match of Tags - - if batchsize == 0: - self.testClient.submitCmdsAndWait(cmds) - else: - while len(cmds) > 0: - try: - newbatch = [cmds.pop() for b in range(batchsize)] #pop batchsize items - self.testClient.submitCmdsAndWait(newbatch) - except IndexError: - break - - - def test_3_bulkDeploy(self): - self.deployN(nargs=500,batchsize=100) - - - def test_4_bulkDestroy(self): - api = self.testClient.getApiClient() - for vm in self.listVmsInAccountCmd('admin'): - if vm is not None: - self.destroyCmd(vm.id) - diff --git a/agent-simulator/scripts/zucchini/zucchini.configuration.sql b/agent-simulator/scripts/zucchini/zucchini.configuration.sql deleted file mode 100644 index 34e135d4354..00000000000 --- a/agent-simulator/scripts/zucchini/zucchini.configuration.sql +++ /dev/null @@ -1,46 +0,0 @@ --- Licensed to the Apache Software Foundation (ASF) under one --- or more contributor license agreements. See the NOTICE file --- distributed with this work for additional information --- regarding copyright ownership. The ASF licenses this file --- to you under the Apache License, Version 2.0 (the --- "License"); you may not use this file except in compliance --- with the License. You may obtain a copy of the License at --- --- http://www.apache.org/licenses/LICENSE-2.0 --- --- Unless required by applicable law or agreed to in writing, --- software distributed under the License is distributed on an --- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --- KIND, either express or implied. See the License for the --- specific language governing permissions and limitations --- under the License. - -update configuration set value='pod' where name='network.dns.basiczone.updates'; - -update configuration set value='false' where name='use.user.concentrated.pod.allocation'; -update configuration set value='firstfit' where name='vm.allocation.algorithm'; - -update configuration set value='60' where name='expunge.delay'; -update configuration set value='60' where name='expunge.interval'; -update configuration set value='3' where name='expunge.workers'; -update configuration set value='10' where name='workers'; - -update configuration set value='0' where name='capacity.check.period'; -update configuration set value='-1' where name='host.stats.interval'; -update configuration set value='-1' where name='vm.stats.interval'; -update configuration set value='-1' where name='storage.stats.interval'; -update configuration set value='-1' where name='router.stats.interval'; -update configuration set value='5' where name like 'vm.op.wait.interval'; - -update configuration set value='10.10.10.10' where name='xen.public.network.device'; -update configuration set value='zcloud.simulator' where name='guest.domain.suffix'; -update configuration set value='ZIM' where name='instance.name'; - -update configuration set value='1000' where name='direct.agent.load.size'; -update configuration set value='10000' where name='default.page.size'; -update configuration set value='4' where name='linkLocalIp.nums'; -update configuration set value='true' where name like '%local.storage%'; -update configuration set value='false' where name like '%check.pod.cidr%'; - -update configuration set value='100' where name like '%network.security%pool%'; -update configuration set value='120' where name like 'network.securitygroups.work.cleanup.interval';