Skip to content

Commit 06c8e5b

Browse files
author
Likitha Shetty
committed
2 parents 9c5da1c + c56a75d commit 06c8e5b

38 files changed

Lines changed: 1799 additions & 1402 deletions

api/src/org/apache/cloudstack/api/command/admin/storage/CreateCacheStoreCmd.java

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,22 +18,22 @@
1818
*/
1919
package org.apache.cloudstack.api.command.admin.storage;
2020

21-
import java.util.Map;
22-
21+
import com.cloud.storage.ImageStore;
22+
import com.cloud.user.Account;
2323
import org.apache.cloudstack.api.APICommand;
2424
import org.apache.cloudstack.api.ApiConstants;
2525
import org.apache.cloudstack.api.ApiErrorCode;
2626
import org.apache.cloudstack.api.BaseCmd;
2727
import org.apache.cloudstack.api.Parameter;
2828
import org.apache.cloudstack.api.ServerApiException;
29-
import org.apache.cloudstack.api.BaseCmd.CommandType;
3029
import org.apache.cloudstack.api.response.ImageStoreResponse;
3130
import org.apache.cloudstack.api.response.ZoneResponse;
3231
import org.apache.log4j.Logger;
3332

34-
import com.cloud.exception.DiscoveryException;
35-
import com.cloud.storage.ImageStore;
36-
import com.cloud.user.Account;
33+
import java.util.Collection;
34+
import java.util.HashMap;
35+
import java.util.Iterator;
36+
import java.util.Map;
3737

