<div dir="ltr">VPNaaS in OpenStack is a site-to-site VPN using IPSec. It is designed for the case when you have two <b>clouds</b> and want to interconnect them. So, one openstack cloud on each end, and an interconnecting network. It's not defined for a <b>road warrier</b> case, where you have a computer wanting to connect to a cloud, for example.<div><br></div><div>Note: the underlying VPN mechanism (Strongswan/Openswan) support many different configurations, but the one targeted for Openstack, is that of cloud to cloud VPN connection in a point to point manner, using basic pre-shared keys. In addition, it is point to point (versus a hub/spoke or other connection).</div><div><br></div><div>Here's an example from Strongswan doc: <a href="https://www.strongswan.org/uml/testresults/ikev1/net2net-psk/">https://www.strongswan.org/uml/testresults/ikev1/net2net-psk/</a></div><div><br></div><div>So, it's sort of apples to oranges comparison.</div><div><br></div><div>Regards,</div><div><br></div><div>Paul Michali (pcm)</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Apr 11, 2016 at 7:20 AM Oleg Lodygensky <<a href="mailto:oleg.lodygensky@lal.in2p3.fr">oleg.lodygensky@lal.in2p3.fr</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">dear all,<div><div>I am trying to compare OpenVPN and VPNaaS usage in OpenStack.</div><div><br></div><div><br></div><div>I want to be able to create a VPN between VMs deployed in a single Openstack cloud to ensure communication privacy and security.</div><div>I also want to be able to connect with my PC to the VPN.</div><div><br></div><div><br></div><div>To use OpenVPN, post install scripts work well : </div><div>-A- I can see 2 interaces on each VM: the public one and the one associated to the VPN</div><div>-B- my own PC can easily join</div><div><br></div><div><br></div><div><br></div><div>I want to do the same using VPNaaS (the script is below)</div><div>But:</div><div>-1- VPN is created but its status is « DOWN » </div><div>-2- I don’t see any VPN interface inside VMs</div><div>-3- I don’t undersand how my PC could join the VPN</div><div><br></div><div><br></div><div><br></div><div>Any help welcome,</div><div>Oleg Lodygensky</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">usage() {</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>echo "Usage: $0 [start | stop | status] <configName>"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>exit 1</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">writeVariable() {</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>echo $* >> ${CONFIG_FILE}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">start() {</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>CONFIG_NAME=$2</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>CONFIG_FILE=$2</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>if [ -f ${CONFIG_FILE} ] ; then</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>echo "VPNAAS error : config already exist. Cowardingly refusing to overwrite it"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>exit 1</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>fi</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>touch ${CONFIG_FILE}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="NET1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>NET1="${CONFIG_NAME}_net1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${NET1}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron net-create ${NET1} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="SUBNET1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>SUBNET1="${CONFIG_NAME}_subnet1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${SUBNET1}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron subnet-create --name ${SUBNET1} ${NET1} <a href="http://10.100.0.0/24" target="_blank">10.100.0.0/24</a> --gateway 10.100.0.1 && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="ROUTER1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>ROUTER1="${CONFIG_NAME}_router1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${ROUTER1}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-create ${ROUTER1} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-interface-add ${ROUTER1} ${SUBNET1}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-gateway-set ${ROUTER1} public</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="NET2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>NET2="${CONFIG_NAME}_net2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${NET2}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron net-create ${NET2} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="SUBNET2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>SUBNET2="${CONFIG_NAME}_subnet2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${SUBNET2}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron subnet-create --name ${SUBNET2} ${NET2} <a href="http://20.200.0.0/24" target="_blank">20.200.0.0/24</a> --gateway 20.200.0.2 && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="ROUTER2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>ROUTER2="${CONFIG_NAME}_router2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${ROUTER2}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-create ${ROUTER2} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-interface-add ${ROUTER2} ${SUBNET2}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-gateway-set ${ROUTER2} public</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>PRIVATE_NET1=`neutron net-list | grep "${NET1}" | cut -f 2 -d' '`</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="VM1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VM1="${CONFIG_NAME}_vm1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${VM1}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova boot --key-name os-77345-demo --flavor 2 --image ubuntu14 --nic net-id=${PRIVATE_NET1} ${VM1} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>FLOATINGIP1=`nova floating-ip-create | grep -vE 'Pool|--'| cut -d ' ' -f 4`</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="FLOATINGIP1"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${FLOATINGIP1}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova add-floating-ip ${VM1} $FLOATINGIP1 && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>PRIVATE_NET2=`neutron net-list | grep "${NET2}" | cut -f 2 -d' '`</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="VM2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VM2="${CONFIG_NAME}_vm2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${VM2}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova boot --key-name os-77345-demo --flavor 2 --image ubuntu14 --nic net-id=${PRIVATE_NET2} ${VM2} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>FLOATINGIP2=`nova floating-ip-create | grep -vE 'Pool|--'| cut -d ' ' -f 4`</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="FLOATINGIP2"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${FLOATINGIP2}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova add-floating-ip ${VM2} $FLOATINGIP2 && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">#Create VPN connections</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="IKEPOLICY"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>IKEPOLICY="${CONFIG_NAME}_ikepolicy"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${IKEPOLICY}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron vpn-ikepolicy-create ${IKEPOLICY} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="IPSECPOLICY"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>IPSECPOLICY="${CONFIG_NAME}_ipsecpolicy"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${IPSECPOLICY}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron vpn-ipsecpolicy-create ${IPSECPOLICY} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="VPNSERVICE"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VPNSERVICE="${CONFIG_NAME}_vpnservice"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${VPNSERVICE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron vpn-service-create --name ${VPNSERVICE} --description "Mon service VPN1" ${ROUTER1} ${SUBNET1} && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>KEY="CONNECTION"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>CONNECTION="${CONFIG_NAME}_connection"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>VALUE="${CONNECTION}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">#<span style="white-space:pre-wrap"> </span>neutron ipsec-site-connection-create --name ${CONNECTION} --vpnservice-id ${VPNSERVICE} \</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">#<span style="white-space:pre-wrap"> </span> --ikepolicy-id ${IKEPOLICY} --ipsecpolicy-id ${IPSECPOLICY} --peer-address 172.24.4.227 \</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">#<span style="white-space:pre-wrap"> </span> --peer-id 172.24.4.227 --peer-cidr <a href="http://10.100.0.0/24" target="_blank">10.100.0.0/24</a> --psk secret && writeVariable "${KEY}=${VALUE}"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>[ ! -s ${CONFIG_FILE} ] && rm -f ${CONFIG_FILE}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">stop() {</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>CONFIG_FILE=$2</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>if [ ! -f ${CONFIG_FILE} ] ; then</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>echo "VPNAAS \"${CONFIG_FILE}\" error : config not found"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>exit 1</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>fi</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>. ${CONFIG_FILE}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova delete ${VM1}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova delete ${VM2}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova floating-ip-delete ${FLOATINGIP1}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>nova floating-ip-delete ${FLOATINGIP2}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron ipsec-site-connection-delete ${CONNECTION}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron vpn-service-delete ${VPNSERVICE}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron vpn-ipsecpolicy-delete ${IPSECPOLICY}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron vpn-ikepolicy-delete ${IKEPOLICY}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>for i in `neutron port-list | grep -vE 'fixed_ips|--' | cut -f 2 -d' '` ; do neutron port-delete $i ; done</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-interface-delete ${ROUTER2} ${SUBNET2}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-delete ${ROUTER2}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron net-delete ${NET2}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-interface-delete ${ROUTER1} ${SUBNET1}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron router-delete ${ROUTER1}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>neutron net-delete ${NET1}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>rm -f ${CONFIG_FILE}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">status() {</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>CONFIG_FILE=$2</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>if [ ! -f ${CONFIG_FILE} ] ; then</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>echo "VPNAAS \"${CONFIG_FILE}\" error : config not found"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>exit 1</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>fi</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>echo "VNPAAS \"${CONFIG_FILE}\": started"</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>cat ${CONFIG_FILE}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">}</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">[ $# -ne 2 ] && usage</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo;min-height:16px"><br></div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">case $1 in</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>"start" )</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>start $*</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>;;</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>"stop" )</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>stop $*</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>;;</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>"status" )</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>status $*</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo"><span style="white-space:pre-wrap"> </span>;;</div><div style="margin:0px;font-size:14px;line-height:normal;font-family:Menlo">esac</div><div><br></div></div><div><br></div></div></div>_______________________________________________<br>
Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
Post to : <a href="mailto:openstack@lists.openstack.org" target="_blank">openstack@lists.openstack.org</a><br>
Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
</blockquote></div>