diff options
author | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2010-08-14 18:46:26 +0000 |
---|---|---|
committer | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2010-08-14 18:46:26 +0000 |
commit | d6451b81703c809abcd0f51e74abdba7c732b513 (patch) | |
tree | fab2013702ae33a07e5bb43abad606e0201b485b /sca-cpp/trunk/samples/store-cluster | |
parent | d090bd129574458379aa9997345e7ca5b2c24886 (diff) |
Some refactoring of the HTTP support, tunnel Memcached requests over HTTPS and add HTTPS config to store-cluster sample.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@985561 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-cpp/trunk/samples/store-cluster')
-rw-r--r-- | sca-cpp/trunk/samples/store-cluster/Makefile.am | 2 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/proxy-conf | 26 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/proxy-ssl-conf | 32 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/server-conf | 34 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/server-ssl-conf | 40 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/ssl-start | 79 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/ssl-stop | 28 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/start | 53 | ||||
-rwxr-xr-x | sca-cpp/trunk/samples/store-cluster/tunnel-ssl-conf | 33 |
9 files changed, 219 insertions, 108 deletions
diff --git a/sca-cpp/trunk/samples/store-cluster/Makefile.am b/sca-cpp/trunk/samples/store-cluster/Makefile.am index d1c8ca7915..0f933b34f3 100644 --- a/sca-cpp/trunk/samples/store-cluster/Makefile.am +++ b/sca-cpp/trunk/samples/store-cluster/Makefile.am @@ -21,7 +21,7 @@ if WANT_OPENID if WANT_LOG if WANT_QUEUE -dist_sample_SCRIPTS = start stop ssl-start +dist_sample_SCRIPTS = start stop ssl-start ssl-stop proxy-conf proxy-ssl-conf server-conf server-ssl-conf tunnel-ssl-conf sampledir = $(prefix)/samples/store-cluster nobase_dist_sample_DATA = htdocs/*.html htdocs/domains/*/*.html domains/*/*.py domains/*/*.composite diff --git a/sca-cpp/trunk/samples/store-cluster/proxy-conf b/sca-cpp/trunk/samples/store-cluster/proxy-conf new file mode 100755 index 0000000000..bdfee78917 --- /dev/null +++ b/sca-cpp/trunk/samples/store-cluster/proxy-conf @@ -0,0 +1,26 @@ +#!/bin/sh + +# 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. + +root=$1 +port=$2 + +# Configure a proxy balancer +../../modules/http/httpd-conf $root sca-store.com $port/80 $root/htdocs +../../modules/http/vhost-conf $root +../../modules/http/proxy-conf $root diff --git a/sca-cpp/trunk/samples/store-cluster/proxy-ssl-conf b/sca-cpp/trunk/samples/store-cluster/proxy-ssl-conf new file mode 100755 index 0000000000..cddadc95f4 --- /dev/null +++ b/sca-cpp/trunk/samples/store-cluster/proxy-ssl-conf @@ -0,0 +1,32 @@ +#!/bin/sh + +# 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. + +root=$1 +port=$2 +sslport=$3 + +# Configure an SSL-enabled proxy balancer +../../modules/http/httpd-conf $root sca-store.com $port/80 $root/htdocs +../../modules/http/vhost-conf $root +../../modules/http/proxy-conf $root +tar -C tmp/ssl -c `../../modules/http/ssl-cert-find tmp/ssl` | tar -C $root -x +../../modules/http/httpd-ssl-conf $root $sslport/443 +../../modules/http/vhost-ssl-conf $root +../../modules/http/proxy-ssl-conf $root + diff --git a/sca-cpp/trunk/samples/store-cluster/server-conf b/sca-cpp/trunk/samples/store-cluster/server-conf new file mode 100755 index 0000000000..0aeb39813d --- /dev/null +++ b/sca-cpp/trunk/samples/store-cluster/server-conf @@ -0,0 +1,34 @@ +#!/bin/sh + +# 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. + +root=$1 +port=$2 + +# Configure an app server +../../modules/http/httpd-conf $root sca-store.com $port/80 htdocs +../../modules/http/vhost-conf $root +../../modules/server/server-conf $root +../../modules/python/python-conf $root +cat >>$root/conf/httpd.conf <<EOF +# Configure SCA Composite for mass dynamic virtual hosting +SCAVirtualContribution `pwd`/domains/ +SCAVirtualComposite store.composite + +EOF + diff --git a/sca-cpp/trunk/samples/store-cluster/server-ssl-conf b/sca-cpp/trunk/samples/store-cluster/server-ssl-conf new file mode 100755 index 0000000000..35c83f8d65 --- /dev/null +++ b/sca-cpp/trunk/samples/store-cluster/server-ssl-conf @@ -0,0 +1,40 @@ +#!/bin/sh + +# 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. + +root=$1 +port=$2 +sslport=$3 + +# Configure an SSL-enabled app server +../../modules/http/httpd-conf $root sca-store.com $port/80 htdocs +../../modules/http/vhost-conf $root +tar -C tmp/ssl -c `../../modules/http/ssl-cert-find tmp/ssl` | tar -C $root -x +../../modules/http/httpd-ssl-conf $root $sslport/443 +../../modules/http/vhost-ssl-conf $root +../../modules/openid/openid-conf $root +../../modules/openid/openid-step2-conf $root +../../modules/server/server-conf $root +../../modules/python/python-conf $root +cat >>$root/conf/httpd.conf <<EOF +# Configure SCA Composite for mass dynamic virtual hosting +SCAVirtualContribution `pwd`/domains/ +SCAVirtualComposite store.composite + +EOF + diff --git a/sca-cpp/trunk/samples/store-cluster/ssl-start b/sca-cpp/trunk/samples/store-cluster/ssl-start index da55846654..8fe0af41d3 100755 --- a/sca-cpp/trunk/samples/store-cluster/ssl-start +++ b/sca-cpp/trunk/samples/store-cluster/ssl-start @@ -22,67 +22,27 @@ ../../modules/http/ssl-cert-conf tmp/ssl sca-store.com server ../../modules/http/ssl-cert-conf tmp/ssl *.sca-store.com vhost ../../modules/http/ssl-cert-conf tmp/ssl sca-store.com proxy +../../modules/http/ssl-cert-conf tmp/ssl sca-store.com tunnel -# Start three identical app servers -../../modules/http/httpd-conf tmp/server1 sca-store.com 8101/80 htdocs -../../modules/http/vhost-conf tmp/server1 -cp `../../modules/http/ssl-ls tmp/ssl` tmp/server1/conf -../../modules/http/httpd-ssl-conf tmp/server1 8441/443 -../../modules/http/vhost-ssl-conf tmp/server1 -../../modules/openid/openid-conf tmp/server1 -../../modules/openid/openid-step2-conf tmp/server1 -../../modules/server/server-conf tmp/server1 -../../modules/python/python-conf tmp/server1 -cat >>tmp/server1/conf/httpd.conf <<EOF -# Configure SCA Composite for mass dynamic virtual hosting -SCAVirtualContribution `pwd`/domains/ -SCAVirtualComposite store.composite +# Start three memcached servers and a tunnel server +../../components/cache/memcached-start 127.0.0.1:11411 +../../components/cache/memcached-start 127.0.0.1:11412 +../../components/cache/memcached-start 127.0.0.1:11413 +./tunnel-ssl-conf tmp/tunnel1 +../../modules/http/httpd-start tmp/tunnel1 -EOF +# Start three app servers +./server-ssl-conf tmp/server1 8101 8441 ../../modules/http/httpd-start tmp/server1 -../../modules/http/httpd-conf tmp/server2 sca-store.com 8102/80 htdocs -../../modules/http/vhost-conf tmp/server2 -cp `../../modules/http/ssl-ls tmp/ssl` tmp/server2/conf -../../modules/http/httpd-ssl-conf tmp/server2 8442/443 -../../modules/http/vhost-ssl-conf tmp/server2 -../../modules/openid/openid-conf tmp/server2 -../../modules/openid/openid-step2-conf tmp/server2 -../../modules/server/server-conf tmp/server2 -../../modules/python/python-conf tmp/server2 -cat >>tmp/server2/conf/httpd.conf <<EOF -# Configure SCA Composite for mass dynamic virtual hosting -SCAVirtualContribution `pwd`/domains/ -SCAVirtualComposite store.composite - -EOF +./server-ssl-conf tmp/server2 8102 8442 ../../modules/http/httpd-start tmp/server2 -../../modules/http/httpd-conf tmp/server3 sca-store.com 8103/80 htdocs -../../modules/http/vhost-conf tmp/server3 -cp `../../modules/http/ssl-ls tmp/ssl` tmp/server3/conf -../../modules/http/httpd-ssl-conf tmp/server3 8443/443 -../../modules/http/vhost-ssl-conf tmp/server3 -../../modules/openid/openid-conf tmp/server3 -../../modules/openid/openid-step2-conf tmp/server3 -../../modules/server/server-conf tmp/server3 -../../modules/python/python-conf tmp/server3 -cat >>tmp/server3/conf/httpd.conf <<EOF -# Configure SCA Composite for mass dynamic virtual hosting -SCAVirtualContribution `pwd`/domains/ -SCAVirtualComposite store.composite - -EOF +./server-ssl-conf tmp/server3 8103 8443 ../../modules/http/httpd-start tmp/server3 -# Start two identical proxy balancers -../../modules/http/httpd-conf tmp/proxy1 sca-store.com 8091/80 tmp/proxy1/htdocs -../../modules/http/vhost-conf tmp/proxy1 -../../modules/http/proxy-conf tmp/proxy1 sca-store.com 8091/80 tmp/proxy1/htdocs -cp `../../modules/http/ssl-ls tmp/ssl` tmp/proxy1/conf -../../modules/http/httpd-ssl-conf tmp/proxy1 8093/443 -../../modules/http/vhost-ssl-conf tmp/proxy1 -../../modules/http/proxy-ssl-conf tmp/proxy1 +# Start two proxy balancers +./proxy-ssl-conf tmp/proxy1 8091 8093 ../../modules/http/proxy-member-conf tmp/proxy1 localhost 8101 ../../modules/http/proxy-ssl-member-conf tmp/proxy1 localhost 8441 ../../modules/http/proxy-member-conf tmp/proxy1 localhost 8102 @@ -91,13 +51,7 @@ cp `../../modules/http/ssl-ls tmp/ssl` tmp/proxy1/conf ../../modules/http/proxy-ssl-member-conf tmp/proxy1 localhost 8443 ../../modules/http/httpd-start tmp/proxy1 -../../modules/http/httpd-conf tmp/proxy2 sca-store.com 8092/80 tmp/proxy2/htdocs -../../modules/http/vhost-conf tmp/proxy2 -../../modules/http/proxy-conf tmp/proxy2 sca-store.com 8092/80 tmp/proxy2/htdocs -cp `../../modules/http/ssl-ls tmp/ssl` tmp/proxy2/conf -../../modules/http/httpd-ssl-conf tmp/proxy2 8094/443 -../../modules/http/vhost-ssl-conf tmp/proxy2 -../../modules/http/proxy-ssl-conf tmp/proxy2 +./proxy-ssl-conf tmp/proxy2 8092 8094 ../../modules/http/proxy-member-conf tmp/proxy2 localhost 8101 ../../modules/http/proxy-ssl-member-conf tmp/proxy2 localhost 8441 ../../modules/http/proxy-member-conf tmp/proxy2 localhost 8102 @@ -106,11 +60,6 @@ cp `../../modules/http/ssl-ls tmp/ssl` tmp/proxy2/conf ../../modules/http/proxy-ssl-member-conf tmp/proxy2 localhost 8443 ../../modules/http/httpd-start tmp/proxy2 -# Start three memcached servers -../../components/cache/memcached-start 11211 -../../components/cache/memcached-start 11212 -../../components/cache/memcached-start 11213 - # Redirect traffic from port 80 to 8091 and use proxy1 #../../ubuntu/ip-redirect-all 80 8091 #../../ubuntu/ip-redirect-all 443 8093 diff --git a/sca-cpp/trunk/samples/store-cluster/ssl-stop b/sca-cpp/trunk/samples/store-cluster/ssl-stop new file mode 100755 index 0000000000..97af3d7faa --- /dev/null +++ b/sca-cpp/trunk/samples/store-cluster/ssl-stop @@ -0,0 +1,28 @@ +#!/bin/sh + +# 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. + +../../modules/http/httpd-stop tmp/server1 +../../modules/http/httpd-stop tmp/server2 +../../modules/http/httpd-stop tmp/server3 +../../modules/http/httpd-stop tmp/proxy1 +../../modules/http/httpd-stop tmp/proxy2 +../../components/cache/memcached-stop 127.0.0.1:11411 +../../components/cache/memcached-stop 127.0.0.1:11412 +../../components/cache/memcached-stop 127.0.0.1:11413 +../../modules/http/httpd-stop tmp/tunnel1 diff --git a/sca-cpp/trunk/samples/store-cluster/start b/sca-cpp/trunk/samples/store-cluster/start index 1cd5825471..4612ca2770 100755 --- a/sca-cpp/trunk/samples/store-cluster/start +++ b/sca-cpp/trunk/samples/store-cluster/start @@ -17,65 +17,34 @@ # specific language governing permissions and limitations # under the License. -# Start three identical app servers -../../modules/http/httpd-conf tmp/server1 sca-store.com 8101/80 htdocs -../../modules/http/vhost-conf tmp/server1 -../../modules/server/server-conf tmp/server1 -../../modules/python/python-conf tmp/server1 -cat >>tmp/server1/conf/httpd.conf <<EOF -# Configure SCA Composite for mass dynamic virtual hosting -SCAVirtualContribution `pwd`/domains/ -SCAVirtualComposite store.composite +# Start three memcached servers +../../components/cache/memcached-start 11211 +../../components/cache/memcached-start 11212 +../../components/cache/memcached-start 11213 -EOF +# Start three app servers +./server-conf tmp/server1 8101 ../../modules/http/httpd-start tmp/server1 -../../modules/http/httpd-conf tmp/server2 sca-store.com 8102/80 htdocs -../../modules/http/vhost-conf tmp/server2 -../../modules/server/server-conf tmp/server2 -../../modules/python/python-conf tmp/server2 -cat >>tmp/server2/conf/httpd.conf <<EOF -# Configure SCA Composite for mass dynamic virtual hosting -SCAVirtualContribution `pwd`/domains/ -SCAVirtualComposite store.composite - -EOF +./server-conf tmp/server2 8102 ../../modules/http/httpd-start tmp/server2 -../../modules/http/httpd-conf tmp/server3 sca-store.com 8103/80 htdocs -../../modules/http/vhost-conf tmp/server3 -../../modules/server/server-conf tmp/server3 -../../modules/python/python-conf tmp/server3 -cat >>tmp/server3/conf/httpd.conf <<EOF -# Configure SCA Composite for mass dynamic virtual hosting -SCAVirtualContribution `pwd`/domains/ -SCAVirtualComposite store.composite - -EOF +./server-conf tmp/server3 8103 ../../modules/http/httpd-start tmp/server3 -# Start two identical proxy balancers -../../modules/http/httpd-conf tmp/proxy1 sca-store.com 8091/80 tmp/proxy1/htdocs -../../modules/http/vhost-conf tmp/proxy1 -../../modules/http/proxy-conf tmp/proxy1 +# Start two proxy balancers +./proxy-conf tmp/proxy1 8091 ../../modules/http/proxy-member-conf tmp/proxy1 localhost 8101 ../../modules/http/proxy-member-conf tmp/proxy1 localhost 8102 ../../modules/http/proxy-member-conf tmp/proxy1 localhost 8103 ../../modules/http/httpd-start tmp/proxy1 -../../modules/http/httpd-conf tmp/proxy2 sca-store.com 8092/80 tmp/proxy2/htdocs -../../modules/http/vhost-conf tmp/proxy2 -../../modules/http/proxy-conf tmp/proxy2 +./proxy-conf tmp/proxy2 8092 ../../modules/http/proxy-member-conf tmp/proxy2 localhost 8101 ../../modules/http/proxy-member-conf tmp/proxy2 localhost 8102 ../../modules/http/proxy-member-conf tmp/proxy2 localhost 8103 ../../modules/http/httpd-start tmp/proxy2 -# Start three memcached servers -../../components/cache/memcached-start 11211 -../../components/cache/memcached-start 11212 -../../components/cache/memcached-start 11213 - # Redirect traffic from port 80 to 8091 and use proxy1 #../../ubuntu/ip-redirect-all 80 8091 diff --git a/sca-cpp/trunk/samples/store-cluster/tunnel-ssl-conf b/sca-cpp/trunk/samples/store-cluster/tunnel-ssl-conf new file mode 100755 index 0000000000..bbaf511e51 --- /dev/null +++ b/sca-cpp/trunk/samples/store-cluster/tunnel-ssl-conf @@ -0,0 +1,33 @@ +#!/bin/sh + +# 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. + +root=$1 + +# Configure SSL tunnels to the memcached servers +../../modules/http/httpd-conf $root localhost 127.0.0.1:11210 htdocs +tar -C tmp/ssl -c `../../modules/http/ssl-cert-find tmp/ssl` | tar -C $root -x +../../modules/http/tunnel-ssl-conf $root 11211 localhost 8441 11411 +../../modules/http/tunnel-ssl-conf $root 11212 localhost 8442 11412 +../../modules/http/tunnel-ssl-conf $root 11213 localhost 8443 11413 + +# Configure SSL tunnels to the postgresql servers +../../modules/http/tunnel-ssl-conf $root 5532 localhost 8441 5432 +../../modules/http/tunnel-ssl-conf $root 5533 localhost 8441 5433 +../../modules/http/tunnel-ssl-conf $root 5534 localhost 8441 5433 + |