3838
@APICommand(name = "createCacheStore", description="create cache store.", responseObject=ImageStoreResponse.class)
3939
public class CreateCacheStoreCmd extends BaseCmd {
@@ -76,7 +76,19 @@ public Long getZoneId() {
7676
}
7777

7878
public Map<String, String> getDetails() {
79-
return details;
79+
Map<String, String> detailsMap = null;
80+
if (details != null && !details.isEmpty()) {
81+
detailsMap = new HashMap<String, String>();
82+
Collection<?> props = details.values();
83+
Iterator<?> iter = props.iterator();
84+
while (iter.hasNext()) {
85+
HashMap<String, String> detail = (HashMap<String, String>) iter.next();
86+
String key = detail.get("key");
87+
String value = detail.get("value");
88+
detailsMap.put(key, value);
89+
}
90+
}
91+
return detailsMap;
8092
}
8193

8294
public String getScope() {

docs/en-US/CloudStack_GSoC_Guide.xml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,7 @@
4646
<xi:include href="Common_Content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
4747
<xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
4848
</bookinfo>
49-
<xi:include href="gsoc-tuna.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
50-
<xi:include href="gsoc-imduffy15.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
51-
<xi:include href="gsoc-dharmesh.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
52-
<xi:include href="gsoc-meng.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
53-
<xi:include href="gsoc-shiva.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
49+
<xi:include href="gsoc-proposals.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
50+
<xi:include href="gsoc-midsummer.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
5451
</book>
5552

docs/en-US/add-loadbalancer-rule-vpc.xml

Lines changed: 210 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -35,113 +35,216 @@
3535
received at a public IP to one or more VMs that belong to a network tier that provides load
3636
balancing service in a VPC. A user creates a rule, specifies an algorithm, and assigns the
3737
rule to a set of VMs within a tier.</para>
38-
<orderedlist>
39-
<listitem>
40-
<para>Log in to the &PRODUCT; UI as an administrator or end user.</para>
41-
</listitem>
42-
<listitem>
43-
<para>In the left navigation, choose Network.</para>
44-
</listitem>
45-
<listitem>
46-
<para>In the Select view, select VPC.</para>
47-
<para>All the VPCs that you have created for the account is listed in the page.</para>
48-
</listitem>
49-
<listitem>
50-
<para>Click the Configure button of the VPC, for which you want to configure load balancing
51-
rules.</para>
52-
<para>The VPC page is displayed where all the tiers you created listed in a diagram.</para>
53-
<para>For each tier, the following options are displayed:</para>
54-
<itemizedlist>
55-
<listitem>
56-
<para>Internal LB</para>
57-
</listitem>
58-
<listitem>
59-
<para>Public LB IP</para>
60-
</listitem>
61-
<listitem>
62-
<para>Static NAT</para>
63-
</listitem>
64-
<listitem>
65-
<para>Virtual Machines</para>
66-
</listitem>
67-
<listitem>
68-
<para>CIDR</para>
69-
</listitem>
70-
</itemizedlist>
71-
<para>The following router information is displayed:</para>
72-
<itemizedlist>
73-
<listitem>
74-
<para>Private Gateways</para>
75-
</listitem>
76-
<listitem>
77-
<para>Public IP Addresses</para>
78-
</listitem>
79-
<listitem>
80-
<para>Site-to-Site VPNs</para>
81-
</listitem>
82-
<listitem>
83-
<para>Network ACL Lists</para>
84-
</listitem>
85-
</itemizedlist>
86-
</listitem>
87-
<listitem>
88-
<para>In the Router node, select Public IP Addresses.</para>
89-
<para>The IP Addresses page is displayed.</para>
90-
</listitem>
91-
<listitem>
92-
<para>Click the IP address for which you want to create the rule, then click the
93-
Configuration tab.</para>
94-
</listitem>
95-
<listitem>
96-
<para>In the Load Balancing node of the diagram, click View All.</para>
97-
</listitem>
98-
<listitem>
99-
<para>Select the tier to which you want to apply the rule.</para>
100-
</listitem>
101-
<listitem>
102-
<para>Specify the following:</para>
103-
<itemizedlist>
104-
<listitem>
105-
<para><emphasis role="bold">Name</emphasis>: A name for the load balancer rule.</para>
106-
</listitem>
107-
<listitem>
108-
<para><emphasis role="bold">Public Port</emphasis>: The port that receives the incoming
109-
traffic to be balanced.</para>
110-
</listitem>
111-
<listitem>
112-
<para><emphasis role="bold">Private Port</emphasis>: The port that the VMs will use to
113-
receive the traffic.</para>
114-
</listitem>
115-
<listitem>
116-
<para><emphasis role="bold">Algorithm</emphasis>. Choose the load balancing algorithm
117-
you want &PRODUCT; to use. &PRODUCT; supports the following well-known
118-
algorithms:</para>
119-
<itemizedlist>
120-
<listitem>
121-
<para>Round-robin</para>
122-
</listitem>
123-
<listitem>
124-
<para>Least connections</para>
125-
</listitem>
126-
<listitem>
127-
<para>Source</para>
128-
</listitem>
129-
</itemizedlist>
130-
</listitem>
131-
<listitem>
132-
<para><emphasis role="bold">Stickiness</emphasis>. (Optional) Click Configure and choose
133-
the algorithm for the stickiness policy. See Sticky Session Policies for Load Balancer
134-
Rules.</para>
135-
</listitem>
136-
<listitem>
137-
<para><emphasis role="bold">Add VMs</emphasis>: Click Add VMs, then select two or more
138-
VMs that will divide the load of incoming traffic, and click Apply.</para>
139-
</listitem>
140-
</itemizedlist>
141-
</listitem>
142-
</orderedlist>
143-
<para>The new load balancing rule appears in the list. You can repeat these steps to add more
144-
load balancing rules for this IP address.</para>
38+
<section id="enable-vpc-public-lb">
39+
<title>Enabling NetScaler as the LB Provider on a VPC Tier</title>
40+
<orderedlist>
41+
<listitem>
42+
<para>Add and enable Netscaler VPX in dedicated mode.</para>
43+
<para>Netscaler can be used in a VPC environment only if it is in dedicated mode.</para>
44+
</listitem>
45+
<listitem>
46+
<para>Create a network offering, as given in <xref linkend="ext-lb-offering"/>.</para>
47+
</listitem>
48+
<listitem>
49+
<para>Create a VPC with Netscaler as the Public LB provider.</para>
50+
<para>For more information, see <xref linkend="add-vpc"/>.</para>
51+
</listitem>
52+
<listitem>
53+
<para>For the VPC, acquire an IP.</para>
54+
</listitem>
55+
<listitem>
56+
<para>Create an external load balancing rule and apply, as given in <xref
57+
linkend="ext-lb-vpc"/>.</para>
58+
</listitem>
59+
</orderedlist>
60+
</section>
61+
<section id="ext-lb-offering">
62+
<title>Creating a Network Offering for External LB</title>
63+
<para>To have internal LB support on VPC, create a network offering as follows: </para>
64+
<orderedlist>
65+
<listitem>
66+
<para>Log in to the &PRODUCT; UI as a user or admin.</para>
67+
</listitem>
68+
<listitem>
69+
<para>From the Select Offering drop-down, choose Network Offering.</para>
70+
</listitem>
71+
<listitem>
72+
<para>Click Add Network Offering.</para>
73+
</listitem>
74+
<listitem>
75+
<para>In the dialog, make the following choices:</para>
76+
<itemizedlist>
77+
<listitem>
78+
<para><emphasis role="bold">Name</emphasis>: Any desired name for the network
79+
offering.</para>
80+
</listitem>
81+
<listitem>
82+
<para><emphasis role="bold">Description</emphasis>: A short description of the
83+
offering that can be displayed to users.</para>
84+
</listitem>
85+
<listitem>
86+
<para><emphasis role="bold">Network Rate</emphasis>: Allowed data transfer rate in MB
87+
per second.</para>
88+
</listitem>
89+
<listitem>
90+
<para><emphasis role="bold">Traffic Type</emphasis>: The type of network traffic that
91+
will be carried on the network.</para>
92+
</listitem>
93+
<listitem>
94+
<para><emphasis role="bold">Guest Type</emphasis>: Choose whether the guest network is
95+
isolated or shared.</para>
96+
</listitem>
97+
<listitem>
98+
<para><emphasis role="bold">Persistent</emphasis>: Indicate whether the guest network
99+
is persistent or not. The network that you can provision without having to deploy a
100+
VM on it is termed persistent network. </para>
101+
</listitem>
102+
<listitem>
103+
<para><emphasis role="bold">VPC</emphasis>: This option indicate whether the guest
104+
network is Virtual Private Cloud-enabled. A Virtual Private Cloud (VPC) is a
105+
private, isolated part of &PRODUCT;. A VPC can have its own virtual network topology
106+
that resembles a traditional physical network. For more information on VPCs, see
107+
<xref linkend="vpc"/>.</para>
108+
</listitem>
109+
<listitem>
110+
<para><emphasis role="bold">Specify VLAN</emphasis>: (Isolated guest networks only)
111+
Indicate whether a VLAN should be specified when this offering is used.</para>
112+
</listitem>
113+
<listitem>
114+
<para><emphasis role="bold">Supported Services</emphasis>: Select Load Balancer.
115+
Select <code>InternalLbVM</code> from the provider list.</para>
116+
</listitem>
117+
<listitem>
118+
<para><emphasis role="bold">Load Balancer Type</emphasis>: Select external LB from the
119+
drop-down. Use Netscaler</para>
120+
</listitem>
121+
<listitem>
122+
<para><emphasis role="bold">System Offering</emphasis>: Choose the system service
123+
offering that you want virtual routers to use in this network.</para>
124+
</listitem>
125+
<listitem>
126+
<para><emphasis role="bold">Conserve mode</emphasis>: Indicate whether to use conserve
127+
mode. In this mode, network resources are allocated only when the first virtual
128+
machine starts in the network.</para>
129+
</listitem>
130+
</itemizedlist>
131+
</listitem>
132+
<listitem>
133+
<para>Click OK and the network offering is created.</para>
134+
</listitem>
135+
</orderedlist>
136+
</section>
137+
<section id="ext-lb-vpc">
138+
<title>Creating an External LB Rule</title>
139+
<orderedlist>
140+
<listitem>
141+
<para>Log in to the &PRODUCT; UI as an administrator or end user.</para>
142+
</listitem>
143+
<listitem>
144+
<para>In the left navigation, choose Network.</para>
145+
</listitem>
146+
<listitem>
147+
<para>In the Select view, select VPC.</para>
148+
<para>All the VPCs that you have created for the account is listed in the page.</para>
149+
</listitem>
150+
<listitem>
151+
<para>Click the Configure button of the VPC, for which you want to configure load
152+
balancing rules.</para>
153+
<para>The VPC page is displayed where all the tiers you created listed in a
154+
diagram.</para>
155+
<para>For each tier, the following options are displayed:</para>
156+
<itemizedlist>
157+
<listitem>
158+
<para>Internal LB</para>
159+
</listitem>
160+
<listitem>
161+
<para>Public LB IP</para>
162+
</listitem>
163+
<listitem>
164+
<para>Static NAT</para>
165+
</listitem>
166+
<listitem>
167+
<para>Virtual Machines</para>
168+
</listitem>
169+
<listitem>
170+
<para>CIDR</para>
171+
</listitem>
172+
</itemizedlist>
173+
<para>The following router information is displayed:</para>
174+
<itemizedlist>
175+
<listitem>
176+
<para>Private Gateways</para>
177+
</listitem>
178+
<listitem>
179+
<para>Public IP Addresses</para>
180+
</listitem>
181+
<listitem>
182+
<para>Site-to-Site VPNs</para>
183+
</listitem>
184+
<listitem>
185+
<para>Network ACL Lists</para>
186+
</listitem>
187+
</itemizedlist>
188+
</listitem>
189+
<listitem>
190+
<para>In the Router node, select Public IP Addresses.</para>
191+
<para>The IP Addresses page is displayed.</para>
192+
</listitem>
193+
<listitem>
194+
<para>Click the IP address for which you want to create the rule, then click the
195+
Configuration tab.</para>
196+
</listitem>
197+
<listitem>
198+
<para>In the Load Balancing node of the diagram, click View All.</para>
199+
</listitem>
200+
<listitem>
201+
<para>Select the tier to which you want to apply the rule.</para>
202+
</listitem>
203+
<listitem>
204+
<para>Specify the following:</para>
205+
<itemizedlist>
206+
<listitem>
207+
<para><emphasis role="bold">Name</emphasis>: A name for the load balancer rule.</para>
208+
</listitem>
209+
<listitem>
210+
<para><emphasis role="bold">Public Port</emphasis>: The port that receives the
211+
incoming traffic to be balanced.</para>
212+
</listitem>
213+
<listitem>
214+
<para><emphasis role="bold">Private Port</emphasis>: The port that the VMs will use to
215+
receive the traffic.</para>
216+
</listitem>
217+
<listitem>
218+
<para><emphasis role="bold">Algorithm</emphasis>. Choose the load balancing algorithm
219+
you want &PRODUCT; to use. &PRODUCT; supports the following well-known
220+
algorithms:</para>
221+
<itemizedlist>
222+
<listitem>
223+
<para>Round-robin</para>
224+
</listitem>
225+
<listitem>
226+
<para>Least connections</para>
227+
</listitem>
228+
<listitem>
229+
<para>Source</para>
230+
</listitem>
231+
</itemizedlist>
232+
</listitem>
233+
<listitem>
234+
<para><emphasis role="bold">Stickiness</emphasis>. (Optional) Click Configure and
235+
choose the algorithm for the stickiness policy. See Sticky Session Policies for Load
236+
Balancer Rules.</para>
237+
</listitem>
238+
<listitem>
239+
<para><emphasis role="bold">Add VMs</emphasis>: Click Add VMs, then select two or more
240+
VMs that will divide the load of incoming traffic, and click Apply.</para>
241+
</listitem>
242+
</itemizedlist>
243+
</listitem>
244+
</orderedlist>
245+
<para>The new load balancing rule appears in the list. You can repeat these steps to add more
246+
load balancing rules for this IP address.</para>
247+
</section>
145248
</section>
146249
<section id="acros-tiers-lb">
147250
<title>Load Balancing Across Tiers</title>

0 commit comments

Comments
 (0)