Master pull
1
.gitignore
vendored
@ -54,3 +54,4 @@ awsapi/modules/*
|
||||
.classpath
|
||||
.project
|
||||
.settings.xml
|
||||
.settings/
|
||||
|
||||
@ -441,7 +441,7 @@ fi
|
||||
%{_javadir}/%{name}-user-authenticator-ldap.jar
|
||||
%{_javadir}/%{name}-user-authenticator-md5.jar
|
||||
%{_javadir}/%{name}-user-authenticator-plaintext.jar
|
||||
%{_javadir}/%{name}-xen.jar
|
||||
%{_javadir}/%{name}-plugin-hypervisor-xen.jar
|
||||
%{_javadir}/%{name}-plugin-elb.jar
|
||||
%{_javadir}/%{name}-plugin-nicira-nvp.jar
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/server/*
|
||||
|
||||
@ -1,3 +1,21 @@
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
|
||||
|
||||
1
debian/cloud-agent-deps.install
vendored
@ -15,5 +15,4 @@
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
/usr/share/java/gson-1.7.1.jar
|
||||
/usr/share/java/libvirt-0.4.9.jar
|
||||
|
||||
2
debian/cloud-deps.install
vendored
@ -30,3 +30,5 @@
|
||||
/usr/share/java/jasypt-1.*.jar
|
||||
/usr/share/java/ejb-api-3.0.jar
|
||||
/usr/share/java/javax.persistence-2.0.0.jar
|
||||
/usr/share/java/gson-1.7.1.jar
|
||||
/usr/share/java/xapi-5.6.100-1-SNAPSHOT.jar
|
||||
|
||||
2
debian/cloud-server.install
vendored
@ -28,4 +28,4 @@
|
||||
/usr/share/java/cloud-user-authenticator-ldap.jar
|
||||
/usr/share/java/cloud-user-authenticator-md5.jar
|
||||
/usr/share/java/cloud-user-authenticator-plaintext.jar
|
||||
/usr/share/java/cloud-xen.jar
|
||||
/usr/share/java/cloud-plugin-hypervisor-xen.jar
|
||||
|
||||
2
debian/control
vendored
@ -16,7 +16,7 @@ Description: CloudStack library dependencies
|
||||
|
||||
Package: cloud-agent-deps
|
||||
Architecture: any
|
||||
Depends: openjdk-6-jre
|
||||
Depends: openjdk-6-jre, cloud-deps (= ${source:Version})
|
||||
Description: CloudStack agent library dependencies
|
||||
This package contains a number of third-party dependencies
|
||||
not shipped by distributions, required to run the CloudStack
|
||||
|
||||
16
deps/install-non-oss.sh
vendored
@ -1,4 +1,20 @@
|
||||
#!/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.
|
||||
|
||||
mvn install:install-file -Dfile=cloud-iControl.jar -DgroupId=com.cloud.com.f5 -DartifactId=icontrol -Dversion=1.0 -Dpackaging=jar
|
||||
mvn install:install-file -Dfile=cloud-netscaler.jar -DgroupId=com.cloud.com.citrix -DartifactId=netscaler -Dversion=1.0 -Dpackaging=jar
|
||||
|
||||
11
deps/pom.xml
vendored
@ -116,6 +116,17 @@
|
||||
<artifactId>axis2-ant-plugin</artifactId>
|
||||
<version>1.4.1</version>
|
||||
</dependency>
|
||||
<!-- For vmware-base -->
|
||||
<dependency>
|
||||
<groupId>org.apache.axis</groupId>
|
||||
<artifactId>axis</artifactId>
|
||||
<version>${cs.axis.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.axis</groupId>
|
||||
<artifactId>axis-jaxrpc</artifactId>
|
||||
<version>${cs.axis.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
|
||||
0
docs/en-US/images/NIC_bonding_and_multipath_IO.png
Normal file
BIN
docs/en-US/images/add-cluster.png
Normal file
|
After Width: | Height: | Size: 45 KiB |
BIN
docs/en-US/images/add-guest-network.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
docs/en-US/images/add-new-gateway-vpc.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
docs/en-US/images/add-tier.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
docs/en-US/images/add-vpc.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
docs/en-US/images/add-vpn-customer-gateway.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
docs/en-US/images/autoscale-config.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
docs/en-US/images/create-vpn-connection.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
docs/en-US/images/enable-disable-autoscale.png
Normal file
|
After Width: | Height: | Size: 913 B |
BIN
docs/en-US/images/guest-traffic-setup.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
37
docs/en-US/images/icon.svg
Normal file
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" width="32" height="32" id="svg3017">
|
||||
<defs id="defs3019">
|
||||
<linearGradient id="linearGradient2381">
|
||||
<stop id="stop2383" style="stop-color:#ffffff;stop-opacity:1" offset="0"/>
|
||||
<stop id="stop2385" style="stop-color:#ffffff;stop-opacity:0" offset="1"/>
|
||||
</linearGradient>
|
||||
<linearGradient x1="296.4996" y1="188.81061" x2="317.32471" y2="209.69398" id="linearGradient2371" xlink:href="#linearGradient2381" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.90776,0,0,0.90776,24.35648,49.24131)"/>
|
||||
</defs>
|
||||
<g transform="matrix(0.437808,-0.437808,0.437808,0.437808,-220.8237,43.55311)" id="g5089">
|
||||
<path d="m 8.4382985,-6.28125 c -0.6073916,0 -4.3132985,5.94886271 -4.3132985,8.25 l 0,26.71875 c 0,0.846384 0.5818159,1.125 1.15625,1.125 l 25.5625,0 c 0.632342,0 1.125001,-0.492658 1.125,-1.125 l 0,-5.21875 0.28125,0 c 0.49684,0 0.906249,-0.409411 0.90625,-0.90625 l 0,-27.9375 c 0,-0.4968398 -0.40941,-0.90625 -0.90625,-0.90625 l -23.8117015,0 z" transform="translate(282.8327,227.1903)" id="path5091" style="fill:#5c5c4f;stroke:#000000;stroke-width:3.23021388;stroke-miterlimit:4;stroke-dasharray:none"/>
|
||||
<rect width="27.85074" height="29.369793" rx="1.1414107" ry="1.1414107" x="286.96509" y="227.63805" id="rect5093" style="fill:#032c87"/>
|
||||
<path d="m 288.43262,225.43675 25.2418,0 0,29.3698 -26.37615,0.0241 1.13435,-29.39394 z" id="rect5095" style="fill:#ffffff"/>
|
||||
<path d="m 302.44536,251.73726 c 1.38691,7.85917 -0.69311,11.28365 -0.69311,11.28365 2.24384,-1.60762 3.96426,-3.47694 4.90522,-5.736 0.96708,2.19264 1.83294,4.42866 4.27443,5.98941 0,0 -1.59504,-7.2004 -1.71143,-11.53706 l -6.77511,0 z" id="path5097" style="fill:#a70000;fill-opacity:1;stroke-width:2"/>
|
||||
<rect width="25.241802" height="29.736675" rx="0.89682275" ry="0.89682275" x="290.73544" y="220.92249" id="rect5099" style="fill:#809cc9"/>
|
||||
<path d="m 576.47347,725.93939 6.37084,0.41502 0.4069,29.51809 c -1.89202,-1.31785 -6.85427,-3.7608 -8.26232,-1.68101 l 0,-26.76752 c 0,-0.82246 0.66212,-1.48458 1.48458,-1.48458 z" transform="matrix(0.499065,-0.866565,0,1,0,0)" id="rect5101" style="fill:#4573b3;fill-opacity:1"/>
|
||||
<path d="m 293.2599,221.89363 20.73918,0 c 0.45101,0 0.8141,0.3631 0.8141,0.81411 0.21547,6.32836 -19.36824,21.7635 -22.36739,17.59717 l 0,-17.59717 c 0,-0.45101 0.3631,-0.81411 0.81411,-0.81411 z" id="path5103" style="opacity:0.65536726;fill:url(#linearGradient2371);fill-opacity:1"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
0
docs/en-US/images/large_scale_redundant_setup.png
Normal file
BIN
docs/en-US/images/multi-tier-app.png
Normal file
|
After Width: | Height: | Size: 196 KiB |
0
docs/en-US/images/multi_node_management_server.png
Normal file
BIN
docs/en-US/images/network-acl.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
docs/en-US/images/network-setup-zone.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
docs/en-US/images/network-singlepod.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
docs/en-US/images/remove-tier.png
Normal file
|
After Width: | Height: | Size: 7.3 KiB |
BIN
docs/en-US/images/restart-vpc.png
Normal file
|
After Width: | Height: | Size: 860 B |
BIN
docs/en-US/images/select-vm-staticnat-vpc.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
0
docs/en-US/images/separate_storage_network.png
Normal file
0
docs/en-US/images/small_scale_deployment.png
Normal file
BIN
docs/en-US/images/vm-lifecycle.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
docs/en-US/images/vsphere-client.png
Normal file
|
After Width: | Height: | Size: 79 KiB |
@ -3,7 +3,6 @@
|
||||
<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
|
||||
%BOOK_ENTITIES;
|
||||
]>
|
||||
|
||||
<!-- 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
|
||||
@ -11,9 +10,7 @@
|
||||
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
|
||||
@ -22,28 +19,44 @@
|
||||
under the License.
|
||||
-->
|
||||
<section id="site-to-site-vpn">
|
||||
<title>Setting Up a Site-to-Site VPN Connection</title>
|
||||
<para>A Site-to-Site VPN connection helps you establish a secure connection from an enterprise
|
||||
datacenter to the cloud infrastructure. This allows users to access the guest VMs by
|
||||
establishing a VPN connection to the virtual router of the account from a device in the
|
||||
datacenter of the enterprise. Having this facility eliminates the need to establish VPN
|
||||
connections to individual VMs.</para>
|
||||
<para>The supported endpoints on the remote datacenters are: </para>
|
||||
<itemizedlist>
|
||||
<listitem><para>Cisco ISR with IOS 12.4 or later</para></listitem>
|
||||
<listitem><para>Juniper J-Series routers with JunOS 9.5 or later</para></listitem>
|
||||
</itemizedlist><note><para>In addition to the specific Cisco and Juniper devices listed above, the expectation is that
|
||||
any Cisco or Juniper device running on the supported operating systems are able to
|
||||
establish VPN connections.</para></note>
|
||||
<para> To set up a Site-to-Site VPN connection, perform the following:</para>
|
||||
<orderedlist>
|
||||
<listitem><para>Create a Virtual Private Cloud (VPC).</para><para>See <xref linkend="configure-vpc"/>.</para></listitem>
|
||||
<listitem><para>Create a VPN Customer Gateway.</para></listitem>
|
||||
<listitem><para>Create a VPN gateway for the VPC that you created.</para></listitem>
|
||||
<listitem><para>Create VPN connection from the VPC VPN gateway to the customer VPN gateway.</para></listitem>
|
||||
</orderedlist>
|
||||
<xi:include href="create-vpn-customer-gateway.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="create-vpn-gateway-for-vpc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="create-vpn-connection-vpc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="delete-reset-vpn.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
</section>
|
||||
<title>Setting Up a Site-to-Site VPN Connection</title>
|
||||
<para>A Site-to-Site VPN connection helps you establish a secure connection from an enterprise
|
||||
datacenter to the cloud infrastructure. This allows users to access the guest VMs by
|
||||
establishing a VPN connection to the virtual router of the account from a device in the
|
||||
datacenter of the enterprise. Having this facility eliminates the need to establish VPN
|
||||
connections to individual VMs.</para>
|
||||
<para>The supported endpoints on the remote datacenters are: </para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Cisco ISR with IOS 12.4 or later</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Juniper J-Series routers with JunOS 9.5 or later</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<note>
|
||||
<para>In addition to the specific Cisco and Juniper devices listed above, the expectation is
|
||||
that any Cisco or Juniper device running on the supported operating systems are able to
|
||||
establish VPN connections.</para>
|
||||
</note>
|
||||
<para> To set up a Site-to-Site VPN connection, perform the following:</para>
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>Create a Virtual Private Cloud (VPC).</para>
|
||||
<para>See <xref linkend="configure-vpc"/>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Create a VPN Customer Gateway.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Create a VPN gateway for the VPC that you created.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Create VPN connection from the VPC VPN gateway to the customer VPN gateway.</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<xi:include href="create-vpn-customer-gateway.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
<xi:include href="create-vpn-gateway-for-vpc.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
<xi:include href="create-vpn-connection-vpc.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
<xi:include href="delete-reset-vpn.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
</section>
|
||||
|
||||
@ -3,7 +3,6 @@
|
||||
<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
|
||||
%BOOK_ENTITIES;
|
||||
]>
|
||||
|
||||
<!-- 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
|
||||
@ -11,9 +10,7 @@
|
||||
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
|
||||
@ -22,115 +19,165 @@
|
||||
under the License.
|
||||
-->
|
||||
<section id="vpc">
|
||||
<title>About Virtual Private Clouds</title>
|
||||
<para>&PRODUCT; Virtual Private Cloud is a private, isolated part of &PRODUCT;. A VPC
|
||||
can have its own virtual network topology that resembles a traditional physical network. You
|
||||
can launch VMs in the virtual network that can have private addresses in the range of your
|
||||
choice, for example: 10.0.0.0/16. You can define network tiers within your VPC network
|
||||
range, which in turn enables you to group similar kinds of instances based on IP address
|
||||
range.</para>
|
||||
<para>For example, if a VPC has the private range 10.0.0.0/16, its guest networks can have the network ranges 10.0.1.0/24, 10.0.2.0/24, 10.0.3.0/24, and so on.</para>
|
||||
<formalpara>
|
||||
<title>Major Components of a VPC:</title>
|
||||
<para>A VPC is comprised of the following network components:</para>
|
||||
</formalpara>
|
||||
<itemizedlist>
|
||||
<listitem><para><emphasis role="bold">VPC</emphasis>: A VPC acts as a container for multiple isolated
|
||||
networks that can communicate with each other via its virtual router.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">Network Tiers</emphasis>: Each tier acts as an isolated network with its
|
||||
own VLANs and CIDR list, where you can place groups of resources, such as VMs. The
|
||||
tiers are segmented by means of VLANs. The NIC of each tier acts as its
|
||||
gateway.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">Virtual Router</emphasis>: A virtual router is automatically created and
|
||||
started when you create a VPC. The virtual router connect the tiers and direct
|
||||
traffic among the public gateway, the VPN gateways, and the NAT instances. For each
|
||||
tier, a corresponding NIC and IP exist in the virtual router. The virtual router
|
||||
provides DNS and DHCP services through its IP.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">Public Gateway</emphasis>: The traffic to and from the Internet routed
|
||||
to the VPC through the public gateway. In a VPC, the public gateway is not exposed
|
||||
to the end user; therefore, static routes are not support for the public
|
||||
gateway.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">Private Gateway</emphasis>: All the traffic to and from a private network routed to the VPC through the private gateway. For more information, see <xref linkend="add-gateway-vpc"/>.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">VPN Gateway</emphasis>: The VPC side of a VPN connection.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">Site-to-Site VPN Connection</emphasis>: A hardware-based VPN connection
|
||||
between your VPC and your datacenter, home network, or co-location facility. For
|
||||
more information, see <xref linkend="site-to-site-vpn"/>.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">Customer Gateway</emphasis>: The customer side of a VPN Connection. For
|
||||
more information, see <xref linkend="create-vpn-customer-gateway"/>.</para></listitem>
|
||||
<listitem><para><emphasis role="bold">NAT Instance</emphasis>: An instance that provides Port Address
|
||||
Translation for instances to access the Internet via the public gateway. For more
|
||||
information, see <xref linkend="enable-disable-static-nat-vpc"/>.</para></listitem>
|
||||
</itemizedlist>
|
||||
<formalpara>
|
||||
<title>Network Architecture in a VPC</title>
|
||||
<para>In a VPC, the following four basic options of network architectures are
|
||||
present:</para>
|
||||
</formalpara>
|
||||
<itemizedlist>
|
||||
<listitem><para>VPC with a public gateway only</para></listitem>
|
||||
<listitem><para>VPC with public and private gateways</para></listitem>
|
||||
<listitem><para>VPC with public and private gateways and site-to-site VPN access</para></listitem>
|
||||
<listitem><para>VPC with a private gateway only and site-to-site VPN access</para></listitem>
|
||||
</itemizedlist>
|
||||
<formalpara>
|
||||
<title>Connectivity Options for a VPC</title>
|
||||
<para>You can connect your VPC to:</para></formalpara>
|
||||
<itemizedlist>
|
||||
<listitem><para>The Internet through the public gateway.</para></listitem>
|
||||
<listitem><para>The corporate datacenter by using a site-to-site VPN connection through the VPN gateway.</para></listitem>
|
||||
<listitem><para>Both the Internet and your corporate datacenter by using both the public gateway and a VPN gateway.</para></listitem>
|
||||
</itemizedlist>
|
||||
<formalpara><title>VPC Network Considerations</title>
|
||||
<para>Consider the following before you create a VPC:</para></formalpara>
|
||||
<itemizedlist><listitem>
|
||||
<para>A VPC, by default, is created in the enabled state.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>A VPC can be created in Advance zone only, and can't belong to more than one zone at a time.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The default number of VPCs an account can create is 20. However, you can change it
|
||||
by using the max.account.vpcs global parameter, which controls the maximum number of
|
||||
VPCs an account is allowed to create.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The default number of tiers an account can create within a VPC is 3. You can
|
||||
configure this number by using the vpc.max.networks parameter.</para>
|
||||
</listitem>
|
||||
<title>About Virtual Private Clouds</title>
|
||||
<para>&PRODUCT; Virtual Private Cloud is a private, isolated part of &PRODUCT;. A VPC can have its
|
||||
own virtual network topology that resembles a traditional physical network. You can launch VMs
|
||||
in the virtual network that can have private addresses in the range of your choice, for example:
|
||||
10.0.0.0/16. You can define network tiers within your VPC network range, which in turn enables
|
||||
you to group similar kinds of instances based on IP address range.</para>
|
||||
<para>For example, if a VPC has the private range 10.0.0.0/16, its guest networks can have the
|
||||
network ranges 10.0.1.0/24, 10.0.2.0/24, 10.0.3.0/24, and so on.</para>
|
||||
<formalpara>
|
||||
<title>Major Components of a VPC:</title>
|
||||
<para>A VPC is comprised of the following network components:</para>
|
||||
</formalpara>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Each tier should have an unique CIDR in the VPC. Ensure that the tier's CIDR
|
||||
should be within the VPC CIDR range.</para>
|
||||
<para><emphasis role="bold">VPC</emphasis>: A VPC acts as a container for multiple isolated
|
||||
networks that can communicate with each other via its virtual router.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">Network Tiers</emphasis>: Each tier acts as an isolated network
|
||||
with its own VLANs and CIDR list, where you can place groups of resources, such as VMs. The
|
||||
tiers are segmented by means of VLANs. The NIC of each tier acts as its gateway.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">Virtual Router</emphasis>: A virtual router is automatically
|
||||
created and started when you create a VPC. The virtual router connect the tiers and direct
|
||||
traffic among the public gateway, the VPN gateways, and the NAT instances. For each tier, a
|
||||
corresponding NIC and IP exist in the virtual router. The virtual router provides DNS and
|
||||
DHCP services through its IP.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">Public Gateway</emphasis>: The traffic to and from the Internet
|
||||
routed to the VPC through the public gateway. In a VPC, the public gateway is not exposed to
|
||||
the end user; therefore, static routes are not support for the public gateway.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">Private Gateway</emphasis>: All the traffic to and from a private
|
||||
network routed to the VPC through the private gateway. For more information, see <xref
|
||||
linkend="add-gateway-vpc"/>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">VPN Gateway</emphasis>: The VPC side of a VPN connection.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">Site-to-Site VPN Connection</emphasis>: A hardware-based VPN
|
||||
connection between your VPC and your datacenter, home network, or co-location facility. For
|
||||
more information, see <xref linkend="site-to-site-vpn"/>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">Customer Gateway</emphasis>: The customer side of a VPN
|
||||
Connection. For more information, see <xref linkend="create-vpn-customer-gateway"/>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis role="bold">NAT Instance</emphasis>: An instance that provides Port Address
|
||||
Translation for instances to access the Internet via the public gateway. For more
|
||||
information, see <xref linkend="enable-disable-static-nat-vpc"/>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<formalpara>
|
||||
<title>Network Architecture in a VPC</title>
|
||||
<para>In a VPC, the following four basic options of network architectures are present:</para>
|
||||
</formalpara>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>VPC with a public gateway only</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>VPC with public and private gateways</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>VPC with public and private gateways and site-to-site VPN access</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>VPC with a private gateway only and site-to-site VPN access</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<formalpara>
|
||||
<title>Connectivity Options for a VPC</title>
|
||||
<para>You can connect your VPC to:</para>
|
||||
</formalpara>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>The Internet through the public gateway.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The corporate datacenter by using a site-to-site VPN connection through the VPN
|
||||
gateway.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Both the Internet and your corporate datacenter by using both the public gateway and a
|
||||
VPN gateway.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<formalpara>
|
||||
<title>VPC Network Considerations</title>
|
||||
<para>Consider the following before you create a VPC:</para>
|
||||
</formalpara>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>A VPC, by default, is created in the enabled state.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>A VPC can be created in Advance zone only, and can't belong to more than one zone at a
|
||||
time.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The default number of VPCs an account can create is 20. However, you can change it by
|
||||
using the max.account.vpcs global parameter, which controls the maximum number of VPCs an
|
||||
account is allowed to create.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The default number of tiers an account can create within a VPC is 3. You can configure
|
||||
this number by using the vpc.max.networks parameter.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Each tier should have an unique CIDR in the VPC. Ensure that the tier's CIDR should be
|
||||
within the VPC CIDR range.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>A tier belongs to only one VPC. </para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>All network tiers inside the VPC should belong to the same account.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>When a VPC is created, by default, a SourceNAT IP is allocated to it. The Source NAT IP
|
||||
is released only when the VPC is removed.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>A public IP can be used for only one purpose at a time. If the IP is a sourceNAT, it
|
||||
cannot be used for StaticNAT or port forwarding.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The instances only have a private IP address that you provision. To communicate with the
|
||||
Internet, enable NAT to an instance that you launch in your VPC.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Only new networks can be added to a VPC. The maximum number of networks per VPC is
|
||||
limited by the value you specify in the vpc.max.networks parameter. The default value is
|
||||
three.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The load balancing service can be supported by only one tier inside the VPC.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>If an IP address is assigned to a tier:</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>That IP can't be used by more than one tier at a time in the VPC. For example, if
|
||||
you have tiers A and B, and a public IP1, you can create a port forwarding rule by using
|
||||
the IP either for A or B, but not for both.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>A tier belongs to only one VPC. </para>
|
||||
<para>That IP can't be used for StaticNAT, load balancing, or port forwarding rules for
|
||||
another guest network inside the VPC.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>All network tiers inside the VPC should belong to the same account.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>When a VPC is created, by default, a SourceNAT IP is allocated to it. The Source
|
||||
NAT IP is released only when the VPC is removed.</para>
|
||||
</listitem>
|
||||
<listitem><para>A public IP can be used for only one purpose at a time. If the IP is a sourceNAT, it cannot be used for StaticNAT or port forwarding.</para>
|
||||
</listitem>
|
||||
<listitem><para>The instances only have a private IP address that you provision. To communicate with the Internet, enable NAT to an instance that you launch in your VPC.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Only new networks can be added to a VPC. The maximum number of networks per VPC is
|
||||
limited by the value you specify in the vpc.max.networks parameter. The default
|
||||
value is three.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The load balancing service can be supported by only one tier inside the
|
||||
VPC.</para>
|
||||
</listitem>
|
||||
<listitem><para>If an IP address is assigned to a tier:</para><itemizedlist>
|
||||
<listitem><para>That IP can't be used by more than one tier at a time in the VPC. For example, if you have
|
||||
tiers A and B, and a public IP1, you can create a port forwarding rule by
|
||||
using the IP either for A or B, but not for both.</para></listitem>
|
||||
<listitem><para>That IP can't be used for StaticNAT, load balancing, or port forwarding rules for another
|
||||
guest network inside the VPC.</para></listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
<listitem><para>Remote access VPN is not supported in VPC networks.</para></listitem></itemizedlist>
|
||||
</section>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Remote access VPN is not supported in VPC networks.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
@ -1,3 +1,19 @@
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
|
||||
|
||||
@ -1,5 +1,21 @@
|
||||
#!/bin/sh
|
||||
# /etc/cron.daily/cloud-cleanup: cleanup old cloudstack logs
|
||||
# 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.
|
||||
|
||||
cd /
|
||||
output=$(find /var/log/cloud -mtime +7 -size +1M -exec rm -v '{}' \; )
|
||||
|
||||
@ -1,2 +1,19 @@
|
||||
# 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.
|
||||
|
||||
#set ENABLED to 1 if you want the init script to start the password server
|
||||
ENABLED=0
|
||||
|
||||
@ -1,2 +1,19 @@
|
||||
# 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.
|
||||
|
||||
#set ENABLED to 1 if you want the init script to start the password server
|
||||
ENABLED=0
|
||||
|
||||
@ -9,6 +9,22 @@
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Start up the cloud.com service
|
||||
### END INIT INFO
|
||||
# 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.
|
||||
|
||||
#set -x
|
||||
|
||||
|
||||
@ -9,6 +9,22 @@
|
||||
# Default-Stop: 0 6
|
||||
# Short-Description: configure according to cmdline
|
||||
### END INIT INFO
|
||||
# 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.
|
||||
|
||||
PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"
|
||||
|
||||
|
||||
@ -9,7 +9,22 @@
|
||||
# Default-Stop: 0 6
|
||||
# Short-Description: Web server that sends passwords to User VMs
|
||||
### END INIT INFO
|
||||
|
||||
# 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.
|
||||
|
||||
ENABLED=0
|
||||
[ -e /etc/default/cloud-passwd-srvr ] && . /etc/default/cloud-passwd-srvr
|
||||
|
||||
@ -10,6 +10,23 @@
|
||||
# Short-Description: post-init
|
||||
### END INIT INFO
|
||||
|
||||
# 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.
|
||||
|
||||
replace_in_file() {
|
||||
local filename=$1
|
||||
local keyname=$2
|
||||
|
||||
@ -1,4 +1,20 @@
|
||||
# Generated by iptables-save v1.3.8 on Thu Oct 1 18:16:05 2009
|
||||
# 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.
|
||||
|
||||
*nat
|
||||
:PREROUTING ACCEPT [0:0]
|
||||
:POSTROUTING ACCEPT [0:0]
|
||||
|
||||
@ -1,3 +1,20 @@
|
||||
# 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.
|
||||
|
||||
*nat
|
||||
:PREROUTING ACCEPT [0:0]
|
||||
:POSTROUTING ACCEPT [0:0]
|
||||
|
||||
@ -1,3 +1,20 @@
|
||||
# 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.
|
||||
|
||||
*nat
|
||||
:PREROUTING ACCEPT [0:0]
|
||||
:POSTROUTING ACCEPT [0:0]
|
||||
|
||||
@ -1,4 +1,20 @@
|
||||
# Generated by iptables-save v1.3.8 on Thu Oct 1 18:16:05 2009
|
||||
# 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.
|
||||
|
||||
*nat
|
||||
:PREROUTING ACCEPT [0:0]
|
||||
:POSTROUTING ACCEPT [0:0]
|
||||
|
||||
@ -1,3 +1,20 @@
|
||||
# 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.
|
||||
|
||||
*nat
|
||||
:PREROUTING ACCEPT [0:0]
|
||||
:POSTROUTING ACCEPT [0:0]
|
||||
|
||||
@ -1,3 +1,21 @@
|
||||
# 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.
|
||||
|
||||
|
||||
#
|
||||
# reserved values
|
||||
#
|
||||
|
||||
@ -1,3 +1,20 @@
|
||||
# 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.
|
||||
|
||||
*nat
|
||||
:PREROUTING ACCEPT [0:0]
|
||||
:POSTROUTING ACCEPT [0:0]
|
||||
|
||||
@ -1,4 +1,20 @@
|
||||
#!/bin/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.
|
||||
|
||||
if [ -z $1 ]
|
||||
then
|
||||
|
||||
@ -1,5 +1,20 @@
|
||||
#!/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.
|
||||
|
||||
plug_nic() {
|
||||
sudo echo "$tableNo $tableName" >> /etc/iproute2/rt_tables 2>/dev/null
|
||||
|
||||
@ -1,4 +1,20 @@
|
||||
#!/bin/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.
|
||||
|
||||
. /etc/default/cloud-passwd-srvr
|
||||
|
||||
|
||||
@ -1,3 +1,19 @@
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
<domain type='kvm' id='4'>
|
||||
<name>systemvm2</name>
|
||||
<memory>1572864</memory>
|
||||
|
||||
@ -1,13 +0,0 @@
|
||||
#Thu Aug 23 12:18:38 PDT 2012
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
|
||||
org.eclipse.jdt.core.compiler.source=1.6
|
||||
@ -1,13 +0,0 @@
|
||||
diff --git a/OVSXUtility.py b/OVSXUtility.py
|
||||
index 4a98bc8..1053ef7 100644
|
||||
--- a/OVSXUtility.py
|
||||
+++ b/OVSXUtility.py
|
||||
@@ -160,7 +160,7 @@ def get_storage_repos():
|
||||
l = parse_storage_repos()
|
||||
for sr in l:
|
||||
d = get_storage_free_space(sr)
|
||||
- if d:
|
||||
+ if len(d) > 0:
|
||||
d_repos_space[sr] = d[sr]
|
||||
|
||||
if not d_repos_space:
|
||||
@ -1,13 +0,0 @@
|
||||
diff --git a/OVSAgentAutoStart.py b/OVSAgentAutoStart.py
|
||||
index 88fa18c..794a363 100755
|
||||
--- a/OVSAgentAutoStart.py
|
||||
+++ b/OVSAgentAutoStart.py
|
||||
@@ -111,8 +111,6 @@ def prepare_cluster_heartbeat():
|
||||
JOBS = [
|
||||
["command", join(dirname(__file__), "utils/upgrade_agent.py")],
|
||||
["function", "get_agent_version", ()],
|
||||
- ["function", "prepare_cluster_root", ()],
|
||||
- ["function", "prepare_cluster_heartbeat", ()],
|
||||
["command", join(dirname(__file__), "utils/upgrade.py")],
|
||||
["command_bg", join(dirname(__file__), "OVSRemasterServer.py")],
|
||||
["command_bg", join(dirname(__file__), "OVSMonitorServer.py")],
|
||||
@ -1,23 +0,0 @@
|
||||
*** OVSServices.py 2011-06-06 12:31:23.279919998 -0700
|
||||
--- /tmp/OVSServices.py 2011-06-06 12:32:13.275919997 -0700
|
||||
***************
|
||||
*** 68,73 ****
|
||||
--- 68,75 ----
|
||||
import OVSVMXParser #pylint: disable-msg=W0611
|
||||
import OVSVMDKParser #pylint: disable-msg=W0611
|
||||
|
||||
+ import OvmDispatcher
|
||||
+
|
||||
from OVSWrappers import D
|
||||
from OVSCommons import exposed
|
||||
|
||||
***************
|
||||
*** 113,118 ****
|
||||
--- 115,121 ----
|
||||
self.sleep = sleep
|
||||
|
||||
self._load_modules()
|
||||
+ OvmDispatcher.InitOvmDispacther()
|
||||
|
||||
# #xenapi
|
||||
# import xen.xend.XendAPI as XendAPI
|
||||
@ -75,7 +75,7 @@
|
||||
|
||||
<property name="deps.dir" location="${top.dir}/deps" />
|
||||
|
||||
<property name="xen.jar" value="cloud-xen.jar" />
|
||||
<property name="xen.jar" value="cloud-plugin-hypervisor-xen.jar" />
|
||||
<property name="xen-scripts.dir" location="${base.dir}/plugins/hypervisors/xen/scripts" />
|
||||
|
||||
<import file="${build.dir}/build-common.xml"/>
|
||||
|
||||
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
104
pom.xml
@ -182,20 +182,104 @@
|
||||
<artifactId>apache-rat-plugin</artifactId>
|
||||
<version>0.8</version>
|
||||
<configuration>
|
||||
<numUnapprovedLicenses>350</numUnapprovedLicenses>
|
||||
<excludeSubProjects>false</excludeSubProjects>
|
||||
<numUnapprovedLicenses>0</numUnapprovedLicenses>
|
||||
<excludeSubProjects>true</excludeSubProjects>
|
||||
<excludes>
|
||||
<exclude>.git/**</exclude>
|
||||
<exclude>.gitignore</exclude>
|
||||
<exclude>velocity.log</exclude>
|
||||
<exclude>**/*.crt</exclude>
|
||||
<exclude>**/*.csr</exclude>
|
||||
<exclude>**/*.key</exclude>
|
||||
<exclude>**/authorized_keys</exclude>
|
||||
<exclude>**/*.mar</exclude>
|
||||
<exclude>**/*.jar</exclude>
|
||||
<exclude>**/*.iso</exclude>
|
||||
<exclude>**/*.tgz</exclude>
|
||||
<exclude>**/*.zip</exclude>
|
||||
<exclude>**/target/**</exclude>
|
||||
<exclude>distribution/**</exclude>
|
||||
<exclude>**/jaxb.index</exclude>
|
||||
<exclude>**/META-INF/MANIFEST</exclude>
|
||||
<exclude>**/src/test/**/*.txt</exclude>
|
||||
<exclude>**/.classpath</exclude>
|
||||
<exclude>**/.settings/**/*</exclude>
|
||||
<exclude>**/.project</exclude>
|
||||
<exclude>build/build.number</exclude>
|
||||
<exclude>console-proxy/js/jquery.js</exclude>
|
||||
<exclude>debian/compat</exclude>
|
||||
<exclude>debian/control</exclude>
|
||||
<exclude>debian/dirs</exclude>
|
||||
<exclude>debian/rules</exclude>
|
||||
<exclude>deps/XenServerJava/src/com/xensource/xenapi/*.java</exclude>
|
||||
<exclude>deps/XenServerJava/BSD</exclude>
|
||||
<exclude>deps/XenServerJava/Makefile</exclude>
|
||||
<exclude>dist/console-proxy/js/jquery.js</exclude>
|
||||
<exclude>scripts/vm/systemvm/id_rsa.cloud</exclude>
|
||||
<exclude>patches/systemvm/debian/xe/xen-vcpu-hotplug.rules</exclude>
|
||||
<exclude>patches/systemvm/debian/xe/xe-linux-distribution.init</exclude>
|
||||
<exclude>patches/systemvm/debian/systemvm.vmx</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/ssh/sshd_config</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/logrotate.d/haproxy</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/logrotate.d/dnsmasq</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/logrotate.d/apache2</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/logrotate.d/ppp</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/logrotate.d/rsyslog</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/vpcdnsmasq.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/httpd/conf/httpd.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/haproxy/haproxy.cfg</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/apache2/vhostexample.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/apache2/sites-available/default-ssl</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/apache2/sites-available/default</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/apache2/httpd.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/apache2/ports.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/rsyslog.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/cloud-nic.rules</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/logrotate.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/init.d/postinit</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/modprobe.d/aesni_intel</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/sysctl.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/dnsmasq.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/config/etc/rc.local</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/heartbeat.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/keepalived.conf.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/check_heartbeat.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/backup.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/arping_gateways.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/fault.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/checkrouter.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/master.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/conntrackd.conf.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/root/redundant_router/enable_pubip.sh.templ</exclude>
|
||||
<exclude>patches/systemvm/debian/config/var/lib/misc/dnsmasq.leases</exclude>
|
||||
<exclude>patches/systemvm/debian/config/var/www/html/userdata/.htaccess</exclude>
|
||||
<exclude>patches/systemvm/debian/config/var/www/html/latest/.htaccess</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/ipsec.conf.orig</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/ipsec.secrets.orig</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/ipsec.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/ipsec.d/l2tp.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/ppp/options.xl2tpd</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/xl2tpd/xl2tpd.conf</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/xl2tpd/xl2tpd.conf.orig</exclude>
|
||||
<exclude>patches/systemvm/debian/vpn/etc/ipsec.secrets</exclude>
|
||||
<exclude>tools/devcloud/basebuild/puppet-devcloudinitial/files/network.conf</exclude>
|
||||
<exclude>tools/devcloud/devcloud.cfg</exclude>
|
||||
<exclude>ui/lib/flot/jquery.colorhelpers.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.crosshair.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.fillbetween.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.image.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.navigate.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.pie.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.resize.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.selection.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.stack.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.symbol.js</exclude>
|
||||
<exclude>ui/lib/flot/jquery.flot.threshold.js</exclude>
|
||||
<exclude>ui/lib/jquery-ui/css/jquery-ui.css</exclude>
|
||||
<exclude>ui/lib/jquery-ui/index.html</exclude>
|
||||
<exclude>ui/lib/jquery-ui/js/jquery-ui.js</exclude>
|
||||
<exclude>ui/lib/jquery.cookies.js</exclude>
|
||||
<exclude>ui/lib/jquery.easing.js</exclude>
|
||||
<exclude>ui/lib/jquery.js</exclude>
|
||||
<exclude>ui/lib/jquery.md5.js</exclude>
|
||||
<exclude>ui/lib/jquery.validate.js</exclude>
|
||||
<exclude>ui/lib/qunit/qunit.css</exclude>
|
||||
<exclude>ui/lib/qunit/qunit.js</exclude>
|
||||
<exclude>ui/lib/reset.css</exclude>
|
||||
<exclude>waf</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
@ -139,10 +139,25 @@
|
||||
});
|
||||
},
|
||||
capacity: function(data) {
|
||||
var latestData =null;
|
||||
if(window.fetchLatestflag == 1)
|
||||
{
|
||||
latestData = {
|
||||
|
||||
fetchLatest:true
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
latestData = {
|
||||
fetchLatest:false
|
||||
}
|
||||
}
|
||||
window.fetchLatestflag = 0;
|
||||
if (data.zones) {
|
||||
$.ajax({
|
||||
url: createURL('listCapacity'),
|
||||
data: { fetchLatest: true },
|
||||
data: latestData,
|
||||
success: function(json) {
|
||||
var capacities = json.listcapacityresponse.capacity;
|
||||
|
||||
@ -243,7 +258,7 @@
|
||||
$.ajax({
|
||||
url: createURL('listCapacity'),
|
||||
data: {
|
||||
fetchLatest: true,
|
||||
fetchLatest: false,
|
||||
sortBy: 'usage',
|
||||
page: 0,
|
||||
pagesize: 8
|
||||
|
||||
@ -1206,15 +1206,13 @@
|
||||
success:function(json) {
|
||||
// Handling the display of network name for a VM under the NICS tabs
|
||||
args.response.success({
|
||||
data: $.map(args.context.instances[0].nic, function(nic, index) {
|
||||
var name = 'NIC ' + (index + 1);
|
||||
var networkname = json.listvirtualmachinesresponse.virtualmachine[0].nic[index].networkname;
|
||||
data: $.map(json.listvirtualmachinesresponse.virtualmachine[0].nic, function(nic, index) {
|
||||
var name = 'NIC ' + (index + 1);
|
||||
if (nic.isdefault) {
|
||||
name += ' (' + _l('label.default') + ')';
|
||||
}
|
||||
return $.extend(nic, {
|
||||
name: name,
|
||||
networkname: networkname
|
||||
name: name
|
||||
});
|
||||
})
|
||||
});
|
||||
|
||||
@ -204,42 +204,11 @@
|
||||
}
|
||||
},
|
||||
|
||||
osCategory: {
|
||||
label: 'OS Category',
|
||||
select: function(args) {
|
||||
$.ajax({
|
||||
url: createURL("listOsCategories"),
|
||||
dataType: "json",
|
||||
async: true,
|
||||
success: function(json) {
|
||||
var osCats = json.listoscategoriesresponse.oscategory;
|
||||
var items = [];
|
||||
if (isAdmin())
|
||||
items.push({id: -1, description: "All OS"});
|
||||
$(osCats).each(function() {
|
||||
items.push({id: this.id, description: this.name});
|
||||
});
|
||||
args.response.success({data: items});
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
osTypeId: {
|
||||
label: 'label.os.type',
|
||||
dependsOn: 'osCategory',
|
||||
select: function(args) {
|
||||
if(args.osCategory == null)
|
||||
return;
|
||||
|
||||
var apiCmd;
|
||||
if(args.osCategory == -1)
|
||||
apiCmd = "listOsTypes";
|
||||
else
|
||||
apiCmd = "listOsTypes&oscategoryid=" + args.osCategory;
|
||||
|
||||
$.ajax({
|
||||
url: createURL(apiCmd),
|
||||
url: createURL("listOsTypes"),
|
||||
dataType: "json",
|
||||
async: true,
|
||||
success: function(json) {
|
||||
@ -814,46 +783,15 @@
|
||||
isBoolean: true,
|
||||
isChecked: true
|
||||
},
|
||||
|
||||
osCategory: {
|
||||
label: 'OS Category',
|
||||
dependsOn: 'isBootable',
|
||||
select: function(args) {
|
||||
$.ajax({
|
||||
url: createURL("listOsCategories"),
|
||||
dataType: "json",
|
||||
async: true,
|
||||
success: function(json) {
|
||||
var osCats = json.listoscategoriesresponse.oscategory;
|
||||
var items = [];
|
||||
if (isAdmin())
|
||||
items.push({id: -1, description: "All OS"});
|
||||
$(osCats).each(function() {
|
||||
items.push({id: this.id, description: this.name});
|
||||
});
|
||||
args.response.success({data: items});
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
osTypeId: {
|
||||
label: 'label.os.type',
|
||||
dependsOn: ['isBootable','osCategory'],
|
||||
dependsOn: 'isBootable',
|
||||
isHidden: false,
|
||||
validation: { required: true },
|
||||
select: function(args) {
|
||||
if(args.osCategory == null)
|
||||
return;
|
||||
|
||||
var apiCmd;
|
||||
if(args.osCategory == -1)
|
||||
apiCmd = "listOsTypes";
|
||||
else
|
||||
apiCmd = "listOsTypes&oscategoryid=" + args.osCategory;
|
||||
|
||||
$.ajax({
|
||||
url: createURL(apiCmd),
|
||||
url: createURL("listOsTypes"),
|
||||
dataType: "json",
|
||||
async: true,
|
||||
success: function(json) {
|
||||
|
||||
@ -179,6 +179,7 @@
|
||||
|
||||
//Fetch Latest action
|
||||
$dashboard.find('.fetch-latest').click(function() {
|
||||
window.fetchLatestflag = 1;
|
||||
var $browser = $('#browser .container');
|
||||
|
||||
if ($(this).hasClass('fetch-latest')) $('#navigation li.dashboard').click();
|
||||
|
||||
@ -117,56 +117,52 @@
|
||||
var $value = $('<div>').addClass('value')
|
||||
.appendTo($formItem);
|
||||
var $input, $dependsOn, selectFn, selectArgs;
|
||||
var dependsOn = $.isArray(field.dependsOn) ? field.dependsOn : [field.dependsOn] ; //now an array
|
||||
var dependsOn = field.dependsOn;
|
||||
|
||||
// Depends on fields
|
||||
if (dependsOn.length) {
|
||||
$.each(dependsOn, function(key, value){
|
||||
var dependsOn = value;
|
||||
if (field.dependsOn) {
|
||||
$formItem.attr('depends-on', dependsOn);
|
||||
$dependsOn = $form.find('input, select').filter(function() {
|
||||
return $(this).attr('name') === dependsOn;
|
||||
});
|
||||
|
||||
$formItem.attr('depends-on-'+value, dependsOn);
|
||||
$dependsOn = $form.find('input, select').filter(function() {
|
||||
return $(this).attr('name') === dependsOn;
|
||||
if ($dependsOn.is('[type=checkbox]')) {
|
||||
var isReverse = args.form.fields[dependsOn].isReverse;
|
||||
|
||||
// Checkbox
|
||||
$dependsOn.bind('click', function(event) {
|
||||
var $target = $(this);
|
||||
var $dependent = $target.closest('form').find('[depends-on=\'' + dependsOn + '\']');
|
||||
|
||||
if (($target.is(':checked') && !isReverse) ||
|
||||
($target.is(':unchecked') && isReverse)) {
|
||||
$dependent.css('display', 'inline-block');
|
||||
$dependent.each(function() {
|
||||
if ($(this).data('dialog-select-fn')) {
|
||||
$(this).data('dialog-select-fn')();
|
||||
}
|
||||
});
|
||||
} else if (($target.is(':unchecked') && !isReverse) ||
|
||||
($target.is(':checked') && isReverse)) {
|
||||
$dependent.hide();
|
||||
}
|
||||
|
||||
$dependent.find('input[type=checkbox]').click();
|
||||
|
||||
if (!isReverse) {
|
||||
$dependent.find('input[type=checkbox]').attr('checked', false);
|
||||
} else {
|
||||
$dependent.find('input[type=checkbox]').attr('checked', true);
|
||||
}
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
if ($dependsOn.is('[type=checkbox]')) {
|
||||
var isReverse = args.form.fields[dependsOn].isReverse;
|
||||
|
||||
// Checkbox
|
||||
$dependsOn.bind('click', function(event) {
|
||||
var $target = $(this);
|
||||
var $dependent = $target.closest('form').find('[depends-on-' + value + '=\'' + dependsOn + '\']');
|
||||
|
||||
if (($target.is(':checked') && !isReverse) ||
|
||||
($target.is(':unchecked') && isReverse)) {
|
||||
$dependent.css('display', 'inline-block');
|
||||
$dependent.each(function() {
|
||||
if ($(this).find('select').data('dialog-select-fn')) {
|
||||
$(this).find('select').data('dialog-select-fn')();
|
||||
}
|
||||
});
|
||||
} else if (($target.is(':unchecked') && !isReverse) ||
|
||||
($target.is(':checked') && isReverse)) {
|
||||
$dependent.hide();
|
||||
}
|
||||
|
||||
$dependent.find('input[type=checkbox]').click();
|
||||
|
||||
if (!isReverse) {
|
||||
$dependent.find('input[type=checkbox]').attr('checked', false);
|
||||
} else {
|
||||
$dependent.find('input[type=checkbox]').attr('checked', true);
|
||||
}
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
// Show fields by default if it is reverse checkbox
|
||||
if (isReverse) {
|
||||
$dependsOn.click();
|
||||
}
|
||||
};
|
||||
});
|
||||
// Show fields by default if it is reverse checkbox
|
||||
if (isReverse) {
|
||||
$dependsOn.click();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Determine field type of input
|
||||
@ -211,35 +207,31 @@
|
||||
// Pass form item to provider for additional manipulation
|
||||
$.extend(selectArgs, { $select: $input });
|
||||
|
||||
if (dependsOn.length) {
|
||||
$.each(dependsOn, function(key, value){
|
||||
var dependsOn = value;
|
||||
|
||||
$dependsOn = $input.closest('form').find('input, select').filter(function() {
|
||||
return $(this).attr('name') === dependsOn;
|
||||
});
|
||||
|
||||
$dependsOn.bind('change', function(event) {
|
||||
var $target = $(this);
|
||||
|
||||
if (!$dependsOn.is('select')) return true;
|
||||
|
||||
var dependsOnArgs = {};
|
||||
|
||||
$input.find('option').remove();
|
||||
|
||||
if (!$target.children().size()) return true;
|
||||
|
||||
dependsOnArgs[dependsOn] = $target.val();
|
||||
selectFn($.extend(selectArgs, dependsOnArgs));
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
if (!$dependsOn.is('select')) {
|
||||
selectFn(selectArgs);
|
||||
}
|
||||
if (dependsOn) {
|
||||
$dependsOn = $input.closest('form').find('input, select').filter(function() {
|
||||
return $(this).attr('name') === dependsOn;
|
||||
});
|
||||
|
||||
$dependsOn.bind('change', function(event) {
|
||||
var $target = $(this);
|
||||
|
||||
if (!$dependsOn.is('select')) return true;
|
||||
|
||||
var dependsOnArgs = {};
|
||||
|
||||
$input.find('option').remove();
|
||||
|
||||
if (!$target.children().size()) return true;
|
||||
|
||||
dependsOnArgs[dependsOn] = $target.val();
|
||||
selectFn($.extend(selectArgs, dependsOnArgs));
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
if (!$dependsOn.is('select')) {
|
||||
selectFn(selectArgs);
|
||||
}
|
||||
} else {
|
||||
selectFn(selectArgs);
|
||||
}
|
||||
|
||||
@ -322,7 +322,7 @@ depsclasspath = [ in_javadir(_basename(x)) for x in _glob(_join(conf.srcdir,"dep
|
||||
conf.env.DEPSCLASSPATH = pathsep.join(depsclasspath)
|
||||
|
||||
# the MS classpath points to JARs required to run the management server
|
||||
msclasspath = [ in_javadir("%s-%s.jar"%(conf.env.PACKAGE,x)) for x in "utils api core server server-extras core-extras vmware-base ovm dp-user-concentrated-pod dp-user-dispersing host-allocator-random plugin-f5 plugin-netscaler plugin-ovs plugin-srx storage-allocator-random user-authenticator-ldap user-authenticator-md5 user-authenticator-plaintext vmware xen plugin-nicira-nvp plugin-elb plugin-netapp".split() ]
|
||||
msclasspath = [ in_javadir("%s-%s.jar"%(conf.env.PACKAGE,x)) for x in "utils api core server server-extras core-extras vmware-base ovm dp-user-concentrated-pod dp-user-dispersing host-allocator-random plugin-f5 plugin-netscaler plugin-ovs plugin-srx storage-allocator-random user-authenticator-ldap user-authenticator-md5 user-authenticator-plaintext vmware plugin-hypervisor-xen plugin-nicira-nvp plugin-elb plugin-netapp".split() ]
|
||||
conf.env.MSCLASSPATH = pathsep.join(msclasspath)
|
||||
|
||||
# the agent and simulator classpaths point to JARs required to run these two applications
|
||||
|
||||