Merge lp:~james-page/serverguide/12.10-updates into lp:~ubuntu-core-doc/serverguide/quantal

Proposed by James Page
Status: Merged
Merged at revision: 95
Proposed branch: lp:~james-page/serverguide/12.10-updates
Merge into: lp:~ubuntu-core-doc/serverguide/quantal
Diff against target: 1095 lines (+14/-1038)
2 files modified
serverguide/C/installation.xml (+13/-12)
serverguide/C/virtualization.xml (+1/-1026)
To merge this branch: bzr merge lp:~james-page/serverguide/12.10-updates
Reviewer Review Type Date Requested Status
Peter Matulis Approve
Review via email: mp+128906@code.launchpad.net

Description of the change

Two key updates:

1) Based on current server install minimum requirements, the minimum
hardware requirements for Ubuntu server have been increased and split
between a 'Standard' install and a 'Minimal' install.

2) Ubuntu Enterprise Cloud is no longer part of Ubuntu; dropped from
documentation.

To post a comment you must log in.
Revision history for this message
Peter Matulis (petermatulis) wrote :

Looks good! And thanks for getting rid of UEC. I keep forgetting.

review: Approve
Revision history for this message
Peter Matulis (petermatulis) wrote :

It's late to be accepting changes. I'll send a note to ubuntu-doc and ubuntu-server mailing lists.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'serverguide/C/installation.xml'
2--- serverguide/C/installation.xml 2012-04-06 20:16:46 +0000
3+++ serverguide/C/installation.xml 2012-10-10 11:27:39 +0000
4@@ -44,11 +44,18 @@
5 </thead>
6 <tbody>
7 <row>
8- <entry><para>Server</para></entry>
9+ <entry><para>Server (Standard)</para></entry>
10+ <entry><para>1 gigahertz</para></entry>
11+ <entry><para>512 megabytes</para></entry>
12+ <entry><para>1 gigabyte</para></entry>
13+ <entry><para>1.75 gigabytes</para></entry>
14+ </row>
15+ <row>
16+ <entry><para>Server (Minimal)</para></entry>
17 <entry><para>300 megahertz</para></entry>
18- <entry><para>128 megabytes</para></entry>
19- <entry><para>500 megabytes</para></entry>
20- <entry><para>1 gigabyte</para></entry>
21+ <entry><para>256 megabytes</para></entry>
22+ <entry><para>700 megabytes</para></entry>
23+ <entry><para>1.4 gigabytes</para></entry>
24 </row>
25 </tbody>
26 </tgroup>
27@@ -58,12 +65,6 @@
28 It is a minimalist design providing a platform for the desired services, such
29 as file/print services, web hosting, email hosting, etc.
30 </para>
31-
32- <para>
33- The requirements for UEC are slightly different; for Front End requirements see <xref linkend="uec-frontend-requirements"/>, and for
34- UEC Node requirements see <xref linkend="uec-node-requirements"/>.
35- </para>
36-
37 </sect2>
38
39 <sect2 id="intro-server-differences" status="review">
40@@ -75,8 +76,8 @@
41 application on the Desktop Edition as it is on the Server Edition.
42 </para>
43 <para>
44- The differences between the two editions are the lack of an X window environment in the Server Edition,
45- the installation process, and different Kernel options.
46+ The differences between the two editions are the lack of an X window environment in the Server Edition and
47+ the installation process.
48 </para>
49 <para>
50 </para>
51
52=== modified file 'serverguide/C/virtualization.xml'
53--- serverguide/C/virtualization.xml 2012-09-20 20:15:05 +0000
54+++ serverguide/C/virtualization.xml 2012-10-10 11:27:39 +0000
55@@ -1092,1031 +1092,6 @@
56 </itemizedlist>
57 </sect2>
58 </sect1>
59- <sect1 id="uec" status="review">
60- <title>UEC</title>
61-
62- <sect2 id="uec-overview" status="review">
63- <title>Overview</title>
64-
65- <warning>
66- <para>
67- UEC (Ubuntu Enterprise Cloud) is now depracated in favour of UC (Ubuntu Cloud). The former is based on Eucalyptus and the latter
68- is based on Openstack. This section of the guide will be removed in future iterations.
69- </para>
70- </warning>
71-
72- <para>
73- This tutorial covers <application>UEC</application> installation from the Ubuntu &distro-rev; Server Edition CD, and assumes a basic network topology,
74- with a single system serving as the <emphasis>"all-in-one controller"</emphasis>, and one or more nodes attached.
75- </para>
76-
77- <para>
78- From this Tutorial you will learn how to install, configure, register and perform several operations on a basic <application>UEC</application>
79- setup that results in a cloud with a one controller <emphasis>"front-end"</emphasis> and one or several node(s) for running Virtual Machine (VM)
80- instances. You will also use examples to help get you started using your own private compute cloud.
81- </para>
82-
83- </sect2>
84- <sect2 id="uec-prerequisites" status="review">
85- <title>Prerequisites</title>
86-
87- <para>
88- To deploy a minimal cloud infrastructure, you’ll need at least <emphasis>two</emphasis> dedicated systems:
89- </para>
90-
91- <itemizedlist>
92- <listitem>
93- <para>
94- A front end.
95- </para>
96- </listitem>
97- <listitem>
98- <para>
99- One or more node(s).
100- </para>
101- </listitem>
102- </itemizedlist>
103-
104- <para>
105- The following are recommendations, rather than fixed requirements. However, our experience in developing this documentation indicated the following suggestions.
106- </para>
107-
108- <sect3 id="uec-frontend-requirements" status="review">
109- <title>Front End Requirements</title>
110-
111- <para>
112- Use the following table for a system that will run one or more of:
113- </para>
114-
115- <itemizedlist>
116- <listitem><para>Cloud Controller (CLC)</para></listitem>
117- <listitem><para>Cluster Controller (CC)</para></listitem>
118- <listitem><para>Walrus (the S3-like storage service)</para></listitem>
119- <listitem><para>Storage Controller (SC)</para></listitem>
120- </itemizedlist>
121-
122- <literallayout>
123-
124-
125-
126-
127-
128-
129-
130-
131- </literallayout>
132-
133- <table>
134- <title>UEC Front End Requirements</title>
135- <tgroup cols="4" rowsep="1">
136- <colspec colname="1" colwidth="1.0*"/>
137- <colspec colname="2" colwidth="1.0*"/>
138- <colspec colname="3" colwidth="1.0*"/>
139- <colspec colname="4" colwidth="4.5*"/>
140- <thead>
141- <row>
142- <entry valign="middle"><para>Hardware</para></entry>
143- <entry valign="middle"><para>Minimum</para></entry>
144- <entry valign="middle"><para>Suggested</para></entry>
145- <entry valign="middle"><para>Notes</para></entry>
146- </row>
147- </thead>
148- <tbody>
149- <row>
150- <entry><para>CPU</para></entry>
151- <entry><para>1 GHz</para></entry>
152- <entry><para>2 x 2 GHz</para></entry>
153- <entry><para>For an <emphasis>all-in-one</emphasis> front end, it helps to have at least a dual core processor.</para></entry>
154- </row>
155- <row>
156- <entry><para>Memory</para></entry>
157- <entry><para>2 GB</para></entry>
158- <entry><para>4 GB</para></entry>
159- <entry><para>The Java web front end benefits from lots of available memory.</para></entry>
160- </row>
161- <row>
162- <entry><para>Disk</para></entry>
163- <entry><para>5400 RPM IDE</para></entry>
164- <entry><para>7200 RPM SATA</para></entry>
165- <entry><para>Slower disks will work, but will yield much longer instance startup times.</para></entry>
166- </row>
167- <row>
168- <entry><para>Disk Space</para></entry>
169- <entry><para>40 GB</para></entry>
170- <entry><para>200 GB</para></entry>
171- <entry><para>40GB is only enough space for only a single image, cache, etc., Eucalyptus does not like to run out of disk space.</para></entry>
172- </row>
173- <row>
174- <entry><para>Networking</para></entry>
175- <entry><para>100 Mbps</para></entry>
176- <entry><para>1000 Mbps</para></entry>
177- <entry><para>Machine images are hundreds of MB, and need to be copied over the network to nodes.</para></entry>
178- </row>
179- </tbody>
180- </tgroup>
181- </table>
182-
183- </sect3>
184- <sect3 id="uec-node-requirements" status="review">
185- <title>Node Requirements</title>
186-
187- <para>
188- The other system(s) are <emphasis>nodes</emphasis>, which will run:
189- </para>
190-
191- <itemizedlist>
192- <listitem><para>the Node Controller (NC)</para></listitem>
193- </itemizedlist>
194-
195- <table>
196- <title>UEC Node Requirements</title>
197- <tgroup cols="4" rowsep="1">
198- <colspec colname="1" colwidth="1.0*"/>
199- <colspec colname="2" colwidth="1.0*"/>
200- <colspec colname="3" colwidth="1.3*"/>
201- <colspec colname="4" colwidth="4.5*"/>
202- <thead>
203- <row>
204- <entry valign="middle"><para>Hardware</para></entry>
205- <entry valign="middle"><para>Minimum</para></entry>
206- <entry valign="middle"><para>Suggested</para></entry>
207- <entry valign="middle"><para>Notes</para></entry>
208- </row>
209- </thead>
210- <tbody>
211- <row>
212- <entry><para>CPU</para></entry>
213- <entry><para>VT Extensions</para></entry>
214- <entry><para>VT, 64-bit, Multicore</para></entry>
215- <entry><para>64-bit can run both i386, and amd64 instances; by default, Eucalyptus will only run 1 VM per CPU core on a Node.</para></entry>
216- </row>
217- <row>
218- <entry><para>Memory</para></entry>
219- <entry><para>1 GB</para></entry>
220- <entry><para>4 GB</para></entry>
221- <entry><para>Additional memory means more, and larger guests.</para></entry>
222- </row>
223- <row>
224- <entry><para>Disk</para></entry>
225- <entry><para>5400 RPM IDE</para></entry>
226- <entry><para>7200 RPM SATA or SCSI</para></entry>
227- <entry><para>Eucalyptus nodes are disk-intensive; I/O wait will likely be the performance bottleneck.</para></entry>
228- </row>
229- <row>
230- <entry><para>Disk Space</para></entry>
231- <entry><para>40 GB</para></entry>
232- <entry><para>100 GB</para></entry>
233- <entry><para>Images will be cached locally, Eucalyptus does not like to run out of disk space.</para></entry>
234- </row>
235- <row>
236- <entry><para>Networking</para></entry>
237- <entry><para>100 Mbps</para></entry>
238- <entry><para>1000 Mbps</para></entry>
239- <entry><para>Machine images are hundreds of MB, and need to be copied over the network to nodes.</para></entry>
240- </row>
241- </tbody>
242- </tgroup>
243- </table>
244-
245- </sect3>
246-
247- </sect2>
248- <sect2 id="uec-frontend-installation" status="review">
249- <title>Installing the Cloud/Cluster/Storage/Walrus Front End Server</title>
250-
251- <procedure>
252- <step>
253- <para>
254- Download the Ubuntu &distro-rev; Server ISO file, and burn it to a CD.
255- </para>
256- </step>
257- <step>
258- <para>
259- When you boot, select <emphasis>“Install Ubuntu Enterprise Cloud”</emphasis>. The installer will detect if any other Eucalyptus components are present.
260- </para>
261- </step>
262- <step>
263- <para>
264- You can then choose which components to install, based on your chosen <ulink url="https://help.ubuntu.com/community/UEC/Topologies">topology</ulink>.
265- </para>
266- </step>
267- <step>
268- <para>
269- When asked whether you want a <emphasis>“Cluster”</emphasis> or a <emphasis>“Node”</emphasis> install, select
270- <emphasis>“Cluster”</emphasis>.
271- </para>
272- </step>
273- <step>
274- <para>
275- It will ask two other cloud-specific questions during the course of the install:
276- </para>
277- <itemizedlist>
278- <listitem>
279- <para>
280- Name of your cluster.
281- </para>
282- <itemizedlist><listitem><para>e.g. <emphasis>cluster1</emphasis>.</para></listitem></itemizedlist>
283- </listitem>
284- <listitem>
285- <para>
286- A range of public IP addresses on the LAN that the cloud can allocate to instances.
287- </para>
288- <itemizedlist><listitem><para>e.g. <emphasis>192.168.1.200-192.168.1.249</emphasis>.</para></listitem></itemizedlist>
289- </listitem>
290- </itemizedlist>
291- </step>
292- </procedure>
293-
294- </sect2>
295- <sect2 id="uec-node-installation" status="review">
296- <title>Installing the Node Controller(s)</title>
297-
298- <para>
299- The node controller install is even simpler. Just make sure that you are connected to the network on which the cloud/cluster controller is already running.
300- </para>
301-
302- <procedure>
303- <step>
304- <para>
305- Boot from the same ISO on the node(s).
306- </para>
307- </step>
308- <step>
309- <para>
310- When you boot, select <emphasis>“Install Ubuntu Enterprise Cloud”</emphasis>.
311- </para>
312- </step>
313- <step>
314- <para>
315- Select <emphasis>“Install Ubuntu Enterprise Cloud”</emphasis>.
316- </para>
317- </step>
318- <step>
319- <para>
320- It should detect the Cluster and preselect <emphasis>“Node”</emphasis> install for you.
321- </para>
322- </step>
323- <step>
324- <para>
325- Confirm the partitioning scheme.
326- </para>
327- </step>
328- <step>
329- <para>
330- The rest of the installation should proceed uninterrupted; complete the installation and reboot the node.
331- </para>
332- </step>
333- </procedure>
334-
335- </sect2>
336- <sect2 id="uec-register-nodes" status="review">
337- <title>Register the Node(s)</title>
338-
339- <procedure>
340- <step>
341-
342- <para>
343- Nodes are the physical systems within <application>UEC</application> that actually run the virtual machine instances of the cloud.
344- </para>
345-
346- <para>
347- All component registration should be automatic, assuming:
348- </para>
349-
350- <orderedlist numeration="loweralpha">
351- <listitem>
352- <para>
353- Public SSH keys have been exchanged properly.
354- </para>
355- </listitem>
356- <listitem>
357- <para>
358- The services are configured properly.
359- </para>
360- </listitem>
361- <listitem>
362- <para>
363- The appropriate <emphasis>uec-component-listener</emphasis> is running.
364- </para>
365- </listitem>
366- <listitem>
367- <para>
368- Verify Registration.
369- </para>
370- </listitem>
371- </orderedlist>
372-
373- <para>
374- Steps a to e should only be required if you're using the <ulink url="https://help.ubuntu.com/community/UEC/PackageInstall">UEC/PackageInstall</ulink> method.
375- Otherwise, if you are following this guide, these steps should already be completed automatically for you, and therefore you can skip <emphasis>"a"</emphasis>
376- to <emphasis>"e"</emphasis>.
377- </para>
378- <para> </para>
379- <para> </para>
380- <para> </para>
381- </step>
382- <step>
383- <para>Exchange Public Keys</para>
384-
385- <para>
386- The Cloud Controller's <emphasis>eucalyptus</emphasis> user needs to have SSH access to the Walrus Controller, Cluster Controller, and Storage Controller
387- as the eucalyptus user.
388- </para>
389-
390- <para>
391- Install the Cloud Controller's <emphasis>eucalyptus</emphasis> user's public ssh key by:
392- </para>
393-
394- <itemizedlist>
395- <listitem>
396- <para>
397- On the target controller, temporarily set a password for the eucalyptus user:
398- </para>
399-<screen>
400-<command>sudo passwd eucalyptus</command>
401-</screen>
402- </listitem>
403- <listitem>
404- <para>
405- Then, on the Cloud Controller:
406- </para>
407-<screen>
408-<command>sudo -u eucalyptus ssh-copy-id -i ~eucalyptus/.ssh/id_rsa.pub \
409-eucalyptus@&lt;IP_OF_NODE&gt;</command>
410-</screen>
411- </listitem>
412- <listitem>
413- <para>
414- You can now remove the password of the eucalyptus account on the target controller, if you wish:
415- </para>
416-<screen>
417-<command>sudo passwd -d eucalyptus</command>
418-</screen>
419- </listitem>
420- </itemizedlist>
421-
422- </step>
423- <step>
424- <para>Configuring the Services</para>
425-
426- <para>
427- On the <emphasis>Cloud Controller</emphasis>:
428- </para>
429-
430- <itemizedlist>
431- <listitem>
432- <para>
433- For the <emphasis>Cluster Controller</emphasis> Registration:
434- </para>
435- <itemizedlist>
436- <listitem><para>Define the shell variable CC_NAME in <filename>/etc/eucalyptus/eucalyptus-cc.conf</filename></para></listitem>
437- <listitem>
438- <para>
439- Define the shell variable CC_IP_ADDR in <filename>/etc/eucalyptus/eucalyptus-ipaddr.conf</filename>, as a space separated list of one or more IP addresses.
440- </para>
441- </listitem>
442- </itemizedlist>
443- </listitem>
444- <listitem>
445- <para>
446- For the <emphasis>Walrus Controller</emphasis> Registration:
447- </para>
448- <itemizedlist>
449- <listitem><para>Define the shell variable WALRUS_IP_ADDR in <filename>/etc/eucalyptus/eucalyptus-ipaddr.conf</filename>, as a single IP address.</para></listitem>
450- </itemizedlist>
451- </listitem>
452- </itemizedlist>
453-
454- <para>
455- On the <emphasis>Cluster Controller</emphasis>:
456- </para>
457-
458- <itemizedlist>
459- <listitem>
460- <para>
461- For <emphasis>Storage Controller</emphasis> Registration:
462- </para>
463- <itemizedlist>
464- <listitem><para>Define the shell variable CC_NAME in <filename>/etc/eucalyptus/eucalyptus-cc.conf</filename></para></listitem>
465- <listitem>
466- <para>
467- Define the shell variable SC_IP_ADDR in <filename>/etc/eucalyptus/eucalyptus-ipaddr.conf</filename>, as a space separated list of one or more IP addresses.
468- </para>
469- </listitem>
470- </itemizedlist>
471- </listitem>
472- </itemizedlist>
473-
474- </step>
475- <step>
476- <para>Publish</para>
477-
478- <para>
479- Now start the publication services.
480- </para>
481-
482- <itemizedlist>
483- <listitem>
484- <para><emphasis>Walrus Controller:</emphasis></para>
485-<screen>
486-<command>sudo start eucalyptus-walrus-publication</command>
487-</screen>
488- </listitem>
489- <listitem>
490- <para><emphasis>Cluster Controller:</emphasis></para>
491-<screen>
492-<command>sudo start eucalyptus-cc-publication</command>
493-</screen>
494- </listitem>
495- <listitem>
496- <para><emphasis>Storage Controller:</emphasis></para>
497-<screen>
498-<command>sudo start eucalyptus-sc-publication</command>
499-</screen>
500- </listitem>
501- <listitem>
502- <para><emphasis>Node Controller:</emphasis></para>
503-<screen>
504-<command>sudo start eucalyptus-nc-publication</command>
505-</screen>
506- </listitem>
507- </itemizedlist>
508-
509- </step>
510- <step>
511- <para>Start the Listener</para>
512-
513- <para>
514- On the <emphasis>Cloud Controller</emphasis> and the <emphasis>Cluster Controller(s)</emphasis>, run:
515- </para>
516-
517-<screen>
518-<command>sudo start uec-component-listener</command>
519-</screen>
520-
521- </step>
522- <step>
523- <para>Verify Registration</para>
524-
525-<screen>
526-<command>cat /var/log/eucalyptus/registration.log</command>
527-<computeroutput>2010-04-08 15:46:36-05:00 | 24243 -> Calling node cluster1 node 10.1.1.75
528-2010-04-08 15:46:36-05:00 | 24243 -> euca_conf --register-nodes returned 0
529-2010-04-08 15:48:47-05:00 | 25858 -> Calling walrus Walrus 10.1.1.71
530-2010-04-08 15:48:51-05:00 | 25858 -> euca_conf --register-walrus returned 0
531-2010-04-08 15:49:04-05:00 | 26237 -> Calling cluster cluster1 10.1.1.71
532-2010-04-08 15:49:08-05:00 | 26237 -> euca_conf --register-cluster returned 0
533-2010-04-08 15:49:17-05:00 | 26644 -> Calling storage cluster1 storage 10.1.1.71
534-2010-04-08 15:49:18-05:00 | 26644 -> euca_conf --register-sc returned 0</computeroutput>
535-</screen>
536-
537- <note>
538- <para>
539- The output on your machine will vary from the example above.
540- </para>
541- </note>
542-
543- </step>
544- </procedure>
545-
546- </sect2>
547- <sect2 id="uec-obtain-credentials" status="review">
548- <title>Obtain Credentials</title>
549-
550- <para>
551- After installing and booting the <emphasis>Cloud Controller</emphasis>, users of the cloud will need to retrieve their credentials.
552- This can be done either through a web browser, or at the command line.
553- </para>
554-
555- <sect3 id="uec-creds-browser" status="review">
556- <title>From a Web Browser</title>
557-
558- <procedure>
559- <step>
560- <para>
561- From your web browser (either remotely or on your Ubuntu server) access the following URL:
562- </para>
563-<programlisting>
564-https://&lt;cloud-controller-ip-address&gt;:8443/
565-</programlisting>
566-
567- <warning>
568- <para>
569- You must use a secure connection, so make sure you use "https" not "http" in your URL. You will get a security
570- certificate warning. You will have to add an exception to view the page. If you do not accept it you will not
571- be able to view the Eucalyptus configuration page.
572- </para>
573- </warning>
574- </step>
575- <step>
576- <para>
577- Use username <emphasis>'admin'</emphasis> and password <emphasis>'admin'</emphasis> for the first time login
578- (you will be prompted to change your password).
579- </para>
580- </step>
581- <step>
582- <para>
583- Then follow the on-screen instructions to update the admin password and email address.
584- </para>
585- </step>
586- <step>
587- <para>
588- Once the first time configuration process is completed, click the <emphasis>'credentials'</emphasis> tab
589- located in the top-left portion of the screen.
590- </para>
591- </step>
592- <step>
593- <para>
594- Click the <emphasis>'Download Credentials'</emphasis> button to get your certificates.
595- </para>
596- </step>
597- <step>
598- <para>
599- Save them to <filename>~/.euca</filename>.
600- </para>
601- </step>
602- <step>
603- <para>
604- Unzip the downloaded zip file into a safe location (<filename>~/.euca</filename>).
605- </para>
606-<screen>
607-<command>unzip -d ~/.euca mycreds.zip</command>
608-</screen>
609- </step>
610- </procedure>
611-
612- </sect3>
613- <sect3 id="uec-creds-cli" status="review">
614- <title>From a Command Line</title>
615-
616- <procedure>
617- <step>
618- <para>
619- Alternatively, if you are on the command line of the <emphasis>Cloud Controller</emphasis>, you can run:
620- </para>
621-<screen>
622-<command>mkdir -p ~/.euca</command>
623-<command>chmod 700 ~/.euca</command>
624-<command>cd ~/.euca</command>
625-<command>sudo euca_conf --get-credentials mycreds.zip</command>
626-<command>unzip mycreds.zip</command>
627-<command>ln -s ~/.euca/eucarc ~/.eucarc</command>
628-<command>cd -</command>
629-</screen>
630- </step>
631- </procedure>
632-
633- </sect3>
634- <sect3 id="uec-creds-usage" status="review">
635- <title>Extracting and Using Your Credentials</title>
636-
637- <para>
638- Now you will need to setup EC2 API and AMI tools on your server using X.509 certificates.
639- </para>
640-
641- <procedure>
642- <step>
643- <para>
644- Install the required cloud user tools:
645- </para>
646-<screen>
647-<command>sudo apt-get install euca2ools</command>
648-</screen>
649- </step>
650- <step>
651- <para>
652- To validate that everything is working correctly, get the local cluster availability details:
653- </para>
654-<screen>
655-<command>. ~/.euca/eucarc</command>
656-<command>euca-describe-availability-zones verbose</command>
657-<computeroutput>AVAILABILITYZONE myowncloud 192.168.1.1
658-AVAILABILITYZONE |- vm types free / max cpu ram disk
659-AVAILABILITYZONE |- m1.small 0004 / 0004 1 128 2
660-AVAILABILITYZONE |- c1.medium 0004 / 0004 1 256 5
661-AVAILABILITYZONE |- m1.large 0002 / 0002 2 512 10
662-AVAILABILITYZONE |- m1.xlarge 0002 / 0002 2 1024 20
663-AVAILABILITYZONE |- c1.xlarge 0001 / 0001 4 2048 20</computeroutput>
664-</screen>
665-
666- <note>
667- <para>
668- Your output from the above command will vary.
669- </para>
670- </note>
671- </step>
672- </procedure>
673-
674- </sect3>
675- </sect2>
676- <sect2 id="uec-image-installation" status="review">
677- <title>Install an Image from the Store</title>
678-
679- <para>
680- The following is by far the simplest way to install an image. However, advanced users may be interested in learning how to
681- <ulink url="https://help.ubuntu.com/community/UEC/BundlingImages">Bundle their own image</ulink>.
682- </para>
683-
684- <para>
685- The simplest way to add an image to <application>UEC</application> is to install it from the Image Store on the UEC web interface.
686- </para>
687-
688- <procedure>
689- <step>
690- <para>
691- Access the web interface at the following URL (Make sure you specify https):
692- </para>
693-<programlisting>
694-https://&lt;cloud-controller-ip-address&gt;:8443/
695-</programlisting>
696- </step>
697- <step>
698- <para>
699- Enter your login and password (if requested, as you may still be logged in from earlier).
700- </para>
701- </step>
702- <step>
703- <para>
704- Click on the <emphasis>Store</emphasis> tab.
705- </para>
706- </step>
707- <step>
708- <para>
709- Browse available images.
710- </para>
711- </step>
712- <step>
713- <para>
714- Click on <emphasis>install</emphasis> for the image you want.
715- </para>
716- </step>
717- </procedure>
718-
719- <para>
720- Once the image has been downloaded and installed, you can click on <emphasis>"How to run?"</emphasis> that will be displayed
721- below the image button to view the command to execute to instantiate (start) this image. The image will also appear on the
722- list given on the <emphasis>Image</emphasis> tab.
723- </para>
724-
725- </sect2>
726- <sect2 id="uec-image-running" status="review">
727- <title>Run an Image</title>
728-
729- <para>
730- There are multiple ways to instantiate an image in UEC:
731- </para>
732-
733- <itemizedlist>
734- <listitem><para>Use the command line.</para></listitem>
735- <listitem><para>Use one of the UEC compatible management tools such as <emphasis>Landscape</emphasis>.</para></listitem>
736- <listitem>
737- <para>
738- Use the <ulink url="https://help.ubuntu.com/community/UEC/ElasticFox">ElasticFox</ulink> extension to Firefox.
739- </para>
740- </listitem>
741- </itemizedlist>
742-
743- <para>
744- Here we will describe the process from the command line:
745- </para>
746-
747- <procedure>
748- <step>
749- <para>
750- Before running an instance of your image, you should first create a <emphasis>keypair</emphasis> (ssh key) that you can
751- use to log into your instance as root, once it boots. The key is stored, so you will only have to do this once.
752- </para>
753- <para>
754- Run the following command:
755- </para>
756-<programlisting>
757-if [ ! -e ~/.euca/mykey.priv ]; then
758- mkdir -p -m 700 ~/.euca
759- touch ~/.euca/mykey.priv
760- chmod 0600 ~/.euca/mykey.priv
761- euca-add-keypair mykey > ~/.euca/mykey.priv
762-fi
763-</programlisting>
764- <note>
765- <para>
766- You can call your key whatever you like (in this example, the key is called <emphasis>'mykey'</emphasis>), but remember what it is called.
767- If you forget, you can always run <command>euca-describe-keypairs</command> to get a list of created keys stored in the system.
768- </para>
769- </note>
770- </step>
771- <step>
772- <para>
773- You must also allow access to port 22 in your instances:
774- </para>
775-<screen>
776-<command>euca-authorize default -P tcp -p 22 -s 0.0.0.0/0</command>
777-</screen>
778- </step>
779- <step>
780- <para>
781- Next, you can create instances of your registered image:
782- </para>
783-<screen>
784-<command>euca-run-instances $EMI -k mykey -t m1.small</command>
785-</screen>
786- <note>
787- <para>
788- If you receive an error regarding <emphasis>image_id</emphasis>, you may find it by viewing Images page or click
789- <emphasis>"How to Run"</emphasis> on the <emphasis>Store</emphasis> page to see the sample command.
790- </para>
791- </note>
792- </step>
793- <step>
794- <para>
795- The first time you run an instance, the system will be setting up caches for the image from which it will be created.
796- This can often take some time the first time an instance is run given that VM images are usually quite large.
797- </para>
798- <para>
799- To monitor the state of your instance, run:
800- </para>
801-<screen>
802-<command>watch -n5 euca-describe-instances</command>
803-</screen>
804- <para>
805- In the output, you should see information about the instance, including its state. While first-time caching is being performed,
806- the instance's state will be <emphasis>'pending'</emphasis>.
807- </para>
808- </step>
809- <step>
810- <para>
811- When the instance is fully started, the above state will become <emphasis>'running'</emphasis>. Look at the IP address assigned
812- to your instance in the output, then connect to it:
813- </para>
814-<screen>
815-<command>IPADDR=$(euca-describe-instances | grep $EMI | grep running | \
816-tail -n1 | awk '{print $4}')</command>
817-<command>ssh -i ~/.euca/mykey.priv ubuntu@$IPADDR</command>
818-</screen>
819- </step>
820- <step>
821- <para>
822- And when you are done with this instance, exit your SSH connection, then terminate your instance:
823- </para>
824-<screen>
825-<command>INSTANCEID=$(euca-describe-instances | grep $EMI | grep running | \
826-tail -n1 | awk '{print $2}')</command>
827-<command>euca-terminate-instances $INSTANCEID</command>
828-</screen>
829- </step>
830- </procedure>
831-
832- <sect3 id="uec-first-boot" status="review">
833- <title>First Boot</title>
834-
835- <para>
836- The <application>cloud-init</application> package provides "first boot" functionality for the Ubuntu UEC images.
837- It is in charge of taking the generic filesystem image that is booting and customizing it for this particular instance.
838- That includes things like:
839- </para>
840-
841- <itemizedlist>
842- <listitem>
843- <para>
844- Setting the hostname.
845- </para>
846- </listitem>
847- <listitem>
848- <para>
849- Putting the provided ssh public keys into <filename>~ubuntu/.ssh/authorized_keys</filename>.
850- </para>
851- </listitem>
852- <listitem>
853- <para>
854- Running a user provided script, or otherwise modifying the image.
855- </para>
856- </listitem>
857- </itemizedlist>
858-
859- <para>
860- Setting hostname and configuring a system so the person who launched it can actually log into it are not terribly interesting.
861- The interesting things that can be done with <application>cloud-init</application> are made possible by data provided at launch
862- time called <ulink url="http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1085">user-data</ulink>.
863- </para>
864-
865- <para>
866- First, install the <application>cloud-init</application> package:
867- </para>
868-
869-<screen>
870-<command>sudo apt-get install cloud-init</command>
871-</screen>
872-
873- <para>
874- If the user-data starts with <emphasis>'#!'</emphasis>, then it will be stored and executed as root late in the boot process of the
875- instance's first boot (similar to a traditional 'rc.local' script). Output from the script is directed to the console.
876- </para>
877-
878- <para>
879- For example, create a file named <filename>ud.txt</filename> containing:
880- </para>
881-
882-<programlisting>
883-#!/bin/sh
884-echo ========== Hello World: $(date) ==========
885-echo "I have been up for $(cut -d\ -f 1 &lt; /proc/uptime) sec"
886-</programlisting>
887-
888- <para>
889- Now start an instance with the <emphasis>--user-data-file</emphasis> option:
890- </para>
891-
892-<screen>
893-<command>euca-run-instances $EMI -k mykey -t m1.small --user-data-file=ud.txt</command>
894-</screen>
895-
896- <para>
897- Wait now for the system to come up and console to be available. To see the result of the data file commands enter:
898- </para>
899-
900-<screen>
901-<command>euca-get-console-output $EMI | grep --after-context=1 Hello</command>
902-<computeroutput>========== Hello World: Mon Mar 29 18:05:05 UTC 2010 ==========
903-I have been up for 28.26 sec</computeroutput>
904-</screen>
905-
906- <note>
907- <para>
908- Your output may vary.
909- </para>
910- </note>
911-
912- <para>
913- The simple approach shown above gives a great deal of power. The user-data can contain a script in any language where an interpreter already exists
914- in the image (#!/bin/sh, #!/usr/bin/python, #!/usr/bin/perl, #!/usr/bin/awk ... ).
915- </para>
916-
917- <para>
918- For many cases, the user may not be interested in writing a program. For this case, cloud-init provides <emphasis>"cloud-config"</emphasis>, a configuration based approach
919- towards customization. To utilize the cloud-config syntax, the supplied user-data must start with a <emphasis>'#cloud-config'</emphasis>.
920- </para>
921-
922- <para>
923- For example, create a text file named <filename>cloud-config.txt</filename> containing:
924- </para>
925-
926-<programlisting>
927-#cloud-config
928-apt_upgrade: true
929-apt_sources:
930-- source: "ppa:ubuntu-server-edgers/server-edgers-apache "
931-
932-packages:
933-- build-essential
934-- pastebinit
935-
936-runcmd:
937-- echo ======= Hello World =====
938-- echo "I have been up for $(cut -d\ -f 1 &lt; /proc/uptime) sec"
939-</programlisting>
940-
941- <para>
942- Create a new instance:
943- </para>
944-
945-<screen>
946-<command>euca-run-instances $EMI -k mykey -t m1.small --user-data-file=cloud-config.txt</command>
947-</screen>
948-
949- <para>
950- Now, when the above system is booted, it will have:
951- </para>
952-
953- <itemizedlist>
954- <listitem><para>Added the Apache Edgers PPA.</para></listitem>
955- <listitem><para>Run an upgrade to get all updates available</para></listitem>
956- <listitem><para>Installed the 'build-essential' and 'pastebinit' packages</para></listitem>
957- <listitem><para>Printed a similar message to the script above</para></listitem>
958- </itemizedlist>
959-
960- <warning>
961- <para>
962- The <emphasis>Apache Edgers PPA</emphasis>, in the above example, contains the latest version of Apache from upstream source repositories.
963- Package versions in the PPA are unsupported, and depending on your situation, this may or may not be desirable. See the
964- <ulink url="https://launchpad.net/~ubuntu-server-edgers">Ubuntu Server Edgers</ulink> web page for more details.
965- </para>
966- </warning>
967-
968- <para>
969- The <emphasis>'runcmd'</emphasis> commands are run at the same point in boot that the <emphasis>'#!'</emphasis> script would run in the previous example.
970- It is present to allow you to get the full power of a scripting language if you need it without abandoning <emphasis>cloud-config</emphasis>.
971- </para>
972-
973- <para>
974- For more information on what kinds of things can be done with <application>cloud-config</application>, see
975- <ulink url="http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/files/head:/doc/examples/">doc/examples</ulink> in the source.
976- </para>
977-
978- </sect3>
979-
980- </sect2>
981- <sect2 id="uec-more-info" status="review">
982- <title>More Information</title>
983-
984- <para>
985- How to use the <ulink url="https://help.ubuntu.com/community/UEC/StorageController">Storage Controller</ulink>
986- </para>
987-
988- <para>
989- Controlling eucalyptus services:
990- </para>
991-
992- <itemizedlist>
993- <listitem><para>sudo service eucalyptus [start|stop|restart] (on the CLC/CC/SC/Walrus side)</para></listitem>
994- <listitem><para>sudo service eucalyptus-nc [start|stop|restart] (on the Node side)</para></listitem>
995- </itemizedlist>
996-
997- <para>
998- Locations of some important files:
999- </para>
1000-
1001- <itemizedlist>
1002- <listitem>
1003- <para>
1004- <emphasis>Log files:</emphasis>
1005- </para>
1006- <itemizedlist>
1007- <listitem><para>/var/log/eucalyptus</para></listitem>
1008- </itemizedlist>
1009- </listitem>
1010- <listitem>
1011- <para>
1012- <emphasis>Configuration files:</emphasis>
1013- </para>
1014- <itemizedlist>
1015- <listitem><para>/etc/eucalyptus</para></listitem>
1016- </itemizedlist>
1017- </listitem>
1018- <listitem>
1019- <para>
1020- <emphasis>Database:</emphasis>
1021- </para>
1022- <itemizedlist>
1023- <listitem><para>/var/lib/eucalyptus/db</para></listitem>
1024- </itemizedlist>
1025- </listitem>
1026- <listitem>
1027- <para>
1028- <emphasis>Keys:</emphasis>
1029- </para>
1030- <itemizedlist>
1031- <listitem><para>/var/lib/eucalyptus</para></listitem>
1032- <listitem><para>/var/lib/eucalyptus/.ssh</para></listitem>
1033- </itemizedlist>
1034- </listitem>
1035- </itemizedlist>
1036-
1037- <note>
1038- <para>
1039- Don't forget to source your <filename>~/.euca/eucarc</filename> before running the client tools.
1040- </para>
1041- </note>
1042-
1043- </sect2>
1044- <sect2 id="uec-references" status="review">
1045- <title>References</title>
1046-
1047- <itemizedlist>
1048- <listitem>
1049- <para>
1050- For information on loading instances see the <ulink url="https://help.ubuntu.com/community/Eucalyptus">Eucalyptus Wiki</ulink> page.
1051- </para>
1052- </listitem>
1053- <listitem>
1054- <para>
1055- <ulink url="http://open.eucalyptus.com/">Eucalyptus Project Site (forums, documentation, downloads)</ulink>.
1056- </para>
1057- </listitem>
1058- <listitem>
1059- <para>
1060- <ulink url="https://launchpad.net/eucalyptus/">Eucalyptus on Launchpad (bugs, code)</ulink>.
1061- </para>
1062- </listitem>
1063- <listitem>
1064- <para>
1065- <ulink url="http://open.eucalyptus.com/wiki/EucalyptusTroubleshooting_v1.5">Eucalyptus Troubleshooting (1.5)</ulink>.
1066- </para>
1067- </listitem>
1068- <listitem>
1069- <para>
1070- <ulink url="http://support.rightscale.com/2._References/02-Cloud_Infrastructures/Eucalyptus/03-Administration_Guide/Register_with_RightScale">
1071- Register your cloud with RightScale</ulink>.
1072- </para>
1073- </listitem>
1074- <listitem>
1075- <para>
1076- You can also find help in the <emphasis>#ubuntu-virt</emphasis>, <emphasis>#eucalyptus</emphasis>, and
1077- <emphasis>#ubuntu-server</emphasis> IRC channels on <ulink url="http://freenode.net">Freenode</ulink>.
1078- </para>
1079- </listitem>
1080- </itemizedlist>
1081- </sect2>
1082- </sect1>
1083-
1084 <sect1 id='ubuntucloud' status='review'>
1085 <title>Ubuntu Cloud</title>
1086 <para>
1087@@ -2131,7 +1106,7 @@
1088 <sect2 id="ubuntu-cloud-overview" status="review">
1089 <title>Overview</title>
1090 <para>
1091-This tutorial covers the OpenStack installation from the Ubuntu 12.04 LTS Server Edition CD, and assumes a
1092+This tutorial covers the OpenStack installation from the Ubuntu 12.10 Server Edition CD, and assumes a
1093 basic network topology, with a single system serving as the "all-in-one cloud infrastructure".Due to the tutorial's simplicity,
1094 the instructions as-is are not intended to set up production servers although it allows you to have a POC
1095 (proof of concept) of the Ubuntu Cloud using OpenStack.

Subscribers

People subscribed via source and target branches