# # Translators: msgid "" msgstr "" "Project-Id-Version: OpenStack Manuals\n" "POT-Creation-Date: 2014-04-20 05:49+0000\n" "PO-Revision-Date: 2014-04-20 01:17+0000\n" "Last-Translator: openstackjenkins \n" "Language-Team: Bosnian (http://www.transifex.com/projects/p/openstack/language/bs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: bs\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ./doc/training-guides/module002-ch005-floating-ips.xml7(title) msgid "Floating IP Addresses And Security Rules" msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml8(para) msgid "" "OpenStack Networking has the concept of Fixed IPs and Floating IPs. Fixed " "IPs are assigned to an instance on creation and stay the same until the " "instance is explicitly terminated. Floating ips are ip addresses that can be" " dynamically associated with an instance. This address can be disassociated " "and associated with another instance at any time." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml15(para) msgid "Various tasks carried out by Floating IP's as of now." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml19(para) msgid "create IP ranges under a certain group, only available for admin role." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml23(para) msgid "" "allocate an floating IP to a certain tenant, only available for admin role." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml27(para) msgid "deallocate an floating IP from a certain tenant" msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml31(para) msgid "associate an floating IP to a given instance" msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml35(para) msgid "disassociate an floating IP from a certain instance" msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml39(para) msgid "" "Just as shown by the above figure, we will have nova-network-api to support " "nova client floating commands. nova-network-api will invoke neutron cli lib " "to interactive with neutron server via API. The data about floating IPs will" " be stored in to neutron DB. Neutron Agent, which is running on compute host" " will enforce the floating IP." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml46(guilabel) msgid "Multiple Floating IP Pools" msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml48(para) msgid "" "The L3 API in OpenStack Networking supports multiple floating IP pools. In " "OpenStack Networking, a floating IP pool is represented as an external " "network and a floating IP is allocated from a subnet associated with the " "external network. Since each L3 agent can be associated with at most one " "external network, we need to invoke multiple L3 agent to define multiple " "floating IP pools. 'gateway_external_network_id'in L3 agent configuration " "file indicates the external network that the L3 agent handles. You can run " "multiple L3 agent instances on one host." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml59(para) msgid "" "In addition, when you run multiple L3 agents, make sure that " "handle_internal_only_routers is set to Trueonly for one L3 agent in an " "OpenStack Networking deployment and set to Falsefor all other L3 agents. " "Since the default value of this parameter is True, you need to configure it " "carefully." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml65(para) msgid "" "Before starting L3 agents, you need to create routers and external networks," " then update the configuration files with UUID of external networks and " "start L3 agents." msgstr "" #: ./doc/training-guides/module002-ch005-floating-ips.xml69(para) msgid "" "For the first agent, invoke it with the following l3_agent.ini where " "handle_internal_only_routers is True." msgstr "" #: ./doc/training-guides/bk002-ch009-operator-compute-node-quiz.xml6(title) #: ./doc/training-guides/bk001-ch006-associate-compute-node-quiz.xml6(title) msgid "Compute Node Quiz" msgstr "" #: ./doc/training-guides/bk002-ch009-operator-compute-node-quiz.xml8(title) msgid "Days 5 to 6, 16:40 to 17:00" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml25(None) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml32(None) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml39(None) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml46(None) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml53(None) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml15(None) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml22(None) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml29(None) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml36(None) #: ./doc/training-guides/card074-horizon-snapshots.xml12(None) #: ./doc/training-guides/card071-create-cinder-horizon.xml11(None) #: ./doc/training-guides/card071-create-cinder-horizon.xml15(None) #: ./doc/training-guides/card071-create-cinder-horizon.xml19(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml17(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml24(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml31(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml40(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml47(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml54(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml61(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml68(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml75(None) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml82(None) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml17(None) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml24(None) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml35(None) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml42(None) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml49(None) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml17(None) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml24(None) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml33(None) #: ./doc/training-guides/card072-cinder-attach-volume.xml11(None) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml17(None) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml24(None) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml31(None) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml15(None) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml22(None) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml29(None) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml36(None) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml43(None) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml17(None) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml24(None) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml31(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml17(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml24(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml35(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml42(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml49(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml55(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml62(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml69(None) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml76(None) #: ./doc/training-guides/bk002-ch011-operator-network-node-lab.xml15(None) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml25(None) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml32(None) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml39(None) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml46(None) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml53(None) #: ./doc/training-guides/card008.xml11(None) #: ./doc/training-guides/bk000-preface.xml133(None) #: ./doc/training-guides/bk000-preface.xml140(None) #: ./doc/training-guides/bk000-preface.xml147(None) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml27(None) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml34(None) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml41(None) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml48(None) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml55(None) #: ./doc/training-guides/card073-control-state-instance.xml12(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml17(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml24(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml31(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml40(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml47(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml54(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml61(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml68(None) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml75(None) #: ./doc/training-guides/bk002-ch005-operator-controller-node-lab.xml15(None) #: ./doc/training-guides/card128-swift.xml11(None) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml15(None) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml22(None) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml29(None) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml36(None) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml43(None) #: ./doc/training-guides/bk002-ch008-operator-compute-node-lab.xml15(None) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml17(None) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml24(None) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml33(None) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml40(None) #: ./doc/training-guides/card070-create-floating-ips.xml11(None) #: ./doc/training-guides/card070-create-floating-ips.xml16(None) #: ./doc/training-guides/card070-create-floating-ips.xml21(None) msgid "" "@@image: 'figures/openstack-training-remote-content-not-available.png'; " "md5=f2583b37e01220460a55b8c255c987c3" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml6(title) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml6(title) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml6(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml12(guilabel) msgid "Getting Started" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml8(title) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml8(title) msgid "Day 1, 09:00 to 11:00, 11:15 to 12:30" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml12(title) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml33(guilabel) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml121(emphasis) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml869(guilabel) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml12(title) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml12(title) #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml12(title) msgid "Overview" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml13(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml13(para) msgid "" "Training would take 2.5 months self paced, (5) 2 week periods with a user " "group meeting, or 40 hours instructor led with 40 hours of self paced lab " "time." msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml15(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml15(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml15(para) #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml14(para) msgid "Prerequisites" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml17(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml17(para) msgid "Associate guide training" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml18(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml18(para) msgid "Associate guide virtualbox scripted install completed and running" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml22(title) msgid "Review Operator Introduction" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml25(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml32(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml39(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml46(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml53(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml15(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml22(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml29(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml36(para) #: ./doc/training-guides/card074-horizon-snapshots.xml12(para) #: ./doc/training-guides/card071-create-cinder-horizon.xml11(para) #: ./doc/training-guides/card071-create-cinder-horizon.xml15(para) #: ./doc/training-guides/card071-create-cinder-horizon.xml19(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml17(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml24(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml31(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml40(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml47(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml54(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml61(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml68(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml75(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml82(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml17(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml24(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml35(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml42(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml49(para) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml17(para) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml24(para) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml33(para) #: ./doc/training-guides/card072-cinder-attach-volume.xml11(para) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml17(para) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml24(para) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml31(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml15(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml22(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml29(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml36(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml43(para) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml17(para) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml24(para) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml31(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml17(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml24(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml35(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml42(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml49(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml55(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml62(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml69(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml76(para) #: ./doc/training-guides/bk002-ch011-operator-network-node-lab.xml15(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml25(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml32(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml39(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml46(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml53(para) #: ./doc/training-guides/card008.xml11(para) #: ./doc/training-guides/bk000-preface.xml133(para) #: ./doc/training-guides/bk000-preface.xml140(para) #: ./doc/training-guides/bk000-preface.xml147(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml27(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml34(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml41(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml48(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml55(para) #: ./doc/training-guides/card073-control-state-instance.xml12(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml17(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml24(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml31(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml40(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml47(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml54(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml61(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml68(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml75(para) #: ./doc/training-guides/bk002-ch005-operator-controller-node-lab.xml15(para) #: ./doc/training-guides/card128-swift.xml11(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml15(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml22(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml29(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml36(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml43(para) #: ./doc/training-guides/bk002-ch008-operator-compute-node-lab.xml15(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml17(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml24(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml33(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml40(para) #: ./doc/training-guides/card070-create-floating-ips.xml11(para) #: ./doc/training-guides/card070-create-floating-ips.xml16(para) #: ./doc/training-guides/card070-create-floating-ips.xml21(para) msgid "Remote content not available" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml25(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml32(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml39(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml46(para) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml53(para) #: ./doc/training-guides/user-story-includes-template.xml22(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml15(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml22(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml29(para) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml36(para) #: ./doc/training-guides/card074-horizon-snapshots.xml12(para) #: ./doc/training-guides/card071-create-cinder-horizon.xml11(para) #: ./doc/training-guides/card071-create-cinder-horizon.xml15(para) #: ./doc/training-guides/card071-create-cinder-horizon.xml19(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml17(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml24(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml31(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml40(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml47(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml54(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml61(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml68(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml75(para) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml82(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml17(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml24(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml35(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml42(para) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml49(para) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml17(para) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml24(para) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml33(para) #: ./doc/training-guides/card072-cinder-attach-volume.xml11(para) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml17(para) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml24(para) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml31(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml15(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml22(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml29(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml36(para) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml43(para) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml17(para) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml24(para) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml31(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml17(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml24(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml35(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml42(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml49(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml55(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml62(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml69(para) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml76(para) #: ./doc/training-guides/bk002-ch011-operator-network-node-lab.xml15(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml25(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml32(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml39(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml46(para) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml53(para) #: ./doc/training-guides/card008.xml11(para) #: ./doc/training-guides/bk000-preface.xml133(para) #: ./doc/training-guides/bk000-preface.xml140(para) #: ./doc/training-guides/bk000-preface.xml147(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml27(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml34(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml41(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml48(para) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml55(para) #: ./doc/training-guides/card073-control-state-instance.xml12(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml17(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml24(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml31(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml40(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml47(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml54(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml61(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml68(para) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml75(para) #: ./doc/training-guides/bk002-ch005-operator-controller-node-lab.xml15(para) #: ./doc/training-guides/card128-swift.xml11(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml15(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml22(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml29(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml36(para) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml43(para) #: ./doc/training-guides/bk002-ch008-operator-compute-node-lab.xml15(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml17(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml24(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml33(para) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml40(para) #: ./doc/training-guides/card070-create-floating-ips.xml11(para) #: ./doc/training-guides/card070-create-floating-ips.xml16(para) #: ./doc/training-guides/card070-create-floating-ips.xml21(para) msgid "image source" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml25(link) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml32(link) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml39(link) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml46(link) #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml53(link) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml15(link) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml22(link) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml29(link) #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml36(link) #: ./doc/training-guides/card074-horizon-snapshots.xml12(link) #: ./doc/training-guides/card071-create-cinder-horizon.xml11(link) #: ./doc/training-guides/card071-create-cinder-horizon.xml15(link) #: ./doc/training-guides/card071-create-cinder-horizon.xml19(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml17(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml24(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml31(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml40(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml47(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml54(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml61(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml68(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml75(link) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml82(link) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml17(link) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml24(link) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml35(link) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml42(link) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml49(link) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml17(link) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml24(link) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml33(link) #: ./doc/training-guides/card072-cinder-attach-volume.xml11(link) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml17(link) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml24(link) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml31(link) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml15(link) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml22(link) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml29(link) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml36(link) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml43(link) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml17(link) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml24(link) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml31(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml17(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml24(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml35(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml42(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml49(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml55(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml62(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml69(link) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml76(link) #: ./doc/training-guides/bk002-ch011-operator-network-node-lab.xml15(link) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml25(link) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml32(link) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml39(link) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml46(link) #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml53(link) #: ./doc/training-guides/card008.xml11(link) #: ./doc/training-guides/bk000-preface.xml133(link) #: ./doc/training-guides/bk000-preface.xml140(link) #: ./doc/training-guides/bk000-preface.xml147(link) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml27(link) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml34(link) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml41(link) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml48(link) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml55(link) #: ./doc/training-guides/card073-control-state-instance.xml12(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml17(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml24(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml31(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml40(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml47(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml54(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml61(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml68(link) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml75(link) #: ./doc/training-guides/bk002-ch005-operator-controller-node-lab.xml15(link) #: ./doc/training-guides/card128-swift.xml11(link) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml15(link) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml22(link) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml29(link) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml36(link) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml43(link) #: ./doc/training-guides/bk002-ch008-operator-compute-node-lab.xml15(link) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml17(link) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml24(link) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml33(link) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml40(link) #: ./doc/training-guides/card070-create-floating-ips.xml11(link) #: ./doc/training-guides/card070-create-floating-ips.xml16(link) #: ./doc/training-guides/card070-create-floating-ips.xml21(link) msgid "" "https://docs.google.com/drawings/d/1J2LZSxmc06xKyxMgPjv5fC0blV7qK6956-AeTmFOZD4/edit?usp=sharing" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml29(title) msgid "Review Operator Brief Overview" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml36(title) msgid "Review Operator Core Projects" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml43(title) msgid "Review Operator OpenStack Architecture" msgstr "" #: ./doc/training-guides/bk003-ch001-developer-getting-started.xml50(title) msgid "Review Operator Virtual Machine Provisioning Walk-Through" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml11(title) msgid "A Bit More On Swift" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml12(guilabel) msgid "Containers and Objects" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml13(para) msgid "" "A container is a storage compartment for your data and provides a way for " "you to organize your data. You can think of a container as a folder in " "Windows or a directory in UNIX. The primary difference between a container " "and these other file system concepts is that containers cannot be nested. " "You can, however, create an unlimited number of containers within your " "account. Data must be stored in a container so you must have at least one " "container defined in your account prior to uploading data." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml23(para) msgid "" "The only restrictions on container names is that they cannot contain a " "forward slash (/) or an ascii null (%00) and must be less than 257 bytes in " "length. Please note that the length restriction applies to the name after it" " has been URL encoded. For example, a container name of Course Docs would be" " URL encoded as Course%20Docs and therefore be 13 bytes in length rather " "than the expected 11." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml31(para) msgid "" "An object is the basic storage entity and any optional metadata that " "represents the files you store in the OpenStack Object Storage system. When " "you upload data to OpenStack Object Storage, the data is stored as-is (no " "compression or encryption) and consists of a location (container), the " "object's name, and any metadata consisting of key/value pairs. For instance," " you may chose to store a backup of your digital photos and organize them " "into albums. In this case, each object could be tagged with metadata such as" " Album : Caribbean Cruise or Album : Aspen Ski Trip." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml42(para) msgid "" "The only restriction on object names is that they must be less than 1024 " "bytes in length after URL encoding. For example, an object name of " "C++final(v2).txt should be URL encoded as C%2B%2Bfinal%28v2%29.txt and " "therefore be 24 bytes in length rather than the expected 16." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml47(para) msgid "" "The maximum allowable size for a storage object upon upload is 5 GB and the " "minimum is zero bytes. You can use the built-in large object support and the" " swift utility to retrieve objects larger than 5 GB." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml51(para) msgid "" "For metadata, you should not exceed 90 individual key/value pairs for any " "one object and the total byte length of all key/value pairs should not " "exceed 4 KB (4096 bytes)." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml55(guilabel) msgid "Language-Specific API Bindings" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml57(para) msgid "" "A set of supported API bindings in several popular languages are available " "from the Rackspace Cloud Files product, which uses OpenStack Object Storage " "code for its implementation. These bindings provide a layer of abstraction " "on top of the base REST API, allowing programmers to work with a container " "and object model instead of working directly with HTTP requests and " "responses. These bindings are free (as in beer and as in speech) to " "download, use, and modify. They are all licensed under the MIT License as " "described in the COPYING file packaged with each binding. If you do make any" " improvements to an API, you are encouraged (but not required) to submit " "those changes back to us." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml70(para) msgid "" "The API bindings for Rackspace Cloud Files are hosted athttp://github.com/rackspace. " "Feel free to coordinate your changes through github or, if you prefer, send " "your changes to cloudfiles@rackspacecloud.com. Just make sure to indicate " "which language and version you modified and send a unified diff." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml79(para) msgid "" "Each binding includes its own documentation (either HTML, PDF, or CHM). They" " also include code snippets and examples to help you get started. The " "currently supported API binding for OpenStack Object Storage are:" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml85(para) msgid "PHP (requires 5.x and the modules: cURL, FileInfo, mbstring)" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml89(para) msgid "Python (requires 2.4 or newer)" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml92(para) msgid "Java (requires JRE v1.5 or newer)" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml95(para) msgid "C#/.NET (requires .NET Framework v3.5)" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml98(para) msgid "Ruby (requires 1.8 or newer and mime-tools module)" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml102(para) msgid "" "There are no other supported language-specific bindings at this time. You " "are welcome to create your own language API bindings and we can help answer " "any questions during development, host your code if you like, and give you " "full credit for your work." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml107(guilabel) msgid "Proxy Server" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml108(para) msgid "" "The Proxy Server is responsible for tying together the rest of the OpenStack" " Object Storage architecture. For each request, it will look up the location" " of the account, container, or object in the ring (see below) and route the " "request accordingly. The public API is also exposed through the Proxy " "Server." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml114(para) msgid "" "A large number of failures are also handled in the Proxy Server. For " "example, if a server is unavailable for an object PUT, it will ask the ring " "for a hand-off server and route there instead." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml118(para) msgid "" "When objects are streamed to or from an object server, they are streamed " "directly through the proxy server to or from the user – the proxy server " "does not spool them." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml122(para) msgid "" "You can use a proxy server with account management enabled by configuring it" " in the proxy server configuration file." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml125(guilabel) msgid "Object Server" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml126(para) msgid "" "The Object Server is a very simple blob storage server that can store, " "retrieve and delete objects stored on local devices. Objects are stored as " "binary files on the filesystem with metadata stored in the file’s extended " "attributes (xattrs). This requires that the underlying filesystem choice for" " object servers support xattrs on files. Some filesystems, like ext3, have " "xattrs turned off by default." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml134(para) msgid "" "Each object is stored using a path derived from the object name’s hash and " "the operation’s timestamp. Last write always wins, and ensures that the " "latest object version will be served. A deletion is also treated as a " "version of the file (a 0 byte file ending with “.ts”, which stands for " "tombstone). This ensures that deleted files are replicated correctly and " "older versions don’t magically reappear due to failure scenarios." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml143(guilabel) msgid "Container Server" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml144(para) msgid "" "The Container Server’s primary job is to handle listings of objects. It does" " not know where those objects are, just what objects are in a specific " "container. The listings are stored as SQLite database files, and replicated " "across the cluster similar to how objects are. Statistics are also tracked " "that include the total number of objects, and total storage usage for that " "container." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml152(guilabel) msgid "Account Server" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml153(para) msgid "" "The Account Server is very similar to the Container Server, excepting that " "it is responsible for listings of containers rather than objects." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml156(guilabel) #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml225(guilabel) #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml249(title) #: ./doc/training-guides/module003-ch009-replication.xml7(title) msgid "Replication" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml157(para) msgid "" "Replication is designed to keep the system in a consistent state in the face" " of temporary error conditions like network outages or drive failures." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml161(para) msgid "" "The replication processes compare local data with each remote copy to ensure" " they all contain the latest version. Object replication uses a hash list to" " quickly compare subsections of each partition, and container and account " "replication use a combination of hashes and shared high water marks." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml167(para) msgid "" "Replication updates are push based. For object replication, updating is just" " a matter of rsyncing files to the peer. Account and container replication " "push missing records over HTTP or rsync whole database files." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml172(para) msgid "" "The replicator also ensures that data is removed from the system. When an " "item (object, container, or account) is deleted, a tombstone is set as the " "latest version of the item. The replicator will see the tombstone and ensure" " that the item is removed from the entire system." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml178(para) msgid "" "To separate the cluster-internal replication traffic from client traffic, " "separate replication servers can be used. These replication servers are " "based on the standard storage servers, but they listen on the replication IP" " and only respond to REPLICATE requests. Storage servers can serve REPLICATE" " requests, so an operator can transition to using a separate replication " "network with no cluster downtime." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml186(para) msgid "" "Replication IP and port information is stored in the ring on a per-node " "basis. These parameters will be used if they are present, but they are not " "required. If this information does not exist or is empty for a particular " "node, the node's standard IP and port will be used for replication." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml192(guilabel) msgid "Updaters" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml193(para) msgid "" "There are times when container or account data can not be immediately " "updated. This usually occurs during failure scenarios or periods of high " "load. If an update fails, the update is queued locally on the file system, " "and the updater will process the failed updates. This is where an eventual " "consistency window will most likely come in to play. For example, suppose a " "container server is under load and a new object is put in to the system. The" " object will be immediately available for reads as soon as the proxy server " "responds to the client with success. However, the container server did not " "update the object listing, and so the update would be queued for a later " "update. Container listings, therefore, may not immediately contain the " "object." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml208(para) msgid "" "In practice, the consistency window is only as large as the frequency at " "which the updater runs and may not even be noticed as the proxy server will " "route listing requests to the first container server which responds. The " "server under load may not be the one that serves subsequent listing requests" " – one of the other two replicas may handle the listing." msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml215(guilabel) msgid "Auditors" msgstr "" #: ./doc/training-guides/module003-ch006-more-concepts.xml216(para) msgid "" "Auditors crawl the local server checking the integrity of the objects, " "containers, and accounts. If corruption is found (in the case of bit rot, " "for example), the file is quarantined, and replication will replace the bad " "file from another replica. If other errors are found they are logged. For " "example, an object’s listing cannot be found on any container server it " "should be." msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml17(None) msgid "@@image: 'figures/image47.png'; md5=90f6c7cf3947d7987eeb55d657cdc927" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml61(None) msgid "@@image: 'figures/image48.png'; md5=2aa7eb3bddcf6826f33469920dc2a9c3" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml11(title) msgid "Cluster architecture" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml12(guilabel) msgid "Access Tier" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml14(title) msgid "Object Storage cluster architecture" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml21(para) msgid "" "Large-scale deployments segment off an \"Access Tier\". This tier is the " "“Grand Central” of the Object Storage system. It fields incoming API " "requests from clients and moves data in and out of the system. This tier is " "composed of front-end load balancers, ssl- terminators, authentication " "services, and it runs the (distributed) brain of the Object Storage system —" " the proxy server processes." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml29(para) msgid "" "Having the access servers in their own tier enables read/write access to be " "scaled out independently of storage capacity. For example, if the cluster is" " on the public Internet and requires SSL-termination and has high demand for" " data access, many access servers can be provisioned. However, if the " "cluster is on a private network and it is being used primarily for archival " "purposes, fewer access servers are needed." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml37(para) msgid "" "A load balancer can be incorporated into the access tier, because this is an" " HTTP addressable storage service." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml39(para) msgid "" "Typically, this tier comprises a collection of 1U servers. These machines " "use a moderate amount of RAM and are network I/O intensive. It is wise to " "provision them with two high-throughput (10GbE) interfaces, because these " "systems field each incoming API request. One interface is used for 'front-" "end' incoming requests and the other for 'back-end' access to the Object " "Storage nodes to put and fetch data." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml47(guilabel) msgid "Factors to consider" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml48(para) msgid "" "For most publicly facing deployments as well as private deployments " "available across a wide-reaching corporate network, SSL is used to encrypt " "traffic to the client. SSL adds significant processing load to establish " "sessions between clients; it adds more capacity to the access layer that " "will need to be provisioned. SSL may not be required for private deployments" " on trusted networks." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml56(guilabel) msgid "Storage Nodes" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml58(title) msgid "Object Storage (Swift)" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml65(para) msgid "" "The next component is the storage servers themselves. Generally, most " "configurations should provide each of the five Zones with an equal amount of" " storage capacity. Storage nodes use a reasonable amount of memory and CPU. " "Metadata needs to be readily available to quickly return objects. The object" " stores run services not only to field incoming requests from the Access " "Tier, but to also run replicators, auditors, and reapers. Object stores can " "be provisioned with a single gigabit or a 10-gigabit network interface " "depending on expected workload and desired performance." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml76(para) msgid "" "Currently, a 2 TB or 3 TB SATA disk delivers good performance for the price." " Desktop-grade drives can be used where there are responsive remote hands in" " the datacenter, and enterprise-grade drives can be used where this is not " "the case." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml81(guilabel) msgid "Factors to Consider" msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml82(para) msgid "" "Desired I/O performance for single-threaded requests should be kept in mind." " This system does not use RAID, so each request for an object is handled by " "a single disk. Disk performance impacts single-threaded response rates." msgstr "" #: ./doc/training-guides/module003-ch007-swift-cluster-architecture.xml87(para) msgid "" "To achieve apparent higher throughput, the object storage system is designed" " with concurrent uploads/downloads in mind. The network I/O capacity (1GbE, " "bonded 1GbE pair, or 10GbE) should match your desired concurrent throughput " "needs for reads and writes." msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml231(None) msgid "@@image: 'figures/image33.png'; md5=e9843f38c9b2555e709357a724fc710d" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml7(title) #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml8(guilabel) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml14(title) msgid "Networking in OpenStack" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml9(para) msgid "" "OpenStack Networking provides a rich tenant-facing API for defining network " "connectivity and addressing in the cloud. The OpenStack Networking project " "gives operators the ability to leverage different networking technologies to" " power their cloud networking. It is a virtual network service that provides" " a powerful API to define the network connectivity and addressing used by " "devices from other services, such as OpenStack Compute. It has a rich API " "which consists of the following components." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml20(para) msgid "" "Network: An isolated L2 segment, " "analogous to VLAN in the physical networking world." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml25(para) msgid "" "Subnet: A block of v4 or v6 IP addresses " "and associated configuration state." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml30(para) msgid "" "Port: A connection point for attaching a " "single device, such as the NIC of a virtual server, to a virtual network. " "Also describes the associated network configuration, such as the MAC and IP " "addresses to be used on that port." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml38(para) msgid "" "You can configure rich network topologies by creating and configuring " "networks and subnets, and then instructing other OpenStack services like " "OpenStack Compute to attach virtual devices to ports on these networks. In " "particular, OpenStack Networking supports each tenant having multiple " "private networks, and allows tenants to choose their own IP addressing " "scheme, even if those IP addresses overlap with those used by other tenants." " This enables very advanced cloud networking use cases, such as building " "multi-tiered web applications and allowing applications to be migrated to " "the cloud without changing IP addresses." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml50(guilabel) msgid "" "Plugin Architecture: Flexibility to Choose Different Network Technologies" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml52(para) msgid "" "Enhancing traditional networking solutions to provide rich cloud networking " "is challenging. Traditional networking is not designed to scale to cloud " "proportions or to configure automatically." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml56(para) msgid "" "The original OpenStack Compute network implementation assumed a very basic " "model of performing all isolation through Linux VLANs and IP tables. " "OpenStack Networking introduces the concept of a plug-in, which is a " "pluggable back-end implementation of the OpenStack Networking API. A plug-in" " can use a variety of technologies to implement the logical API requests. " "Some OpenStack Networking plug-ins might use basic Linux VLANs and IP " "tables, while others might use more advanced technologies, such as L2-in-L3 " "tunneling or OpenFlow, to provide similar benefits." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml66(para) msgid "The current set of plug-ins include:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml69(emphasis) msgid "Big Switch, Floodlight REST Proxy:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml73(link) msgid "" "http://www.openflowhub.org/display/floodlightcontroller/Quantum+REST+Proxy+Plugin" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml76(emphasis) msgid "Brocade Plugin" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml80(para) msgid "" "Cisco: Documented externally at: http://wiki.openstack.org" "/cisco-quantum" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml86(emphasis) msgid "Hyper-V Plugin" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml90(para) msgid "" "Linux Bridge: Documentation included in " "this guide and http://wiki.openstack.org/Quantum-Linux-Bridge-Plugin" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml97(emphasis) msgid "Midonet Plugin" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml101(emphasis) msgid "NEC OpenFlow:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml104(link) msgid "http://wiki.openstack.org/Quantum-NEC-OpenFlow-Plugin" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml107(para) msgid "" "Open vSwitch: Documentation included in " "this guide." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml111(emphasis) msgid "PLUMgrid:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml114(link) msgid "https://wiki.openstack.org/wiki/Plumgrid-quantum" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml117(emphasis) msgid "Ryu:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml120(link) msgid "https://github.com/osrg/ryu/wiki/OpenStack" msgstr "" #. TODO: Update support link, when available #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml124(para) msgid "" "VMware NSX: Documentation include in this" " guide, NSX Product " "Overview , and NSX " "Product Support." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml132(para) msgid "" "Plugins can have different properties in terms of hardware requirements, " "features, performance, scale, operator tools, etc. Supporting many plug-ins " "enables the cloud administrator to weigh different options and decide which " "networking technology is right for the deployment." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml137(para) msgid "Components of OpenStack Networking" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml138(para) msgid "" "To deploy OpenStack Networking, it is useful to understand the different " "components that make up the solution and how those components interact with " "each other and with other OpenStack services." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml142(para) msgid "" "OpenStack Networking is a standalone service, just like other OpenStack " "services such as OpenStack Compute, OpenStack Image Service, OpenStack " "Identity service, and the OpenStack Dashboard. Like those services, a " "deployment of OpenStack Networking often involves deploying several " "processes on a variety of hosts." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml148(para) msgid "" "The main process of the OpenStack Networking server is quantum-server, which" " is a Python daemon that exposes the OpenStack Networking API and passes " "user requests to the configured OpenStack Networking plug-in for additional " "processing. Typically, the plug-in requires access to a database for " "persistent storage, similar to other OpenStack services." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml155(para) msgid "" "If your deployment uses a controller host to run centralized OpenStack " "Compute components, you can deploy the OpenStack Networking server on that " "same host. However, OpenStack Networking is entirely standalone and can be " "deployed on its own server as well. OpenStack Networking also includes " "additional agents that might be required depending on your deployment:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml164(para) msgid "" "plugin agent (quantum-*-agent):Runs on " "each hypervisor to perform local vswitch configuration. Agent to be run " "depends on which plug-in you are using, as some plug-ins do not require an " "agent." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml171(para) msgid "" "dhcp agent (quantum-dhcp-agent):Provides " "DHCP services to tenant networks. This agent is the same across all plug-" "ins." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml177(para) msgid "" "l3 agent (quantum-l3-agent):Provides " "L3/NAT forwarding to provide external network access for VMs on tenant " "networks. This agent is the same across all plug-ins." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml184(para) msgid "" "These agents interact with the main quantum-server process in the following " "ways:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml188(para) msgid "Through RPC. For example, rabbitmq or qpid." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml191(para) msgid "Through the standard OpenStack Networking API." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml195(para) msgid "" "OpenStack Networking relies on the OpenStack Identity Project (Keystone) for" " authentication and authorization of all API request." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml198(para) msgid "" "OpenStack Compute interacts with OpenStack Networking through calls to its " "standard API. As part of creating a VM, nova-compute communicates with the " "OpenStack Networking API to plug each virtual NIC on the VM into a " "particular network." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml203(para) msgid "" "The OpenStack Dashboard (Horizon) has integration with the OpenStack " "Networking API, allowing administrators and tenant users, to create and " "manage network services through the Horizon GUI." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml207(emphasis) msgid "Place Services on Physical Hosts" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml209(para) msgid "" "Like other OpenStack services, OpenStack Networking provides cloud " "administrators with significant flexibility in deciding which individual " "services should run on which physical devices. On one extreme, all service " "daemons can be run on a single physical host for evaluation purposes. On the" " other, each service could have its own physical hosts, and some cases be " "replicated across multiple hosts for redundancy." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml216(para) msgid "" "In this guide, we focus primarily on a standard architecture that includes a" " “cloud controller” host, a “network gateway” host, and a set of hypervisors" " for running VMs. The \"cloud controller\" and \"network gateway\" can be " "combined in simple deployments, though if you expect VMs to send significant" " amounts of traffic to or from the Internet, a dedicated network gateway " "host is suggested to avoid potential CPU contention between packet " "forwarding performed by the quantum-l3-agent and other OpenStack services." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml225(emphasis) msgid "Network Connectivity for Physical Hosts" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml228(title) #: ./doc/training-guides/lab002-network-node.xml11(title) #: ./doc/training-guides/lab003-compute-node.xml14(title) #: ./doc/training-guides/lab001-control-node.xml10(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml138(title) msgid "Network Diagram" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml235(para) msgid "" "A standard OpenStack Networking setup has up to four distinct physical data " "center networks:" msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml239(para) msgid "" "Management network:Used for internal " "communication between OpenStack Components. The IP addresses on this network" " should be reachable only within the data center." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml246(para) msgid "" "Data network:Used for VM data " "communication within the cloud deployment. The IP addressing requirements of" " this network depend on the OpenStack Networking plug-in in use." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml252(para) msgid "" "External network:Used to provide VMs with" " Internet access in some deployment scenarios. The IP addresses on this " "network should be reachable by anyone on the Internet." msgstr "" #: ./doc/training-guides/module002-ch001-networking-in-openstack.xml259(para) msgid "" "API network:Exposes all OpenStack APIs, " "including the OpenStack Networking API, to tenants. The IP addresses on this" " network should be reachable by anyone on the Internet. This may be the same" " network as the external network, as it is possible to create a subnet for " "the external network that uses IP allocation ranges to use only less than " "the full range of IP addresses in an IP block." msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml52(None) msgid "@@image: 'figures/image40.png'; md5=ed79466c8464513dbeaf1e0954280e5e" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml116(None) msgid "@@image: 'figures/image41.png'; md5=a94e26734cec6980c3684d9e824eac2d" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml169(None) msgid "@@image: 'figures/image42.png'; md5=1b1dc0abe6ea0c516f22ce399deb75ed" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml187(None) msgid "@@image: 'figures/image43.png'; md5=4b15e5a202db5bde53c9b369058aeab8" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml219(None) msgid "@@image: 'figures/image44.png'; md5=2c161c2e92d6fefc8140ec86e79e9492" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml252(None) msgid "@@image: 'figures/image45.png'; md5=9d55594d7f445764569ab04d8d4373b2" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml283(None) msgid "@@image: 'figures/image46.png'; md5=07480e7175b383171173775fb96d70d7" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml7(title) msgid "Building Blocks of Swift" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml8(para) msgid "" "The components that enable Swift to deliver high availability, high " "durability and high concurrency are:" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml13(para) msgid "" "Proxy Servers:Handles all incoming API " "requests." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml18(para) msgid "" "Rings:Maps logical names of data to " "locations on particular disks." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml23(para) msgid "" "Zones:Each Zone isolates data from other " "Zones. A failure in one Zone doesn’t impact the rest of the cluster because " "data is replicated across the Zones." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml29(para) msgid "" "Accounts & Containers:Each Account " "and Container are individual databases that are distributed across the " "cluster. An Account database contains the list of Containers in that " "Account. A Container database contains the list of Objects in that Container" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml37(para) msgid "Objects:The data itself." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml41(para) msgid "" "Partitions:A Partition stores Objects, " "Account databases and Container databases. It’s an intermediate 'bucket' " "that helps manage locations where data lives in the cluster." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml49(title) msgid "Building Blocks" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml56(guilabel) msgid "Proxy Servers" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml57(para) msgid "" "The Proxy Servers are the public face of Swift and handle all incoming API " "requests. Once a Proxy Server receive a request, it will determine the " "storage node based on the URL of the object, such as " "https://swift.example.com/v1/account/container/object . The Proxy " "Servers also coordinates responses, handles failures and coordinates " "timestamps." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml64(para) msgid "" "Proxy servers use a shared-nothing architecture and can be scaled as needed " "based on projected workloads. A minimum of two Proxy Servers should be " "deployed for redundancy. Should one proxy server fail, the others will take " "over." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml69(guilabel) msgid "The Ring" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml70(para) msgid "" "A ring represents a mapping between the names of entities stored on disk and" " their physical location. There are separate rings for accounts, containers," " and objects. When other components need to perform any operation on an " "object, container, or account, they need to interact with the appropriate " "ring to determine its location in the cluster." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml77(para) msgid "" "The Ring maintains this mapping using zones, devices, partitions, and " "replicas. Each partition in the ring is replicated, by default, 3 times " "across the cluster, and the locations for a partition are stored in the " "mapping maintained by the ring. The ring is also responsible for determining" " which devices are used for hand off in failure scenarios." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml84(para) msgid "" "Data can be isolated with the concept of zones in the ring. Each replica of " "a partition is guaranteed to reside in a different zone. A zone could " "represent a drive, a server, a cabinet, a switch, or even a data center." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml88(para) msgid "" "The partitions of the ring are equally divided among all the devices in the " "OpenStack Object Storage installation. When partitions need to be moved " "around, such as when a device is added to the cluster, the ring ensures that" " a minimum number of partitions are moved at a time, and only one replica of" " a partition is moved at a time." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml94(para) msgid "" "Weights can be used to balance the distribution of partitions on drives " "across the cluster. This can be useful, for example, when different sized " "drives are used in a cluster." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml98(para) msgid "" "The ring is used by the Proxy server and several background processes (like " "replication)." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml100(para) msgid "" "The Ring maps Partitions to physical locations on disk. When other " "components need to perform any operation on an object, container, or " "account, they need to interact with the Ring to determine its location in " "the cluster." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml104(para) msgid "" "The Ring maintains this mapping using zones, devices, partitions, and " "replicas. Each partition in the Ring is replicated three times by default " "across the cluster, and the locations for a partition are stored in the " "mapping maintained by the Ring. The Ring is also responsible for determining" " which devices are used for handoff should a failure occur." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml112(title) msgid "The Lord of the Rings" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml120(para) msgid "The Ring maps partitions to physical locations on disk." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml122(para) msgid "" "The rings determine where data should reside in the cluster. There is a " "separate ring for account databases, container databases, and individual " "objects but each ring works in the same way. These rings are externally " "managed, in that the server processes themselves do not modify the rings, " "they are instead given new rings modified by other tools." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml129(para) msgid "" "The ring uses a configurable number of bits from a path’s MD5 hash as a " "partition index that designates a device. The number of bits kept from the " "hash is known as the partition power, and 2 to the partition power indicates" " the partition count. Partitioning the full MD5 hash ring allows other parts" " of the cluster to work in batches of items at once which ends up either " "more efficient or at least less complex than working with each item " "separately or the entire cluster all at once." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml138(para) msgid "" "Another configurable value is the replica count, which indicates how many of" " the partition->device assignments comprise a single ring. For a given " "partition number, each replica’s device will not be in the same zone as any " "other replica's device. Zones can be used to group devices based on physical" " locations, power separations, network separations, or any other attribute " "that would lessen multiple replicas being unavailable at the same time." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml146(guilabel) msgid "Zones: Failure Boundaries" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml147(para) msgid "" "Swift allows zones to be configured to isolate failure boundaries. Each " "replica of the data resides in a separate zone, if possible. At the smallest" " level, a zone could be a single drive or a grouping of a few drives. If " "there were five object storage servers, then each server would represent its" " own zone. Larger deployments would have an entire rack (or multiple racks) " "of object servers, each representing a zone. The goal of zones is to allow " "the cluster to tolerate significant outages of storage servers without " "losing all replicas of the data." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml158(para) msgid "" "As we learned earlier, everything in Swift is stored, by default, three " "times. Swift will place each replica \"as-uniquely-as-possible\" to ensure " "both high availability and high durability. This means that when choosing a " "replica location, Swift will choose a server in an unused zone before an " "unused server in a zone that already has a replica of the data." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml166(title) msgid "image33.png" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml173(para) msgid "" "When a disk fails, replica data is automatically distributed to the other " "zones to ensure there are three copies of the data" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml176(guilabel) msgid "Accounts & Containers" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml178(para) msgid "" "Each account and container is an individual SQLite database that is " "distributed across the cluster. An account database contains the list of " "containers in that account. A container database contains the list of " "objects in that container." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml184(title) msgid "Accounts and Containers" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml191(para) msgid "" "To keep track of object data location, each account in the system has a " "database that references all its containers, and each container database " "references each object" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml195(guilabel) #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml216(title) msgid "Partitions" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml196(para) msgid "" "A Partition is a collection of stored data, including Account databases, " "Container databases, and objects. Partitions are core to the replication " "system." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml200(para) msgid "" "Think of a Partition as a bin moving throughout a fulfillment center " "warehouse. Individual orders get thrown into the bin. The system treats that" " bin as a cohesive entity as it moves throughout the system. A bin full of " "things is easier to deal with than lots of little things. It makes for fewer" " moving parts throughout the system." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml207(para) msgid "" "The system replicators and object uploads/downloads operate on Partitions. " "As the system scales up, behavior continues to be predictable as the number " "of Partitions is a fixed number." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml211(para) msgid "" "The implementation of a Partition is conceptually simple -- a partition is " "just a directory sitting on a disk with a corresponding hash table of what " "it contains." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml223(para) msgid "*Swift partitions contain all data in the system." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml226(para) msgid "" "In order to ensure that there are three copies of the data everywhere, " "replicators continuously examine each Partition. For each local Partition, " "the replicator compares it against the replicated copies in the other Zones " "to see if there are any differences." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml232(para) msgid "" "How does the replicator know if replication needs to take place? It does " "this by examining hashes. A hash file is created for each Partition, which " "contains hashes of each directory in the Partition. Each of the three hash " "files is compared. For a given Partition, the hash files for each of the " "Partition's copies are compared. If the hashes are different, then it is " "time to replicate and the directory that needs to be replicated is copied " "over." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml241(para) msgid "" "This is where the Partitions come in handy. With fewer \"things\" in the " "system, larger chunks of data are transferred around (rather than lots of " "little TCP connections, which is inefficient) and there are a consistent " "number of hashes to compare." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml246(para) msgid "" "The cluster has eventually consistent behavior where the newest data wins." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml256(para) msgid "" "*If a zone goes down, one of the nodes containing a replica notices and " "proactively copies data to a handoff location." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml259(para) msgid "" "To describe how these pieces all come together, let's walk through a few " "scenarios and introduce the components." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml261(guilabel) msgid "Bird-eye View" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml262(emphasis) msgid "Upload" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml264(para) msgid "" "A client uses the REST API to make a HTTP request to PUT an object into an " "existing Container. The cluster receives the request. First, the system must" " figure out where the data is going to go. To do this, the Account name, " "Container name and Object name are all used to determine the Partition where" " this object should live." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml270(para) msgid "" "Then a lookup in the Ring figures out which storage nodes contain the " "Partitions in question." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml272(para) msgid "" "The data then is sent to each storage node where it is placed in the " "appropriate Partition. A quorum is required -- at least two of the three " "writes must be successful before the client is notified that the upload was " "successful." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml277(para) msgid "" "Next, the Container database is updated asynchronously to reflect that there" " is a new object in it." msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml280(title) msgid "When End-User uses Swift" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml287(emphasis) msgid "Download" msgstr "" #: ./doc/training-guides/module003-ch004-swift-building-blocks.xml288(para) msgid "" "A request comes in for an Account/Container/object. Using the same " "consistent hashing, the Partition name is generated. A lookup in the Ring " "reveals which storage nodes contain that Partition. A request is made to one" " of the storage nodes to fetch the object and if that fails, requests are " "made to the other nodes." msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/user-story-includes-template.xml19(None) msgid "" "@@image: 'figures/openstack-training-example-image.png'; " "md5=87bf110d5b53b2168680e1370176ef02" msgstr "" #: ./doc/training-guides/user-story-includes-template.xml7(title) msgid "Including external content for user stories, version 1.3" msgstr "" #: ./doc/training-guides/user-story-includes-template.xml8(para) msgid "" "Save your user story file as associate-my-user-story-name, operator-my-user-" "story, etc. For example my user story that I assigned myself is operator bug" " fix so the file name would be operator-fix-documentation-bug.xml. See the " "operator-fix-documentation-bug.xml file in the repository for more details." msgstr "" #: ./doc/training-guides/user-story-includes-template.xml12(para) msgid "" "The include statements below are meant to help you tell and teach the user " "story. Include as much content as necessary. Use examples." msgstr "" #: ./doc/training-guides/user-story-includes-template.xml14(para) msgid "" "Create diagrams through gdraw. Export as png. Reference as local file in the" " /figures/ director. Share as 'Anyone With the Link' can 'Edit' and add URL " "to the description so anyone else can update the original." msgstr "" #: ./doc/training-guides/user-story-includes-template.xml17(para) msgid " big dummy example image" msgstr "" #: ./doc/training-guides/user-story-includes-template.xml23(link) msgid "" "https://docs.google.com/drawings/d/1Tdn4SZLBdvQybW_nK_lO380YRIe5T6PsI0IyLH5XE3M/edit?usp=sharing" msgstr "" #: ./doc/training-guides/user-story-includes-template.xml25(emphasis) msgid "" "Including a whole file. Include as much description about what is being " "taught here." msgstr "" #: ./doc/training-guides/user-story-includes-template.xml33(link) #: ./doc/training-guides/user-story-includes-template.xml45(link) #: ./doc/training-guides/card007-core-overview.xml14(link) #: ./doc/training-guides/card025.xml13(link) #: ./doc/training-guides/card074-horizon-snapshots.xml14(link) #: ./doc/training-guides/card071-create-cinder-horizon.xml21(link) #: ./doc/training-guides/card009.xml16(link) #: ./doc/training-guides/card043-ovs-in-network-node.xml15(link) #: ./doc/training-guides/card072-cinder-attach-volume.xml13(link) #: ./doc/training-guides/card126-horizon.xml13(link) #: ./doc/training-guides/card039-nova.xml14(link) #: ./doc/training-guides/card047-install-nova-compute.xml14(link) #: ./doc/training-guides/card045-configure-virtual-networking.xml20(link) #: ./doc/training-guides/card041-neutron.xml22(link) #: ./doc/training-guides/card008.xml13(link) #: ./doc/training-guides/card040-cinder.xml15(link) #: ./doc/training-guides/card046-L3_Configuration_in_the_Network_Node.xml14(link) #: ./doc/training-guides/card127-glance.xml14(link) #: ./doc/training-guides/card026-network-node-architecture.xml14(link) #: ./doc/training-guides/card044-install-and-configure-neutron-network-node.xml14(link) #: ./doc/training-guides/card073-control-state-instance.xml14(link) #: ./doc/training-guides/card128-swift.xml13(link) #: ./doc/training-guides/card011.xml14(link) #: ./doc/training-guides/card070-create-floating-ips.xml23(link) #: ./doc/training-guides/card038.xml13(link) msgid "" "Submit a bug on the section above. Short description for the bug summary. " "Paragraph for the description and then tag with training-manuals." msgstr "" #: ./doc/training-guides/user-story-includes-template.xml37(emphasis) msgid "" "Including a section of a file. Include as much description about what is " "being taught here." msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml6(title) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml6(title) msgid "Assessment" msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml8(title) msgid "" "Day 10, 9:00 to 11:00, 11:15 to 12:30, hands on lab 13:30 to 14:45, 15:00 to" " 17:00" msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml12(title) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml12(title) msgid "Questions" msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml14(caption) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml14(caption) msgid "Assessment Question 1" msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml19(th) #: ./doc/training-guides/bk003-ch022-developer-assessment.xml40(th) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml19(th) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml40(th) msgid "Task" msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml20(th) #: ./doc/training-guides/bk003-ch022-developer-assessment.xml41(th) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml20(th) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml41(th) msgid "Completed?" msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml26(para) #: ./doc/training-guides/bk003-ch022-developer-assessment.xml47(para) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml26(para) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml47(para) msgid "Configure a ...." msgstr "" #: ./doc/training-guides/bk003-ch022-developer-assessment.xml35(caption) #: ./doc/training-guides/bk001-ch011-associate-assessment.xml35(caption) msgid "Assessment Question 2" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml6(title) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml28(title) msgid "OpenStack Block Storage" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml7(emphasis) msgid "Block Storage and OpenStack Compute" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml9(para) msgid "" "OpenStack provides two classes of block storage, \"ephemeral\" storage and " "persistent \"volumes\". Ephemeral storage exists only for the life of an " "instance, it will persist across reboots of the guest operating system but " "when the instance is deleted so is the associated storage. All instances " "have some ephemeral storage. Volumes are persistent virtualized block " "devices independent of any particular instance. Volumes may be attached to a" " single instance at a time, but may be detached or reattached to a different" " instance while retaining all data, much like a USB drive." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml19(guilabel) msgid "Ephemeral Storage" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml20(para) msgid "" "Ephemeral storage is associated with a single unique instance. Its size is " "defined by the flavor of the instance." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml22(para) msgid "" "Data on ephemeral storage ceases to exist when the instance it is associated" " with is terminated. Rebooting the VM or restarting the host server, " "however, will not destroy ephemeral data. In the typical use case an " "instance's root filesystem is stored on ephemeral storage. This is often an " "unpleasant surprise for people unfamiliar with the cloud model of computing." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml28(para) msgid "" "In addition to the ephemeral root volume all flavors except the smallest, " "m1.tiny, provide an additional ephemeral block device varying from 20G for " "the m1.small through 160G for the m1.xlarge by default - these sizes are " "configurable. This is presented as a raw block device with no partition " "table or filesystem. Cloud aware operating system images may discover, " "format, and mount this device. For example the cloud-init package included " "in Ubuntu's stock cloud images will format this space as an ext3 filesystem " "and mount it on /mnt. It is important to note this a feature of the guest " "operating system. OpenStack only provisions the raw storage." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml39(guilabel) msgid "Volume Storage" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml40(para) msgid "" "Volume storage is independent of any particular instance and is persistent. " "Volumes are user created and within quota and availability limits may be of " "any arbitrary size." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml43(para) msgid "" "When first created volumes are raw block devices with no partition table and" " no filesystem. They must be attached to an instance to be partitioned " "and/or formatted. Once this is done they may be used much like an external " "disk drive. Volumes may attached to only one instance at a time, but may be " "detached and reattached to either the same or different instances." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml49(para) msgid "" "It is possible to configure a volume so that it is bootable and provides a " "persistent virtual instance similar to traditional non-cloud based " "virtualization systems. In this use case the resulting instance may still " "have ephemeral storage depending on the flavor selected, but the root " "filesystem (and possibly others) will be on the persistent volume and thus " "state will be maintained even if the instance is shutdown. Details of this " "configuration are discussed in theOpenStack End User Guide." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml59(para) msgid "" "Volumes do not provide concurrent access from multiple instances. For that " "you need either a traditional network filesystem like NFS or CIFS or a " "cluster filesystem such as GlusterFS. These may be built within an OpenStack" " cluster or provisioned outside of it, but are not features provided by the " "OpenStack software." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml65(para) msgid "" "The OpenStack Block Storage service works via the interaction of a series of" " daemon processes named cinder-* that reside persistently on the host " "machine or machines. The binaries can all be run from a single node, or " "spread across multiple nodes. They can also be run on the same node as other" " OpenStack services." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml71(guilabel) msgid "The current services available in OpenStack Block Storage are:" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml75(para) msgid "" "cinder-api - The cinder-api service is a " "WSGI app that authenticates and routes requests throughout the Block Storage" " system. It supports the OpenStack API's only, although there is a " "translation that can be done via Nova's EC2 interface which calls in to the " "cinderclient." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml85(para) msgid "" "cinder-scheduler - The cinder-scheduler " "is responsible for scheduling/routing requests to the appropriate volume " "service. As of Grizzly; depending upon your configuration this may be simple" " round-robin scheduling to the running volume services, or it can be more " "sophisticated through the use of the Filter Scheduler. The Filter Scheduler " "is the default in Grizzly and enables filter on things like Capacity, " "Availability Zone, Volume Types and Capabilities as well as custom filters." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml99(para) msgid "" "cinder-volume - The cinder-volume service" " is responsible for managing Block Storage devices, specifically the back-" "end devices themselves." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml107(para) msgid "" "cinder-backup - The cinder-backup service" " provides a means to back up a Cinder Volume to OpenStack Object Store " "(SWIFT)." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml112(guilabel) msgid "Introduction to OpenStack Block Storage" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml114(para) msgid "" "OpenStack Block Storage provides persistent High Performance Block Storage " "resources that can be consumed by OpenStack Compute instances. This includes" " secondary attached storage similar to Amazon's Elastic Block Storage (EBS)." " In addition images can be written to a Block Storage device and specified " "for OpenStack Compute to use a bootable persistent instance." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml120(para) msgid "" "There are some differences from Amazon's EBS that one should be aware of. " "OpenStack Block Storage is not a shared storage solution like NFS, but " "currently is designed so that the device is attached and in use by a single " "instance at a time." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml124(guilabel) msgid "Backend Storage Devices" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml125(para) msgid "" "OpenStack Block Storage requires some form of back-end storage that the " "service is built on. The default implementation is to use LVM on a local " "Volume Group named \"cinder-volumes\". In addition to the base driver " "implementation, OpenStack Block Storage also provides the means to add " "support for other storage devices to be utilized such as external Raid " "Arrays or other Storage appliances." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml132(guilabel) #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml73(guilabel) msgid "Users and Tenants (Projects)" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml133(para) msgid "" "The OpenStack Block Storage system is designed to be used by many different " "cloud computing consumers or customers, basically tenants on a shared " "system, using role-based access assignments. Roles control the actions that " "a user is allowed to perform. In the default configuration, most actions do " "not require a particular role, but this is configurable by the system " "administrator editing the appropriate policy.json file that maintains the " "rules. A user's access to particular volumes is limited by tenant, but the " "username and password are assigned per user. Key pairs granting access to a " "volume are enabled per user, but quotas to control resource consumption " "across available hardware resources are per tenant." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml145(guilabel) #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml98(para) msgid "For tenants, quota controls are available to limit the:" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml149(para) #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml102(para) msgid "Number of volumes which may be created" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml152(para) msgid "Number of snapshots which may be created" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml155(para) msgid "" "Total number of Giga Bytes allowed per tenant (shared between snapshots and " "volumes)" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml159(guilabel) msgid "Volumes Snapshots and Backups" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml160(para) msgid "" "This introduction provides a high level overview of the two basic resources " "offered by the OpenStack Block Storage service. The first is Volumes and the" " second is Snapshots which are derived from Volumes." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml164(guilabel) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml129(emphasis) msgid "Volumes" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml165(para) msgid "" "Volumes are allocated block storage resources that can be attached to " "instances as secondary storage or they can be used as the root store to boot" " instances. Volumes are persistent R/W Block Storage devices most commonly " "attached to the compute node via iSCSI." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml170(guilabel) msgid "Snapshots" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml171(para) msgid "" "A Snapshot in OpenStack Block Storage is a read-only point in time copy of a" " Volume. The Snapshot can be created from a Volume that is currently in use " "(via the use of '--force True') or in an available state. The Snapshot can " "then be used to create a new volume via create from snapshot." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml176(guilabel) msgid "Backups" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml177(para) msgid "" "A Backup is an archived copy of a Volume currently stored in Object Storage " "(Swift)." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml179(guilabel) msgid "Managing Volumes" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml180(para) msgid "" "Cinder is the OpenStack service that allows you to give extra block level " "storage to your OpenStack Compute instances. You may recognize this as a " "similar offering from Amazon EC2 known as Elastic Block Storage (EBS). The " "default Cinder implementation is an iSCSI solution that employs the use of " "Logical Volume Manager (LVM) for Linux. Note that a volume may only be " "attached to one instance at a time. This is not a ‘shared storage’ solution " "like a SAN of NFS on which multiple servers can attach to. It's also " "important to note that Cinder also includes a number of drivers to allow you" " to use a number of other vendor's back-end storage devices in addition to " "or instead of the base LVM implementation." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml192(para) msgid "" "Here is brief walk-through of a simple create/attach sequence, keep in mind " "this requires proper configuration of both OpenStack Compute via cinder.conf" " and OpenStack Block Storage via cinder.conf." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml198(para) msgid "" "The volume is created via cinder create; which creates an LV into the volume" " group (VG) \"cinder-volumes\"" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml202(para) msgid "" "The volume is attached to an instance via nova volume-attach; which creates " "a unique iSCSI IQN that will be exposed to the compute node" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml207(para) msgid "" "The compute node which run the concerned instance has now an active ISCSI " "session; and a new local storage (usually a /dev/sdX disk)" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml212(para) msgid "" "libvirt uses that local storage as a storage for the instance; the instance " "get a new disk (usually a /dev/vdX disk)" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml217(guilabel) msgid "Block Storage Capabilities" msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml220(para) #: ./doc/training-guides/module001-ch003-core-projects.xml374(para) msgid "" "OpenStack provides persistent block level storage devices for use with " "OpenStack compute instances." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml224(para) #: ./doc/training-guides/module001-ch003-core-projects.xml378(para) msgid "" "The block storage system manages the creation, attaching and detaching of " "the block devices to servers. Block storage volumes are fully integrated " "into OpenStack Compute and the Dashboard allowing for cloud users to manage " "their own storage needs." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml231(para) #: ./doc/training-guides/module001-ch003-core-projects.xml385(para) msgid "" "In addition to using simple Linux server storage, it has unified storage " "support for numerous storage platforms including Ceph, NetApp, Nexenta, " "SolidFire, and Zadara." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml237(para) #: ./doc/training-guides/module001-ch003-core-projects.xml391(para) msgid "" "Block storage is appropriate for performance sensitive scenarios such as " "database storage, expandable file systems, or providing a server with access" " to raw block level storage." msgstr "" #: ./doc/training-guides/module001-ch011-block-storage.xml243(para) #: ./doc/training-guides/module001-ch003-core-projects.xml397(para) msgid "" "Snapshot management provides powerful functionality for backing up data " "stored on block storage volumes. Snapshots can be restored or used to create" " a new block storage volume." msgstr "" #: ./doc/training-guides/bk003-ch008-developer-apis-day-three-quiz.xml6(title) msgid "Developer APIs in Depth Day Three Quiz" msgstr "" #: ./doc/training-guides/bk003-ch008-developer-apis-day-three-quiz.xml8(title) msgid "Day 3, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/bk003-ch003-developer-getting-started-quiz.xml6(title) #: ./doc/training-guides/bk002-ch003-operator-getting-started-quiz.xml6(title) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml6(title) msgid "Getting Started Quiz" msgstr "" #: ./doc/training-guides/bk003-ch003-developer-getting-started-quiz.xml8(title) #: ./doc/training-guides/bk002-ch003-operator-getting-started-quiz.xml8(title) #: ./doc/training-guides/bk001-ch006-associate-compute-node-quiz.xml8(title) msgid "Day 1, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/bk001-ch012-associate-review-concept.xml6(title) msgid "Review of Concepts" msgstr "" #: ./doc/training-guides/bk001-ch012-associate-review-concept.xml8(title) msgid "Day 2, 16:00 to 17:00" msgstr "" #: ./doc/training-guides/bk002-ch015-operator-object-storage-node-quiz.xml6(title) #: ./doc/training-guides/bk001-bk010-associate-object-storage-node-quiz.xml5(title) msgid "Object Storage Node Quiz" msgstr "" #: ./doc/training-guides/bk002-ch015-operator-object-storage-node-quiz.xml8(title) #: ./doc/training-guides/bk003-ch021-developer-how-to-participate-day-nine-quiz.xml8(title) msgid "Day 9, 16:40 to 17:00" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch001-intro-text.xml102(None) msgid "@@image: 'figures/image11.png'; md5=e7c8929df3b2e7037fa3a032a7e8370e" msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml6(title) msgid "Introduction to OpenStack" msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml7(para) msgid "" "OpenStack is a cloud operating system that controls large pools of compute, " "storage, and networking resources throughout a data center, all managed " "through a dashboard that gives administrators control while empowering users" " to provision resources through a web interface." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml12(para) msgid "" "Cloud computing provides users with access to a shared collection of " "computing resources: networks for transfer, servers for storage, and " "applications or services for completing tasks." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml16(para) msgid "The compelling features of a cloud are:" msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml19(para) msgid "" "On-demand self-service: Users can automatically provision needed computing " "capabilities, such as server time and network storage, without requiring " "human interaction with each service provider." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml25(para) msgid "" "Network access: Any computing capabilities are available over the network. " "Many different devices are allowed access through standardized mechanisms." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml30(para) msgid "" "Resource pooling: Multiple users can access clouds that serve other " "consumers according to demand." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml34(para) msgid "Elasticity: Provisioning is rapid and scales out or is based on need." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml38(para) msgid "" "Metered or measured service: Cloud systems can optimize and control resource" " use at the level that is appropriate for the service. Services include " "storage, processing, bandwidth, and active user accounts. Monitoring and " "reporting of resource usage provides transparency for both the provider and " "consumer of the utilized service." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml46(para) msgid "" "Cloud computing offers different service models depending on the " "capabilities a consumer may require." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml50(para) msgid "" "SaaS: Software-as-a-Service. Provides the consumer the ability to use the " "software in a cloud environment, such as web-based email for example." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml55(para) msgid "" "PaaS: Platform-as-a-Service. Provides the consumer the ability to deploy " "applications through a programming language or tools supported by the cloud " "platform provider. An example of Platform-as-a-service is an Eclipse/Java " "programming platform provided with no downloads required." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml62(para) msgid "" "IaaS: Infrastructure-as-a-Service. Provides infrastructure such as computer " "instances, network connections, and storage so that people can run any " "software or operating system." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml68(para) msgid "" "Terms such as public cloud or private cloud refer to the deployment model " "for the cloud. A private cloud operates for a single organization, but can " "be managed on-premise or off-premise. A public cloud has an infrastructure " "that is available to the general public or a large industry group and is " "likely owned by a cloud services company." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml74(para) msgid "" "Clouds can also be described as hybrid. A hybrid cloud can be a deployment " "model, as a composition of both public and private clouds, or a hybrid model" " for cloud computing may involve both virtual and physical servers." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml78(para) msgid "" "Cloud computing can help with large-scale computing needs or can lead " "consolidation efforts by virtualizing servers to make more use of existing " "hardware and potentially release old hardware from service. Cloud computing " "is also used for collaboration because of its high availability through " "networked computers. Productivity suites for word processing, number " "crunching, and email communications, and more are also available through " "cloud computing. Cloud computing also avails additional storage to the cloud" " user, avoiding the need for additional hard drives on each user's desktop " "and enabling access to huge data storage capacity online in the cloud." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml89(para) msgid "" "When you explore OpenStack and see what it means technically, you can see " "its reach and impact on the entire world." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml91(para) msgid "" "OpenStack is an open source software for building private and public clouds " "which delivers a massively scalable cloud operating system." msgstr "" #: ./doc/training-guides/module001-ch001-intro-text.xml97(td) msgid "" "OpenStack is backed up by a global community of technologists, developers, " "researchers, corporations and cloud computing experts." msgstr "" #: ./doc/training-guides/bk003-ch015-developer-how-to-participate-day-six-quiz.xml6(title) msgid "Developer How To Participate Day Six Quiz" msgstr "" #: ./doc/training-guides/bk003-ch015-developer-how-to-participate-day-six-quiz.xml8(title) msgid "Day 6, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml6(title) msgid "Important terms" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml8(title) msgid "Host Operating System (Host)" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml9(para) msgid "" "The operating system that is installed on your laptop or desktop that hosts " "virtual machines. Commonly referred to as host OS or " "host. In short, the machine where your Virtual Box is" " installed." msgstr "" #: ./doc/training-guides/lab000-important-terms.xml16(title) msgid "Guest Operating System (Guest)" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml17(para) msgid "" "The operating system that is installed on your Virtual Box Virtual Machine. " "This virtual instance is independent of the host OS. Commonly referred to as" " guest OS or guest." msgstr "" #: ./doc/training-guides/lab000-important-terms.xml23(title) msgid "Node" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml24(para) msgid "" "In this context, refers specifically to servers. Each OpenStack server is a " "node." msgstr "" #: ./doc/training-guides/lab000-important-terms.xml28(title) #: ./doc/training-guides/lab001-control-node.xml7(title) msgid "Control Node" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml29(para) msgid "" "Hosts the database, Keystone (Middleware), and the servers for the scope of " "the current OpenStack deployment. Acts as the brains behind OpenStack and " "drives services such as authentication, database, and so on." msgstr "" #: ./doc/training-guides/lab000-important-terms.xml35(title) #: ./doc/training-guides/lab003-compute-node.xml7(title) #: ./doc/training-guides/lab003-compute-node.xml31(guilabel) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml8(title) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml8(title) msgid "Compute Node" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml36(para) msgid "" "Has the required Hypervisor (Qemu/KVM) and is your Virtual Machine host." msgstr "" #: ./doc/training-guides/lab000-important-terms.xml40(title) #: ./doc/training-guides/lab002-network-node.xml4(title) #: ./doc/training-guides/lab002-network-node.xml26(guilabel) #: ./doc/training-guides/bk002-ch010-operator-network-node.xml8(title) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml8(title) msgid "Network Node" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml41(para) msgid "Provides Network-as-a-Service and virtual networks for OpenStack." msgstr "" #: ./doc/training-guides/lab000-important-terms.xml45(title) msgid "Using OpenSSH" msgstr "" #: ./doc/training-guides/lab000-important-terms.xml46(para) msgid "" "After you set up the network interfaces file, you can switch to an SSH " "session by using an OpenSSH client to log in remotely to the required server" " node (Control, Network, Compute). Open a terminal on your host machine. Run" " the following command: " msgstr "" #: ./doc/training-guides/card007-core-overview.xml7(title) msgid "Core Project Overview" msgstr "" #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml6(title) msgid "Object Storage Node Lab" msgstr "" #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml8(title) msgid "Day 9, 13:30 to 14:45, 15:00 to 17:00" msgstr "" #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml12(title) msgid "Installing Object Node" msgstr "" #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml19(title) msgid "Configuring Object Node" msgstr "" #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml26(title) msgid "Configuring Object Proxy" msgstr "" #: ./doc/training-guides/bk002-ch014-operator-object-storage-node-lab.xml33(title) msgid "Start Object Node Services" msgstr "" #: ./doc/training-guides/st-training-guides.xml9(title) #: ./doc/training-guides/st-training-guides.xml11(titleabbrev) #: ./doc/training-guides/st-training-guides.xml17(productname) msgid "OpenStack Training Guides" msgstr "" #: ./doc/training-guides/st-training-guides.xml14(year) msgid "2013" msgstr "" #: ./doc/training-guides/st-training-guides.xml15(holder) msgid "OpenStack Foundation" msgstr "" #: ./doc/training-guides/st-training-guides.xml20(remark) #: ./doc/training-guides/st-training-guides.xml24(remark) msgid "Copyright details are filled in by the template." msgstr "" #: ./doc/training-guides/st-training-guides.xml28(para) msgid "" "OpenStack™ Training Guides offer the open source community software training" " for cloud administration and management for any organization." msgstr "" #: ./doc/training-guides/st-training-guides.xml35(date) msgid "2013-11-04" msgstr "" #: ./doc/training-guides/st-training-guides.xml39(para) msgid "major restructure of guides" msgstr "" #: ./doc/training-guides/st-training-guides.xml45(date) msgid "2013-09-11" msgstr "" #: ./doc/training-guides/st-training-guides.xml49(para) msgid "first training guides sprint held" msgstr "" #: ./doc/training-guides/st-training-guides.xml55(date) msgid "2013-08-07" msgstr "" #: ./doc/training-guides/st-training-guides.xml59(para) msgid "rough draft published to the web" msgstr "" #: ./doc/training-guides/st-training-guides.xml65(date) msgid "2013-07-09" msgstr "" #: ./doc/training-guides/st-training-guides.xml69(para) msgid "first draft released" msgstr "" #: ./doc/training-guides/st-training-guides.xml75(date) msgid "2013-06-18" msgstr "" #: ./doc/training-guides/st-training-guides.xml79(para) msgid "blueprint created" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml178(None) msgid "@@image: 'figures/image21.png'; md5=77049345dd5d86f8f7abe03c0497b1f2" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml197(None) msgid "@@image: 'figures/image09.png'; md5=69ea6c4853c189bd8c387bb4e534f6a2" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml234(None) msgid "@@image: 'figures/image22.png'; md5=d92dca8de8639d5a26cef1c8fcc592ed" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml7(title) msgid "VM Provisioning Walk Through" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml8(para) msgid "More Content To be Added ..." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml9(para) msgid "" "OpenStack Compute gives you a tool to orchestrate a cloud, including running" " instances, managing networks, and controlling access to the cloud through " "users and projects. The underlying open source project's name is Nova, and " "it provides the software that can control an Infrastructure-as-a-Service " "(IaaS) cloud computing platform. It is similar in scope to Amazon EC2 and " "Rackspace Cloud Servers. OpenStack Compute does not include any " "virtualization software; rather it defines drivers that interact with " "underlying virtualization mechanisms that run on your host operating system," " and exposes functionality over a web-based API." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml20(guilabel) msgid "Hypervisors" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml21(para) msgid "" "OpenStack Compute requires a hypervisor and Compute controls the hypervisors" " through an API server. The process for selecting a hypervisor usually means" " prioritizing and making decisions based on budget and resource constraints " "as well as the inevitable list of supported features and required technical " "specifications. The majority of development is done with the KVM and Xen-" "based hypervisors. Refer to http://goo.gl/n7AXnC for a detailed " "list of features and support across the hypervisors." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml32(para) msgid "" "With OpenStack Compute, you can orchestrate clouds using multiple " "hypervisors in different zones. The types of virtualization standards that " "may be used with Compute include:" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml38(para) msgid "" "KVM- Kernel-based Virtual Machine (visit http://goo.gl/70dvRb)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml43(para) msgid "" "LXC- Linux Containers (through libvirt) (visit http://goo.gl/Ous3ly)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml48(para) msgid "" "QEMU- Quick EMUlator (visit http://goo.gl/WWV9lL)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml53(para) msgid "" "UML- User Mode Linux (visit http://goo.gl/4HAkJj)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml58(para) msgid "" "VMWare vSphere4.1 update 1 and newer (visit http://goo.gl/0DBeo5)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml63(para) msgid "" "Xen- Xen, Citrix XenServer and Xen Cloud Platform (XCP) (visit http://goo.gl/yXP9t1)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml68(para) msgid "" "Bare Metal- Provisions physical hardware via pluggable sub-drivers. (visit " "http://goo.gl/exfeSg)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml74(para) msgid "" "The OpenStack Compute system is designed to be used by many different cloud " "computing consumers or customers, basically tenants on a shared system, " "using role-based access assignments. Roles control the actions that a user " "is allowed to perform. In the default configuration, most actions do not " "require a particular role, but this is configurable by the system " "administrator editing the appropriate policy.json file " "that maintains the rules. For example, a rule can be defined so that a user " "cannot allocate a public IP without the admin role. A user's access to " "particular images is limited by tenant, but the username and password are " "assigned per user. Key pairs granting access to an instance are enabled per " "user, but quotas to control resource consumption across available hardware " "resources are per tenant." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml89(para) msgid "" "While the original EC2 API supports users, OpenStack Compute adds the " "concept of tenants. Tenants are isolated resource containers forming the " "principal organizational structure within the Compute service. They consist " "of a separate VLAN, volumes, instances, images, keys, and users. A user can " "specify which tenant he or she wishes to be known as by appending " ":project_id to his or her access key. If no tenant is specified in the API " "request, Compute attempts to use a tenant with the same ID as the user" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml105(para) msgid "Total size of all volumes within a project as measured in GB" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml109(para) msgid "Number of instances which may be launched" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml112(para) msgid "Number of processor cores which may be allocated" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml115(para) msgid "" "Floating IP addresses (assigned to any instance when it launches so the " "instance has the same publicly accessible IP addresses)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml120(para) msgid "" "Fixed IP addresses (assigned to the same instance each time it boots, " "publicly or privately accessible, typically private for management purposes)" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml125(guilabel) #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml163(guilabel) msgid "Images and Instances" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml126(para) msgid "" "This introduction provides a high level overview of what images and " "instances are and description of the life-cycle of a typical virtual system " "within the cloud. There are many ways to configure the details of an " "OpenStack cloud and many ways to implement a virtual system within that " "cloud. These configuration details as well as the specific command-line " "utilities and API calls to perform the actions described are presented in " "the Image Management and Volume Management chapters." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml135(para) msgid "" "Images are disk images which are templates for virtual machine file systems." " The OpenStack Image Service is responsible for the storage and management " "of images within OpenStack." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml139(para) msgid "" "Instances are the individual virtual machines running on physical compute " "nodes. The OpenStack Compute service manages instances. Any number of " "instances maybe started from the same image. Each instance is run from a " "copy of the base image so runtime changes made by an instance do not change " "the image it is based on. Snapshots of running instances may be taken which " "create a new image based on the current disk state of a particular instance." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml147(para) msgid "" "When starting an instance a set of virtual resources known as a flavor must " "be selected. Flavors define how many virtual CPUs an instance has and the " "amount of RAM and size of its ephemeral disks. OpenStack provides a number " "of predefined flavors which cloud administrators may edit or add to. Users " "must select from the set of available flavors defined on their cloud." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml154(para) msgid "" "Additional resources such as persistent volume storage and public IP address" " may be added to and removed from running instances. The examples below show" " the cinder-volume service which provide persistent block storage as opposed" " to the ephemeral storage provided by the instance flavor." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml159(para) msgid "" "Here is an example of the life cycle of a typical virtual system within an " "OpenStack cloud to illustrate these concepts." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml162(guilabel) #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml175(title) msgid "Initial State" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml164(para) msgid "" "The following diagram shows the system state prior to launching an instance." " The image store fronted by the Image Service has some number of predefined " "images. In the cloud, there is an available compute node with available " "vCPU, memory and local disk resources. Plus there are a number of predefined" " volumes in the cinder-volume " "service." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml172(para) msgid "Figure 2.1. Base image state with no running instances" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml182(guilabel) msgid "Launching an instance" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml183(para) msgid "" "To launch an instance, the user selects an image, a flavor, and other " "optional attributes. In this case the selected flavor provides a root volume" " (as all flavors do) labeled vda in the diagram and additional ephemeral " "storage labeled vdb in the diagram. The user has also opted to map a volume " "from the cinder-volume store to " "the third virtual disk, vdc, on this instance." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml191(para) msgid "Figure 2.2. Instance creation from image and run time state" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml194(title) msgid "Launch VM Instance" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml201(para) msgid "" "The OpenStack system copies the base image from the image store to local " "disk which is used as the first disk of the instance (vda). Having small " "images will result in faster start up of your instances as less data needs " "to be copied across the network. The system also creates a new empty disk " "image to present as the second disk (vdb). Be aware that the second disk is " "an empty disk with an emphemeral life as it is destroyed when you delete the" " instance. The compute node attaches to the requested cinder-volume using iSCSI and maps this to " "the third disk (vdc) as requested. The vCPU and memory resources are " "provisioned and the instance is booted from the first drive. The instance " "runs and changes data on the disks indicated in red in the diagram." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml215(para) msgid "" "There are many possible variations in the details of the scenario, " "particularly in terms of what the backing storage is and the network " "protocols used to attach and move storage. One variant worth mentioning here" " is that the ephemeral storage used for volumes vda and vdb in this example " "may be backed by network storage rather than local disk. The details are " "left for later chapters." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml222(guilabel) #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml231(title) msgid "End State" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml223(para) msgid "" "Once the instance has served its purpose and is deleted all state is " "reclaimed, except the persistent volume. The ephemeral storage is purged. " "Memory and vCPU resources are released. And of course the image has remained" " unchanged throughout." msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml228(para) msgid "Figure 2.3. End state of image and volume after instance exits" msgstr "" #: ./doc/training-guides/module001-ch005-vm-provisioning-walk-through.xml238(para) msgid "" "Once you launch a VM in OpenStack, there's something more going on in the " "background. To understand what's happening behind the dashboard, lets take a" " deeper dive into OpenStack’s VM provisioning. For launching a VM, you can " "either use the command-line interfaces or the OpenStack dashboard." msgstr "" #: ./doc/training-guides/operator-editing-code.xml6(title) msgid "Editing Code" msgstr "" #: ./doc/training-guides/operator-editing-code.xml8(title) msgid "Get Tools and Accounts" msgstr "" #: ./doc/training-guides/operator-editing-code.xml11(para) msgid "" "First create a GitHub account at github.com." msgstr "" #: ./doc/training-guides/operator-editing-code.xml16(para) msgid "" "Check out https://wiki.openstack.org/wiki/Documentation/HowTo" " for more extensive setup instructions." msgstr "" #: ./doc/training-guides/operator-editing-code.xml22(para) msgid "" "Download and install Git from http://git-scm.com/downloads." msgstr "" #: ./doc/training-guides/operator-editing-code.xml27(para) msgid "Create your local repository directory:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml28(replaceable) #: ./doc/training-guides/operator-editing-code.xml222(replaceable) #: ./doc/training-guides/operator-editing-code.xml268(replaceable) msgid "username" msgstr "" #: ./doc/training-guides/operator-editing-code.xml31(title) msgid "Install SourceTree" msgstr "" #: ./doc/training-guides/operator-editing-code.xml34(para) msgid "" "http://www.sourcetreeapp.com/download/." msgstr "" #: ./doc/training-guides/operator-editing-code.xml39(para) msgid "Ignore the Atlassian Bitbucket and Stack setup." msgstr "" #: ./doc/training-guides/operator-editing-code.xml43(para) msgid "Add your GitHub username and password." msgstr "" #: ./doc/training-guides/operator-editing-code.xml47(para) msgid "Set your local repository location." msgstr "" #: ./doc/training-guides/operator-editing-code.xml53(title) msgid "Install an XML editor" msgstr "" #: ./doc/training-guides/operator-editing-code.xml56(para) msgid "" "You can download a 30 day trial of Oxygen. The floating licenses donated by " "OxygenXML have all been handed out.http://www.oxygenxml.com/download_oxygenxml_editor.html" msgstr "" #: ./doc/training-guides/operator-editing-code.xml63(para) msgid "" "AND/OR PyCharm http://download.jetbrains.com/python/pycharm-" "community-3.0.1.dmg" msgstr "" #: ./doc/training-guides/operator-editing-code.xml68(para) msgid "AND/OR You can use emacs or vi editors." msgstr "" #: ./doc/training-guides/operator-editing-code.xml70(para) msgid "Here are some great resources on DocBook and Emacs' NXML mode:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml76(link) msgid "http://paul.frields.org/2011/02/09/xml-editing-with-emacs/" msgstr "" #: ./doc/training-guides/operator-editing-code.xml81(link) msgid "https://fedoraproject.org/wiki/How_to_use_Emacs_for_XML_editing" msgstr "" #: ./doc/training-guides/operator-editing-code.xml86(link) msgid "http://infohost.nmt.edu/tcc/help/pubs/nxml/" msgstr "" #: ./doc/training-guides/operator-editing-code.xml89(para) msgid "If you prefer vi, there are ways to make DocBook editing easier:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml95(link) msgid "https://fedoraproject.org/wiki/Editing_DocBook_with_Vi" msgstr "" #: ./doc/training-guides/operator-editing-code.xml102(title) msgid "Install Maven" msgstr "" #: ./doc/training-guides/operator-editing-code.xml105(para) msgid "Create the apache-maven directory:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml111(para) msgid "" "Copy the latest stable binary from http://maven.apache.org/download.cgi" " into /usr/local/apache-maven." msgstr "" #: ./doc/training-guides/operator-editing-code.xml118(para) msgid "" "Extract the distribution archive to the directory you wish to install Maven:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml121(para) msgid "" "The apache-maven-x.x.x " "subdirectory is created from the archive file, where " "x.x.x is your Maven version." msgstr "" #: ./doc/training-guides/operator-editing-code.xml124(para) msgid "Add the M2_HOME environment variable:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml128(para) msgid "Add the M2 environment variable:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml132(para) msgid "" "Optionally, add the MAVEN_OPTS environment variable to specify JVM " "properties. Use this environment variable to specify extra options to Maven:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml136(para) msgid "Add the M2 environment variable to your path:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml140(para) msgid "" "Make sure that JAVA_HOME is set to the location of your JDK and that " "$JAVA_HOME/bin is in your PATH environment variable." msgstr "" #: ./doc/training-guides/operator-editing-code.xml143(para) msgid "Run the mvn command to make sure that Maven is correctly installed:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml150(para) msgid "" "Create a Launchpad account: Visit " "https://login.launchpad.net/+new_account. After you create this " "account, the follow-up page is slightly confusing. It does not tell you that" " you are done. (It gives you the opportunity to change your -password, but " "you do not have to.)" msgstr "" #: ./doc/training-guides/operator-editing-code.xml161(para) msgid "" "Add at least one SSH key to your account profile. To do this, follow the " "instructions on " "https://help.launchpad.net/YourAccount/CreatingAnSSHKeyPair\"." msgstr "" #: ./doc/training-guides/operator-editing-code.xml169(para) msgid "" "Join The OpenStack Foundation: Visit https://www.openstack.org/join." " Among other privileges, this membership enables you to vote in elections " "and run for elected positions in The OpenStack Project. When you sign up for" " membership, make sure to give the same e-mail address you will use for code" " contributions because the primary e-mail address in your foundation profile" " must match the preferred e-mail that you set later in your Gerrit contact " "information." msgstr "" #: ./doc/training-guides/operator-editing-code.xml183(para) msgid "" "Validate your Gerrit identity: Add your public key to your gerrit identity " "by going to https://review.openstack.org, " "click the Sign In link, if you are not already logged" " in. At the top-right corner of the page select settings, then add your " "public ssh key under SSH Public Keys." msgstr "" #: ./doc/training-guides/operator-editing-code.xml192(para) msgid "" "The CLA: Every developer and contributor needs to sign the Individual " "Contributor License agreement. Visit https://review.openstack.org/ " "and click the Sign In link at the top-right corner of" " the page. Log in with your Launchpad ID. You can preview the text of the " "Individual CLA." msgstr "" #: ./doc/training-guides/operator-editing-code.xml203(para) msgid "" "Add your SSH keys to your GitHub account profile (the same one that was used" " in Launchpad). When you copy and paste the SSH key, include the ssh-rsa " "algorithm and computer identifier. If this is your first time setting up git" " and Github, be sure to run these steps in a Terminal window:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml214(para) msgid "" "Install git-review. If pip is not already installed, run easy_install " "pip as root to install it" " on a Mac or Ubuntu." msgstr "" #: ./doc/training-guides/operator-editing-code.xml221(para) msgid "Change to the directory:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml225(para) msgid "Clone the openstack-manuals repository:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml229(para) msgid "Change directory to the pulled repository:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml233(para) msgid "Test the ssh key setup:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml235(para) msgid "Then, enter your Launchpad account information." msgstr "" #: ./doc/training-guides/operator-editing-code.xml240(title) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml19(title) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml19(title) msgid "Fix a Documentation Bug" msgstr "" #: ./doc/training-guides/operator-editing-code.xml243(para) msgid "For this example, we are going to assume bug 1188522 and change 33713" msgstr "" #: ./doc/training-guides/operator-editing-code.xml247(para) msgid "" "Bring up https://bugs.launchpad.net/openstack-manuals" msgstr "" #: ./doc/training-guides/operator-editing-code.xml252(para) msgid "" "Select an unassigned bug that you want to fix. Start with something easy, " "like a syntax error." msgstr "" #: ./doc/training-guides/operator-editing-code.xml256(para) msgid "" "Using oXygen, open the " "/Users/username/code/openstack-manuals/doc/admin-" "guide-cloud/bk-admin-guide-cloud.xml master page for this " "example. It links together the rest of the material. Find the page with the " "bug. Open the page that is referenced in the bug description by selecting " "the content in the author view. Verify you have the correct page by visually" " inspecting the html page and the xml page." msgstr "" #: ./doc/training-guides/operator-editing-code.xml267(para) msgid "In the shell," msgstr "" #: ./doc/training-guides/operator-editing-code.xml271(para) msgid "Verify that you are on master:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml275(para) msgid "Create your working branch off master:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml279(para) msgid "Verify that you have the branch open through SourceTree" msgstr "" #: ./doc/training-guides/operator-editing-code.xml283(para) msgid "" "Correct the bug through oXygen. Toggle back and forth through the different " "views at the bottom of the editor." msgstr "" #: ./doc/training-guides/operator-editing-code.xml288(para) msgid "" "After you fix the bug, run maven to verify that the documentation builds " "successfully. To build a specific guide, look for a " "pom.xml file within a subdirectory, switch to that " "directory, then run the command in that directory:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml295(para) msgid "" "Verify that the HTML page reflects your changes properly. You can open the " "file from the command line by using the command" msgstr "" #: ./doc/training-guides/operator-editing-code.xml301(para) msgid "Add the changes:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml305(para) msgid "Commit the changes:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml309(para) msgid "" "Build committed changes locally by using . As part of the " "review process, Jenkins runs gating scripts to check that the patch is fine." " Locally, you can use the tool to run the same checks and " "ensure that a patch works. Install the tox package and run it from the top " "level directory which has the tox.ini file." msgstr "" #: ./doc/training-guides/operator-editing-code.xml315(para) msgid "Jenkins runs the following four checks. You can run them individually:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml318(para) msgid "" "Niceness tests (for example, to see extra whitespaces). Verify that the " "niceness check succeeds." msgstr "" #: ./doc/training-guides/operator-editing-code.xml322(para) msgid "Syntax checks. Verify that the syntax check succeeds." msgstr "" #: ./doc/training-guides/operator-editing-code.xml326(para) msgid "" "Check that no deleted files are referenced. Verify that the check succeeds." msgstr "" #: ./doc/training-guides/operator-editing-code.xml330(para) msgid "" "Build the manuals. It also generates a directory publish-" "docs/ that contains the built files for inspection. You can also " "use doc/local-files.html for looking at the manuals. " "Verify that the build succeeds." msgstr "" #: ./doc/training-guides/operator-editing-code.xml338(para) msgid "Submit the bug fix to Gerrit:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml342(para) msgid "" "Track the Gerrit review process athttps://review.openstack.org/#/c/33713." " Follow and respond inline to the Code Review requests and comments." msgstr "" #: ./doc/training-guides/operator-editing-code.xml349(para) msgid "" "Your change will be tested, track the Jenkins testing process at https://jenkins.openstack.org" msgstr "" #: ./doc/training-guides/operator-editing-code.xml355(para) msgid "If your change is rejected, complete the following steps:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml359(para) msgid "Respond to the inline comments if any." msgstr "" #: ./doc/training-guides/operator-editing-code.xml363(para) msgid "Update the status to work in progress." msgstr "" #: ./doc/training-guides/operator-editing-code.xml367(para) msgid "Checkout the patch from the Gerrit change review:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml372(para) msgid "Follow the recommended tweaks to the files." msgstr "" #: ./doc/training-guides/operator-editing-code.xml376(para) msgid "Rerun:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml380(para) msgid "Add your additional changes to the change log:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml385(para) msgid "Final commit:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml389(para) msgid "Update the Jenkins status to change completed." msgstr "" #: ./doc/training-guides/operator-editing-code.xml395(para) msgid "" "Follow the jenkins build progress at " "https://jenkins.openstack.org/view/Openstack-manuals/ . Note if the " "build process fails, the online documentation will not reflect your bug fix." msgstr "" #: ./doc/training-guides/operator-editing-code.xml406(title) msgid "Submit a Documentation Bug Fix" msgstr "" #: ./doc/training-guides/operator-editing-code.xml409(para) msgid "" "Bring up https://bugs.launchpad.net/openstack-" "manuals/+filebug." msgstr "" #: ./doc/training-guides/operator-editing-code.xml414(para) msgid "Give your bug a descriptive name." msgstr "" #: ./doc/training-guides/operator-editing-code.xml417(para) msgid "Verify if asked that it is not a duplicate." msgstr "" #: ./doc/training-guides/operator-editing-code.xml420(para) msgid "Add some more detail into the description field." msgstr "" #: ./doc/training-guides/operator-editing-code.xml423(para) msgid "" "Once submitted, select the assigned to pane and select \"assign to me\" or " "\"sarob\"." msgstr "" #: ./doc/training-guides/operator-editing-code.xml427(para) msgid "" "Follow the instructions for fixing a bug in the Fix a Documentation Bug " "section." msgstr "" #: ./doc/training-guides/operator-editing-code.xml433(title) #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml33(title) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml33(title) msgid "Create a Branch" msgstr "" #: ./doc/training-guides/operator-editing-code.xml435(para) msgid "" "This section uses the submission of this training material as the example." msgstr "" #: ./doc/training-guides/operator-editing-code.xml439(para) msgid "Create a bp/training-manuals branch:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml443(para) msgid "" "From the openstack-manuals repository, use the template user-" "story-includes-template.xml as the starting point for your user " "story. File bk001-ch003-associate-general.xml has at " "least one other included user story that you can use for additional help." msgstr "" #: ./doc/training-guides/operator-editing-code.xml453(para) msgid "" "Include the user story xml file into the bk001-ch003-associate-" "general.xml file. Follow the syntax of the existing " "xi:include statements." msgstr "" #: ./doc/training-guides/operator-editing-code.xml458(para) msgid "" "When your editing is completed. Double check Oxygen doesn't have any errors " "you are not expecting." msgstr "" #: ./doc/training-guides/operator-editing-code.xml462(para) msgid "" "Run maven locally to verify the build will run without errors. Look for a " "pom.xml file within a subdirectory, switch to that " "directory, then run the command in that directory:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml468(para) msgid "Add your changes into git:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml472(para) msgid "" "Commit the changes with good syntax. After entering the commit command, VI " "syntax applies, use \"i\" to insert and Esc to break out. \":wq\" to write " "and quit." msgstr "" #: ./doc/training-guides/operator-editing-code.xml484(para) msgid "" "Build committed changes locally using . As part of the " "review process, Jenkins runs gating scripts to check that the patch is fine." " Locally, you can use the tool to run the same checks and " "ensure that a patch works. Install the tox package and run it from the top " "level directory which has the tox.ini file." msgstr "" #: ./doc/training-guides/operator-editing-code.xml492(para) msgid "Submit your patch for review:" msgstr "" #: ./doc/training-guides/operator-editing-code.xml496(para) msgid "" "One last step. Go to the review page listed after you submitted your review " "and add the training core team as reviewers; Sean Roberts and Colin " "McNamara." msgstr "" #: ./doc/training-guides/operator-editing-code.xml500(para) msgid "" "More details on branching can be found here under Gerrit " "Workflow and the Git " "docs." msgstr "" #: ./doc/training-guides/operator-editing-code.xml508(title) msgid "Add Content to the Training Manuals" msgstr "" #: ./doc/training-guides/operator-editing-code.xml511(para) msgid "" "Getting Accounts and Tools: We cannot do " "this without operators and developers using and creating the content. Anyone" " can contribute content. You will need the tools to get started. Go to the " "Getting Tools and Accounts page." msgstr "" #: ./doc/training-guides/operator-editing-code.xml521(para) msgid "" "Pick a Card: Once you have your tools " "ready to go, you can assign some work to yourself. Go to the Training Trello/KanBan storyboard" " and assign a card / user story from the Sprint Backlog to yourself. If you " "do not have a Trello account, no problem, just create one. Email seanrob" "@yahoo-inc.com and you will have access. Move the card from the Sprint " "Backlog to Doing." msgstr "" #: ./doc/training-guides/operator-editing-code.xml534(para) msgid "" "Create the Content: Each card / user " "story from the KanBan story board will be a separate chunk of content you " "will add to the openstack-manuals repository openstack-training sub-project." msgstr "" #: ./doc/training-guides/operator-editing-code.xml542(para) msgid "" "Open the file st-training-guides.xml with" " your XML editor. All the content starts with the set file st-" "training-guides.xml. The XML structure follows the hierarchy Set " "-> Book -> Chapter -> Section. The st-training-" "guides.xml file holds the set level. Notice the set file uses " "xi:include statements to include the books. We want to open the" " associate book. Open the associate book and you will see the chapter " "include statements. These are the chapters that make up the Associate " "Training Guide book." msgstr "" #: ./doc/training-guides/operator-editing-code.xml558(para) msgid "" "Create a branch by using the card number as associate-card-XXX where " "XXX is the card number. Review Creating a Branch again for instructions on how " "to complete the branch merge." msgstr "" #: ./doc/training-guides/operator-editing-code.xml569(para) msgid "" "Copy the user-story-includes-template.xml to associate-card-XXX.xml." msgstr "" #: ./doc/training-guides/operator-editing-code.xml575(para) msgid "" "Open the bk001-ch003-asssociate-general.xml file and " "add <xi:include href=\"associate-card-" "XXX.xml\">." msgstr "" #: ./doc/training-guides/operator-editing-code.xml581(para) msgid "" "Side by side, open associate-card-XXX.xml" " with your XML editor and open the Ubuntu 12.04 Install " "Guide with your HTML browser." msgstr "" #: ./doc/training-guides/operator-editing-code.xml588(para) msgid "" "Find the HTML content to include. Find the XML file that matches the HTML. " "Include the whole page using a simple href like <xi:include href=\"associate-card-XXX.xml\"> " "or include a section using xpath like <xi:include" " href=\"../basic-install/src/basic-install_controller-common.xml\" " "xpointer=\"xmlns(db=http://docbook.org/ns/docbook) xpath(//*[@xml:id = " "'controller-os'])\"> . Review the user-story-" "includes-template.xml file for the whole syntax." msgstr "" #: ./doc/training-guides/operator-editing-code.xml603(para) msgid "" "Copy in other content sources including the Aptira content, a description of" " what the section aims to teach, diagrams, and quizzes. If you include " "content from another source like Aptira content, add a paragraph that " "references the file and/or HTTP address from where the content came." msgstr "" #: ./doc/training-guides/operator-editing-code.xml612(para) msgid "" "Verify the code is good by running and by reviewing the " "local HTML in file:///Users/username/code" "/openstack-manuals/doc/training-guides/target/docbkx/webhelp/training-" "guides/content/." msgstr "" #: ./doc/training-guides/operator-editing-code.xml619(para) msgid "Merge the branch." msgstr "" #: ./doc/training-guides/operator-editing-code.xml622(para) msgid "Move the card from Doing to Done." msgstr "" #: ./doc/training-guides/card025.xml6(title) msgid "Role of the Controller Node" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch008-queues-messaging.xml11(None) msgid "@@image: 'figures/image04.png'; md5=dd0c42b457e2b17fd94e4f62c16b9c37" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch008-queues-messaging.xml47(None) msgid "@@image: 'figures/image24.png'; md5=aea2956c5e4f01e06171d8d5e1de49b5" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch008-queues-messaging.xml149(None) #: ./doc/training-guides/module001-ch008-queues-messaging.xml207(None) msgid "@@image: 'figures/image20.png'; md5=c2cab17b6ee560943403c1d998d7a9d7" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch008-queues-messaging.xml184(None) msgid "@@image: 'figures/image28.png'; md5=c813069a23d72a7a3f519d896270a62a" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml6(title) #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml28(title) msgid "OpenStack Messaging and Queues" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml8(title) msgid "Messaging in OpenStack" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml15(para) msgid "" "AMQP is the messaging technology chosen by the OpenStack cloud. The AMQP " "broker, either RabbitMQ or Qpid, sits between any two Nova components and " "allows them to communicate in a loosely coupled fashion. More precisely, " "Nova components (the compute fabric of OpenStack) use Remote Procedure Calls" " (RPC hereinafter) to communicate to one another; however such a paradigm is" " built atop the publish/subscribe paradigm so that the following benefits " "can be achieved:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml25(para) msgid "" "Decoupling between client and servant (such as the client does not need to " "know where the servant reference is)." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml30(para) msgid "" "Full a-synchronism between client and servant (such as the client does not " "need the servant to run at the same time of the remote call)." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml35(para) msgid "" "Random balancing of remote calls (such as if more servants are up and " "running, one-way calls are transparently dispatched to the first available " "servant)." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml40(para) msgid "" "Nova uses direct, fanout, and topic-based exchanges. The architecture looks " "like the one depicted in the figure below:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml44(title) msgid "AMQP" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml51(para) msgid "" "Nova implements RPC (both request+response, and one-way, respectively " "nicknamed ‘rpc.call’ and ‘rpc.cast’) over AMQP by providing an adapter class" " which take cares of marshaling and un-marshaling of messages into function " "calls. Each Nova service, such as Compute, Scheduler, and so on, creates two" " queues at the initialization time, one which accepts messages with routing " "keys ‘NODE-TYPE.NODE-ID’, for example, compute.hostname, and another, which " "accepts messages with routing keys as generic ‘NODE-TYPE’, for example " "compute. The former is used specifically when Nova-API needs to redirect " "commands to a specific node like ‘euca-terminate instance’. In this case, " "only the compute node whose host’s hypervisor is running the virtual machine" " can kill the instance. The API acts as a consumer when RPC calls are " "request/response, otherwise is acts as publisher only." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml64(guilabel) msgid "Nova RPC Mappings" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml65(para) msgid "" "The figure below shows the internals of a message broker node (referred to " "as a RabbitMQ node in the diagrams) when a single instance is deployed and " "shared in an OpenStack cloud. Every component within Nova connects to the " "message broker and, depending on its personality, such as a compute node or " "a network node, may use the queue either as an Invoker (such as API or " "Scheduler) or a Worker (such as Compute or Network). Invokers and Workers do" " not actually exist in the Nova object model, but in this example they are " "used as an abstraction for the sake of clarity. An Invoker is a component " "that sends messages in the queuing system using and " ". A worker is a component that receives messages from the " "queuing system and replies accordingly to rcp.call operations." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml78(para) msgid "Figure 2 shows the following internal elements:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml81(para) msgid "" "Topic Publisher: A Topic Publisher comes " "to life when an rpc.call or an rpc.cast operation is executed; this object " "is instantiated and used to push a message to the queuing system. Every " "publisher connects always to the same topic-based exchange; its life-cycle " "is limited to the message delivery." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml89(para) msgid "" "Direct Consumer: A Direct Consumer comes " "to life if (an only if) a rpc.call operation is executed; this object is " "instantiated and used to receive a response message from the queuing system;" " Every consumer connects to a unique direct-based exchange via a unique " "exclusive queue; its life-cycle is limited to the message delivery; the " "exchange and queue identifiers are determined by a UUID generator, and are " "marshaled in the message sent by the Topic Publisher (only rpc.call " "operations)." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml100(para) msgid "" "Topic Consumer: A Topic Consumer comes to" " life as soon as a Worker is instantiated and exists throughout its life-" "cycle; this object is used to receive messages from the queue and it invokes" " the appropriate action as defined by the Worker role. A Topic Consumer " "connects to the same topic-based exchange either via a shared queue or via a" " unique exclusive queue. Every Worker has two topic consumers, one that is " "addressed only during rpc.cast operations (and it connects to a shared queue" " whose exchange key is ‘topic’) and the other that is addressed only during " "rpc.call operations (and it connects to a unique queue whose exchange key is" " ‘topic.host’)." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml114(para) msgid "" "Direct Publisher: A Direct Publisher " "comes to life only during rpc.call operations and it is instantiated to " "return the message required by the request/response operation. The object " "connects to a direct-based exchange whose identity is dictated by the " "incoming message." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml122(para) msgid "" "Topic Exchange: The Exchange is a routing" " table that exists in the context of a virtual host (the multi-tenancy " "mechanism provided by Qpid or RabbitMQ); its type (such as topic vs. direct)" " determines the routing policy; a message broker node will have only one " "topic-based exchange for every topic in Nova." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml130(para) msgid "" "Direct Exchange: This is a routing table " "that is created during rpc.call operations; there are many instances of this" " kind of exchange throughout the life-cycle of a message broker node, one " "for each rpc.call invoked." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml137(para) msgid "" "Queue Element: A Queue is a message " "bucket. Messages are kept in the queue until a Consumer (either Topic or " "Direct Consumer) connects to the queue and fetch it. Queues can be shared or" " can be exclusive. Queues whose routing key is ‘topic’ are shared amongst " "Workers of the same personality." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml146(title) #: ./doc/training-guides/module001-ch008-queues-messaging.xml181(title) #: ./doc/training-guides/module001-ch008-queues-messaging.xml204(title) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml280(para) #: ./doc/training-guides/lab001-control-node.xml128(emphasis) msgid "RabbitMQ" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml153(guilabel) msgid "RPC Calls" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml154(para) msgid "The diagram below shows the message flow during an rp.call operation:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml158(para) msgid "" "A Topic Publisher is instantiated to send the message request to the queuing" " system; immediately before the publishing operation. A Direct Consumer is " "instantiated to wait for the response message." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml164(para) msgid "" "Once the message is dispatched by the exchange, it is fetched by the Topic " "Consumer dictated by the routing key (such as ‘topic.host’) and passed to " "the Worker in charge of the task." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml170(para) msgid "" "Once the task is completed, a Direct Publisher is allocated to send the " "response message to the queuing system." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml175(para) msgid "" "Once the message is dispatched by the exchange, it is fetched by the Direct " "Consumer dictated by the routing key (such as ‘msg_id’) and passed to the " "Invoker." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml188(guilabel) msgid "RPC Casts" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml189(para) msgid "The diagram below the message flow during an rp.cast operation:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml193(para) msgid "" "A Topic Publisher is instantiated to send the message request to the queuing" " system." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml197(para) msgid "" "Once the message is dispatched by the exchange, it is fetched by the Topic " "Consumer dictated by the routing key (such as ‘topic’) and passed to the " "Worker in charge of the task." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml211(guilabel) msgid "AMQP Broker Load" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml212(para) msgid "" "At any given time the load of a message broker node running either Qpid or " "RabbitMQ is a function of the following parameters:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml217(para) msgid "" "Throughput of API calls: the number of API calls (more precisely rpc.call " "ops) being served by the OpenStack cloud dictates the number of direct-based" " exchanges, related queues and direct consumers connected to them." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml223(para) msgid "" "Number of Workers: there is one queue shared amongst workers with the same " "personality; however there are as many exclusive queues as the number of " "workers; the number of workers dictates also the number of routing keys " "within the topic-based exchange, which is shared amongst all workers." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml231(para) msgid "" "The figure below shows the status of a RabbitMQ node after Nova components’ " "bootstrap in a test environment. Exchanges and queues being created by Nova " "components are:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml236(para) msgid "Exchanges" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml241(para) msgid "nova (topic exchange)" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml246(para) msgid "Queues" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml251(para) msgid "compute.phantom (phantom is the hostname)" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml254(para) msgid "compute" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml257(para) msgid "network.phantom (phantom is the hostname)" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml260(para) msgid "network" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml263(para) msgid "scheduler.phantom (phantom is the hostname)" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml266(para) msgid "scheduler" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml269(guilabel) msgid "RabbitMQ Gotchas" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml270(para) msgid "" "Nova uses Kombu to connect to the RabbitMQ environment. Kombu is a Python " "library that in turn uses AMQPLib, a library that implements the standard " "AMQP 0.8 at the time of writing. When using Kombu, Invokers and Workers need" " the following parameters in order to instantiate a Connection object that " "connects to the RabbitMQ server (please note that most of the following " "material can be also found in the Kombu documentation; it has been " "summarized and revised here for the sake of clarity):" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml280(para) msgid "" "Hostname: The hostname to the AMQP " "server." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml284(para) msgid "" "Userid: A valid username used to " "authenticate to the server." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml288(para) msgid "" "Password: The password used to " "authenticate to the server." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml292(para) msgid "" "Virtual_host: The name of the virtual " "host to work with. This virtual host must exist on the server, and the user " "must have access to it. Default is “/”." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml298(para) msgid "" "Port: The port of the AMQP server. " "Default is 5672 (amqp)." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml302(para) msgid "The following parameters are default:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml305(para) msgid "" "Insist: Insist on connecting to a server." " In a configuration with multiple load-sharing servers, the Insist option " "tells the server that the client is insisting on a connection to the " "specified server. Default is False." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml312(para) msgid "" "Connect_timeout: The timeout in seconds " "before the client gives up connecting to the server. The default is no " "timeout." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml317(para) msgid "" "SSL: Use SSL to connect to the server. " "The default is False." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml321(para) msgid "More precisely consumers need the following parameters:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml324(para) msgid "" "Connection: The above mentioned " "Connection object." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml328(para) msgid "Queue: Name of the queue." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml332(para) msgid "" "Exchange: Name of the exchange the queue " "binds to." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml336(para) msgid "" "Routing_key: The interpretation of the " "routing key depends on the value of the exchange_type attribute." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml343(para) msgid "" "Direct exchange: If the routing key " "property of the message and the routing_key attribute of the queue are " "identical, then the message is forwarded to the queue." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml349(para) msgid "" "Fanout exchange: Messages are forwarded " "to the queues bound the exchange, even if the binding does not have a key." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml354(para) msgid "" "Topic exchange: If the routing key " "property of the message matches the routing key of the key according to a " "primitive pattern matching scheme, then the message is forwarded to the " "queue. The message routing key then consists of words separated by dots " "(”.”, like domain names), and two special characters are available; star " "(“”) and hash (“#”). The star matches any word, and the hash matches zero or" " more words. For example ”.stock.#” matches the routing keys “usd.stock” and" " “eur.stock.db” but not “stock.nasdaq”." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml368(para) msgid "" "Durable: This flag determines the " "durability of both exchanges and queues; durable exchanges and queues remain" " active when a RabbitMQ server restarts. Non-durable exchanges/queues " "(transient exchanges/queues) are purged when a server restarts. It is worth " "noting that AMQP specifies that durable queues cannot bind to transient " "exchanges. Default is True." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml377(para) msgid "" "Auto_delete: If set, the exchange is " "deleted when all queues have finished using it. Default is False." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml382(para) msgid "" "Exclusive: Exclusive queues (such as non-" "shared) may only be consumed from by the current connection. When exclusive " "is on, this also implies auto_delete. Default is False." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml388(para) msgid "" "Exchange_type: AMQP defines several " "default exchange types (routing algorithms) that covers most of the common " "messaging use cases." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml393(para) msgid "" "Auto_ack: Acknowledgement is handled " "automatically once messages are received. By default auto_ack is set to " "False, and the receiver is required to manually handle acknowledgment." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml399(para) msgid "" "No_ack: It disables acknowledgement on " "the server-side. This is different from auto_ack in that acknowledgement is " "turned off altogether. This functionality increases performance but at the " "cost of reliability. Messages can get lost if a client dies before it can " "deliver them to the application." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml407(para) msgid "" "Auto_declare: If this is True and the " "exchange name is set, the exchange will be automatically declared at " "instantiation. Auto declare is on by default. Publishers specify most the " "parameters of consumers (they do not specify a queue name), but they can " "also specify the following:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml415(para) msgid "" "Delivery_mode: The default delivery mode " "used for messages. The value is an integer. The following delivery modes are" " supported by RabbitMQ:" msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml422(para) msgid "" "1 or “transient”: The message is " "transient. Which means it is stored in memory only, and is lost if the " "server dies or restarts." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml427(para) msgid "" "2 or “persistent”: The message is " "persistent. Which means the message is stored both in-memory, and on disk, " "and therefore preserved if the server dies or restarts." msgstr "" #: ./doc/training-guides/module001-ch008-queues-messaging.xml433(para) msgid "" "The default value is 2 (persistent). During a send operation, Publishers can" " override the delivery mode of messages so that, for example, transient " "messages can be sent over a durable queue." msgstr "" #: ./doc/training-guides/bk001-associate-training-guide.xml5(title) msgid "Associate Training Guide" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml6(title) msgid "Build the Training Cluster, Scripted" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml9(link) msgid "" "Extract the scripts locally by downloading and running the scripts tar file." msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml11(para) msgid "" "Currently, only */Scripts/ folders content are being " "tested. Run the ~/Scripts/test_scripts.sh file to test " "all scripts at once." msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml16(title) msgid "To test scripts" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml18(title) msgid "Set up the test environment" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml19(para) msgid "" "To use Virtual Box as test environment, you must attach the following " "network adapters:" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml23(para) msgid "" "Host-Only/ Bridged -- 10.10.10.51 (Guest) -- 10.10.10.xx (Host IP for Host-" "Only)" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml27(para) msgid "" "Host-Only/ Bridged -- 192.168.100.51 (Guest) -- 192.168.100.xx (Host IP for " "Host-Only)" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml31(para) msgid "" "Bridged/NAT -- DHCP -- These Scripts should be run without internet " "connection after Pre-Install.sh. The Templates/* should be changed to the " "required IP Addresses for custom networks." msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml39(title) msgid "Test scripts individually" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml40(para) msgid "" "Run the shell scripts in the Scripts folder to verify " "they run correctly. Do not install Virtual Box, although it is recommended " "because your host machine might fail." msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml43(para) msgid "" "To test the scripts, run them. Some scripts require input parameters. If you" " do not want to run them manually, run the " "Scripts/test_scripts.sh file. Virtual Box guest add-ons" " are not required to test the scripts as units." msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml50(title) msgid "Test the entire system" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml51(para) msgid "" "You must install Virtual Box, Ubuntu Server 12.04 or 13.04, and the Virtual " "Box guest add-ons." msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml53(para) msgid "To install Virtual Box guest add-ons, complete one of these steps:" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml57(para) msgid "Install the Virtual Box guest add-ons through ISO:" msgstr "" #: ./doc/training-guides/training-cluster-by-script.xml65(para) msgid "Install the Virtual Box guest add-ons through Ubuntu repositories:" msgstr "" #: ./doc/training-guides/card074-horizon-snapshots.xml7(title) msgid "Creating Snapshots" msgstr "" #: ./doc/training-guides/card074-horizon-snapshots.xml8(emphasis) msgid "Creating image snapshots using Horizon" msgstr "" #: ./doc/training-guides/bk003-ch013-developer-how-to-participate-day-five-quiz.xml6(title) msgid "Developer How To Participate Day Five Quiz" msgstr "" #: ./doc/training-guides/bk003-ch013-developer-how-to-participate-day-five-quiz.xml8(title) msgid "Day 5, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/card071-create-cinder-horizon.xml7(title) msgid "Creating and Deleting Volumes" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml8(title) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml8(title) #: ./doc/training-guides/lab001-control-node.xml27(guilabel) msgid "Controller Node" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml10(title) msgid "Day 1, 11:15 to 12:30, 13:30 to 14:45" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml14(title) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml7(title) msgid "Overview Horizon and OpenStack CLI" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml21(title) #: ./doc/training-guides/module001-ch007-keystone-arch.xml6(title) msgid "Keystone Architecture" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml35(title) #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml28(title) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml35(title) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml28(title) msgid "Administration Tasks" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml37(title) msgid "Identity CI Commands" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml44(title) msgid "Identity User Management" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml51(title) msgid "Image CLI Commands" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml58(title) msgid "Image List Images" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml65(title) msgid "Image Adding Images" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml72(title) msgid "Image Manage Images" msgstr "" #: ./doc/training-guides/bk001-ch003-associate-controller-node.xml79(title) msgid "Message Queue Configuration" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab002-network-node.xml14(None) #: ./doc/training-guides/lab003-compute-node.xml17(None) #: ./doc/training-guides/lab001-control-node.xml13(None) #: ./doc/training-guides/lab000-virtualbox-basics.xml141(None) msgid "" "@@image: 'figures/lab000-virtual-box/image03.png'; " "md5=2f79252a8c2f058f103df5346c9cd6fb" msgstr "" #: ./doc/training-guides/lab002-network-node.xml7(emphasis) #: ./doc/training-guides/lab003-compute-node.xml10(emphasis) #: ./doc/training-guides/lab001-control-node.xml8(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml134(emphasis) msgid "Network Diagram :" msgstr "" #: ./doc/training-guides/lab002-network-node.xml18(para) #: ./doc/training-guides/lab003-compute-node.xml21(para) #: ./doc/training-guides/lab001-control-node.xml17(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml145(para) msgid "" "Publicly editable image source at https://docs.google.com/drawings/d/1GX3FXmkz3c_tUDpZXUVMpyIxicWuHs5fNsHvYNjwNNk/edit?usp=sharing" msgstr "" #: ./doc/training-guides/lab002-network-node.xml21(para) #: ./doc/training-guides/lab003-compute-node.xml24(para) #: ./doc/training-guides/lab001-control-node.xml20(para) msgid "" "Vboxnet0, Vboxnet1, Vboxnet2 - are virtual networks setup up by virtual" " box with your host machine. This is the way your host can communicate with " "the virtual machines. These networks are in turn used by virtual box VM’s " "for OpenStack networks, so that OpenStack’s services can communicate with " "each other." msgstr "" #: ./doc/training-guides/lab002-network-node.xml27(para) #: ./doc/training-guides/lab001-control-node.xml28(para) msgid "Start your Controller Node the one you setup in previous section." msgstr "" #: ./doc/training-guides/lab002-network-node.xml28(emphasis) #: ./doc/training-guides/lab003-compute-node.xml34(emphasis) msgid "Preparing Ubuntu 12.04" msgstr "" #: ./doc/training-guides/lab002-network-node.xml31(para) #: ./doc/training-guides/lab003-compute-node.xml37(para) #: ./doc/training-guides/lab001-control-node.xml33(para) msgid "After you install Ubuntu Server, go in sudo mode" msgstr "" #: ./doc/training-guides/lab002-network-node.xml37(para) #: ./doc/training-guides/lab003-compute-node.xml43(para) #: ./doc/training-guides/lab001-control-node.xml39(para) msgid "Add Havana repositories:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml44(para) #: ./doc/training-guides/lab002-network-node.xml226(para) #: ./doc/training-guides/lab003-compute-node.xml50(para) #: ./doc/training-guides/lab001-control-node.xml44(para) msgid "Update your system:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml52(para) #: ./doc/training-guides/lab003-compute-node.xml58(para) msgid "Install NTP and other services:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml58(para) #: ./doc/training-guides/lab003-compute-node.xml64(para) msgid "Configure NTP Server to Controller Node:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml67(para) msgid "" "Enable IP Forwarding by adding the following to " "/etc/sysctl.conf:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml75(para) #: ./doc/training-guides/lab003-compute-node.xml81(para) msgid "Run the following commands:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml84(emphasis) msgid "Open vSwitch" msgstr "" #: ./doc/training-guides/lab002-network-node.xml87(para) msgid "Install Open vSwitch Packages:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml93(para) msgid "Create the bridges:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml100(emphasis) #: ./doc/training-guides/lab003-compute-node.xml149(para) #: ./doc/training-guides/lab001-control-node.xml375(emphasis) msgid "Neutron" msgstr "" #: ./doc/training-guides/lab002-network-node.xml103(para) msgid "Neutron:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml109(para) msgid "Edit /etc/neutron/api-paste.ini:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml122(para) msgid "" "Edit " "/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml146(para) msgid "Edit /etc/neutron/metadata_agent.ini:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml162(para) msgid "Edit /etc/neutron/dhcp_agent.ini:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml168(para) msgid "Edit /etc/neutron/l3_agent.ini:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml176(para) msgid "Edit /etc/neutron/neutron.conf:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml193(para) msgid "Edit /etc/sudoers.d/neutron_sudoers::" msgstr "" #: ./doc/training-guides/lab002-network-node.xml200(para) msgid "Restart Services:" msgstr "" #: ./doc/training-guides/lab002-network-node.xml208(para) msgid "" "Edit Network Interfaces file /etc/network/interfaces:" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch003-core-projects.xml157(None) msgid "@@image: 'figures/image05.png'; md5=6471ce66920c1bc1b8bd3854cf836b06" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch003-core-projects.xml170(None) msgid "@@image: 'figures/image16.png'; md5=65b6013bd11cf821161a1ebe91d9968b" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch003-core-projects.xml201(None) msgid "@@image: 'figures/image06.png'; md5=ad0f7b815daaf1979c604ac862e99a87" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch003-core-projects.xml242(None) msgid "@@image: 'figures/image03.png'; md5=25ce40bfee4d12f6bf6d781e70b4402d" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch003-core-projects.xml296(None) msgid "@@image: 'figures/image17.png'; md5=b4720b3ca2aa5b05cebb27c251a81583" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch003-core-projects.xml426(None) msgid "@@image: 'figures/image26.png'; md5=4dd64736f53fb4d9398067a69e13f32b" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml3(title) msgid "OpenStack Projects, History, and Releases Overview" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml4(guilabel) msgid "Project history and releases overview." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml5(para) msgid "" "OpenStack is a cloud computing project that provides an Infrastructure-" "as-a-Service (IaaS). It is free open source software released under the " "terms of the Apache License. The project is managed by the OpenStack " "Foundation, a non-profit corporate entity established in September 2012 to " "promote OpenStack software and its community." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml11(para) msgid "" "More than 200 companies joined the project, among which are AMD, Brocade " "Communications Systems, Canonical, Cisco, Dell, EMC, Ericsson, Groupe Bull, " "HP, IBM, Inktank, Intel, NEC, Rackspace Hosting, Red Hat, SUSE Linux, " "VMware, and Yahoo!" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml15(para) msgid "" "The technology consists of a series of interrelated projects that control " "pools of processing, storage, and networking resources throughout a data " "center, all managed through a dashboard that gives administrators control " "while empowering its users to provision resources through a web interface." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml20(para) msgid "" "The OpenStack community collaborates around a six-month, time-based release " "cycle with frequent development milestones. During the planning phase of " "each release, the community gathers for the OpenStack Design Summit to " "facilitate developer working sessions and assemble plans." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml25(para) msgid "" "In July 2010 Rackspace Hosting and NASA jointly launched an open-source " "cloud-software initiative known as OpenStack. The OpenStack project intended" " to help organizations which offer cloud-computing services running on " "standard hardware. The first official release, code-named Austin, appeared " "four months later, with plans to release regular updates of the software " "every few months. The early code came from the NASA Nebula platform and from" " the Rackspace Cloud Files platform. In July 2011, Ubuntu Linux developers " "adopted OpenStack." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml34(emphasis) msgid "OpenStack Releases" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml38(td) msgid "Release Name" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml39(td) msgid "Release Date" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml40(td) msgid "Included Components" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml43(td) msgid "Austin" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml44(td) msgid "21 October 2010" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml45(td) msgid "Nova, Swift" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml48(td) msgid "Bexar" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml49(td) msgid "3 February 2011" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml50(td) #: ./doc/training-guides/module001-ch003-core-projects.xml55(td) #: ./doc/training-guides/module001-ch003-core-projects.xml60(td) msgid "Nova, Glance, Swift" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml53(td) msgid "Cactus" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml54(td) msgid "15 April 2011" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml58(td) msgid "Diablo" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml59(td) msgid "22 September 2011" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml63(td) msgid "Essex" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml64(td) msgid "5 April 2012" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml65(td) msgid "Nova, Glance, Swift, Horizon, Keystone" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml69(td) msgid "Folsom" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml70(td) msgid "27 September 2012" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml71(td) #: ./doc/training-guides/module001-ch003-core-projects.xml77(td) msgid "Nova, Glance, Swift, Horizon, Keystone, Quantum, Cinder" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml75(td) msgid "Grizzly" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml76(td) msgid "4 April 2013" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml81(td) #: ./doc/training-guides/sources/cinder/drivers.xml35(title) msgid "Havana" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml82(td) msgid "17 October 2013" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml83(td) msgid "Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml87(td) #: ./doc/training-guides/sources/cinder/drivers.xml66(title) msgid "Icehouse" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml88(td) msgid "April 2014" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml89(td) msgid "" "Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, (More to be added)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml95(para) msgid "Some OpenStack users include:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml98(para) msgid "PayPal / eBay" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml101(para) msgid "NASA" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml104(para) msgid "CERN" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml107(para) msgid "Yahoo!" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml110(para) msgid "Rackspace Cloud" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml113(para) msgid "HP Public Cloud" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml116(para) msgid "MercadoLibre.com" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml119(para) msgid "AT&T" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml122(para) msgid "KT (formerly Korea Telecom)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml125(para) msgid "Deutsche Telekom" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml128(para) msgid "Wikimedia Labs" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml131(para) msgid "Hostalia of Telef nica Group" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml134(para) msgid "SUSE Cloud solution" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml137(para) msgid "Red Hat OpenShift PaaS solution" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml140(para) msgid "Zadara Storage" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml143(para) msgid "Mint Services" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml146(para) msgid "GridCentric" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml149(para) msgid "" "OpenStack is a true and innovative open standard. For more user stories, see" " http://goo.gl/aF4lsL." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml152(guilabel) msgid "Release Cycle" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml154(title) msgid "Community Heartbeat" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml161(para) msgid "" "OpenStack is based on a coordinated 6-month release cycle with frequent " "development milestones. You can find a link to the current development " "release schedule here. The Release " "Cycle is made of four major stages:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml167(title) msgid "Various Projects under OpenStack" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml174(para) msgid "" "The creation of OpenStack took an estimated 249 years of effort (COCOMO " "model)." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml176(para) msgid "In a nutshell, OpenStack has:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml179(para) msgid "" "64,396 commits made by 1,128 contributors, with its first commit made in " "May, 2010." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml183(para) msgid "" "908,491 lines of code. OpenStack is written mostly in Python with an average" " number of source code comments." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml187(para) msgid "A code base with a long source history." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml190(para) msgid "Increasing Y-O-Y commits." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml193(para) msgid "" "A very large development team comprised of people from around the world." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml198(title) msgid "Programming Languages used to design OpenStack" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml205(para) msgid "" "For an overview of OpenStack refer to http://www.openstack.org or " "http://goo.gl/4q7nVI. Common questions and answers are also covered here." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml208(guilabel) msgid "Core Projects Overview" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml209(para) msgid "" "Let's take a dive into some of the technical aspects of OpenStack. Its " "scalability and flexibility are just some of the awesome features that make " "it a rock-solid cloud computing platform. The OpenStack core projects serve " "the community and its demands." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml214(para) msgid "" "Being a cloud computing platform, OpenStack consists of many core and " "incubated projects which makes it really good as an IaaS cloud computing " "platform/Operating System. The following points are the main components " "necessary to call it an OpenStack Cloud." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml220(guimenu) msgid "Components of OpenStack" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml221(para) msgid "" "OpenStack has a modular architecture with various code names for its " "components. OpenStack has several shared services that span the three " "pillars of compute, storage and networking, making it easier to implement " "and operate your cloud. These services - including identity, image " "management and a web interface - integrate the OpenStack components with " "each other as well as external systems to provide a unified experience for " "users as they interact with different cloud resources." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml229(guisubmenu) msgid "Compute (Nova)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml230(para) msgid "" "The OpenStack cloud operating system enables enterprises and service " "providers to offer on-demand computing resources, by provisioning and " "managing large networks of virtual machines. Compute resources are " "accessible via APIs for developers building cloud applications and via web " "interfaces for administrators and users. The compute architecture is " "designed to scale horizontally on standard hardware." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml238(title) msgid "" "OpenStack Compute: Provision and manage large networks of virtual machines" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml246(para) msgid "" "OpenStack Compute (Nova) is a cloud computing fabric controller (the main " "part of an IaaS system). It is written in Python and uses many external " "libraries such as Eventlet (for concurrent programming), Kombu (for AMQP " "communication), and SQLAlchemy (for database access). Nova's architecture is" " designed to scale horizontally on standard hardware with no proprietary " "hardware or software requirements and provide the ability to integrate with " "legacy systems and third party technologies. It is designed to manage and " "automate pools of computer resources and can work with widely available " "virtualization technologies, as well as bare metal and high-performance " "computing (HPC) configurations. KVM and XenServer are available choices for " "hypervisor technology, together with Hyper-V and Linux container technology " "such as LXC. In addition to different hypervisors, OpenStack runs on ARM." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml262(emphasis) msgid "Popular Use Cases:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml265(para) msgid "" "Service providers offering an IaaS compute platform or services higher up " "the stack" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml269(para) msgid "" "IT departments acting as cloud service providers for business units and " "project teams" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml273(para) msgid "Processing big data with tools like Hadoop" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml276(para) msgid "" "Scaling compute up and down to meet demand for web resources and " "applications" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml280(para) msgid "" "High-performance computing (HPC) environments processing diverse and " "intensive workloads" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml284(guisubmenu) #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml86(title) msgid "Object Storage(Swift)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml285(para) msgid "" "In addition to traditional enterprise-class storage technology, many " "organizations now have a variety of storage needs with varying performance " "and price requirements. OpenStack has support for both Object Storage and " "Block Storage, with many deployment options for each depending on the use " "case." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml292(title) msgid "" "OpenStack Storage: Object and Block storage for use with servers and " "applications" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml300(para) msgid "" "OpenStack Object Storage (Swift) is a scalable redundant storage system. " "Objects and files are written to multiple disk drives spread throughout " "servers in the data center, with the OpenStack software responsible for " "ensuring data replication and integrity across the cluster. Storage clusters" " scale horizontally simply by adding new servers. Should a server or hard " "drive fail, OpenStack replicates its content from other active nodes to new " "locations in the cluster. Because OpenStack uses software logic to ensure " "data replication and distribution across different devices, inexpensive " "commodity hard drives and servers can be used." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml311(para) #: ./doc/training-guides/module003-ch001-intro-objstore.xml24(para) msgid "" "Object Storage is ideal for cost effective, scale-out storage. It provides a" " fully distributed, API-accessible storage platform that can be integrated " "directly into applications or used for backup, archiving and data retention." " Block Storage allows block devices to be exposed and connected to compute " "instances for expanded storage, better performance and integration with " "enterprise storage platforms, such as NetApp, Nexenta and SolidFire." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml319(para) msgid "A few details on OpenStack’s Object Storage" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml322(para) #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml10(para) msgid "" "OpenStack provides redundant, scalable object storage using clusters of " "standardized servers capable of storing petabytes of data" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml327(para) #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml15(para) msgid "" "Object Storage is not a traditional file system, but rather a distributed " "storage system for static data such as virtual machine images, photo " "storage, email storage, backups and archives. Having no central \"brain\" or" " master point of control provides greater scalability, redundancy and " "durability." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml335(para) #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml23(para) msgid "" "Objects and files are written to multiple disk drives spread throughout " "servers in the data center, with the OpenStack software responsible for " "ensuring data replication and integrity across the cluster." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml341(para) #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml30(para) msgid "" "Storage clusters scale horizontally simply by adding new servers. Should a " "server or hard drive fail, OpenStack replicates its content from other " "active nodes to new locations in the cluster. Because OpenStack uses " "software logic to ensure data replication and distribution across different " "devices, inexpensive commodity hard drives and servers can be used in lieu " "of more expensive equipment." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml351(guisubmenu) msgid "Block Storage(Cinder)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml352(para) msgid "" "OpenStack Block Storage (Cinder) provides persistent block level storage " "devices for use with OpenStack compute instances. The block storage system " "manages the creation, attaching and detaching of the block devices to " "servers. Block storage volumes are fully integrated into OpenStack Compute " "and the Dashboard allowing for cloud users to manage their own storage " "needs. In addition to local Linux server storage, it can use storage " "platforms including Ceph, CloudByte, Coraid, EMC (VMAX and VNX), GlusterFS, " "IBM Storage (Storwize family, SAN Volume Controller, and XIV Storage " "System), Linux LIO, NetApp, Nexenta, Scality, SolidFire and HP (Store " "Virtual and StoreServ 3Par families). Block storage is appropriate for " "performance sensitive scenarios such as database storage, expandable file " "systems, or providing a server with access to raw block level storage. " "Snapshot management provides powerful functionality for backing up data " "stored on block storage volumes. Snapshots can be restored or used to create" " a new block storage volume." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml370(emphasis) msgid "A few points on OpenStack Block Storage:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml403(guisubmenu) msgid "Networking(Neutron)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml404(para) msgid "" "Today's data center networks contain more devices than ever before. From " "servers, network equipment, storage systems and security appliances, many of" " which are further divided into virtual machines and virtual networks. The " "number of IP addresses, routing configurations and security rules can " "quickly grow into the millions. Traditional network management techniques " "fall short of providing a truly scalable, automated approach to managing " "these next-generation networks. At the same time, users expect more control " "and flexibility with quicker provisioning." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml413(para) msgid "" "OpenStack Networking is a pluggable, scalable and API-driven system for " "managing networks and IP addresses. Like other aspects of the cloud " "operating system, it can be used by administrators and users to increase the" " value of existing data center assets. OpenStack Networking ensures the " "network will not be the bottleneck or limiting factor in a cloud deployment " "and gives users real self-service, even over their network configurations." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml422(title) msgid "" "OpenStack Networking: Pluggable, scalable, API-driven network and IP " "management" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml430(para) msgid "" "OpenStack Networking (Neutron, formerly Quantum) is a system for managing " "networks and IP addresses. Like other aspects of the cloud operating system," " it can be used by administrators and users to increase the value of " "existing data center assets. OpenStack Networking ensures the network will " "not be the bottleneck or limiting factor in a cloud deployment and gives " "users real self-service, even over their network configurations." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml438(para) msgid "" "OpenStack Neutron provides networking models for different applications or " "user groups. Standard models include flat networks or VLANs for separation " "of servers and traffic. OpenStack Networking manages IP addresses, allowing " "for dedicated static IPs or DHCP. Floating IPs allow traffic to be " "dynamically re routed to any of your compute resources, which allows you to " "redirect traffic during maintenance or in the case of failure. Users can " "create their own networks, control traffic and connect servers and devices " "to one or more networks. Administrators can take advantage of software-" "defined networking (SDN) technology like OpenFlow to allow for high levels " "of multi-tenancy and massive scale. OpenStack Networking has an extension " "framework allowing additional network services, such as intrusion detection " "systems (IDS), load balancing, firewalls and virtual private networks (VPN) " "to be deployed and managed." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml454(para) msgid "Networking Capabilities" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml457(para) msgid "" "OpenStack provides flexible networking models to suit the needs of different" " applications or user groups. Standard models include flat networks or VLANs" " for separation of servers and traffic." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml463(para) msgid "" "OpenStack Networking manages IP addresses, allowing for dedicated static IPs" " or DHCP. Floating IPs allow traffic to be dynamically re-routed to any of " "your compute resources, which allows you to redirect traffic during " "maintenance or in the case of failure." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml470(para) msgid "" "Users can create their own networks, control traffic and connect servers and" " devices to one or more networks." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml475(para) msgid "" "The pluggable backend architecture lets users take advantage of commodity " "gear or advanced networking services from supported vendors." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml480(para) msgid "" "Administrators can take advantage of software-defined networking (SDN) " "technology like OpenFlow to allow for high levels of multi-tenancy and " "massive scale." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml486(para) msgid "" "OpenStack Networking has an extension framework allowing additional network " "services, such as intrusion detection systems (IDS), load balancing, " "firewalls and virtual private networks (VPN) to be deployed and managed." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml493(guisubmenu) msgid "Dashboard(Horizon)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml494(para) msgid "" "OpenStack Dashboard (Horizon) provides administrators and users a graphical " "interface to access, provision and automate cloud-based resources. The " "design allows for third party products and services, such as billing, " "monitoring and additional management tools. Service providers and other " "commercial vendors can customize the dashboard with their own brand." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml500(para) msgid "" "The dashboard is just one way to interact with OpenStack resources. " "Developers can automate access or build tools to manage their resources " "using the native OpenStack API or the EC2 compatibility API." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml504(guisubmenu) msgid "Identity Service(Keystone)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml505(para) msgid "" "OpenStack Identity (Keystone) provides a central directory of users mapped " "to the OpenStack services they can access. It acts as a common " "authentication system across the cloud operating system and can integrate " "with existing backend directory services like LDAP. It supports multiple " "forms of authentication including standard username and password " "credentials, token-based systems, and Amazon Web Services log in credentials" " such as those used for EC2." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml513(para) msgid "" "Additionally, the catalog provides a query-able list of all of the services " "deployed in an OpenStack cloud in a single registry. Users and third-party " "tools can programmatically determine which resources they can access." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml517(para) msgid "The OpenStack Identity Service enables administrators to:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml521(para) msgid "Configure centralized policies across users and systems" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml525(para) msgid "" "Create users and tenants and define permissions for compute, storage, and " "networking resources by using role-based access control (RBAC) features" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml530(para) msgid "" "Integrate with an existing directory, like LDAP, to provide a single source " "of authentication across the enterprise" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml535(para) msgid "The OpenStack Identity Service enables users to:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml538(para) msgid "List the services to which they have access" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml541(para) msgid "Make API requests" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml544(para) msgid "Log into the web dashboard to create resources owned by their account" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml548(guisubmenu) msgid "Image Service(Glance)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml549(para) msgid "" "OpenStack Image Service (Glance) provides discovery, registration and " "delivery services for disk and server images. Stored images can be used as a" " template. They can also be used to store and catalog an unlimited number of" " backups. The Image Service can store disk and server images in a variety of" " back-ends, including OpenStack Object Storage. The Image Service API " "provides a standard REST interface for querying information about disk " "images and lets clients stream the images to new servers." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml558(para) msgid "Capabilities of the Image Service include:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml561(para) msgid "" "Administrators can create base templates from which their users can start " "new compute instances" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml565(para) msgid "" "Users can choose from available images, or create their own from existing " "servers" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml569(para) msgid "" "Snapshots can also be stored in the Image Service so that virtual machines " "can be backed up quickly" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml573(para) msgid "" "A multi-format image registry, the image service allows uploads of private " "and public images in a variety of formats, including:" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml578(para) msgid "Raw" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml581(para) msgid "Machine (kernel/ramdisk outside of image, also known as AMI)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml585(para) msgid "VHD (Hyper-V)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml588(para) msgid "VDI (VirtualBox)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml591(para) msgid "qcow2 (Qemu/KVM)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml594(para) msgid "VMDK (VMWare)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml597(para) msgid "OVF (VMWare, others)" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml600(para) msgid "" "To checkout the complete list of Core and Incubated projects under OpenStack" " check out OpenStack’s Launchpad Project Page here : http://goo.gl/ka4SrV" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml603(guisubmenu) msgid "Amazon Web Services compatibility" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml604(para) msgid "" "OpenStack APIs are compatible with Amazon EC2 and Amazon S3 and thus client " "applications written for Amazon Web Services can be used with OpenStack with" " minimal porting effort." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml608(guilabel) msgid "Governance" msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml609(para) msgid "" "OpenStack is governed by a non-profit foundation and its board of directors," " a technical committee and a user committee." msgstr "" #: ./doc/training-guides/module001-ch003-core-projects.xml612(para) msgid "" "The foundation's stated mission is by providing shared resources to help " "achieve the OpenStack Mission by Protecting, Empowering, and Promoting " "OpenStack software and the community around it, including users, developers " "and the entire ecosystem. Though, it has little to do with the development " "of the software, which is managed by the technical committee - an elected " "group that represents the contributors to the project, and has oversight on " "all technical matters." msgstr "" #: ./doc/training-guides/card009.xml6(title) msgid "Install Ubuntu" msgstr "" #: ./doc/training-guides/card043-ovs-in-network-node.xml7(title) msgid "OVS Installation and Configuration in Network node" msgstr "" #: ./doc/training-guides/module003-ch008-account-reaper.xml7(title) msgid "Account Reaper" msgstr "" #: ./doc/training-guides/module003-ch008-account-reaper.xml8(para) msgid "" "The Account Reaper removes data from deleted accounts in the background." msgstr "" #: ./doc/training-guides/module003-ch008-account-reaper.xml10(para) msgid "" "An account is marked for deletion by a reseller issuing a DELETE request on " "the account’s storage URL. This simply puts the value DELETED into the " "status column of the account_stat table in the account database (and " "replicas), indicating the data for the account should be deleted later." msgstr "" #: ./doc/training-guides/module003-ch008-account-reaper.xml15(para) msgid "" "There is normally no set retention time and no undelete; it is assumed the " "reseller will implement such features and only call DELETE on the account " "once it is truly desired the account’s data be removed. However, in order to" " protect the Swift cluster accounts from an improper or mistaken delete " "request, you can set a delay_reaping value in the [account-reaper] section " "of the account-server.conf to delay the actual deletion of data. At this " "time, there is no utility to undelete an account; one would have to update " "the account database replicas directly, setting the status column to an " "empty string and updating the put_timestamp to be greater than the " "delete_timestamp. (On the TODO list is writing a utility to perform this " "task, preferably through a ReST call.)" msgstr "" #: ./doc/training-guides/module003-ch008-account-reaper.xml28(para) msgid "" "The account reaper runs on each account server and scans the server " "occasionally for account databases marked for deletion. It will only trigger" " on accounts that server is the primary node for, so that multiple account " "servers aren’t all trying to do the same work at the same time. Using " "multiple servers to delete one account might improve deletion speed, but " "requires coordination so they aren’t duplicating efforts. Speed really isn’t" " as much of a concern with data deletion and large accounts aren’t deleted " "that often." msgstr "" #: ./doc/training-guides/module003-ch008-account-reaper.xml37(para) msgid "" "The deletion process for an account itself is pretty straightforward. For " "each container in the account, each object is deleted and then the container" " is deleted. Any deletion requests that fail won’t stop the overall process," " but will cause the overall process to fail eventually (for example, if an " "object delete times out, the container won’t be able to be deleted later and" " therefore the account won’t be deleted either). The overall process " "continues even on a failure so that it doesn’t get hung up reclaiming " "cluster space because of one troublesome spot. The account reaper will keep " "trying to delete an account until it eventually becomes empty, at which " "point the database reclaim process within the db_replicator will eventually " "remove the database files." msgstr "" #: ./doc/training-guides/module003-ch008-account-reaper.xml51(para) msgid "" "Sometimes a persistent error state can prevent some object or container from" " being deleted. If this happens, you will see a message such as “Account " "<name> has not been reaped since <date>” in the log. You can " "control when this is logged with the reap_warn_after value in the [account-" "reaper] section of the account-server.conf file. By default this is 30 days." msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml10(title) msgid "Days 7 to 8, 09:00 to 11:00, 11:15 to 12:30" msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml14(title) msgid "Review Associate Networking in OpenStack" msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml21(title) msgid "Review Associate OpenStack Networking Concepts" msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml28(title) #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml35(title) #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml35(title) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml28(title) msgid "Review Associate Administration Tasks" msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml29(para) #: ./doc/training-guides/bk004-architect-training-guide.xml8(para) #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml51(para) #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml72(para) msgid "TBD" msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml32(title) msgid "Operator OpenStack Neutron Use Cases" msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml39(title) msgid "Operator OpenStack Neutron Security" msgstr "" #: ./doc/training-guides/bk002-ch010-operator-network-node.xml46(title) msgid "Operator OpenStack Neutron Floating IPs" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml107(None) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml727(None) msgid "@@image: 'figures/image14.png'; md5=b3fcef10808f967f7e87f98d096bf2f9" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml195(None) msgid "@@image: 'figures/image25.png'; md5=4c70d08fd2a0aedc8342ab61d3c62a94" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml212(None) msgid "@@image: 'figures/image15.png'; md5=0e003df4e8edbde4ac9c11165d897e84" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml638(None) msgid "@@image: 'figures/image00.png'; md5=6b0f5cb3009d447334ff8b5c5b2cd121" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml716(None) msgid "@@image: 'figures/image30.png'; md5=d9eef0f7a1f99eee18a99e677c7c710b" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml8(guilabel) msgid "How can I use an OpenStack cloud?" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml9(para) msgid "" "As an OpenStack cloud end user, you can provision your own resources within " "the limits set by administrators. The examples in this guide show you how to" " complete these tasks by using the OpenStack dashboard and command-line " "clients. The dashboard, also known as horizon, is a Web-based graphical " "interface. The command-line clients let you run simple commands to create " "and manage resources in a cloud and automate tasks by using scripts. Each of" " the core OpenStack projects has its own command-line client." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml18(para) msgid "You can modify these examples for your specific use cases." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml20(para) msgid "" "In addition to these ways of interacting with a cloud, you can access the " "OpenStack APIs indirectly through cURLcommands or open SDKs, or directly " "through the APIs. You can automate access or build tools to manage resources" " and services by using the native OpenStack APIs or the EC2 compatibility " "API." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml25(para) msgid "" "To use the OpenStack APIs, it helps to be familiar with HTTP/1.1, RESTful " "web services, the OpenStack services, and JSON or XML data serialization " "formats." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml28(guilabel) msgid "OpenStack dashboard" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml29(para) msgid "" "As a cloud end user, the OpenStack dashboard lets you to provision your own " "resources within the limits set by administrators. You can modify these " "examples to create other types and sizes of server instances." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml34(para) msgid "" "The following requirements must be fulfilled to access the OpenStack " "dashboard:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml38(para) msgid "The cloud operator has set up an OpenStack cloud." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml42(para) msgid "" "You have a recent Web browser that supports HTML5. It must have cookies and " "JavaScript enabled. To use the VNC client for the dashboard, which is based " "on noVNC, your browser must support HTML5 Canvas and HTML5 WebSockets. For " "more details and a list of browsers that support noVNC, seehttps://github.com/kanaka/noVNC/blob/master/README.md," " andhttps://github.com/kanaka/noVNC/wiki/Browser-support, " "respectively." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml60(para) msgid "" "Learn how to log in to the dashboard and get a short overview of the " "interface." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml62(guilabel) msgid "Log in to the dashboard" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml63(para) msgid "To log in to the dashboard" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml66(para) msgid "Ask your cloud operator for the following information:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml72(para) msgid "" "The hostname or public IP address from which you can access the dashboard." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml76(para) msgid "" "The dashboard is available on the node that has the nova-dashboard server " "role." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml80(para) msgid "The username and password with which you can log in to the dashboard." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml86(para) msgid "" "Open a Web browser that supports HTML5. Make sure that JavaScript and " "cookies are enabled." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml90(para) msgid "" "As a URL, enter the host name or IP address that you got from the cloud " "operator." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml95(link) msgid "https://IP_ADDRESS_OR_HOSTNAME/" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml98(para) msgid "" "On the dashboard log in page, enter your user name and password and click " "Sign In." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml102(para) msgid "After you log in, the following page appears:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml104(title) msgid "OpenStack Dashboard - Overview" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml111(para) msgid "" "The top-level row shows the username that you logged in with. You can also " "access Settingsor Sign Outof the Web interface." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml114(para) msgid "" "If you are logged in as an end user rather than an admin user, the main " "screen shows only the Projecttab." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml116(guilabel) msgid "OpenStack dashboard – Project tab" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml117(para) msgid "" "This tab shows details for the projects, or projects, of which you are a " "member." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml119(para) msgid "" "Select a project from the drop-down list on the left-hand side to access the" " following categories:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml122(para) msgid "Shows basic reports on the project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml123(emphasis) msgid "Instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml124(para) msgid "Lists instances and volumes created by users of the project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml126(para) msgid "" "From here, you can stop, pause, or reboot any instances or connect to them " "through virtual network computing (VNC)." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml130(para) msgid "Lists volumes created by users of the project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml131(para) msgid "From here, you can create or delete volumes." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml132(emphasis) msgid "Images & Snapshots" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml134(para) msgid "" "Lists images and snapshots created by users of the project, plus any images " "that are publicly available. Includes volume snapshots. From here, you can " "create and delete images and snapshots, and launch instances from images and" " snapshots." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml139(emphasis) msgid "Access & Security" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml141(para) msgid "" "On the Security Groupstab, you can list, " "create, and delete security groups and edit rules for security groups." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml144(para) msgid "" "On the Keypairstab, you can list, create," " and import keypairs, and delete keypairs." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml146(para) msgid "" "On the Floating IPstab, you can allocate " "an IP address to or release it from a project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml149(para) msgid "" "On the API Accesstab, you can list the " "API endpoints." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml151(guilabel) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1059(guilabel) msgid "Manage images" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml152(para) msgid "" "During setup of OpenStack cloud, the cloud operator sets user permissions to" " manage images. Image upload and management might be restricted to only " "cloud administrators or cloud operators. Though you can complete most tasks " "with the OpenStack dashboard, you can manage images through only the glance " "and nova clients or the Image Service and Compute APIs." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml158(guilabel) msgid "Set up access and security" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml159(para) msgid "" "Before you launch a virtual machine, you can add security group rules to " "enable users to ping and SSH to the instances. To do so, you either add " "rules to the default security group or add a security group with rules. For " "information, seethe section called “Add " "security group rules”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml165(para) msgid "" "Keypairs are SSH credentials that are injected into images when they are " "launched. For this to work, the image must contain the cloud-init package. " "For information, seethe section called “Add keypairs”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml170(guilabel) msgid "Add security group rules" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml171(para) msgid "" "The following procedure shows you how to add rules to the default security " "group." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml173(para) msgid "To add rules to the default security group" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml176(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml295(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml388(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml645(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml684(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml761(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1009(para) msgid "Log in to the OpenStack dashboard." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml179(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml298(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml391(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml648(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml687(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml737(para) msgid "" "If you are a member of multiple projects, select a project from the drop-" "down list at the top of the Projecttab." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml184(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml303(para) msgid "Click the Access & Securitycategory." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml187(para) msgid "" "The dashboard shows the security groups that are available for this project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml192(title) msgid "OpenStack Dashboard - Security Groups" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml201(para) msgid "Select the default security group and click Edit Rules." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml205(para) msgid "The Security Group Rulespage appears:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml209(title) msgid "OpenStack Dashboard - Security Group Rules" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml218(para) msgid "Add a TCP rule" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml221(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml261(para) msgid "Click Add Rule." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml224(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml264(para) msgid "The Add Rulewindow appears." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml229(para) msgid "In the IP Protocollist, select TCP." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml232(para) msgid "In the Openlist, select Port." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml235(para) msgid "In the Portbox, enter 22." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml238(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml278(para) msgid "In the Sourcelist, select CIDR." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml241(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml281(para) msgid "In the CIDRbox, enter 0.0.0.0/0." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml244(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml284(para) msgid "Click Add." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml247(para) msgid "Port 22 is now open for requests from any IP address." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml251(para) msgid "" "If you want to accept requests from a particular range of IP addresses, " "specify the IP address block in the CIDRbox." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml258(para) msgid "Add an ICMP rule" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml269(para) msgid "In the IP Protocollist, select ICMP." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml272(para) msgid "In the Typebox, enter -1." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml275(para) msgid "In the Codebox, enter -1." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml287(guilabel) msgid "Add keypairs" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml288(para) msgid "" "Create at least one keypair for each project. If you have generated a " "keypair with an external tool, you can import it into OpenStack. The keypair" " can be used for multiple instances that belong to a project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml292(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml310(para) msgid "To add a keypair" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml306(para) msgid "" "Click the Keypairstab. The dashboard shows the keypairs that are available " "for this project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml313(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml325(para) msgid "Click Create Keypair." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml316(para) msgid "The Create Keypairwindow appears." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml321(para) msgid "In the Keypair Namebox, enter a name for your keypair." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml328(para) msgid "Respond to the prompt to download the keypair." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml333(para) msgid "To import a keypair" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml336(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml351(para) msgid "Click Import Keypair." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml339(para) msgid "The Import Keypairwindow appears." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml344(para) msgid "In the Keypair Namebox, enter the name of your keypair." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml348(para) msgid "In the Public Keybox, copy the public key." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml356(para) msgid "" "Save the *.pem file locally and change its permissions so that only you can " "read and write to the file:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml360(para) msgid "$ chmod 0600 MY_PRIV_KEY.pem" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml363(para) msgid "Use the ssh-addcommand to make the keypair known to SSH:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml367(para) msgid "$ ssh-add MY_PRIV_KEY.pem" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml370(para) msgid "The public key of the keypair is registered in the Nova database." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml372(para) msgid "The dashboard lists the keypair in the Access & Securitycategory." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml374(guilabel) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1466(guilabel) msgid "Launch instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml375(para) msgid "" "Instances are virtual machines that run inside the cloud. You can launch an " "instance directly from one of the available OpenStack images or from an " "image that you have copied to a persistent volume. The OpenStack Image " "Service provides a pool of images that are accessible to members of " "different projects." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml381(guilabel) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1617(guilabel) msgid "Launch an instance from an image" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml382(para) msgid "" "When you launch an instance from an image, OpenStack creates a local copy of" " the image on the respective compute node where the instance is started." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml385(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1620(para) msgid "To launch an instance from an image" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml396(para) msgid "Click the Images & Snapshotcategory." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml399(para) msgid "" "The dashboard shows the images that have been uploaded to OpenStack Image " "Service and are available for this project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml404(para) msgid "Select an image and click Launch." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml407(para) msgid "In the Launch Imagewindow, specify the following:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml413(para) msgid "Enter an instance name to assign to the virtual machine." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml417(para) msgid "" "From the Flavordrop-down list, select the size of the virtual machine to " "launch." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml421(para) msgid "Select a keypair." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml424(para) msgid "" "In case an image uses a static root password or a static key set (neither is" " recommended), you do not need to provide a keypair to launch the instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml429(para) msgid "" "In Instance Count, enter the number of virtual machines to launch from this " "image." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml433(para) msgid "Activate the security groups that you want to assign to the instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml437(para) msgid "" "Security groups are a kind of cloud firewall that define which incoming " "network traffic should be forwarded to instances. For details, seethe section called “Add " "security group rules”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml445(para) msgid "" "If you have not created any specific security groups, you can only assign " "the instance to the default security group." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml450(para) msgid "" "If you want to boot from volume, click the respective entry to expand its " "options. Set the options as described inthe" " section called “Launch an instance from a volume”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml462(para) msgid "" "Click Launch Instance. The instance is started on any of the compute nodes " "in the cloud." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml466(para) msgid "" "After you have launched an instance, switch to the Instancescategory to view" " the instance name, its (private or public) IP address, size, status, task, " "and power state." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml470(para) msgid "Figure 5. OpenStack dashboard – Instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml471(para) msgid "" "If you did not provide a keypair, security groups, or rules so far, by " "default the instance can only be accessed from inside the cloud through VNC " "at this point. Even pinging the instance is not possible. To access the " "instance through a VNC console, seethe section called “Get a console to " "an instance”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml481(guilabel) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1695(guilabel) msgid "Launch an instance from a volume" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml482(para) msgid "" "You can launch an instance directly from an image that has been copied to a " "persistent volume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml484(para) msgid "" "In that case, the instance is booted from the volume, which is provided by " "nova-volume, through iSCSI." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml486(para) msgid "" "For preparation details, seethe " "section called “Create or delete a volume”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml492(para) msgid "" "To boot an instance from the volume, especially note the following steps:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml496(para) msgid "" "To be able to select from which volume to boot, launch an instance from an " "arbitrary image. The image you select does not boot. It is replaced by the " "image on the volume that you choose in the next steps." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml502(para) msgid "" "In case you want to boot a Xen image from a volume, note the following " "requirement: The image you launch in must be the same type, fully " "virtualized or paravirtualized, as the one on the volume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml508(para) msgid "Select the volume or volume snapshot to boot from." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml512(para) msgid "Enter a device name. Enter vda for KVM images or xvda for Xen images." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml517(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1701(para) msgid "To launch an instance from a volume" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml518(para) msgid "" "You can launch an instance directly from one of the images available through" " the OpenStack Image Service or from an image that you have copied to a " "persistent volume. When you launch an instance from a volume, the procedure " "is basically the same as when launching an instance from an image in " "OpenStack Image Service, except for some additional steps." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml526(para) msgid "" "Create a volume as described inthe " "section called “Create or delete a volume”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml534(para) msgid "It must be large enough to store an unzipped image." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml538(para) msgid "Create an image." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml541(para) msgid "" "For details, see Creating images " "manually in the OpenStack Virtual Machine Image " "Guide." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml548(para) msgid "Launch an instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml551(para) msgid "" "Attach the volume to the instance as described inthe" " section called “Attach volumes to instances”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml559(para) msgid "" "Assuming that the attached volume is mounted as /dev/vdb, use one of the " "following commands to copy the image to the attached volume:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml566(para) msgid "For a raw image:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml569(para) msgid "$ cat IMAGE >/dev/null" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml572(para) msgid "Alternatively, use dd." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml575(para) msgid "For a non-raw image:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml578(para) msgid "$ qemu-img convert -O raw IMAGE /dev/vdb" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml581(para) msgid "For a *.tar.bz2 image:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml584(para) msgid "$ tar xfjO IMAGE >/dev/null" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml589(para) msgid "Only detached volumes are available for booting. Detach the volume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml593(para) msgid "" "To launch an instance from the volume, continue withthe" " section called “Launch an instance from an image”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml602(para) msgid "" "You can launch an instance directly from one of the images available through" " the OpenStack Image Service. When you do that, OpenStack creates a local " "copy of the image on the respective compute node where the instance is " "started." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml609(para) msgid "SSH in to your instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml612(para) msgid "To SSH into your instance, you use the downloaded keypair file." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml614(para) msgid "To SSH into your instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml617(para) msgid "Copy the IP address for your instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml620(para) msgid "" "Use the SSH command to make a secure connection to the instance. For " "example:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml624(para) msgid "$ ssh -i MyKey.pem ubuntu@10.0.0.2" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml627(para) msgid "" "A prompt asks, \"Are you sure you want to continue connection (yes/no)?\" " "Type yes and you have successfully connected." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml632(guilabel) msgid "Manage instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml633(guilabel) msgid "Create instance snapshots" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml635(title) msgid "OpenStack Dashboard- Instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml642(para) msgid "To create instance snapshots" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml653(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml692(para) msgid "Click the Instancescategory." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml656(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml695(para) msgid "The dashboard lists the instances that are available for this project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml660(para) msgid "" "Select the instance of which to create a snapshot. From the Actionsdrop-down" " list, select Create Snapshot." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml665(para) msgid "" "In the Create Snapshotwindow, enter a name for the snapshot. Click Create " "Snapshot. The dashboard shows the instance snapshot in the Images & " "Snapshotscategory." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml671(para) msgid "" "To launch an instance from the snapshot, select the snapshot and click " "Launch. Proceed withthe" " section called “Launch an instance from an image”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml680(guilabel) msgid "Control the state of an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml681(para) msgid "To control the state of an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml699(para) msgid "Select the instance for which you want to change the state." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml703(para) msgid "In the Moredrop-down list in the Actionscolumn, select the state." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml707(para) msgid "" "Depending on the current state of the instance, you can choose to pause, un-" "pause, suspend, resume, soft or hard reboot, or terminate an instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml713(title) msgid "OpenStack Dashboard : Actions" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml720(guilabel) msgid "Track usage" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml721(para) msgid "" "Use the dashboard's Overviewcategory to track usage of instances for each " "project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml724(title) msgid "OpenStack Dashboard - Track Usage" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml731(para) msgid "" "You can track costs per month by showing metrics like number of VCPUs, " "disks, RAM, and uptime of all your instances." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml734(para) msgid "To track usage" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml742(para) msgid "" "Select a month and click Submitto query the instance usage for that month." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml746(para) msgid "Click Download CSV Summaryto download a CVS summary." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml750(guilabel) msgid "Manage volumes" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml751(para) msgid "" "Volumes are block storage devices that you can attach to instances. They " "allow for persistent storage as they can be attached to a running instance, " "or detached and attached to another instance at any time." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml755(para) msgid "" "In contrast to the instance's root disk, the data of volumes is not " "destroyed when the instance is deleted." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml757(guilabel) msgid "Create or delete a volume" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml758(para) msgid "To create or delete a volume" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml764(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml824(para) msgid "" "If you are a member of multiple projects, select a Projectfrom the drop-down" " list at the top of the tab." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml769(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml829(para) msgid "Click the Volumescategory." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml772(para) msgid "To create a volume" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml777(para) msgid "Click Create Volume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml780(para) msgid "" "In the window that opens, enter a name to assign to a volume, a description " "(optional), and define the size in GBs." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml785(para) msgid "Confirm your changes." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml788(para) msgid "The dashboard shows the volume in the Volumescategory." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml794(para) msgid "To delete one or multiple volumes" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml799(para) msgid "" "Activate the checkboxes in front of the volumes that you want to delete." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml803(para) msgid "" "Click Delete Volumesand confirm your choice in the pop-up that appears." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml807(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml864(para) msgid "A message indicates whether the action was successful." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml811(para) msgid "" "After you create one or more volumes, you can attach them to instances." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml813(para) msgid "You can attach a volume to one instance at a time." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml814(para) msgid "" "View the status of a volume in the Instances & Volumescategory of the " "dashboard: the volume is either available or In-Use." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml817(guilabel) msgid "Attach volumes to instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml818(para) msgid "To attach volumes to instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml821(para) msgid "Log in to OpenStack dashboard." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml832(para) msgid "Select the volume to add to an instance and click Edit Attachments." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml836(para) msgid "In the Manage Volume Attachmentswindow, select an instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml840(para) msgid "" "Enter a device name under which the volume should be accessible on the " "virtual machine." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml844(para) msgid "" "Click Attach Volumeto confirm your changes. The dashboard shows the instance" " to which the volume has been attached and the volume's device name." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml849(para) msgid "" "Now you can log in to the instance, mount the disk, format it, and use it." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml853(para) msgid "To detach a volume from an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml858(para) msgid "Select the volume and click Edit Attachments." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml861(para) msgid "Click Detach Volumeand confirm your changes." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml868(guilabel) msgid "OpenStack command-line clients" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml870(para) msgid "" "You can use the OpenStack command-line clients to run simple commands that " "make API calls and automate tasks by using scripts. Internally, each client " "command runs cURL commands that embed API requests. The OpenStack APIs are " "RESTful APIs that use the HTTP protocol, including methods, URIs, media " "types, and response codes." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml876(para) msgid "" "These open-source Python clients run on Linux or Mac OS X systems and are " "easy to learn and use. Each OpenStack service has its own command-line " "client. On some client commands, you can specify a debugparameter to show " "the underlying API request for the command. This is a good way to become " "familiar with the OpenStack API calls." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml882(para) msgid "" "The following command-line clients are available for the respective " "services' APIs:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml884(para) msgid "cinder(python-cinderclient)" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml885(para) msgid "" "Client for the Block Storage service API. Use to create and manage volumes." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml887(para) msgid "glance(python-glanceclient)" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml888(para) msgid "Client for the Image Service API. Use to create and manage images." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml890(para) msgid "keystone(python-keystoneclient)" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml891(para) msgid "" "Client for the Identity Service API. Use to create and manage users, " "tenants, roles, endpoints, and credentials." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml894(para) msgid "nova(python-novaclient)" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml895(para) msgid "" "Client for the Compute API and its extensions. Use to create and manage " "images, instances, and flavors." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml897(para) msgid "neutron(python-neutronclient)" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml898(para) msgid "" "Client for the Networking API. Use to configure networks for guest servers. " "This client was previously known as neutron." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml901(para) msgid "swift(python-swiftclient)" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml902(para) msgid "" "Client for the Object Storage API. Use to gather statistics, list items, " "update metadata, upload, download and delete files stored by the object " "storage service. Provides access to a swift installation for ad hoc " "processing." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml906(para) msgid "heat(python-heatclient)" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml907(para) msgid "" "Client for the Orchestration API. Use to launch stacks from templates, view " "details of running stacks including events and resources, and update and " "delete stacks." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml910(guilabel) msgid "Install the OpenStack command-line clients" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml911(para) msgid "" "To install the clients, install the prerequisite software and the Python " "package for each OpenStack client." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml913(guilabel) msgid "Install the clients" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml914(para) msgid "" "Use pipto install the OpenStack clients on a Mac OS X or Linux system. It is" " easy and ensures that you get the latest version of the client from " "thePython Package Index. Also, " "piplets you update or remove a package. After you install the clients, you " "must source an openrc file to set required environment variables before you " "can request OpenStack services through the clients or the APIs." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml924(para) msgid "To install the clients" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml927(para) msgid "You must install each client separately." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml930(para) msgid "Run the following command to install or update a client package:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml933(para) msgid "" "Where <project> is the project name and has one of the following " "values:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml937(para) msgid "nova. Compute API and extensions." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml940(para) msgid "neutron. Networking API." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml943(para) msgid "keystone. Identity Service API." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml946(para) msgid "glance. Image Service API." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml949(para) msgid "swift. Object Storage API." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml952(para) msgid "cinder. Block Storage service API." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml955(para) msgid "heat. Orchestration API." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml960(para) msgid "For example, to install the nova client, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml965(para) msgid "To update the nova client, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml970(para) msgid "To remove the nova client, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml975(para) msgid "" "Before you can issue client commands, you must download and source the " "openrc file to set environment variables. Proceed tothe " "section called “OpenStack RC file”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml982(guilabel) msgid "Get the version for a client" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml983(para) msgid "" "After you install an OpenStack client, you can search for its version " "number, as follows:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml985(para) msgid "$ pip freeze | grep python-" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml986(para) msgid "" "python-glanceclient==0.4.0python-keystoneclient==0.1.2-e " "git+https://github.com/openstack/python-" "novaclient.git@077cc0bf22e378c4c4b970f2331a695e440a939f#egg" "=python_novaclient-devpython-neutronclient==0.1.1python-swiftclient==1.1.1" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml988(para) msgid "" "You can also use the yolk -lcommand to see which version of the client is " "installed:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml990(para) msgid "$ yolk -l | grep python-novaclient" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml991(para) msgid "" "python-novaclient - 2.6.10.27 - active development (/Users/your.name/src" "/cloud-servers/src/src/python-novaclient)python-novaclient - 2012.1 - non-" "active" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml994(guilabel) msgid "OpenStack RC file" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml995(para) msgid "" "To set the required environment variables for the OpenStack command-line " "clients, you must download and source an environment file, openrc.sh. It is " "project-specific and contains the credentials used by OpenStack Compute, " "Image, and Identity services." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1000(para) msgid "" "When you source the file and enter the password, environment variables are " "set for that shell. They allow the commands to communicate to the OpenStack " "services that run in the cloud." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1004(para) msgid "" "You can download the file from the OpenStack dashboard as an administrative " "user or any other user." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1006(para) msgid "To download the OpenStack RC file" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1012(para) msgid "" "On the Projecttab, select the project for which you want to download the " "OpenStack RC file." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1016(para) msgid "" "Click Access & Security. Then, click Download OpenStack RC Fileand save " "the file." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1020(para) msgid "" "Copy the openrc.sh file to the machine from where you want to run OpenStack " "commands." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1024(para) msgid "" "For example, copy the file to the machine from where you want to upload an " "image with a glance client command." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1028(para) msgid "" "On any shell from where you want to run OpenStack commands, source the " "openrc.sh file for the respective project." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1033(para) msgid "" "In this example, we source the demo-openrc.sh file for the demo project:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1037(para) msgid "$ source demo-openrc.sh" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1040(para) msgid "" "When you are prompted for an OpenStack password, enter the OpenStack " "password for the user who downloaded the openrc.sh file." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1045(para) msgid "" "When you run OpenStack client commands, you can override some environment " "variable settings by using the options that are listed at the end of the " "nova helpoutput. For example, you can override the OS_PASSWORD setting in " "the openrc.sh file by specifying a password on a nova command, as follows:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1053(para) msgid "$ nova --password <password> image-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1056(para) msgid "Where password is your password." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1060(para) msgid "" "During setup of OpenStack cloud, the cloud operator sets user permissions to" " manage images." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1062(para) msgid "" "Image upload and management might be restricted to only cloud administrators" " or cloud operators." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1064(para) msgid "" "After you upload an image, it is considered golden and you cannot change it." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1066(para) msgid "" "You can upload images through the glance client or the Image Service API. " "You can also use the nova client to list images, set and delete image " "metadata, delete images, and take a snapshot of a running instance to create" " an image." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1070(guilabel) msgid "Manage images with the glance client" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1071(para) msgid "To list or get details for images" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1074(para) msgid "To list the available images:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1077(para) msgid "$ glance image-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1080(para) msgid "You can use grep to filter the list, as follows:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1084(para) msgid "$ glance image-list | grep 'cirros'" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1087(para) msgid "To get image details, by name or ID:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1090(para) msgid "$ glance image-show myCirrosImage" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1093(para) msgid "To add an image" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1096(para) msgid "" "The following example uploads a CentOS 6.3 image in qcow2 format and " "configures it for public access:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1100(para) msgid "" "$glance image-create --name centos63-image --disk-format=qcow2 --container-" "format=bare --is-public=True ./centos63.qcow2" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1105(para) msgid "To create an image" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1108(para) msgid "Write any buffered data to disk." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1111(para) msgid "" "For more information, see theTaking Snapshots in the " "OpenStack Operations Guide." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1117(para) msgid "To create the image, list instances to get the server ID:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1121(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1669(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1825(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1988(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2138(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2155(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2311(para) msgid "$ nova list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1124(para) msgid "" "In this example, the server is named myCirrosServer. Use this server to " "create a snapshot, as follows:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1128(para) msgid "$ nova image-create myCirrosServer myCirrosImage" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1132(para) msgid "" "The command creates a qemu snapshot and automatically uploads the image to " "your repository. Only the tenant that creates the image has access to it." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1137(para) msgid "Get details for your image to check its status:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1140(para) msgid "$ nova image-show IMAGE" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1143(para) msgid "" "The image status changes from SAVING to ACTIVE. Only the tenant who creates " "the image has access to it." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1147(para) msgid "To launch an instance from your image" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1150(para) msgid "" "To launch an instance from your image, include the image ID and flavor ID, " "as follows:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1154(para) msgid "" "$ nova boot newServer --image 7e5142af-1253-4634-bcc6-89482c5f2e8a --flavor " "3" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1158(guilabel) msgid "Troubleshoot image creation" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1161(para) msgid "" "You cannot create a snapshot from an instance that has an attached volume. " "Detach the volume, create the image, and re-mount the volume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1166(para) msgid "" "Make sure the version of qemu you are using is version 0.14 or greater. " "Older versions of qemu result in an \"unknown option -s\" error message in " "the nova-compute.log." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1172(para) msgid "" "Examine the /var/log/nova-api.log and /var/log/nova-compute.log log files " "for error messages." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1177(guilabel) msgid "Set up access and security for instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1178(para) msgid "" "When you launch a virtual machine, you can inject a key pair, which provides" " SSH access to your instance. For this to work, the image must contain the " "cloud-init package. Create at least one key pair for each project. If you " "generate a keypair with an external tool, you can import it into OpenStack. " "You can use the key pair for multiple instances that belong to that project." " In case an image uses a static root password or a static key set – neither " "is recommended – you must not provide a key pair when you launch the " "instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1187(para) msgid "" "A security group is a named collection of network access rules that you use " "to limit the types of traffic that have access to instances. When you launch" " an instance, you can assign one or more security groups to it. If you do " "not create security groups, new instances are automatically assigned to the " "default security group, unless you explicitly specify a different security " "group. The associated rules in each security group control the traffic to " "instances in the group. Any incoming traffic that is not matched by a rule " "is denied access by default. You can add rules to or remove rules from a " "security group. You can modify rules for the default and any other security " "group." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1199(para) msgid "" "You must modify the rules for the default security group because users " "cannot access instances that use the default group from any IP address " "outside the cloud." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1202(para) msgid "" "You can modify the rules in a security group to allow access to instances " "through different ports and protocols. For example, you can modify rules to " "allow access to instances through SSH, to ping them, or to allow UDP traffic" " – for example, for a DNS server running on an instance. You specify the " "following parameters for rules:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1210(para) msgid "" "Source of traffic. Enable traffic to instances from either IP addresses " "inside the cloud from other group members or from all IP addresses." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1215(para) msgid "Protocol. Choose TCP for SSH, ICMP for pings, or UDP." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1219(para) msgid "" "Destination port on virtual machine. Defines a port range. To open a single " "port only, enter the same value twice. ICMP does not support ports: Enter " "values to define the codes and types of ICMP traffic to be allowed." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1225(para) msgid "Rules are automatically enforced as soon as you create or modify them." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1227(para) msgid "" "You can also assign a floating IP address to a running instance to make it " "accessible from outside the cloud. You assign a floating IP address to an " "instance and attach a block storage device, or volume, for persistent " "storage." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1231(guilabel) msgid "Add or import keypairs" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1232(para) msgid "To add a key" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1233(para) msgid "You can generate a keypair or upload an existing public key." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1237(para) msgid "To generate a keypair, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1241(para) msgid "$ nova keypair-add KEY_NAME > MY_KEY.pem" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1244(para) msgid "" "The command generates a keypair named KEY_NAME, writes the private key to " "the MY_KEY.pem file, and registers the public key at the Nova database." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1249(para) msgid "" "To set the permissions of the MY_KEY.pem file, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1253(para) msgid "$ chmod 600 MY_KEY.pem" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1256(para) msgid "" "The command changes the permissions of the MY_KEY.pem file so that only you " "can read and write to it." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1260(para) msgid "To import a key" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1263(para) msgid "" "If you have already generated a keypair with the public key located at " "~/.ssh/id_rsa.pub, run the following command to upload the public key:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1268(para) msgid "$ nova keypair-add --pub_key ~/.ssh/id_rsa.pub KEY_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1272(para) msgid "" "The command registers the public key at the Nova database and names the " "keypair KEY_NAME." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1276(para) msgid "" "List keypairs to make sure that the uploaded keypair appears in the list:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1280(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1610(para) msgid "$ nova keypair-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1283(guilabel) msgid "Configure security groups and rules" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1284(para) msgid "To configure security groups" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1287(para) msgid "To list all security groups" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1290(para) msgid "" "To list security groups for the current project, including descriptions, " "enter the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1295(para) msgid "$ nova secgroup-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1298(para) msgid "To create a security group" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1301(para) msgid "" "To create a security group with a specified name and description, enter the " "following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1305(para) msgid "$ nova secgroup-create SEC_GROUP_NAME GROUP_DESCRIPTION" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1309(para) msgid "To delete a security group" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1312(para) msgid "To delete a specified group, enter the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1316(para) msgid "$ nova secgroup-delete SEC_GROUP_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1319(para) msgid "To configure security group rules" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1320(para) msgid "Modify security group rules with the nova secgroup-*-rulecommands." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1324(para) msgid "" "On a shell, source the OpenStack RC file. For details, seethe " "section called “OpenStack RC file”." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1332(para) msgid "To list the rules for a security group" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1335(para) msgid "$ nova secgroup-list-rules SEC_GROUP_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1338(para) msgid "To allow SSH access to the instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1341(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1377(para) msgid "Choose one of the following sub-steps:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1346(para) msgid "Add rule for all IPs" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1349(para) msgid "" "Either from all IP addresses (specified as IP subnet in CIDR notation as " "0.0.0.0/0):" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1353(para) msgid "$ nova secgroup-add-rule SEC_GROUP_NAME tcp 22 22 0.0.0.0/0" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1359(para) msgid "Add rule for security groups" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1362(para) msgid "" "Alternatively, you can allow only IP addresses from other security groups " "(source groups) to access the specified port:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1367(para) msgid "" "$ nova secgroup-add-group-rule --ip_proto tcp --from_port 22 \\ --to_port 22" " SEC_GROUP_NAME SOURCE_GROUP_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1374(para) msgid "To allow pinging the instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1382(para) msgid "To allow pinging from IPs" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1385(para) msgid "" "Specify all IP addresses as IP subnet in CIDR notation: 0.0.0.0/0. This " "command allows access to all codes and all types of ICMP traffic, " "respectively:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1390(para) msgid "$ nova secgroup-add-rule SEC_GROUP_NAME icmp -1 -1 0.0.0.0/0" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1394(para) msgid "To allow pinging from other security groups" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1397(para) msgid "" "To allow only members of other security groups (source groups) to ping " "instances:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1401(para) msgid "" "$ nova secgroup-add-group-rule --ip_proto icmp --from_port -1 \\ --to_port " "-1 SEC_GROUP_NAME SOURCE_GROUP_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1408(para) msgid "To allow access through UDP port" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1411(para) msgid "" "To allow access through a UDP port, such as allowing access to a DNS server " "that runs on a VM, complete one of the following sub-steps:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1418(para) msgid "To allow UDP access from IPs" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1421(para) msgid "Specify all IP addresses as IP subnet in CIDR notation: 0.0.0.0/0." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1425(para) msgid "$ nova secgroup-add-rule SEC_GROUP_NAME udp 53 53 0.0.0.0/0" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1429(para) msgid "To allow UDP access" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1432(para) msgid "" "To allow only IP addresses from other security groups (source groups) to " "access the specified port:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1436(para) msgid "" "$ nova secgroup-add-group-rule --ip_proto udp --from_port 53 \\ --to_port 53" " SEC_GROUP_NAME SOURCE_GROUP_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1443(para) msgid "" "To delete a security group rule, specify the same arguments that you used to" " create the rule." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1447(para) msgid "" "To delete the security rule that you created inStep" " 3.a:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1452(para) msgid "$ nova secgroup-delete-rule SEC_GROUP_NAME tcp 22 22 0.0.0.0/0" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1456(para) msgid "" "To delete the security rule that you created inStep" " 3.b:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1461(para) msgid "" "$ nova secgroup-delete-group-rule --ip_proto tcp --from_port 22 \\ --to_port" " 22 SEC_GROUP_NAME SOURCE_GROUP_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1467(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1829(para) msgid "Instances are virtual machines that run inside the cloud." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1469(para) msgid "" "Before you can launch an instance, you must gather parameters such as the " "image and flavor from which you want to launch your instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1472(para) msgid "" "You can launch an instance directly from one of the available OpenStack " "images or from an image that you have copied to a persistent volume. The " "OpenStack Image Service provides a pool of images that are accessible to " "members of different projects." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1477(guilabel) msgid "Gather parameters to launch an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1478(para) msgid "To launch an instance, you must specify the following parameters:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1482(para) msgid "" "The instance source, which is an image or snapshot. Alternatively, you can " "boot from a volume, which is block storage, to which you've copied an image " "or snapshot." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1488(para) msgid "The image or snapshot, which represents the operating system." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1492(para) msgid "A name for your instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1495(para) msgid "" "The flavor for your instance, which defines the compute, memory, and storage" " capacity of nova computing instances. A flavor is an available hardware " "configuration for a server. It defines the \"size\" of a virtual server that" " can be launched. For more details and a list of default flavors available, " "see Section 1.5, \"Managing Flavors,\" (⇽ User Guide for Administrators )." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1504(para) msgid "" "User Data is a special key in the metadata service which holds a file that " "cloud aware applications within the guest instance can access. For example " "thecloudinitsystem " "is an open source package from Ubuntu that handles early initialization of a" " cloud instance that makes use of this user data." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1513(para) msgid "" "Access and security credentials, which include one or both of the following " "credentials:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1519(para) msgid "" "A key-pair for your instance, which are SSH credentials that are injected " "into images when they are launched. For this to work, the image must contain" " the cloud-init package. Create at least one keypair for each project. If " "you already have generated a key-pair with an external tool, you can import " "it into OpenStack. You can use the keypair for multiple instances that " "belong to that project. For details, refer to Section 1.5.1, Creating or " "Importing Keys." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1530(para) msgid "" "A security group, which defines which incoming network traffic is forwarded " "to instances. Security groups hold a set of firewall policies, known as " "security group rules. For details, see xx." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1538(para) msgid "" "If needed, you can assign a floating (public) IP addressto a running " "instance and attach a block storage device, or volume, for persistent " "storage. For details, see Section 1.5.3, Managing IP Addresses and Section " "1.7, Managing Volumes." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1545(para) msgid "" "After you gather the parameters you need to launch an instance, you can " "launch it from animageor avolume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1551(para) msgid "To gather the parameters to launch an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1554(para) msgid "On a shell, source the OpenStack RC file." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1557(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1958(para) msgid "List the available flavors:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1560(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1961(para) msgid "$ nova flavor-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1563(para) msgid "Note the ID of the flavor that you want to use for your instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1567(para) msgid "List the available images:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1570(para) msgid "$ nova image-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1573(para) msgid "" "You can also filter the image list by using grep to find a specific image, " "like this:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1577(para) msgid "$ nova image-list | grep 'kernel'" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1580(para) msgid "Note the ID of the image that you want to boot your instance from." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1584(para) msgid "List the available security groups:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1587(para) msgid "$ nova secgroup-list --all-tenants" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1590(para) msgid "" "If you have not created any security groups, you can assign the instance to " "only the default security group." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1595(para) msgid "You can also list rules for a specified security group:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1599(para) msgid "$ nova secgroup-list-rules default" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1602(para) msgid "" "In this example, the default security group has been modified to allow HTTP " "traffic on the instance by permitting TCP traffic on Port 80." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1607(para) msgid "List the available keypairs." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1613(para) msgid "Note the name of the keypair that you use for SSH access." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1618(para) msgid "Use this procedure to launch an instance from an image." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1623(para) msgid "" "Now you have all parameters required to launch an instance, run the " "following command and specify the server name, flavor ID, and image ID. " "Optionally, you can provide a key name for access control and security group" " for security. You can also include metadata key and value pairs. For " "example you can add a description for your server by providing the --meta " "description=\"My Server\"parameter." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1633(para) msgid "" "You can pass user data in a file on your local system and pass it at " "instance launch by using the flag --user-data <user-data-file>." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1638(para) msgid "" "$ nova boot --flavor FLAVOR_ID --image IMAGE_ID --key_name KEY_NAME --user-" "data mydata.file \\ --security_group SEC_GROUP NAME_FOR_INSTANCE --meta " "KEY=VALUE --meta KEY=VALUE" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1644(para) msgid "" "The command returns a list of server properties, depending on which " "parameters you provide." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1648(para) msgid "" "A status of BUILD indicates that the instance has started, but is not yet " "online." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1652(para) msgid "A status of ACTIVE indicates that your server is active." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1656(para) msgid "" "Copy the server ID value from the id field in the output. You use this ID to" " get details for or delete your server." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1661(para) msgid "" "Copy the administrative password value from the adminPass field. You use " "this value to log into your server." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1666(para) msgid "Check if the instance is online:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1672(para) msgid "" "This command lists all instances of the project you belong to, including " "their ID, their name, their status, and their private (and if assigned, " "their public) IP addresses." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1678(para) msgid "If the status for the instance is ACTIVE, the instance is online." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1682(para) msgid "" "To view the available options for the nova listcommand, run the following " "command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1686(para) msgid "$ nova help list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1689(para) msgid "" "If you did not provide a keypair, security groups, or rules, you can only " "access the instance from inside the cloud through VNC. Even pinging the " "instance is not possible." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1696(para) msgid "" "After youcreate a bootable volume, " "youlaunch an " "instance from the volume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1704(para) msgid "To create a bootable volume" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1707(para) msgid "To create a volume from an image, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1711(para) msgid "" "# cinder create --image-id 397e713c-b95b-4186-ad46-6126863ea0a9 --display-" "name my-bootable-vol 8" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1716(para) msgid "" "Optionally, to configure your volume, see the Configuring Image Service and " "Storage for Computechapter in the OpenStack Configuration Reference." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1721(para) msgid "To list volumes" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1724(para) msgid "Enter the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1727(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1818(para) msgid "$ nova volume-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1730(para) msgid "Copy the value in the ID field for your volume." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1735(para) msgid "To launch an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1738(para) msgid "" "Enter the nova boot command with the --block_device_mapping parameter, as " "follows:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1742(para) msgid "" "$ nova boot --flavor <flavor> --block_device_mapping " "<dev_name>=<id>:<type>:<size>:<delete_on_terminate>" " <name>" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1748(para) msgid "The command arguments are:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1751(para) msgid "--flavor flavor" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1754(para) msgid "The flavor ID." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1757(para) msgid "--block_device_mapping dev- name=id:type:size:delete-on-terminate" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1763(para) msgid "" "dev-name. A device name where the volume is attached in the system at " "/dev/dev_name. This value is typically vda." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1768(para) msgid "" "id. The ID of the volume to boot from, as shown in the output of nova " "volume-list." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1772(para) msgid "" "type. Either snap or any other value, including a blank string. snap means " "that the volume was created from a snapshot." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1777(para) msgid "" "size. The size of the volume, in GBs. It is safe to leave this blank and " "have the Compute service infer the size." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1782(para) msgid "" "delete-on-terminate. A boolean that indicates whether the volume should be " "deleted when the instance is terminated. You can specify" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1789(para) msgid "True or 1" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1792(para) msgid "False or 0" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1795(para) msgid "name" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1798(para) msgid "The name for the server." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1801(para) msgid "" "For example, you might enter the following command to boot from a volume " "with ID bd7cf584-45de-44e3-bf7f-f7b50bf235e. The volume is not deleted when " "the instance is terminated:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1807(para) msgid "" "$ nova boot --flavor 2 --image 397e713c-b95b-4186-ad46-6126863ea0a9 " "--block_device_mapping vda=bd7cf584-45de-44e3-bf7f-f7b50bf235e3:::0 " "myInstanceFromVolume" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1814(para) msgid "" "Now when you list volumes, you can see that the volume is attached to a " "server:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1821(para) msgid "" "Additionally, when you list servers, you see the server that you booted from" " a volume:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1828(guilabel) msgid "Manage instances and hosts" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1831(guilabel) msgid "Manage IP addresses" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1832(para) msgid "" "Each instance can have a private, or fixed, IP address and a public, or " "floating, one." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1834(para) msgid "" "Private IP addresses are used for communication between instances, and " "public ones are used for communication with the outside world." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1837(para) msgid "" "When you launch an instance, it is automatically assigned a private IP " "address that stays the same until you explicitly terminate the instance. " "Rebooting an instance has no effect on the private IP address." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1841(para) msgid "" "A pool of floating IPs, configured by the cloud operator, is available in " "OpenStack Compute." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1843(para) msgid "" "You can allocate a certain number of these to a project: The maximum number " "of floating IP addresses per project is defined by the quota." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1846(para) msgid "" "You can add a floating IP address from this set to an instance of the " "project. Floating IP addresses can be dynamically disassociated and " "associated with other instances of the same project at any time." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1850(para) msgid "" "Before you can assign a floating IP address to an instance, you first must " "allocate floating IPs to a project. After floating IP addresses have been " "allocated to the current project, you can assign them to running instances." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1854(para) msgid "" "One floating IP address can be assigned to only one instance at a time. " "Floating IP addresses can be managed with the nova *floating-ip-*commands, " "provided by the python-novaclient package." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1858(para) msgid "To list pools with floating IP addresses" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1861(para) msgid "To list all pools that provide floating IP addresses:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1865(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1876(para) msgid "$ nova floating-ip-pool-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1868(para) msgid "To allocate a floating IP address to the current project" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1872(para) msgid "" "The output of the following command shows the freshly allocated IP address:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1879(para) msgid "" "If more than one pool of IP addresses is available, you can also specify the" " pool from which to allocate the IP address:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1884(para) msgid "$ floating-ip-create POOL_NAME" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1887(para) msgid "To list floating IP addresses allocated to the current project" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1891(para) msgid "" "If an IP is already associated with an instance, the output also shows the " "IP for the instance, thefixed IP address for the instance, and the name of " "the pool that provides the floating IP address." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1897(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1921(para) msgid "$ nova floating-ip-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1900(para) msgid "To release a floating IP address from the current project" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1904(para) msgid "" "The IP address is returned to the pool of IP addresses that are available " "for all projects. If an IP address is currently assigned to a running " "instance, it is automatically disassociated from the instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1910(para) msgid "$ nova floating-ip-delete FLOATING_IP" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1913(para) msgid "To assign a floating IP address to an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1916(para) msgid "" "To associate an IP address with an instance, one or multiple floating IP " "addresses must be allocated to the current project. Check this with:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1924(para) msgid "" "In addition, you must know the instance's name (or ID). To look up the " "instances that belong to the current project, use the nova list command." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1929(para) msgid "$ nova add-floating-ip INSTANCE_NAME_OR_ID FLOATING_IP" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1933(para) msgid "" "After you assign the IP with nova add-floating-ipand configure security " "group rules for the instance, the instance is publicly available at the " "floating IP address." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1939(para) msgid "To remove a floating IP address from an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1942(para) msgid "" "To remove a floating IP address from an instance, you must specify the same " "arguments that you used to assign the IP." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1947(para) msgid "$ nova remove-floating-ip INSTANCE_NAME_OR_ID FLOATING_IP" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1951(guilabel) msgid "Change the size of your server" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1953(para) msgid "You change the size of a server by changing its flavor." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1955(para) msgid "To change the size of your server" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1964(para) msgid "Show information about your server, including its size:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1968(para) msgid "$ nova show myCirrosServer" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1971(para) msgid "The size of the server is m1.small (2)." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1974(para) msgid "" "To resize the server, pass the server ID and the desired flavor to the nova " "resizecommand. Include the --poll parameter to report the resize progress." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1979(para) msgid "$ nova resize myCirrosServer 4 --poll" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1982(para) msgid "Instance resizing... 100% completeFinished" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1985(para) msgid "Show the status for your server:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1991(para) msgid "" "When the resize completes, the status becomes VERIFY_RESIZE. To confirm the " "resize:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1995(para) msgid "$ nova resize-confirm 6beefcf7-9de6-48b3-9ba9-e11b343189b3" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml1999(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2010(para) msgid "The server status becomes ACTIVE." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2002(para) msgid "" "If the resize fails or does not work as expected, you can revert the resize:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2006(para) msgid "$ nova resize-revert 6beefcf7-9de6-48b3-9ba9-e11b343189b3" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2013(guilabel) msgid "Stop and start an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2014(para) msgid "Use one of the following methods to stop and start an instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2016(guilabel) msgid "Pause and un-pause an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2017(para) msgid "To pause and un-pause a server" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2020(para) msgid "To pause a server, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2023(para) msgid "$ nova pause SERVER" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2026(para) msgid "" "This command stores the state of the VM in RAM. A paused instance continues " "to run in a frozen state." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2031(para) msgid "To un-pause the server, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2035(para) msgid "$ nova unpause SERVER" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2038(guilabel) msgid "Suspend and resume an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2039(para) msgid "To suspend and resume a server" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2040(para) msgid "" "Administrative users might want to suspend an infrequently used instance or " "to perform system maintenance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2045(para) msgid "" "When you suspend an instance, its VM state is stored on disk, all memory is " "written to disk, and the virtual machine is stopped. Suspending an instance " "is similar to placing a device in hibernation; memory and vCPUs become " "available." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2052(para) msgid "" "To initiate a hypervisor-level suspend operation, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2056(para) msgid "$ nova suspend SERVER" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2059(para) msgid "To resume a suspended server:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2062(para) msgid "$ nova resume SERVER" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2065(guilabel) msgid "Reboot an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2066(para) msgid "" "You can perform a soft or hard reboot of a running instance. A soft reboot " "attempts a graceful shutdown and restart of the instance. A hard reboot " "power cycles the instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2070(para) msgid "To reboot a server" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2073(para) msgid "By default, when you reboot a server, it is a soft reboot." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2077(para) msgid "$ nova reboot SERVER" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2080(para) msgid "To perform a hard reboot, pass the --hard parameter, as follows:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2082(para) msgid "$ nova reboot --hard SERVER" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2083(guilabel) msgid "Evacuate instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2084(para) msgid "" "If a cloud compute node fails due to a hardware malfunction or another " "reason, you can evacuate instances to make them available again." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2087(para) msgid "You can choose evacuation parameters for your use case." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2089(para) msgid "" "To preserve user data on server disk, you must configure shared storage on " "the target host. Also, you must validate that the current VM host is down. " "Otherwise the evacuation fails with an error." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2093(para) msgid "To evacuate your server" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2096(para) msgid "" "To find a different host for the evacuated instance, run the following " "command to lists hosts:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2100(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2277(para) msgid "$ nova host-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2103(para) msgid "" "You can pass the instance password to the command by using the --password " "<pwd> option. If you do not specify a password, one is generated and " "printed after the command finishes successfully. The following command " "evacuates a server without shared storage:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2110(para) msgid "$ nova evacuate evacuated_server_name host_b" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2113(para) msgid "" "The command evacuates an instance from a down host to a specified host. The " "instance is booted from a new disk, but preserves its configuration " "including its ID, name, uid, IP address, and so on. The command returns a " "password:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2120(para) msgid "" "To preserve the user disk data on the evacuated server, deploy OpenStack " "Compute with shared filesystem." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2125(para) msgid "$ nova evacuate evacuated_server_name host_b --on-shared-storage" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2129(guilabel) msgid "Delete an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2130(para) msgid "When you no longer need an instance, you can delete it." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2132(para) msgid "To delete an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2135(para) msgid "List all instances:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2141(para) msgid "" "Use the following command to delete the newServer instance, which is in " "ERROR state:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2145(para) msgid "$ nova delete newServer" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2148(para) msgid "The command does not notify that your server was deleted." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2152(para) msgid "Instead, run the nova list command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2158(para) msgid "The deleted instance does not appear in the list." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2162(guilabel) msgid "Get a console to an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2163(para) msgid "To get a console to an instance" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2164(para) msgid "To get a VNC console to an instance, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2166(para) msgid "$ nova get-vnc-console myCirrosServer xvpvnc" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2167(para) msgid "The command returns a URL from which you can access your instance:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2169(guilabel) msgid "Manage bare metal nodes" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2170(para) msgid "" "If you use the bare metal driver, you must create a bare metal node and add " "a network interface to it. You then launch an instance from a bare metal " "image. You can list and delete bare metal nodes. When you delete a node, any" " associated network interfaces are removed. You can list and remove network " "interfaces that are associated with a bare metal node." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2177(para) msgid "Commands" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2180(para) msgid "baremetal-interface-add" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2183(para) msgid "Adds a network interface to a bare metal node." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2186(para) msgid "baremetal-interface-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2189(para) msgid "Lists network interfaces associated with a bare metal node." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2193(para) msgid "baremetal-interface-remove" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2196(para) msgid "Removes a network interface from a bare metal node." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2200(para) msgid "baremetal-node-create" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2203(para) msgid "Creates a bare metal node." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2206(para) msgid "baremetal-node-delete" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2209(para) msgid "Removes a bare metal node and any associated interfaces." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2213(para) msgid "baremetal-node-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2216(para) msgid "Lists available bare metal nodes." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2219(para) msgid "baremetal-node-show" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2222(para) msgid "Shows information about a bare metal node." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2225(para) msgid "To manage bare metal nodes" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2228(para) msgid "Create a bare metal node." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2231(para) msgid "" "$ nova baremetal-node-create --pm_address=1.2.3.4 --pm_user=ipmi " "--pm_password=ipmi $(hostname -f) 1 512 10 aa:bb:cc:dd:ee:ff" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2236(para) msgid "Add network interface information to the node:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2239(para) msgid "$ nova baremetal-interface-add 1 aa:bb:cc:dd:ee:ff" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2243(para) msgid "Launch an instance from a bare metal image:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2246(para) msgid "" "$ nova boot --image my-baremetal-image --flavor my-baremetal-flavor test" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2250(para) msgid "|... wait for instance to become active ..." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2253(para) msgid "" "You can list bare metal nodes and interfaces. When a node is in use, its " "status includes the UUID of the instance that runs on it:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2258(para) msgid "$ nova baremetal-node-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2261(para) msgid "Show details about a bare metal node:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2264(para) msgid "$ nova baremetal-node-show 1" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2267(guilabel) msgid "Show usage statistics for hosts and instances" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2268(para) msgid "" "You can show basic statistics on resource usage for hosts and instances." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2270(para) msgid "To show host usage statistics" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2273(para) msgid "List the hosts and the nova-related services that run on them:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2280(para) msgid "" "Get a summary of resource usage of all of the instances running on the host." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2284(para) msgid "$ nova host-describe devstack-grizzly" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2287(para) msgid "" "The cpu column shows the sum of the virtual CPUs for instances running on " "the host." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2291(para) msgid "" "The memory_mb column shows the sum of the memory (in MB) allocated to the " "instances that run on the hosts." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2296(para) msgid "" "The disk_gb column shows the sum of the root and ephemeral disk sizes (in " "GB) of the instances that run on the hosts." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2301(para) msgid "To show instance usage statistics" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2304(para) msgid "Get CPU, memory, I/O, and network statistics for an instance." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2308(para) msgid "First, list instances:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2314(para) msgid "Then, get diagnostic statistics:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2317(para) msgid "$ nova diagnostics myCirrosServer" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2320(para) msgid "Get summary statistics for each tenant:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2323(para) msgid "$ nova usage-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2326(para) msgid "Usage from 2013-06-25 to 2013-07-24:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2329(guilabel) msgid "Create and manage networks" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2330(para) msgid "Before you run commands, set the following environment variables:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2332(para) msgid "" "export OS_USERNAME=adminexport OS_PASSWORD=passwordexport " "OS_TENANT_NAME=adminexport OS_AUTH_URL=http://localhost:5000/v2.0" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2335(para) msgid "To create and manage networks" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2338(para) msgid "List the extensions of the system:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2341(para) msgid "$ neutron ext-list -c alias -c name" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2344(para) msgid "Create a network:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2347(para) msgid "$ neutron net-create net1" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2350(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2361(para) msgid "Created a new network:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2353(para) msgid "Create a network with specified provider network type:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2357(para) msgid "$ neutron net-create net2 --provider:network-type local" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2364(para) msgid "" "Just as shown previous, the unknown option --provider:network-type is used " "to create a local provider network." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2369(para) msgid "Create a subnet:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2372(para) msgid "$ neutron subnet-create net1 192.168.2.0/24 --name subnet1" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2376(para) msgid "Created a new subnet:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2379(para) msgid "" "In the previous command, net1 is the network name, 192.168.2.0/24 is the " "subnet's CIDR. They are positional arguments. --name subnet1 is an unknown " "option, which specifies the subnet's name." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2385(para) msgid "Create a port with specified IP address:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2388(para) msgid "$ neutron port-create net1 --fixed-ip ip_address=192.168.2.40" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2392(para) #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2407(para) msgid "Created a new port:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2395(para) msgid "" "In the previous command, net1 is the network name, which is a positional " "argument. --fixed-ip ip_address=192.168.2.40 is an option, which specifies " "the port's fixed IP address we wanted." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2401(para) msgid "Create a port without specified IP address:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2404(para) msgid "$ neutron port-create net1" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2410(para) msgid "" "We can see that the system will allocate one IP address if we don't specify " "the IP address in command line." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2414(para) msgid "Query ports with specified fixed IP addresses:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2417(para) msgid "" "$ neutron port-list --fixed-ips ip_address=192.168.2.2 " "ip_address=192.168.2.40" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2421(para) msgid "" "--fixed-ips ip_address=192.168.2.2 ip_address=192.168.2.40 is one unknown " "option." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2425(para) msgid "" "How to find unknown options?The unknown options can be easily found by " "watching the output of create_xxx or show_xxx command. For example, in the " "port creation command, we see the fixed_ips fields, which can be used as an " "unknown option." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2432(guilabel) msgid "Create and manage stacks" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2433(para) msgid "To create a stack from an example template file" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2436(para) msgid "" "To create a stack, or template, from anexample template " "file, run following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2442(para) msgid "" "$ heat stack-create mystack --template-" "file=/path/to/heat/templates/WordPress_Single_Instance.template--" "parameters=\"InstanceType=m1.large;DBUsername=wp;DBPassword=verybadpassword;KeyName=heat_key;LinuxDistribution=F17\"" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2446(para) msgid "" "The --parameters values that you specify depend on which parameters are " "defined in the template. If the template file is hosted on a website, you " "can specify the URL with --template-url parameter instead of the --template-" "file parameter." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2453(para) msgid "The command returns the following output:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2456(para) msgid "" "You can also use the stack-createcommand to validate a template file without" " creating a stack from it." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2460(para) msgid "To do so, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2463(para) msgid "" "$ heat stack-create mystack --template-" "file=/path/to/heat/templates/WordPress_Single_Instance.template" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2467(para) msgid "If validation fails, the response returns an error message." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2471(para) msgid "To list stacks" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2474(para) msgid "" "To see which stacks are visible to the current user, run the following " "command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2478(para) msgid "$ heat stack-list" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2481(para) msgid "To view stack details" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2482(para) msgid "" "To explore the state and history of a particular stack, you can run a number" " of commands." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2486(para) msgid "To show the details of a stack, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2490(para) msgid "$ heat stack-show mystack" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2493(para) msgid "" "A stack consists of a collection of resources. To list the resources, " "including their status, in a stack, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2498(para) msgid "$ heat resource-list mystack" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2501(para) msgid "" "To show the details for the specified resource in a stack, run the following" " command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2505(para) msgid "$ heat resource-show mystack WikiDatabase" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2508(para) msgid "" "Some resources have associated metadata which can change throughout the " "life-cycle of a resource:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2512(para) msgid "$ heat resource-metadata mystack WikiDatabase" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2515(para) msgid "" "A series of events is generated during the life-cycle of a stack. This " "command will display those events." msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2519(para) msgid "$ heat event-list mystack" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2522(para) msgid "To show the details for a particular event, run the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2526(para) msgid "$ heat event-show WikiDatabase 1" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2529(para) msgid "To update a stack" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2532(para) msgid "" "To update an existing stack from a modified template file, run a command " "like the following command:" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2536(para) msgid "" "$ heat stack-update mystack --template-" "file=/path/to/heat/templates/WordPress_Single_Instance_v2.template " "--parameters=\"InstanceType=m1.large;DBUsername=wp;DBPassword=verybadpassword;KeyName=heat_key;LinuxDistribution=F17\"" msgstr "" #: ./doc/training-guides/module001-ch006-overview-horizon-cli.xml2541(para) msgid "" "Some resources are updated in-place, while others are replaced with new " "resources." msgstr "" #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml8(title) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml8(title) msgid "Object Storage Node" msgstr "" #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml10(title) msgid "Day 2, 11:30 to 12:30, 13:30 to 14:45" msgstr "" #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml14(title) #: ./doc/training-guides/module003-ch001-intro-objstore.xml7(title) msgid "Introduction to Object Storage" msgstr "" #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml21(title) #: ./doc/training-guides/module003-ch002-features-benefits.xml7(title) msgid "Features and Benefits" msgstr "" #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml30(title) msgid "Object Storage CLI Commands" msgstr "" #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml37(title) msgid "Manage Object Storage" msgstr "" #: ./doc/training-guides/bk001-ch009-associate-object-storage-node.xml38(para) msgid "Will be included from the swift developer reference" msgstr "" #: ./doc/training-guides/card072-cinder-attach-volume.xml7(title) msgid "Attaching volumes to an instance" msgstr "" #: ./doc/training-guides/card126-horizon.xml7(title) msgid "Install Horizon" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch004-openstack-architecture.xml26(None) msgid "@@image: 'figures/image13.jpg'; md5=94fd9b9a3b33574d85bec7e1ea1675e2" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch004-openstack-architecture.xml70(None) msgid "@@image: 'figures/image31.jpg'; md5=575b47442c4a8aac250a383f92a1bb46" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch004-openstack-architecture.xml100(None) msgid "@@image: 'figures/image10.jpg'; md5=9471047adf0d93713be7f54b9db2b53c" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml7(title) #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml45(title) msgid "OpenStack Architecture" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml8(guilabel) msgid "Conceptual Architecture" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml9(para) msgid "" "The OpenStack project as a whole is designed to deliver a massively scalable" " cloud operating system. To achieve this, each of the constituent services " "are designed to work together to provide a complete Infrastructure-" "as-a-Service (IaaS). This integration is facilitated through public " "application programming interfaces (APIs) that each service offers (and in " "turn can consume). While these APIs allow each of the services to use " "another service, it also allows an implementer to switch out any service as " "long as they maintain the API. These are (mostly) the same APIs that are " "available to end users of the cloud." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml20(para) msgid "" "Conceptually, you can picture the relationships between the services as so:" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml23(title) msgid "Conceptual Diagram" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml32(para) msgid "" "Dashboard (\"Horizon\") provides a web front end to the other OpenStack " "services" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml36(para) msgid "" "Compute (\"Nova\") stores and retrieves virtual disks (\"images\") and " "associated metadata in Image (\"Glance\")" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml41(para) msgid "Network (\"Neutron\") provides virtual networking for Compute." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml45(para) msgid "Block Storage (\"Cinder\") provides storage volumes for Compute." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml49(para) msgid "" "Image (\"Glance\") can store the actual virtual disk files in the Object " "Store(\"Swift\")" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml53(para) msgid "All the services authenticate with Identity (\"Keystone\")" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml57(para) msgid "" "This is a stylized and simplified view of the architecture, assuming that " "the implementer is using all of the services together in the most common " "configuration. It also only shows the \"operator\" side of the cloud -- it " "does not picture how consumers of the cloud may actually use it. For " "example, many users will access object storage heavily (and directly)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml63(guilabel) msgid "Logical Architecture" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml64(para) msgid "This picture is consistent with the conceptual architecture above:" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml67(title) msgid "Logical Diagram" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml76(para) msgid "" "End users can interact through a common web interface (Horizon) or directly " "to each service through their API" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml81(para) msgid "" "All services authenticate through a common source (facilitated through " "keystone)" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml85(para) msgid "" "Individual services interact with each other through their public APIs " "(except where privileged administrator commands are necessary)" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml90(para) msgid "" "In the sections below, we'll delve into the architecture for each of the " "services." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml92(guilabel) msgid "Dashboard" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml93(para) msgid "" "Horizon is a modular Django web application that provides an end user and " "administrator interface to OpenStack services." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml97(title) msgid "Horizon Dashboard" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml104(para) msgid "As with most web applications, the architecture is fairly simple:" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml108(para) msgid "" "Horizon is usually deployed via mod_wsgi in Apache. The code itself is " "separated into a reusable python module with most of the logic (interactions" " with various OpenStack APIs) and presentation (to make it easily " "customizable for different sites)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml115(para) msgid "" "A database (configurable as to which one) which relies mostly on the other " "services for data. It also stores very little data of its own." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml120(para) msgid "" "From a network architecture point of view, this service will need to be " "customer accessible as well as be able to talk to each service's public " "APIs. If you wish to use the administrator functionality (i.e. for other " "services), it will also need connectivity to their Admin API endpoints " "(which should be non-customer accessible)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml126(guilabel) msgid "Compute" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml127(para) msgid "" "Nova is the most complicated and distributed component of OpenStack. A large" " number of processes cooperate to turn end user API requests into running " "virtual machines. Below is a list of these processes and their functions:" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml133(para) msgid "" "nova-api accepts and responds to end user compute API calls. It supports " "OpenStack Compute API, Amazon's EC2 API and a special Admin API (for " "privileged users to perform administrative actions). It also initiates most " "of the orchestration activities (such as running an instance) as well as " "enforces some policy (mostly quota checks)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml141(para) msgid "" "The nova-compute process is primarily a worker daemon that creates and " "terminates virtual machine instances via hypervisor's APIs (XenAPI for " "XenServer/XCP, libvirt for KVM or QEMU, VMwareAPI for VMware, etc.). The " "process by which it does so is fairly complex but the basics are simple: " "accept actions from the queue and then perform a series of system commands " "(like launching a KVM instance) to carry them out while updating state in " "the database." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml152(para) msgid "" "nova-volume manages the creation, attaching and detaching of z volumes to " "compute instances (similar functionality to Amazon’s Elastic Block Storage)." " It can use volumes from a variety of providers such as iSCSI or Rados Block" " Device in Ceph. A new OpenStack project, Cinder, will eventually replace " "nova-volume functionality. In the Folsom release, nova-volume and the Block " "Storage service will have similar functionality." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml162(para) msgid "" "The nova-network worker daemon is very similar to nova-compute and nova-" "volume. It accepts networking tasks from the queue and then performs tasks " "to manipulate the network (such as setting up bridging interfaces or " "changing iptables rules). This functionality is being migrated to Neutron, a" " separate OpenStack project. In the Folsom release, much of the " "functionality will be duplicated between nova-network and Neutron." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml172(para) msgid "" "The nova-schedule process is conceptually the simplest piece of code in " "OpenStack Nova: it takes a virtual machine instance request from the queue " "and determines where it should run (specifically, which compute server host " "it should run on)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml179(para) msgid "" "The queue provides a central hub for passing messages between daemons. This " "is usually implemented with RabbitMQ today, but could be any AMQP message " "queue (such as Apache Qpid). New to the Folsom release is support for Zero " "MQ." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml186(para) msgid "" "The SQL database stores most of the build-time and runtime state for a cloud" " infrastructure. This includes the instance types that are available for " "use, instances in use, networks available and projects. Theoretically, " "OpenStack Nova can support any database supported by SQL-Alchemy but the " "only databases currently being widely used are SQLite3 (only appropriate for" " test and development work), MySQL and PostgreSQL." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml196(para) msgid "" "Nova also provides console services to allow end users to access their " "virtual instance's console through a proxy. This involves several daemons " "(nova-console, nova-novncproxy and nova-consoleauth)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml202(para) msgid "" "Nova interacts with many other OpenStack services: Keystone for " "authentication, Glance for images and Horizon for web interface. The Glance " "interactions are central. The API process can upload and query Glance while " "nova-compute will download images for use in launching images." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml207(guilabel) msgid "Object Store" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml208(para) msgid "" "The swift architecture is very distributed to prevent any single point of " "failure as well as to scale horizontally. It includes the following " "components:" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml213(para) msgid "" "Proxy server (swift-proxy-server) accepts incoming requests via the " "OpenStack Object API or just raw HTTP. It accepts files to upload, " "modifications to metadata or container creation. In addition, it will also " "serve files or container listing to web browsers. The proxy server may " "utilize an optional cache (usually deployed with memcache) to improve " "performance." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml222(para) msgid "" "Account servers manage accounts defined with the object storage service." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml226(para) msgid "" "Container servers manage a mapping of containers (i.e folders) within the " "object store service." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml230(para) msgid "" "Object servers manage actual objects (i.e. files) on the storage nodes." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml234(para) msgid "" "There are also a number of periodic processes which run to perform " "housekeeping tasks on the large data store. The most important of these is " "the replication services, which ensures consistency and availability through" " the cluster. Other periodic processes include auditors, updaters and " "reapers." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml242(para) msgid "" "Authentication is handled through configurable WSGI middleware (which will " "usually be Keystone)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml244(guilabel) msgid "Image Store" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml245(para) msgid "" "The Glance architecture has stayed relatively stable since the Cactus " "release. The biggest architectural change has been the addition of " "authentication, which was added in the Diablo release. Just as a quick " "reminder, Glance has four main parts to it:" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml252(para) msgid "" "glance-api accepts Image API calls for image discovery, image retrieval and " "image storage." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml256(para) msgid "" "glance-registry stores, processes and retrieves metadata about images (size," " type, etc.)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml260(para) msgid "" "A database to store the image metadata. Like Nova, you can choose your " "database depending on your preference (but most people use MySQL or SQLite)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml265(para) msgid "" "A storage repository for the actual image files. In the diagram above, Swift" " is shown as the image repository, but this is configurable. In addition to " "Swift, Glance supports normal filesystems, RADOS block devices, Amazon S3 " "and HTTP. Be aware that some of these choices are limited to read-only " "usage." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml273(para) msgid "" "There are also a number of periodic processes which run on Glance to support" " caching. The most important of these is the replication services, which " "ensures consistency and availability through the cluster. Other periodic " "processes include auditors, updaters and reapers." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml278(para) msgid "" "As you can see from the diagram in the Conceptual Architecture section, " "Glance serves a central role to the overall IaaS picture. It accepts API " "requests for images (or image metadata) from end users or Nova components " "and can store its disk files in the object storage service, Swift." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml284(guilabel) msgid "Identity" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml285(para) msgid "" "Keystone provides a single point of integration for OpenStack policy, " "catalog, token and authentication." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml289(para) msgid "" "Keystone handles API requests as well as providing configurable catalog, " "policy, token and identity services." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml294(para) msgid "" "Each Keystone function has a pluggable backend which allows different ways " "to use the particular service. Most support standard backends like LDAP or " "SQL, as well as Key Value Stores (KVS)." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml300(para) msgid "" "Most people will use this as a point of customization for their current " "authentication services." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml302(guilabel) msgid "Network" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml303(para) msgid "" "Neutron provides \"network connectivity as a service\" between interface " "devices managed by other OpenStack services (most likely Nova). The service " "works by allowing users to create their own networks and then attach " "interfaces to them. Like many of the OpenStack services, Neutron is highly " "configurable due to its plug-in architecture. These plug-ins accommodate " "different networking equipment and software. As such, the architecture and " "deployment can vary dramatically. In the above architecture, a simple Linux " "networking plug-in is shown." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml315(para) msgid "" "neutron-server accepts API requests and then routes them to the appropriate " "Neutron plug-in for action." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml319(para) msgid "" "Neutron plug-ins and agents perform the actual actions such as plugging and " "unplugging ports, creating networks or subnets and IP addressing. These " "plug-ins and agents differ depending on the vendor and technologies used in " "the particular cloud. Neutron ships with plug-ins and agents for: Cisco " "virtual and physical switches, NEC OpenFlow products, Open vSwitch, Linux " "bridging, the Ryu Network Operating System, and VMware NSX." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml329(para) msgid "" "The common agents are L3 (layer 3), DHCP (dynamic host IP addressing) and " "the specific plug-in agent." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml333(para) msgid "" "Most Neutron installations will also make use of a messaging queue to route " "information between the neutron-server and various agents as well as a " "database to store networking state for particular plug-ins." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml339(para) msgid "" "Neutron will interact mainly with Nova, where it will provide networks and " "connectivity for its instances." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml341(guilabel) msgid "Block Storage" msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml342(para) msgid "" "Cinder separates out the persistent block storage functionality that was " "previously part of OpenStack Compute (in the form of nova-volume) into its " "own service. The OpenStack Block Storage API allows for manipulation of " "volumes, volume types (similar to compute flavors) and volume snapshots." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml350(para) msgid "" "cinder-api accepts API requests and routes them to cinder-volume for action." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml354(para) msgid "" "cinder-volume acts upon the requests by reading or writing to the Cinder " "database to maintain state, interacting with other processes (like cinder-" "scheduler) through a message queue and directly upon block storage providing" " hardware or software. It can interact with a variety of storage providers " "through a driver architecture. Currently, there are drivers for IBM, " "SolidFire, NetApp, Nexenta, Zadara, linux iSCSI and other storage providers." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml365(para) msgid "" "Much like nova-scheduler, the cinder-scheduler daemon picks the optimal " "block storage provider node to create the volume on." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml370(para) msgid "" "Cinder deployments will also make use of a messaging queue to route " "information between the cinder processes as well as a database to store " "volume state." msgstr "" #: ./doc/training-guides/module001-ch004-openstack-architecture.xml375(para) msgid "" "Like Neutron, Cinder will mainly interact with Nova, providing volumes for " "its instances." msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch009-vm-placement.xml19(None) msgid "@@image: 'figures/image29.png'; md5=ce788bfd80e615104fa1e3257065824a" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch009-vm-placement.xml59(None) msgid "@@image: 'figures/image27.png'; md5=c144af5cbdee1bd17a7bde0bea5b5fe7" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch009-vm-placement.xml199(None) msgid "" "@@image: '../common/figures/nova-weighting-hosts.png'; " "md5=000eab4cf0deb1da2e692e023065a6ae" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml7(title) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml14(title) msgid "VM Placement" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml8(para) msgid "" "Compute uses the nova-scheduler service to determine how to dispatch compute" " and volume requests. For example, the nova-scheduler service determines " "which host a VM should launch on. The term host in the context of filters " "means a physical node that has a nova-" "compute service running on it. You can configure the scheduler " "through a variety of options." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml16(title) #: ./doc/training-guides/lab003-compute-node.xml198(emphasis) #: ./doc/training-guides/lab001-control-node.xml443(emphasis) msgid "Nova" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml23(para) msgid "" "Just as shown by above figure, nova-scheduler interacts with other " "components through queue and central database repo. For scheduling, queue is" " the essential communications hub." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml26(para) msgid "" "All compute nodes (also known as hosts in terms of OpenStack) periodically " "publish their status, resources available and hardware capabilities to nova-" "scheduler through the queue. nova-scheduler then collects this data and uses" " it to make decisions when a request comes in." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml31(para) msgid "" "By default, the compute scheduler is configured as a filter scheduler, as " "described in the next section. In the default configuration, this scheduler " "considers hosts that meet all the following criteria:" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml37(para) msgid "Are in the requested availability zone (AvailabilityZoneFilter)." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml41(para) msgid "Have sufficient RAM available (RamFilter)." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml44(para) msgid "Are capable of servicing the request (ComputeFilter)." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml49(guilabel) msgid "Filter Scheduler" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml50(para) msgid "" "The Filter Scheduler supports filtering and weighting to make informed " "decisions on where a new instance should be created. This Scheduler supports" " only working with Compute Nodes." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml54(guilabel) #: ./doc/training-guides/module001-ch009-vm-placement.xml56(title) msgid "Filtering" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml63(para) msgid "" "During its work, Filter Scheduler first makes a dictionary of unfiltered " "hosts, then filters them using filter properties and finally chooses hosts " "for the requested number of instances (each time it chooses the most weighed" " host and appends it to the list of selected hosts)." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml68(para) msgid "" "If it turns up, that it can’t find candidates for the next instance, it " "means that there are no more appropriate hosts where the instance could be " "scheduled." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml71(para) msgid "" "If we speak about filtering and weighting, their work is quite flexible in " "the Filter Scheduler. There are a lot of filtering strategies for the " "Scheduler to support. Also you can even implement your own algorithm of " "filtering." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml75(para) msgid "" "There are some standard filter classes to use (nova.scheduler.filters):" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml79(para) msgid "" "AllHostsFilter - frankly speaking, this filter does no operation. It passes " "all the available hosts." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml83(para) msgid "" "ImagePropertiesFilter - filters hosts based on properties defined on the " "instance’s image. It passes hosts that can support the specified image " "properties contained in the instance." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml89(para) msgid "" "AvailabilityZoneFilter - filters hosts by availability zone. It passes hosts" " matching the availability zone specified in the instance properties." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml94(para) msgid "" "ComputeCapabilitiesFilter - checks that the capabilities provided by the " "host Compute service satisfy any extra specifications associated with the " "instance type. It passes hosts that can create the specified instance type." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml101(para) msgid "" "The extra specifications can have a scope at the beginning of the key string" " of a key/value pair. The scope format is scope:key and can be nested, i.e. " "key_string := scope:key_string. Example like capabilities:cpu_info: features" " is valid scope format. A key string without any : is non-scope format. Each" " filter defines its valid scope, and not all filters accept non-scope " "format." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml110(para) msgid "" "The extra specifications can have an operator at the beginning of the value " "string of a key/value pair. If there is no operator specified, then a " "default operator of s== is used. Valid operators are:" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml116(para) msgid "" "* = (equal to or greater than as a number; same as vcpus case)* == (equal to" " as a number)* != (not equal to as a number)* >= (greater than or equal " "to as a number)* <= (less than or equal to as a number)* s== (equal to as" " a string)* s!= (not equal to as a string)* s>= (greater than or equal to" " as a string)* s> (greater than as a string)* s<= (less than or equal " "to as a string)* s< (less than as a string)* <in> (substring)* " "<or> (find one of these)Examples are: \">= 5\", \"s== 2.1.0\", " "\"<in> gcc\", and \"<or> fpu <or> gpu\"" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml138(para) msgid "" "Here ram_allocation_ratio means the virtual RAM to physical RAM allocation " "ratio (it is 1.5 by default). Really, nice and simple." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml141(para) msgid "" "Next standard filter to describe is AvailabilityZoneFilter and it isn’t " "difficult too. This filter just looks at the availability zone of compute " "node and availability zone from the properties of the request. Each Compute " "service has its own availability zone. So deployment engineers have an " "option to run scheduler with availability zones support and can configure " "availability zones on each compute host. This classes method host_passes " "returns True if availability zone mentioned in request is the same on the " "current compute host." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml151(para) msgid "" "The ImagePropertiesFilter filters hosts based on the architecture, " "hypervisor type, and virtual machine mode specified in the instance. E.g., " "an instance might require a host that supports the arm architecture on a " "qemu compute host. The ImagePropertiesFilter will only pass hosts that can " "satisfy this request. These instance properties are populated from " "properties define on the instance’s image. E.g. an image can be decorated " "with these properties using glance image-update img-uuid --property " "architecture=arm --property hypervisor_type=qemu Only hosts that satisfy " "these requirements will pass the ImagePropertiesFilter." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml162(para) msgid "" "ComputeCapabilitiesFilter checks if the host satisfies any extra_specs " "specified on the instance type. The extra_specs can contain key/value pairs." " The key for the filter is either non-scope format (i.e. no : contained), or" " scope format in capabilities scope (i.e. capabilities:xxx:yyy). One example" " of capabilities scope is capabilities:cpu_info:features, which will match " "host’s cpu features capabilities. The ComputeCapabilitiesFilter will only " "pass hosts whose capabilities satisfy the requested specifications. All " "hosts are passed if no extra_specs are specified." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml172(para) msgid "" "ComputeFilter is quite simple and passes any host whose Compute service is " "enabled and operational." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml174(para) msgid "" "Now we are going to IsolatedHostsFilter. There can be some special hosts " "reserved for specific images. These hosts are called isolated. So the images" " to run on the isolated hosts are also called isolated. This Scheduler " "checks if image_isolated flag named in instance specifications is the same " "that the host has." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml181(guilabel) #: ./doc/training-guides/module001-ch009-vm-placement.xml196(title) msgid "Weights" msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml182(para) msgid "Filter Scheduler uses so-called weights during its work." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml184(para) msgid "" "The Filter Scheduler weights hosts based on the config option " "scheduler_weight_classes, this defaults to " "nova.scheduler.weights.all_weighers, which selects the only weigher " "available – the RamWeigher. Hosts are then weighted and sorted with the " "largest weight winning." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml189(para) msgid "" "Filter Scheduler finds local list of acceptable hosts by repeated filtering " "and weighing. Each time it chooses a host, it virtually consumes resources " "on it, so subsequent selections can adjust accordingly. It is useful if the " "customer asks for the same large amount of instances, because weight is " "computed for each instance requested." msgstr "" #: ./doc/training-guides/module001-ch009-vm-placement.xml203(para) msgid "" "In the end Filter Scheduler sorts selected hosts by their weight and " "provisions instances on them." msgstr "" #: ./doc/training-guides/bk003-ch019-developer-how-to-participate-day-eight-quiz.xml6(title) msgid "Developer How To Participate Day Eight Quiz" msgstr "" #: ./doc/training-guides/bk003-ch019-developer-how-to-participate-day-eight-quiz.xml8(title) msgid "Day 8, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/bk003-ch016-developer-how-to-participate-day-seven-lab.xml6(title) msgid "Developer How To Participate Lab Day Seven" msgstr "" #: ./doc/training-guides/bk003-ch016-developer-how-to-participate-day-seven-lab.xml8(title) msgid "Day 7, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml12(th) msgid "Features" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml13(th) msgid "Benefits" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml17(emphasis) msgid "Leverages commodity hardware" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml20(td) msgid "No lock-in, lower price/GB" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml26(emphasis) msgid "HDD/node failure agnostic" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml28(td) msgid "Self healingReliability, data redundancy protecting from failures" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml35(emphasis) msgid "Unlimited storage" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml37(td) msgid "" "Huge & flat namespace, highly scalable read/write accessAbility to serve" " content directly from storage system" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml45(emphasis) msgid "Multi-dimensional scalability" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml44(td) msgid "" " (scale out architecture)Scale vertically and horizontally-" "distributed storage" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml49(td) msgid "Backup and archive large amounts of data with linear performance" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml55(emphasis) msgid "Account/Container/Object structure" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml54(td) msgid "No nesting, not a traditional file system" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml59(td) msgid "Optimized for scaleScales to multiple petabytes, billions of objects" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml66(emphasis) msgid "Built-in replication3x+ data redundancy" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml65(td) msgid " compared to 2x on RAID" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml70(td) msgid "" "Configurable number of accounts, container and object copies for high " "availability" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml77(emphasis) msgid "Easily add capacity" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml76(td) msgid " unlike RAID resize" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml80(td) msgid "Elastic data scaling with ease" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml86(emphasis) msgid "No central database" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml88(td) msgid "Higher performance, no bottlenecks" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml94(emphasis) msgid "RAID not required" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml96(td) msgid "Handle lots of small, random reads and writes efficiently" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml102(emphasis) msgid "Built-in management utilities" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml105(td) msgid "" "Account Management: Create, add, verify, delete usersContainer Management: " "Upload, download, verifyMonitoring: Capacity, host, network, log trawling, " "cluster health" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml114(emphasis) msgid "Drive auditing" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml116(td) msgid "Detect drive failures preempting data corruption" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml122(emphasis) msgid "Expiring objects" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml124(td) msgid "" "Users can set an expiration time or a TTL on an object to control access" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml131(emphasis) msgid "Direct object access" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml133(td) msgid "Enable direct browser access to content, such as for a control panel" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml140(emphasis) msgid "Realtime visibility into client requests" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml143(td) msgid "Know what users are requesting" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml149(emphasis) msgid "Supports S3 API" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml151(td) msgid "Utilize tools that were designed for the popular S3 API" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml157(emphasis) msgid "Restrict containers per account" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml160(td) msgid "Limit access to control usage by user" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml166(emphasis) msgid "Support for NetApp, Nexenta, SolidFire" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml169(td) msgid "Unified support for block volumes using a variety of storage systems" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml176(emphasis) msgid "Snapshot and backup API for block volumes" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml179(td) msgid "Data protection and recovery for VM data" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml185(emphasis) msgid "Standalone volume API available" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml188(td) msgid "Separate endpoint and API for integration with other compute systems" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml195(emphasis) msgid "Integration with Compute" msgstr "" #: ./doc/training-guides/module003-ch002-features-benefits.xml197(td) msgid "" "Fully integrated to Compute for attaching block volumes and reporting on " "usage" msgstr "" #: ./doc/training-guides/bk003-ch009-developer-apis-day-four-lab.xml6(title) msgid "Developer How To Participate Lab Day Four" msgstr "" #: ./doc/training-guides/bk003-ch009-developer-apis-day-four-lab.xml8(title) msgid "Day 4, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/card039-nova.xml7(title) #: ./doc/training-guides/lab003-compute-node.xml201(para) msgid "Install Nova" msgstr "" #: ./doc/training-guides/bk003-ch012-developer-how-to-participate-day-five-lab.xml6(title) msgid "Developer How To Participate Lab Day Five" msgstr "" #: ./doc/training-guides/bk003-ch012-developer-how-to-participate-day-five-lab.xml8(title) msgid "Day 5, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/bk004-architect-training-guide.xml5(title) msgid "Architect Training Guide" msgstr "" #: ./doc/training-guides/bk004-architect-training-guide.xml7(title) msgid "Architect Training Guide Coming Soon" msgstr "" #: ./doc/training-guides/card047-install-nova-compute.xml7(title) msgid "Installing Nova" msgstr "" #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml10(title) #: ./doc/training-guides/bk003-ch004-developer-apis-in-depth.xml10(title) msgid "Day 2 to 4, 09:00 to 11:00, 11:15 to 12:30" msgstr "" #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml14(title) msgid "Review Associate Overview Horizon and OpenStack CLI" msgstr "" #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml21(title) msgid "Review Associate Keystone Architecture" msgstr "" #: ./doc/training-guides/bk002-ch004-operator-controller-node.xml28(title) msgid "Review Associate OpenStack Messaging and Queues" msgstr "" #: ./doc/training-guides/bk003-ch006-developer-apis-day-two-quiz.xml6(title) msgid "Developer APIs in Depth Day Two Quiz" msgstr "" #: ./doc/training-guides/bk003-ch006-developer-apis-day-two-quiz.xml8(title) msgid "Day 2, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml32(para) msgid "" "Start your Controller Node (the one you setup in the previous section)." msgstr "" #: ./doc/training-guides/lab003-compute-node.xml73(para) msgid "" "Enable IP Forwarding by adding the following to " "/etc/sysctl.conf" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml90(emphasis) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml190(para) msgid "KVM" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml93(para) msgid "Install KVM:" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml99(para) msgid "Edit /etc/libvirt/qemu.conf" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml108(para) msgid "Delete Default Virtual Bridge" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml115(para) msgid "" "To Enable Live Migration Edit " "/etc/libvirt/libvirtd.conf" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml121(para) msgid "Edit /etc/init/libvirt-bin.conf" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml125(para) msgid "Edit /etc/default/libvirt-bin" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml129(para) msgid "Restart libvirt" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml136(emphasis) msgid "Neutron and OVS" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml139(para) #: ./doc/training-guides/card041-neutron.xml9(emphasis) msgid "Install Open vSwitch" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml143(para) msgid "Create bridges:" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml150(para) msgid "Install the Neutron Open vSwitch agent:" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml156(para) msgid "" "Edit " "/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml177(para) msgid "Edit /etc/neutron/neutron.conf" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml192(para) msgid "Restart all the services:" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml208(para) #: ./doc/training-guides/lab001-control-node.xml479(para) msgid "Edit /etc/nova/api-paste.ini" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml222(para) msgid "Edit /etc/nova/nova-compute.conf" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml231(para) #: ./doc/training-guides/lab001-control-node.xml496(para) msgid "Edit /etc/nova/nova.conf" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml281(para) msgid "Restart nova services" msgstr "" #: ./doc/training-guides/lab003-compute-node.xml285(para) msgid "" "List nova services (Check for the Smiley Faces to know if the services are " "running):" msgstr "" #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml6(title) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml6(title) msgid "Getting Started Lab" msgstr "" #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml8(title) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml8(title) msgid "Day 1, 13:30 to 14:45, 15:00 to 17:00" msgstr "" #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml12(title) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml12(title) msgid "Getting the Tools and Accounts for Committing Code" msgstr "" #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml26(title) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml26(title) msgid "Submit a Documentation Bug" msgstr "" #: ./doc/training-guides/bk002-ch002-operator-getting-started-lab.xml40(title) #: ./doc/training-guides/bk003-ch002-developer-getting-started-lab.xml40(title) msgid "Optional: Add to the Training Guide Documentation" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml89(None) msgid "@@image: 'figures/image39.png'; md5=e26e374ace84070f5fed24e73adcd562" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml7(title) #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml32(title) msgid "Object Storage Capabilities" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml40(guilabel) msgid "Swift Characteristics" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml41(para) msgid "The key characteristics of Swift include:" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml44(para) msgid "All objects stored in Swift have a URL" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml47(para) msgid "" "All objects stored are replicated 3x in as-unique-as-possible zones, which " "can be defined as a group of drives, a node, a rack etc." msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml52(para) msgid "All objects have their own metadata" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml55(para) msgid "" "Developers interact with the object storage system through a RESTful HTTP " "API" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml59(para) msgid "Object data can be located anywhere in the cluster" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml63(para) msgid "" "The cluster scales by adding additional nodes -- without sacrificing " "performance, which allows a more cost-effective linear storage expansion vs." " fork-lift upgrades" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml69(para) msgid "Data doesn’t have to be migrated to an entirely new storage system" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml73(para) msgid "New nodes can be added to the cluster without downtime" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml77(para) msgid "Failed nodes and disks can be swapped out with no downtime" msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml81(para) msgid "Runs on industry-standard hardware, such as Dell, HP, Supermicro etc." msgstr "" #: ./doc/training-guides/module003-ch003-obj-store-capabilities.xml93(para) msgid "" "Developers can either write directly to the Swift API or use one of the many" " client libraries that exist for all popular programming languages, such as " "Java, Python, Ruby and C#. Amazon S3 and RackSpace Cloud Files users should " "feel very familiar with Swift. For users who have not used an object storage" " system before, it will require a different approach and mindset than using " "a traditional filesystem." msgstr "" #: ./doc/training-guides/bk003-ch018-developer-how-to-participate-day-eight-lab.xml6(title) msgid "Developer How To Participate Lab Day Eight" msgstr "" #: ./doc/training-guides/bk003-ch018-developer-how-to-participate-day-eight-lab.xml8(title) msgid "Day 8, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/card045-configure-virtual-networking.xml7(title) msgid "Configure Virtual Networking" msgstr "" #: ./doc/training-guides/module003-ch001-intro-objstore.xml8(para) msgid "" "OpenStack Object Storage (code-named Swift) is open source software for " "creating redundant, scalable data storage using clusters of standardized " "servers to store petabytes of accessible data. It is a long-term storage " "system for large amounts of static data that can be retrieved, leveraged, " "and updated. Object Storage uses a distributed architecture with no central " "point of control, providing greater scalability, redundancy and permanence. " "Objects are written to multiple hardware devices, with the OpenStack " "software responsible for ensuring data replication and integrity across the " "cluster. Storage clusters scale horizontally by adding new nodes. Should a " "node fail, OpenStack works to replicate its content from other active nodes." " Because OpenStack uses software logic to ensure data replication and " "distribution across different devices, inexpensive commodity hard drives and" " servers can be used in lieu of more expensive equipment." msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml6(title) #: ./doc/training-guides/bk002-ch006-operator-controller-node-quiz.xml6(title) msgid "Controller Node Quiz" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml8(title) msgid "Day 1, 14:25 to 14:45" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml10(title) msgid "Associate Training Guide, Controller Node Quiz Questions" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml15(title) msgid "" "When managing images for OpenStack you can complete all those tasks with the" " OpenStack dashboard. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml20(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml36(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml101(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml118(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml159(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml174(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml238(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml301(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml91(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml106(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml121(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml160(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml175(para) msgid "True" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml23(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml39(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml104(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml121(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml162(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml177(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml241(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml304(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml94(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml109(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml124(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml163(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml178(para) msgid "False" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml31(title) msgid "" "When setting up access and security, SSH credentials (keypairs) must be " "injected into images after they are launched with a script. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml47(title) msgid "You can track monthly costs with metrics like: (choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml51(para) msgid "VCPU" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml54(para) msgid "QoS" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml57(para) msgid "Uptime" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml60(para) msgid "Disks" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml63(para) msgid "RAM" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml71(title) msgid "" "The following OpenStack command-line clients are available. (choose all that" " apply)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml75(para) msgid "python-keystoneclient" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml78(para) msgid "python-hypervisorclient" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml81(para) msgid "python-imageclient" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml84(para) msgid "python-cinderclient" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml87(para) msgid "python-novaclient" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml95(title) msgid "To install a client package" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml96(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml113(para) msgid "Run this command: " msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml112(title) msgid "To list images" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml129(title) msgid "" "When troubleshooting image creation you will need to look at which of the " "following log files for errors? (choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml134(para) msgid "Examine the /var/log/nova-api.log" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml137(para) msgid "Examine the /var/log/nova-compute.log" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml140(para) msgid "Examine the /var/log/nova-error.log" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml143(para) msgid "Examine the /var/log/nova-status.log" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml146(para) msgid "Examine the /var/log/nova-image.log" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml154(title) msgid "" "To generate a keypair use the following command syntax: $ nova keypair-add " "--pub_key ~/.ssh/id_rsa.pub KEY_NAME" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml170(title) msgid "" "When you want to launch an instance you can only do that from an image. " "(True or False)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml185(title) msgid "" "An instance has a Private IP address which has the following properties? " "(choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml189(para) msgid "Used for communication between instances" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml192(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml193(para) msgid "VMware vShpere 4.1, update 1 or greater" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml195(para) msgid "Stays the same, even after reboots" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml198(para) msgid "Stays allocated, even if you terminate the instance" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml201(para) msgid "" "To see the status of the Private IP addresses you use the following command:" " $ nova floating-ip-pool-list" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml210(title) msgid "" "To start and stop and instance you can use the following options: (choose " "all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml214(para) msgid "Pause/Un-pause" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml217(para) msgid "Suspend/Resume" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml220(para) msgid "Reboot" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml223(para) msgid "Evacuate" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml226(para) msgid "Shutdown/Restart" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml234(title) msgid "" "To create a network in OpenStack use the following command: $ neutron net-" "create net1 (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml249(title) msgid "" "Identity Service provides the following functions: (choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml253(para) msgid "Group policy objects" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml256(para) msgid "Message queuing" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml259(para) #: ./doc/training-guides/module001-ch007-keystone-arch.xml139(emphasis) msgid "User management" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml262(para) msgid "Publishing" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml265(para) msgid "Service catalog" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml273(title) msgid "" "The AMQP supports the following messaging bus options: (choose all that " "apply)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml277(para) msgid "ZeroMQ" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml283(para) msgid "Tibco Rendezvous" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml286(para) msgid "IBM WebSphere Message Broker" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml289(para) msgid "Qpid" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml297(title) msgid "" "OpenStack uses the term tenant but in earlier versions it used the term " "customer. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml314(title) msgid "Associate Training Guide, Controller Node Quiz Answers" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml318(para) msgid "" "B (False) - you can manage images through only the glance and nova clients " "or the Image Service and Compute APIs." msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml322(para) msgid "" "B (False) - Keypairs are SSH credentials that are injected into images when " "they are launched. For this to work, the image must contain the cloud-init " "package" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml326(para) msgid "" "A, C, D, E - You can track costs per month by showing metrics like number of" " VCPUs, disks, RAM, and uptime of all your instances" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml330(para) msgid "" "A, D, E - The following command-line clients are available for the " "respective services' APIs: cinder(python-cinderclient) Client for the Block " "Storage service API. Use to create and manage volumes. glance(python-" "glanceclient) Client for the Image Service API. Use to create and manage " "images. keystone(python-keystoneclient) Client for the Identity Service API." " Use to create and manage users, tenants, roles, endpoints, and credentials." " nova(python-novaclient) Client for the Compute API and its extensions. Use " "to create and manage images, instances, and flavors. neutron(python-" "neutronclient) Client for the Networking API. Use to configure networks for " "guest servers. This client was previously known as neutron. swift(python-" "swiftclient) Client for the Object Storage API. Use to gather statistics, " "list items, update metadata, upload, download and delete files stored by the" " object storage service. Provides access to a swift installation for ad hoc " "processing. heat(python-heatclient)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml346(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml349(para) #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml367(para) msgid "A (True)" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml352(para) msgid "A, B" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml355(para) msgid "B (False) - $ nova keypair-add KEY_NAME > MY_KEY.pem" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml358(para) msgid "B (False) - you can launch and instance from an image or a volume" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml361(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml222(para) msgid "A, B, C" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml364(para) msgid "A, B, C, D" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml370(para) msgid "C, E" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml373(para) msgid "A, B, E" msgstr "" #: ./doc/training-guides/bk001-ch004-associate-controller-node-quiz.xml376(para) msgid "" "B (False) - Because the term project was used instead of tenant in earlier " "versions of OpenStack Compute, some command-line tools use --project_id " "instead of --tenant-id or --os-tenant-id to refer to a tenant ID." msgstr "" #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml10(title) msgid "Days 5 to 6, 09:00 to 11:00, 11:15 to 12:30" msgstr "" #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml14(title) msgid "Review Associate VM Placement" msgstr "" #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml21(title) msgid "Review Associate VM Provisioning Indepth" msgstr "" #: ./doc/training-guides/bk002-ch007-operator-compute-node.xml28(title) msgid "Review Associate OpenStack Block Storage" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml10(title) msgid "Day 9, 09:00 to 11:00, 11:15 to 12:30" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml14(title) msgid "Review Associate Introduction to Object Storage" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml21(title) msgid "Review Associate Features and Benefits" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml39(title) msgid "Object Storage Building Blocks" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml46(title) msgid "Swift Ring Builder" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml52(title) msgid "More Swift Concepts" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml59(title) msgid "Swift Cluster Architecture" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml66(title) msgid "Swift Account Reaper" msgstr "" #: ./doc/training-guides/bk002-ch013-operator-object-storage-node.xml73(title) msgid "Swift Replication" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml8(title) msgid "Day 1, 10:40 to 11:00" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml10(title) msgid "Associate Training Guide, Getting Started Quiz Questions" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml15(title) msgid "" "What are some of the compelling features of a cloud? (choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml19(para) msgid "On-demand self-service" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml22(para) msgid "Resource pooling" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml25(para) msgid "Metered or measured service" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml28(para) msgid "Elasticity" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml31(para) msgid "Network access" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml39(title) msgid "" "What three service models does cloud computing provide? (choose all that " "apply)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml43(para) msgid "Software-as-a-Service (SaaS)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml46(para) msgid "Applications-as-a-Service (AaaS)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml49(para) msgid "Hardware-as-a-Service (HaaS)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml52(para) msgid "Infrastructure-as-a-Service (IaaS)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml55(para) msgid "Platform-as-a-Service (PaaS)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml63(title) msgid "" "What does the OpenStack project aim to deliver? (choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml67(para) msgid "Simple to implement cloud solution" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml70(para) msgid "Massively scalable cloud solution" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml73(para) msgid "Feature rich cloud solution" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml76(para) msgid "Multi-vendor interoperability cloud solution" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml79(para) msgid "A new hypervisor cloud solution" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml87(title) msgid "" "OpenStack code is freely available via the FreeBSD license. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml102(title) msgid "OpenStack Swift is Object Storage. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml117(title) msgid "OpenStack Networking is now called Quantum. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml132(title) msgid "" "The Image Service (Glance) in OpenStack provides: (Choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml136(para) msgid "Base Templates which users can start new compute instances" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml139(para) msgid "Configuration of centralized policies across users and systems" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml142(para) msgid "" "Available images for users to choose from or create their own from existing " "servers" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml145(para) msgid "A central directory of users" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml148(para) msgid "Ability to take store snapshots in the Image Service for backup" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml156(title) msgid "" "OpenStack APIs are compatible with Amazon EC2 and Amazon S3. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml171(title) msgid "Horizon is the OpenStack name for Compute. (True or False)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml186(title) msgid "" "Which Hypervisors can be supported in OpenStack? (Choose all that apply)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml196(para) msgid "bhyve (BSD)" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml199(para) msgid "Xen" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml202(para) msgid "LXC" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml212(title) msgid "Associate Training Guide, Getting Started Quiz Answers" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml216(para) msgid "A, B, C, D, E" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml219(para) msgid "A, D, E" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml225(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml231(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml240(para) msgid "B" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml228(para) #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml237(para) msgid "A" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml234(para) msgid "A, C, E" msgstr "" #: ./doc/training-guides/bk001-ch002-associate-getting-started-quiz.xml243(para) msgid "A, B, D, E" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch007-keystone-arch.xml131(None) msgid "@@image: 'figures/image19.png'; md5=60e446d2b0f887288e414af8dd338778" msgstr "" #. More Content To be Added ... #.
#. Identity Service Concepts #: ./doc/training-guides/module001-ch007-keystone-arch.xml10(para) msgid "The Identity service performs these functions:" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml14(para) msgid "User management. Tracks users and their permissions." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml18(para) msgid "" "Service catalog. Provides a catalog of available services with their API " "endpoints." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml22(para) msgid "" "To understand the Identity Service, you must understand these concepts:" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml25(emphasis) msgid "User" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml27(para) msgid "" "Digital representation of a person, system, or service who uses OpenStack " "cloud services. Identity authentication services will validate that incoming" " request are being made by the user who claims to be making the call. Users " "have a login and may be assigned tokens to access resources. Users may be " "directly assigned to a particular tenant and behave as if they are contained" " in that tenant." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml38(emphasis) msgid "Credentials" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml40(para) msgid "" "Data that is known only by a user that proves who they are. In the Identity " "Service, examples are:" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml44(para) msgid "Username and password" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml47(para) msgid "Username and API key" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml50(para) msgid "An authentication token provided by the Identity Service" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml57(emphasis) msgid "Authentication" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml59(para) msgid "" "The act of confirming the identity of a user. The Identity Service confirms " "an incoming request by validating a set of credentials supplied by the user." " These credentials are initially a username and password or a username and " "API key. In response to these credentials, the Identity Service issues the " "user an authentication token, which the user provides in subsequent " "requests." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml71(emphasis) msgid "Token" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml73(para) msgid "" "An arbitrary bit of text that is used to access resources. Each token has a " "scope which describes which resources are accessible with it. A token may be" " revoked at anytime and is valid for a finite duration." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml77(para) msgid "" "While the Identity Service supports token-based authentication in this " "release, the intention is for it to support additional protocols in the " "future. The intent is for it to be an integration service foremost, and not " "aspire to be a full-fledged identity store and management solution." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml86(emphasis) msgid "Tenant" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml88(para) msgid "" "A container used to group or isolate resources and/or identity objects. " "Depending on the service operator, a tenant may map to a customer, account, " "organization, or project." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml96(emphasis) msgid "Service" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml98(para) msgid "" "An OpenStack service, such as Compute (Nova), Object Storage (Swift), or " "Image Service (Glance). Provides one or more endpoints through which users " "can access resources and perform operations." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml105(emphasis) msgid "Endpoint" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml107(para) msgid "" "An network-accessible address, usually described by URL, from where you " "access a service. If using an extension for templates, you can create an " "endpoint template, which represents the templates of all the consumable " "services that are available across the regions." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml116(emphasis) msgid "Role" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml118(para) msgid "" "A personality that a user assumes that enables them to perform a specific " "set of operations. A role includes a set of rights and privileges. A user " "assuming that role inherits those rights and privileges." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml122(para) msgid "" "In the Identity Service, a token that is issued to a user includes the list " "of roles that user can assume. Services that are being called by that user " "determine how they interpret the set of roles a user has and which " "operations or resources each role grants access to." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml128(title) msgid "Keystone Authentication" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml141(para) msgid "The main components of Identity user management are:" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml145(para) msgid "Users" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml148(para) msgid "Tenants" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml151(para) msgid "Roles" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml154(para) msgid "" "A user represents a human user, and has associated information such as " "username, password and email. This example creates a user named \"alice\":" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml158(para) msgid "" "A tenant can be a project, group, or organization. Whenever you make " "requests to OpenStack services, you must specify a tenant. For example, if " "you query the Compute service for a list of running instances, you get a " "list of all running instances for the specified tenant. This example creates" " a tenant named \"acme\":" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml165(para) msgid "" "A role captures what operations a user is permitted to perform in a given " "tenant. This example creates a role named \"compute-user\":" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml169(para) msgid "" "The Identity service associates a user with a tenant and a role. To continue" " with our previous examples, we may wish to assign the \"alice\" user the " "\"compute-user\" role in the \"acme\" tenant:" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml175(para) msgid "" "A user can be assigned different roles in different tenants. For example, " "Alice may also have the \"admin\" role in the \"Cyberdyne\" tenant. A user " "can also be assigned multiple roles in the same tenant." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml179(para) msgid "" "The /etc/[SERVICE_CODENAME]/policy.json file controls " "what users are allowed to do for a given service. For example, " "/etc/nova/policy.json specifies the access policy for " "the Compute service, /etc/glance/policy.json specifies " "the access policy for the Image Service, and " "/etc/keystone/policy.json specifies the access policy " "for the Identity service." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml189(para) msgid "" "The default policy.json files in the Compute, Identity, and Image Service " "recognize only the admin role: all operations that do not require the admin " "role will be accessible by any user that has any role in a tenant." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml194(para) msgid "" "If you wish to restrict users from performing operations in, say, the " "Compute service, you need to create a role in the Identity service and then " "modify /etc/nova/policy.json so that this role is " "required for Compute operations." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml199(para) msgid "" "For example, this line in /etc/nova/policy.json " "specifies that there are no restrictions on which users can create volumes: " "if the user has any role in a tenant, they will be able to create volumes in" " that tenant." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml207(emphasis) msgid "Service Management" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml210(para) msgid "" "The Identity Service provides the following service management functions:" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml214(para) msgid "Services" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml217(para) msgid "Endpoints" msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml220(para) msgid "" "The Identity Service also maintains a user that corresponds to each service," " such as a user named nova, for the Compute service) and a special service " "tenant, which is called service." msgstr "" #: ./doc/training-guides/module001-ch007-keystone-arch.xml224(para) msgid "" "The commands for creating services and endpoints are described in a later " "section." msgstr "" #: ./doc/training-guides/bk003-ch021-developer-how-to-participate-day-nine-quiz.xml6(title) msgid "Developer How To Participate Day Nine Quiz" msgstr "" #: ./doc/training-guides/card041-neutron.xml7(title) #: ./doc/training-guides/card041-neutron.xml16(emphasis) msgid "Install Neutron" msgstr "" #: ./doc/training-guides/card041-neutron.xml10(para) msgid "" "Open vSwitch is one of many options, but for now we will stick with OVS." msgstr "" #: ./doc/training-guides/bk001-ch011-associate-assessment.xml8(title) msgid "Day 2, 15:00 to 16:00" msgstr "" #: ./doc/training-guides/bk003-ch004-developer-apis-in-depth.xml8(title) msgid "Developer APIs in Depth" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml213(None) msgid "@@image: 'figures/image02.png'; md5=9568a4bc836fe6a413f5ea2a5297d475" msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml7(title) #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml21(title) msgid "VM provisioning in-depth" msgstr "" #. More content to be added... #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml11(para) msgid "The request flow for provisioning an instance goes like this:" msgstr "" #. 1 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml21(para) msgid "" "The dashboard or CLI gets the user credentials and authenticates with the " "Identity Service via REST API." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml24(para) msgid "" "The Identity Service authenticates the user with the user credentials, and " "then generates and sends back an auth-token which will be used for sending " "the request to other components through REST-call." msgstr "" #. 2 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml33(para) msgid "" "The dashboard or CLI converts the new instance request specified in " "launch instance or form to a REST API " "request and sends it to nova-api." msgstr "" #. 3 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml42(para) msgid "" "nova-api receives the request and" " sends a request to the Identity Service for validation of the auth-token " "and access permission." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml47(para) msgid "" "The Identity Service validates the token and sends updated authentication " "headers with roles and permissions." msgstr "" #. 4 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml54(para) msgid "" "nova-api checks for conflicts " "with nova-database." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml59(para) msgid "" "nova-api creates initial database" " entry for a new instance." msgstr "" #. 5 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml66(para) msgid "" "nova-api sends the rpc.call " "request to nova-scheduler " "expecting to get updated instance entry with host ID specified." msgstr "" #. 6 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml75(para) msgid "" "nova-scheduler picks up the " "request from the queue." msgstr "" #. 7 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml82(para) msgid "" "nova-scheduler interacts with " "nova-database to find an " "appropriate host via filtering and weighing." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml88(para) msgid "" "nova-scheduler returns the " "updated instance entry with the appropriate host ID after filtering and " "weighing." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml93(para) msgid "" "nova-scheduler sends the rpc.cast" " request to nova-compute for " "launching an instance on the appropriate host." msgstr "" #. 8 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml102(para) msgid "" "nova-compute picks up the request" " from the queue." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml108(para) msgid "" "nova-compute sends the rpc.call " "request to nova-conductor to " "fetch the instance information such as host ID and flavor (RAM, CPU, Disk)." msgstr "" #. 10 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml119(para) msgid "" "nova-conductor picks up the " "request from the queue." msgstr "" #. 11 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml126(para) msgid "" "nova-conductor interacts with " "nova-database." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml131(para) msgid "" "nova-conductor returns the " "instance information." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml135(para) msgid "" "nova-compute picks up the " "instance information from the queue." msgstr "" #. 12 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml142(para) msgid "" "nova-compute performs the REST " "call by passing the auth-token to glance-" "api. Then, nova-" "compute uses the Image ID to retrieve the Image URI from the " "Image Service, and loads the image from the image storage." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml152(para) msgid "" "glance-api validates the auth-" "token with keystone." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml157(para) msgid "" "nova-compute gets the image " "metadata." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml163(para) msgid "" "nova-compute performs the REST-" "call by passing the auth-token to Network API to allocate and configure the " "network so that the instance gets the IP address." msgstr "" #. 15 #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml173(para) msgid "" "neutron-server validates the " "auth-token with keystone." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml177(para) msgid "" "nova-compute retrieves the " "network info." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml183(para) msgid "" "nova-compute performs the REST " "call by passing the auth-token to Volume API to attach volumes to the " "instance." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml191(para) msgid "" "cinder-api validates the auth-" "token with keystone." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml196(para) msgid "" "nova-compute retrieves the block " "storage info." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml202(para) msgid "" "nova-compute generates data for " "the hypervisor driver and executes the request on the hypervisor (via " "libvirt or API)." msgstr "" #: ./doc/training-guides/module001-ch010-vm-provisioning-indepth.xml210(title) msgid "Nova VM provisioning" msgstr "" #: ./doc/training-guides/bk002-ch011-operator-network-node-lab.xml6(title) #: ./doc/training-guides/bk002-ch011-operator-network-node-lab.xml12(title) msgid "Network Node Lab" msgstr "" #: ./doc/training-guides/bk002-ch011-operator-network-node-lab.xml8(title) msgid "Days 7 to 8, 13:30 to 14:45, 15:00 to 17:00" msgstr "" #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml22(title) msgid "Review Associate Introduction" msgstr "" #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml29(title) msgid "Review Associate Brief Overview" msgstr "" #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml36(title) msgid "Review Associate Core Projects" msgstr "" #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml43(title) msgid "Review Associate OpenStack Architecture" msgstr "" #: ./doc/training-guides/bk002-ch001-operator-getting-started.xml50(title) msgid "Review Associate Virtual Machine Provisioning Walk-Through" msgstr "" #: ./doc/training-guides/card008.xml7(title) msgid "Understanding the RefStack Architecture" msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml7(title) #: ./doc/training-guides/bk001-ch007-associate-network-node.xml21(title) msgid "OpenStack Networking Concepts" msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml8(emphasis) msgid "Network Types" msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml9(para) msgid "" "The OpenStack Networking configuration provided by the Rackspace Private " "Cloud cookbooks allows you to choose between VLAN or GRE isolated networks, " "both provider- and tenant-specific. From the provider side, an administrator" " can also create a flat network." msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml14(para) msgid "" "The type of network that is used for private tenant networks is determined " "by the network_type attribute, which can be edited in the Chef " "override_attributes. This attribute sets both the default provider network " "type and the only type of network that tenants are able to create. " "Administrators can always create flat and VLAN networks. GRE networks of any" " type require the network_type to be set to gre." msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml21(emphasis) msgid "Namespaces" msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml22(para) msgid "" "For each network you create, the Network node (or Controller node, if " "combined) will have a unique network namespace (netns) created by the DHCP " "and Metadata agents. The netns hosts an interface and IP addresses for " "dnsmasq and the quantum-ns-metadata-proxy. You can view the namespaces with " "the ip netns [list], and can interact with the namespaces with the ip netns " "exec <namespace> <command> command." msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml30(emphasis) msgid "Metadata" msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml31(para) msgid "" "Not all networks or VMs need metadata access. Rackspace recommends that you " "use metadata if you are using a single network. If you need metadata, you " "may also need a default route. (If you don't need a default route, no-" "gateway will do.)" msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml36(para) msgid "" "To communicate with the metadata IP address inside the namespace, instances " "need a route for the metadata network that points to the dnsmasq IP address " "on the same namespaced interface. OpenStack Networking only injects a route " "when you do not specify a gateway-ip in the subnet." msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml41(para) msgid "" "If you need to use a default route and provide instances with access to the " "metadata route, create the subnet without specifying a gateway IP and with a" " static route from 0.0.0.0/0 to your gateway IP address. Adjust the DHCP " "allocation pool so that it will not assign the gateway IP. With this " "configuration, dnsmasq will pass both routes to instances. This way, " "metadata will be routed correctly without any changes on the external " "gateway." msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml49(emphasis) msgid "OVS Bridges" msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml50(para) msgid "" "An OVS bridge for provider traffic is created and configured on the nodes " "where single-network-node and single-compute are applied. Bridges are " "created, but physical interfaces are not added. An OVS bridge is not created" " on a Controller-only node." msgstr "" #: ./doc/training-guides/module002-ch002-openstack-networking-concepts.xml55(para) msgid "" "When creating networks, you can specify the type and properties, such as " "Flat vs. VLAN, Shared vs. Tenant, or Provider vs. Overlay. These properties " "identify and determine the behavior and resources of instances attached to " "the network. The cookbooks will create bridges for the configuration that " "you specify, although they do not add physical interfaces to provider " "bridges. For example, if you specify a network type of GRE, a br-tun tunnel " "bridge will be created to handle overlay traffic." msgstr "" #: ./doc/training-guides/card037-rabbitmq.xml7(title) msgid "Installing RabbitMQ" msgstr "" #: ./doc/training-guides/card037-rabbitmq.xml14(link) msgid "" "Submit a bug on the section above. Add a short description for the bug " "summary. Add a paragraph for the description and then tag with training-" "manuals." msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml32(None) msgid "@@image: 'figures/image34.png'; md5=de380963b3137c842e8a1795bc376558" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml46(None) msgid "@@image: 'figures/image35.png'; md5=9399b9e427152d07037568bdf38fb184" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml68(None) msgid "@@image: 'figures/image36.png'; md5=880830d2a425db41661840218713072d" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml104(None) msgid "@@image: 'figures/image37.png'; md5=7371790c2697148cafbdfd50c55cc2f2" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml126(None) msgid "@@image: 'figures/image38.png'; md5=2e335e5d101e9b4d710e320a6dfa363e" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml7(title) msgid "Neutron Use Cases" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml8(para) msgid "" "As of now you must be wondering, how to use these awesome features that " "OpenStack Networking has given to us." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml10(guilabel) msgid "Use Case: Single Flat Network" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml11(para) msgid "" "In the simplest use case, a single OpenStack Networking network exists. This" " is a \"shared\" network, meaning it is visible to all tenants via the " "OpenStack Networking API. Tenant VMs have a single NIC, and receive a fixed " "IP address from the subnet(s) associated with that network. This essentially" " maps to the FlatManager and FlatDHCPManager models provided by OpenStack " "Compute. Floating IPs are not supported." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml19(para) msgid "" "It is common that an OpenStack Networking network is a \"provider network\"," " meaning it was created by the OpenStack administrator to map directly to an" " existing physical network in the data center. This allows the provider to " "use a physical router on that data center network as the gateway for VMs to " "reach the outside world. For each subnet on an external network, the gateway" " configuration on the physical router must be manually configured outside of" " OpenStack." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml29(title) msgid "Single Flat Network" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml36(guilabel) msgid "Use Case: Multiple Flat Network" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml38(para) msgid "" "This use case is very similar to the above Single Flat Network use case, " "except that tenants see multiple shared networks via the OpenStack " "Networking API and can choose which network (or networks) to plug into." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml43(title) msgid "Multiple Flat Network" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml50(guilabel) msgid "Use Case: Mixed Flat and Private Network" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml52(para) msgid "" "This use case is an extension of the above flat network use cases, in which " "tenants also optionally have access to private per-tenant networks. In " "addition to seeing one or more shared networks via the OpenStack Networking " "API, tenants can create additional networks that are only visible to users " "of that tenant. When creating VMs, those VMs can have NICs on any of the " "shared networks and/or any of the private networks belonging to the tenant. " "This enables the creation of \"multi-tier\" topologies using VMs with " "multiple NICs. It also supports a model where a VM acting as a gateway can " "provide services such as routing, NAT, or load balancing." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml65(title) msgid "Mixed Flat and Private Network" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml72(guilabel) msgid "Use Case: Provider Router with Private Networks" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml74(para) msgid "" "This use provides each tenant with one or more private networks, which " "connect to the outside world via an OpenStack Networking router. The case " "where each tenant gets exactly one network in this form maps to the same " "logical topology as the VlanManager in OpenStack Compute (of course, " "OpenStack Networking doesn't require VLANs). Using the OpenStack Networking " "API, the tenant would only see a network for each private network assigned " "to that tenant. The router object in the API is created and owned by the " "cloud admin." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml84(para) msgid "" "This model supports giving VMs public addresses using \"floating IPs\", in " "which the router maps public addresses from the external network to fixed " "IPs on private networks. Hosts without floating IPs can still create " "outbound connections to the external network, as the provider router " "performs SNAT to the router's external IP. The IP address of the physical " "router is used as the gateway_ip of the external network subnet, so the " "provider has a default router for Internet traffic." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml93(para) msgid "" "The router provides L3 connectivity between private networks, meaning that " "different tenants can reach each others instances unless additional " "filtering, such as security groups, is used. Because there is only a single " "router, tenant networks cannot use overlapping IPs. Thus, it is likely that " "the admin would create the private networks on behalf of tenants." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml101(title) msgid "Provider Router with Private Networks" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml108(guilabel) msgid "Use Case: Per-tenant Routers with Private Networks" msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml110(para) msgid "" "A more advanced router scenario in which each tenant gets at least one " "router, and potentially has access to the OpenStack Networking API to create" " additional routers. The tenant can create their own networks, potentially " "uplinking those networks to a router. This model enables tenant-defined " "multi-tier applications, with each tier being a separate network behind the " "router. Since there are multiple routers, tenant subnets can be overlapping " "without conflicting, since access to external networks all happens via SNAT " "or Floating IPs. Each router uplink and floating IP is allocated from the " "external network subnet." msgstr "" #: ./doc/training-guides/module002-ch003-neutron-use-cases.xml123(title) msgid "Per-tenant Routers with Private Networks" msgstr "" #: ./doc/training-guides/card040-cinder.xml7(title) msgid "Install Cinder" msgstr "" #: ./doc/training-guides/lab001-control-node.xml29(emphasis) msgid "Preparing Ubuntu 13.04/12.04" msgstr "" #: ./doc/training-guides/lab001-control-node.xml50(emphasis) msgid "Networking :" msgstr "" #: ./doc/training-guides/lab001-control-node.xml51(para) msgid "" "Configure your network by editing " "/etc/network/interfaces file" msgstr "" #: ./doc/training-guides/lab001-control-node.xml53(para) msgid "" "Open /etc/network/interfaces and edit file as " "mentioned:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml87(para) msgid "After saving the interfaces file, restart the networking service" msgstr "" #: ./doc/training-guides/lab001-control-node.xml93(para) msgid "" "You should see the expected network interface cards having the required IP " "Addresses." msgstr "" #: ./doc/training-guides/lab001-control-node.xml96(emphasis) msgid "SSH from HOST" msgstr "" #: ./doc/training-guides/lab001-control-node.xml99(para) msgid "" "Create an SSH key pair for your Control Node. Follow the same steps as you " "did in the starting section of the article for your host machine." msgstr "" #: ./doc/training-guides/lab001-control-node.xml102(para) msgid "" "To SSH into the Control Node from the Host Machine type the below command." msgstr "" #: ./doc/training-guides/lab001-control-node.xml109(para) msgid "Now you can have access to your host clipboard." msgstr "" #: ./doc/training-guides/lab001-control-node.xml112(emphasis) msgid "My SQL" msgstr "" #: ./doc/training-guides/lab001-control-node.xml115(para) msgid "Install MySQL:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml121(para) msgid "Configure mysql to accept all incoming requests:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml131(para) msgid "Install RabbitMQ:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml137(para) msgid "Install NTP service:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml143(para) msgid "Create these databases:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml160(emphasis) msgid "Other" msgstr "" #: ./doc/training-guides/lab001-control-node.xml163(para) msgid "Install other services:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml169(para) msgid "Enable IP_Forwarding:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml175(para) msgid "" "Also add the following two lines into/etc/sysctl.conf:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml182(para) msgid "To save you from reboot, perform the following" msgstr "" #: ./doc/training-guides/lab001-control-node.xml191(emphasis) msgid "Keystone" msgstr "" #: ./doc/training-guides/lab001-control-node.xml192(para) msgid "" "Keystone is an OpenStack project that provides Identity, Token, Catalog and " "Policy services for use specifically by projects in the OpenStack family. It" " implements OpenStack’s Identity API." msgstr "" #: ./doc/training-guides/lab001-control-node.xml195(para) msgid "Install Keystone packages:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml201(para) msgid "" "Adapt the connection attribute in the " "/etc/keystone/keystone.conf to the new database:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml207(para) msgid "Restart the identity service then synchronize the database:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml214(para) msgid "Fill up the keystone database using the below two scripts:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml217(filename) msgid "keystone_basic.sh" msgstr "" #: ./doc/training-guides/lab001-control-node.xml222(filename) msgid "keystone_endpoints_basic.sh" msgstr "" #: ./doc/training-guides/lab001-control-node.xml227(para) msgid "Run Scripts:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml236(para) msgid "Create a simple credentials file" msgstr "" #: ./doc/training-guides/lab001-control-node.xml242(para) msgid "Paste the following:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml251(para) msgid "Load the above credentials:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml257(para) msgid "To test Keystone, we use a simple CLI command:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml263(emphasis) msgid "Glance" msgstr "" #: ./doc/training-guides/lab001-control-node.xml264(para) msgid "" "The OpenStack Glance project provides services for discovering, registering," " and retrieving virtual machine images. Glance has a RESTful API that allows" " querying of VM image metadata as well as retrieval of the actual image." msgstr "" #: ./doc/training-guides/lab001-control-node.xml266(para) msgid "" "VM images made available through Glance can be stored in a variety of " "locations from simple file systems to object-storage systems like the " "OpenStack Swift project." msgstr "" #: ./doc/training-guides/lab001-control-node.xml267(para) msgid "" "Glance, as with all OpenStack projects, is written with the following design" " guidelines in mind:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml270(para) msgid "Component based architecture: Quickly adds new behaviors" msgstr "" #: ./doc/training-guides/lab001-control-node.xml273(para) msgid "Highly available: Scales to very serious workloads" msgstr "" #: ./doc/training-guides/lab001-control-node.xml276(para) msgid "Fault tolerant: Isolated processes avoid cascading failures" msgstr "" #: ./doc/training-guides/lab001-control-node.xml279(para) msgid "Recoverable: Failures should be easy to diagnose, debug, and rectify" msgstr "" #: ./doc/training-guides/lab001-control-node.xml282(para) msgid "" "Open standards: Be a reference implementation for a community-driven api" msgstr "" #: ./doc/training-guides/lab001-control-node.xml286(para) #: ./doc/training-guides/card127-glance.xml7(title) msgid "Install Glance" msgstr "" #: ./doc/training-guides/lab001-control-node.xml292(para) msgid "Update /etc/glance/glance-api-paste.ini" msgstr "" #: ./doc/training-guides/lab001-control-node.xml306(para) msgid "Update the /etc/glance/glance-registry-paste.ini" msgstr "" #: ./doc/training-guides/lab001-control-node.xml319(para) msgid "Update the /etc/glance/glance-api.conf" msgstr "" #: ./doc/training-guides/lab001-control-node.xml335(para) msgid "Update the /etc/glance/glance-registry.conf" msgstr "" #: ./doc/training-guides/lab001-control-node.xml351(para) msgid "Restart the glance-api and glance-registry services:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml357(para) msgid "Synchronize the Glance database:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml363(para) msgid "" "To test Glance, upload the “cirros cloud image” directly from the internet:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml369(para) msgid "Check if the image is successfully uploaded:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml376(para) msgid "" "Neutron is an OpenStack project to provide “network connectivity as a " "service\" between interface devices (e.g., vNICs) managed by other OpenStack" " services (e.g., nova)." msgstr "" #: ./doc/training-guides/lab001-control-node.xml379(para) msgid "Install the Neutron Server and the Open vSwitch package collection:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml385(para) msgid "" "Edit the " "/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml405(para) msgid "Edit the /etc/neutron/api-paste.ini:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml420(para) msgid "Edit the /etc/neutron/neutron.conf:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml437(para) msgid "Restart Neutron services:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml444(para) msgid "" "Nova is the project name for OpenStack Compute, a cloud computing fabric " "controller, the main part of an IaaS system. Individuals and organizations " "can use Nova to host and manage their own cloud computing systems. Nova " "originated as a project out of NASA Ames Research Laboratory." msgstr "" #: ./doc/training-guides/lab001-control-node.xml447(para) msgid "Nova is written with the following design guidelines in mind:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml450(para) msgid "Component based architecture: Quickly adds new behaviors." msgstr "" #: ./doc/training-guides/lab001-control-node.xml453(para) #: ./doc/training-guides/lab001-control-node.xml583(para) msgid "Highly available: Scales to very serious workloads." msgstr "" #: ./doc/training-guides/lab001-control-node.xml456(para) #: ./doc/training-guides/lab001-control-node.xml586(para) msgid "Fault-Tolerant: Isolated processes avoid cascading failures." msgstr "" #: ./doc/training-guides/lab001-control-node.xml459(para) msgid "Recoverable: Failures should be easy to diagnose, debug, and rectify." msgstr "" #: ./doc/training-guides/lab001-control-node.xml463(para) msgid "" "Open standards: Be a reference implementation for a community-driven api." msgstr "" #: ./doc/training-guides/lab001-control-node.xml468(para) msgid "" "API compatibility: Nova strives to be API-compatible with popular systems " "like Amazon EC2." msgstr "" #: ./doc/training-guides/lab001-control-node.xml473(para) msgid "Install nova components:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml556(para) msgid "Synchronize your database:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml562(para) msgid "Restart nova-* services (all nova services):" msgstr "" #: ./doc/training-guides/lab001-control-node.xml568(para) msgid "" "Check for the smiling faces on nova-* services to confirm your installation:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml576(emphasis) msgid "Cinder" msgstr "" #: ./doc/training-guides/lab001-control-node.xml577(para) msgid "" "Cinder is an OpenStack project to provide “block storage as a service”." msgstr "" #: ./doc/training-guides/lab001-control-node.xml580(para) msgid "Component based architecture: Quickly adds new behavior." msgstr "" #: ./doc/training-guides/lab001-control-node.xml589(para) msgid "Recoverable: Failures should be easy to diagnose, debug and rectify." msgstr "" #: ./doc/training-guides/lab001-control-node.xml593(para) msgid "" "Open standards: Be a reference implementation for a community-driven API." msgstr "" #: ./doc/training-guides/lab001-control-node.xml598(para) msgid "" "API compatibility: Cinder strives to be API-compatible with popular systems " "like Amazon EC2." msgstr "" #: ./doc/training-guides/lab001-control-node.xml603(para) msgid "Install Cinder components:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml609(para) msgid "Configure the iSCSI services:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml615(para) msgid "Restart the services:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml622(para) msgid "Edit /etc/cinder/api-paste.ini:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml639(para) msgid "Edit /etc/cinder/cinder.conf:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml657(para) msgid "Then, synchronize Cinder database:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml663(para) msgid "" "Finally, create a volume group and name it cinder-" "volumes:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml677(para) msgid "Proceed to create the physical volume then the volume group:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml684(para) msgid "" "Note: Be aware that this volume group gets lost after a system reboot. If " "you do not want to perform this step again, make sure that you save the " "machine state and do not shut it down." msgstr "" #: ./doc/training-guides/lab001-control-node.xml687(para) msgid "Restart the Cinder services:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml693(para) msgid "Verify if Cinder services are running:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml699(emphasis) msgid "Horizon" msgstr "" #: ./doc/training-guides/lab001-control-node.xml700(para) msgid "" "Horizon is the canonical implementation of OpenStack’s dashboard, which " "provides a web-based user interface to OpenStack services including Nova, " "Swift, Keystone, etc." msgstr "" #: ./doc/training-guides/lab001-control-node.xml703(para) msgid "To install Horizon, proceed with the following steps:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml709(para) msgid "" "If you do not like the OpenStack Ubuntu Theme, you can remove it with help " "of the below command:" msgstr "" #: ./doc/training-guides/lab001-control-node.xml715(para) msgid "Reload Apache and memcached:" msgstr "" #: ./doc/training-guides/bk003-ch017-developer-how-to-participate-day-seven-quiz.xml6(title) msgid "Developer How To Participate Day Seven Quiz" msgstr "" #: ./doc/training-guides/bk003-ch017-developer-how-to-participate-day-seven-quiz.xml8(title) msgid "Day 7, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/card046-L3_Configuration_in_the_Network_Node.xml7(title) msgid "L3 Configuration in the Network Node" msgstr "" #: ./doc/training-guides/bk000-preface.xml6(title) msgid "Start Here" msgstr "" #: ./doc/training-guides/bk000-preface.xml8(title) msgid "Preface" msgstr "" #: ./doc/training-guides/bk000-preface.xml13(title) msgid "OpenStack Training Guides Are Under Construction" msgstr "" #: ./doc/training-guides/bk000-preface.xml14(para) msgid "" "We need your help! This is a community driven project to provide the user " "group community access to OpenStack training materials. We cannot make this " "work without your help." msgstr "" #: ./doc/training-guides/bk000-preface.xml16(para) msgid "" "There are a few ways to get involved. The easiest way is to use the training" " guides. Look at the end of each section and you will see the Submit a Bug " "link. When you find something that can be improved or fixed, submit a bug by" " clicking on the link." msgstr "" #: ./doc/training-guides/bk000-preface.xml19(para) msgid "" "If you want to get involved with the effort around OpenStack community " "training, read on, here are the options:" msgstr "" #: ./doc/training-guides/bk000-preface.xml24(title) msgid "Attending a user group using the training materials" msgstr "" #: ./doc/training-guides/bk000-preface.xml25(para) msgid "" "The OpenStack community training started at the SFBay OpenStack User Group. " "More information on this user group and others using the training guides on " "the OpenStack User " "Groups page." msgstr "" #: ./doc/training-guides/bk000-preface.xml32(title) msgid "Teach / Lead a user group using the training materials" msgstr "" #: ./doc/training-guides/bk000-preface.xml33(para) msgid "" "Awesome! Your experience will not only give you more experience with " "OpenStack, but you will help some people find new jobs. We have put all the " "information about How" " To Run An OpenStack Hackathon here." msgstr "" #: ./doc/training-guides/bk000-preface.xml40(title) msgid "Help create the training pages" msgstr "" #: ./doc/training-guides/bk000-preface.xml44(para) msgid "" "We are currently working on creating the Associate Training Guide. It is the" " first of four training guides. We are using the Install Guide, " "Administration Guides, Developer Documentation, and Aptira supplied content " "as the sources for most of the Associate Training Guide. The basic idea is " "that we use XML include statements to actually use the source content to " "create new pages. We aim to use as much of the material as possible from " "existing documentation. By doing this we reuse and improve the existing " "docs. The topics in the Associate Training Guide are in a bunch of KanBan " "story board cards. Each card in the story board represents something that an" " Associate trainee needs to learn. But first things first, you need to get " "some basic tools and accounts installed and configured before you can really" " start." msgstr "" #: ./doc/training-guides/bk000-preface.xml57(para) msgid "" "Getting Accounts and Tools: We can't do " "this without operators and developers using and creating the content. Anyone" " can contribute content. You will need the tools to get started. Go to the " "Getting Tools and Accounts page." msgstr "" #: ./doc/training-guides/bk000-preface.xml64(para) msgid "" "Pick a Card: Once you have your tools " "ready to go, you can assign some work to yourself. Go to the Training Trello/KanBan storyboard" " and assign a card / user story from the Sprint Backlog to yourself. If you " "do not have a Trello account, no problem, just create one. Email seanrob" "@yahoo-inc.com and you will have access." msgstr "" #: ./doc/training-guides/bk000-preface.xml72(para) msgid "" "Create the Content: Each card / user " "story from the KanBan story board will be a separate chunk of content that " "you will add to the openstack-manuals repository openstack-training sub-" "project. More details on creating training content here." msgstr "" #: ./doc/training-guides/bk000-preface.xml82(para) msgid "" "Here are more details on committing changes to OpenStack fixing a documentation" " bug , OpenStack Gerrit " "Workflow, OpenStack " "Documentation HowTo and , Git " "Documentation" msgstr "" #: ./doc/training-guides/bk000-preface.xml91(para) msgid "More details on the OpenStack Training project." msgstr "" #: ./doc/training-guides/bk000-preface.xml95(para) msgid "" "OpenStack " "Training Wiki (describes the project in detail)" msgstr "" #: ./doc/training-guides/bk000-preface.xml99(para) msgid "" "OpenStack Training blueprint(this is the key " "project page)" msgstr "" #: ./doc/training-guides/bk000-preface.xml104(para) msgid "" "Bi-Weekly SFBay Hackathon " "meetup page(we discuss project details with all team members)" msgstr "" #: ./doc/training-guides/bk000-preface.xml108(para) msgid "" "Bi-Weekly " "SFBay Hackathon Etherpad(meetup notes)" msgstr "" #: ./doc/training-guides/bk000-preface.xml112(para) msgid "" "Core Training Weekly Meeting Agenda(we review project " "action items here)" msgstr "" #: ./doc/training-guides/bk000-preface.xml116(para) msgid "" "Training Trello/KanBan " "storyboard(we develop high level project action items here)" msgstr "" #: ./doc/training-guides/bk000-preface.xml123(link) msgid "" "Submit a bug. Enter the summary as \"Training, \" with a few words. Be " "descriptive as possible in the description field. Open the tag pull-down and" " enter training-manuals." msgstr "" #: ./doc/training-guides/bk000-preface.xml127(title) msgid "Building the Training Cluster" msgstr "" #: ./doc/training-guides/bk000-preface.xml130(title) msgid "Important Terms" msgstr "" #: ./doc/training-guides/bk000-preface.xml137(title) msgid "Building the Training Cluster, Scripted" msgstr "" #: ./doc/training-guides/bk000-preface.xml144(title) msgid "Building the Training Cluster, Manually" msgstr "" #: ./doc/training-guides/card026-network-node-architecture.xml7(title) msgid "Network Node Overview" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml8(title) msgid "Day 1, 09:00 to 11:00" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml13(para) msgid "" "Training will take 1 month self paced, (2) 2 week periods with a user group " "meeting, or 16 hours instructor led." msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml17(para) msgid "" "Working knowledge of Linux CLI, basic Linux SysAdmin skills (directory " "structure, vi, ssh, installing software)" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml19(para) msgid "Basic networking knowledge (Ethernet, VLAN, IP addressing)" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml20(para) msgid "Laptop with VirtualBox installed (highly recommended)" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml24(title) msgid "Introduction Text" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml31(title) #: ./doc/training-guides/module001-ch002-brief-overview.xml7(title) msgid "Brief Overview" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml38(title) msgid "Core Projects" msgstr "" #: ./doc/training-guides/bk001-ch001-associate-getting-started.xml52(title) msgid "Virtual Machine Provisioning Walk-Through" msgstr "" #: ./doc/training-guides/card044-install-and-configure-neutron-network-node.xml7(title) msgid "Neutron Installation and Configuration in Network node" msgstr "" #: ./doc/training-guides/card073-control-state-instance.xml7(title) #: ./doc/training-guides/card073-control-state-instance.xml8(emphasis) msgid "Controlling instance state" msgstr "" #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml10(title) msgid "Day 1, 15:00 to 17:00" msgstr "" #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml37(title) msgid "Block Storage CLI Commands" msgstr "" #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml44(title) msgid "Block Storage Manage Volumes" msgstr "" #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml51(title) msgid "Compute CLI Commands" msgstr "" #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml58(title) msgid "Compute Image creation" msgstr "" #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml65(title) msgid "Compute Boot Instance" msgstr "" #: ./doc/training-guides/bk001-ch005-associate-compute-node.xml72(title) msgid "Compute Terminate Instance" msgstr "" #: ./doc/training-guides/bk002-ch005-operator-controller-node-lab.xml6(title) msgid "Controller Node Lab" msgstr "" #: ./doc/training-guides/bk002-ch005-operator-controller-node-lab.xml8(title) msgid "Days 2 to 4, 13:30 to 14:45, 15:00 to 16:30, 16:45 to 18:15" msgstr "" #: ./doc/training-guides/bk002-ch005-operator-controller-node-lab.xml12(title) msgid "Control Node Lab" msgstr "" #: ./doc/training-guides/card128-swift.xml7(title) msgid "Install Swift" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/module001-ch002-brief-overview.xml54(None) msgid "@@image: 'figures/image23.jpg'; md5=6b259da45f404aa65ac2388e600f30b3" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml8(para) msgid "" "OpenStack is a cloud operating system that controls large pools of compute, " "storage, and networking resources throughout a datacenter. It is all managed" " through a dashboard that gives administrators control while empowering " "their users to provision resources through a web interface." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml13(para) msgid "" "OpenStack is a global collaboration of developers and cloud computing " "technologists producing the ubiquitous open source cloud computing platform " "for public and private clouds. The project aims to deliver solutions for all" " types of clouds by being" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml19(para) msgid "simple to implement" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml22(para) msgid "massively scalable" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml25(para) msgid "feature rich." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml28(para) msgid "" "To check out more information on OpenStack visit http://goo.gl/Ye9DFT" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml31(guilabel) msgid "OpenStack Foundation:" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml32(para) msgid "" "The OpenStack Foundation, established September 2012, is an independent body" " providing shared resources to help achieve the OpenStack Mission by " "protecting, empowering, and promoting OpenStack software and the community " "around it. This includes users, developers and the entire ecosystem. For " "more information visit http://goo.gl/3uvmNX." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml38(guilabel) msgid "Who's behind OpenStack?" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml39(para) msgid "" "Founded by Rackspace Hosting and NASA, OpenStack has grown to be a global " "software community of developers collaborating on a standard and massively " "scalable open source cloud operating system. The OpenStack Foundation " "promotes the development, distribution and adoption of the OpenStack cloud " "operating system. As the independent home for OpenStack, the Foundation has " "already attracted more than 7,000 individual members from 100 countries and " "850 different organizations. It has also secured more than $10 million in " "funding and is ready to fulfill the OpenStack mission of becoming the " "ubiquitous cloud computing platform. Checkout http://goo.gl/BZHJKdfor more on the " "same." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml51(title) msgid "Nebula (NASA)" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml58(para) msgid "" "The goal of the OpenStack Foundation is to serve developers, users, and the " "entire ecosystem by providing a set of shared resources to grow the " "footprint of public and private OpenStack clouds, enable technology vendors " "targeting the platform and assist developers in producing the best cloud " "software in the industry." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml64(guilabel) msgid "Who uses OpenStack?" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml65(para) msgid "" "Corporations, service providers, VARS, SMBs, researchers, and global data " "centers looking to deploy large-scale cloud deployments for private or " "public clouds leveraging the support and resulting technology of a global " "open source community. This is just three years into OpenStack, it's new, " "it's yet to mature and has immense possibilities. How do I say that? All " "these ‘buzz words’ will fall into a properly solved jigsaw puzzle as you go " "through this article." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml73(guilabel) msgid "It's Open Source:" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml74(para) msgid "" "All of the code for OpenStack is freely available under the Apache 2.0 " "license. Anyone can run it, build on it, or submit changes back to the " "project. This open development model is one of the best ways to foster " "badly-needed cloud standards, remove the fear of proprietary lock-in for " "cloud customers, and create a large ecosystem that spans cloud providers." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml80(guilabel) msgid "Who it's for:" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml81(para) msgid "" "Enterprises, service providers, government and academic institutions with " "physical hardware that would like to build a public or private cloud." msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml84(guilabel) msgid "How it's being used today:" msgstr "" #: ./doc/training-guides/module001-ch002-brief-overview.xml85(para) msgid "" "Organizations like CERN, Cisco WebEx, DreamHost, eBay, The Gap, HP, " "MercadoLibre, NASA, PayPal, Rackspace and University of Melbourne have " "deployed OpenStack clouds to achieve control, business agility and cost " "savings without the licensing fees and terms of proprietary software. For " "complete user stories visit http://goo.gl/aF4lsL, this should give " "you a good idea about the importance of OpenStack." msgstr "" #: ./doc/training-guides/bk002-operator-training-guide.xml5(title) msgid "Operator Training Guide" msgstr "" #: ./doc/training-guides/bk003-ch020-developer-how-to-participate-day-nine-lab.xml6(title) msgid "Developer How To Participate Lab Day Nine" msgstr "" #: ./doc/training-guides/bk003-ch020-developer-how-to-participate-day-nine-lab.xml8(title) msgid "Day 9, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml6(title) msgid "Developer How To Participate Bootcamp" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml8(title) msgid "One Day with Focus on Contribution" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml13(para) msgid "Training will take 6 hours with labs and quizzes." msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml16(para) msgid "Some knowledge of Python and/or Perl" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml17(para) msgid "" "Editor on a self-supplied laptop with either Eclipse with pydev, vim, emacs," " or pycharm" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml18(para) msgid "" "Run through the Operator Training Guide Getting Started Lab in full. This " "will walk each trainee through installing the accounts and tools required " "for the bootcamp." msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml22(title) msgid "Morning Classroom 10:00 to 11:15" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml23(para) msgid "Understanding the local tools in-depth" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml25(para) msgid "Pycharm editor" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml26(para) msgid "Git" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml27(para) msgid "Sourcetree" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml28(para) msgid "Maven" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml30(para) msgid "Understanding the remote tools in-depth" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml32(para) msgid "git-review" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml33(para) msgid "github" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml34(para) msgid "gerrit" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml35(para) msgid "jenkins" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml36(para) msgid "gearman" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml37(para) msgid "jeepy" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml38(para) msgid "zuul" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml39(para) msgid "launchpad" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml41(para) msgid "CI Pipeline Workflow Overview" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml43(para) msgid "Understanding the submission process in-depth" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml44(para) msgid "Review submission syntax" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml45(para) msgid "Gerrit etiquette" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml46(para) msgid "Resubmission" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml50(title) msgid "Morning Lab 11:30 to 12:30" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml54(title) msgid "Morning Quiz 12:30 to 12:50" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml55(para) #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml76(para) msgid "" "Online moodle test for theory, bit of syntax and terms, retake until 100%" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml56(para) #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml77(para) msgid "Content TBD" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml59(title) msgid "Afternoon Classroom 13:30 to 14:45" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml60(para) msgid "Understanding the CI Pipeline in-depth" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml62(para) msgid "Gerrit Workflow" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml63(para) msgid "Common jenkins tests" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml64(para) msgid "Reviewing and understanding zuul" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml65(para) msgid "Understanding jenkins output" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml66(para) msgid "Understanding jenkins system manual (devstack)" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml67(para) msgid "automated (tempest) integration tests" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml71(title) msgid "Afternoon Lab 15:00 to 17:00" msgstr "" #: ./doc/training-guides/bk003-ch023-developer-how-to-participate-bootcamp.xml75(title) msgid "Afternoon Quiz 17:00 to 17:20" msgstr "" #: ./doc/training-guides/bk002-ch008-operator-compute-node-lab.xml6(title) #: ./doc/training-guides/bk002-ch008-operator-compute-node-lab.xml12(title) msgid "Compute Node Lab" msgstr "" #: ./doc/training-guides/bk002-ch008-operator-compute-node-lab.xml8(title) msgid "Days 5 to 6, 13:30 to 14:45, 15:00 to 17:00" msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml7(title) msgid "Security in Neutron" msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml8(guilabel) msgid "Security Groups" msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml9(para) msgid "" "Security groups and security group rules allows administrators and tenants " "the ability to specify the type of traffic and direction (ingress/egress) " "that is allowed to pass through a port. A security group is a container for " "security group rules." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml14(para) msgid "" "When a port is created in OpenStack Networking it is associated with a " "security group. If a security group is not specified the port will be " "associated with a 'default' security group. By default this group will drop " "all ingress traffic and allow all egress. Rules can be added to this group " "in order to change the behaviour." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml20(para) msgid "" "If one desires to use the OpenStack Compute security group APIs and/or have " "OpenStack Compute orchestrate the creation of new ports for instances on " "specific security groups, additional configuration is needed. To enable " "this, one must configure the following file /etc/nova/nova.conf and set the " "config option security_group_api=neutron on every node running nova-compute " "and nova-api. After this change is made restart nova-api and nova-compute in" " order to pick up this change. After this change is made one will be able to" " use both the OpenStack Compute and OpenStack Network security group API at " "the same time." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml32(guilabel) msgid "Authentication and Authorization" msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml33(para) msgid "" "OpenStack Networking uses the OpenStack Identity service (project name " "keystone) as the default authentication service. When OpenStack Identity is " "enabled Users submitting requests to the OpenStack Networking service must " "provide an authentication token in X-Auth-Token request header. The " "aforementioned token should have been obtained by authenticating with the " "OpenStack Identity endpoint. For more information concerning authentication " "with OpenStack Identity, please refer to the OpenStack Identity " "documentation. When OpenStack Identity is enabled, it is not mandatory to " "specify tenant_id for resources in create requests, as the tenant identifier" " will be derived from the Authentication token. Please note that the default" " authorization settings only allow administrative users to create resources " "on behalf of a different tenant. OpenStack Networking uses information " "received from OpenStack Identity to authorize user requests. OpenStack " "Networking handles two kind of authorization policies:" msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml54(para) msgid "" "Operation-based: policies specify access " "criteria for specific operations, possibly with fine-grained control over " "specific attributes;" msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml60(para) msgid "" "Resource-based:whether access to specific" " resource might be granted or not according to the permissions configured " "for the resource (currently available only for the network resource). The " "actual authorization policies enforced in OpenStack Networking might vary " "from deployment to deployment." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml70(para) msgid "" "The policy engine reads entries from the policy.json file. The actual " "location of this file might vary from distribution to distribution. Entries " "can be updated while the system is running, and no service restart is " "required. That is to say, every time the policy file is updated, the " "policies will be automatically reloaded. Currently the only way of updating " "such policies is to edit the policy file. Please note that in this section " "we will use both the terms \"policy\" and \"rule\" to refer to objects which" " are specified in the same way in the policy file; in other words, there are" " no syntax differences between a rule and a policy. We will define a policy " "something which is matched directly from the OpenStack Networking policy " "engine, whereas we will define a rule as the elements of such policies which" " are then evaluated. For instance in create_subnet: " "[[\"admin_or_network_owner\"]], create_subnet is regarded as a policy, " "whereas admin_or_network_owner is regarded as a rule." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml88(para) msgid "" "Policies are triggered by the OpenStack Networking policy engine whenever " "one of them matches an OpenStack Networking API operation or a specific " "attribute being used in a given operation. For instance the create_subnet " "policy is triggered every time a POST /v2.0/subnets request is sent to the " "OpenStack Networking server; on the other hand create_network:shared is " "triggered every time the shared attribute is explicitly specified (and set " "to a value different from its default) in a POST /v2.0/networks request. It " "is also worth mentioning that policies can be also related to specific API " "extensions; for instance extension:provider_network:set will be triggered if" " the attributes defined by the Provider Network extensions are specified in " "an API request." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml102(para) msgid "" "An authorization policy can be composed by one or more rules. If more rules " "are specified, evaluation policy will be successful if any of the rules " "evaluates successfully; if an API operation matches multiple policies, then " "all the policies must evaluate successfully. Also, authorization rules are " "recursive. Once a rule is matched, the rule(s) can be resolved to another " "rule, until a terminal rule is reached." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml110(para) msgid "" "The OpenStack Networking policy engine currently defines the following kinds" " of terminal rules:" msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml114(para) msgid "" "Role-based rules: evaluate successfully " "if the user submitting the request has the specified role. For instance " "\"role:admin\"is successful if the user submitting the request is an " "administrator." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml121(para) msgid "" "Field-based rules: evaluate successfully " "if a field of the resource specified in the current request matches a " "specific value. For instance \"field:networks:shared=True\" is successful if" " the attribute shared of the network resource is set to true." msgstr "" #: ./doc/training-guides/module002-ch004-security-in-neutron.xml130(para) msgid "" "Generic rules:compare an attribute in the" " resource with an attribute extracted from the user's security credentials " "and evaluates successfully if the comparison is successful. For instance " "\"tenant_id:%(tenant_id)s\" is successful if the tenant identifier in the " "resource is equal to the tenant identifier of the user submitting the " "request." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml8(para) msgid "" "Because each replica in swift functions independently, and clients generally" " require only a simple majority of nodes responding to consider an operation" " successful, transient failures like network partitions can quickly cause " "replicas to diverge. These differences are eventually reconciled by " "asynchronous, peer-to-peer replicator processes. The replicator processes " "traverse their local filesystems, concurrently performing operations in a " "manner that balances load across physical disks." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml17(para) msgid "" "Replication uses a push model, with records and files generally only being " "copied from local to remote replicas. This is important because data on the " "node may not belong there (as in the case of handoffs and ring changes), and" " a replicator can’t know what data exists elsewhere in the cluster that it " "should pull in. It’s the duty of any node that contains data to ensure that " "data gets to where it belongs. Replica placement is handled by the ring." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml25(para) msgid "" "Every deleted record or file in the system is marked by a tombstone, so that" " deletions can be replicated alongside creations. The replication process " "cleans up tombstones after a time period known as the consistency window. " "The consistency window encompasses replication duration and how long " "transient failure can remove a node from the cluster. Tombstone cleanup must" " be tied to replication to reach replica convergence." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml33(para) msgid "" "If a replicator detects that a remote drive has failed, the replicator uses " "the get_more_nodes interface for the ring to choose an alternate node with " "which to synchronize. The replicator can maintain desired levels of " "replication in the face of disk failures, though some replicas may not be in" " an immediately usable location. Note that the replicator doesn’t maintain " "desired levels of replication when other failures, such as entire node " "failures occur, because most failure are transient." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml42(para) msgid "" "Replication is an area of active development, and likely rife with potential" " improvements to speed and accuracy." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml45(para) msgid "" "There are two major classes of replicator - the db replicator, which " "replicates accounts and containers, and the object replicator, which " "replicates object data." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml48(guilabel) msgid "DB Replication" msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml49(para) msgid "" "The first step performed by db replication is a low-cost hash comparison to " "determine whether two replicas already match. Under normal operation, this " "check is able to verify that most databases in the system are already " "synchronized very quickly. If the hashes differ, the replicator brings the " "databases in sync by sharing records added since the last sync point." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml56(para) msgid "" "This sync point is a high water mark noting the last record at which two " "databases were known to be in sync, and is stored in each database as a " "tuple of the remote database id and record id. Database ids are unique " "amongst all replicas of the database, and record ids are monotonically " "increasing integers. After all new records have been pushed to the remote " "database, the entire sync table of the local database is pushed, so the " "remote database can guarantee that it is in sync with everything with which " "the local database has previously synchronized." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml67(para) msgid "" "If a replica is found to be missing entirely, the whole local database file " "is transmitted to the peer using rsync(1) and vested with a new unique id." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml70(para) msgid "" "In practice, DB replication can process hundreds of databases per " "concurrency setting per second (up to the number of available CPUs or disks)" " and is bound by the number of DB transactions that must be performed." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml74(guilabel) msgid "Object Replication" msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml75(para) msgid "" "The initial implementation of object replication simply performed an rsync " "to push data from a local partition to all remote servers it was expected to" " exist on. While this performed adequately at small scale, replication times" " skyrocketed once directory structures could no longer be held in RAM. We " "now use a modification of this scheme in which a hash of the contents for " "each suffix directory is saved to a per-partition hashes file. The hash for " "a suffix directory is invalidated when the contents of that suffix directory" " are modified." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml85(para) msgid "" "The object replication process reads in these hash files, calculating any " "invalidated hashes. It then transmits the hashes to each remote server that " "should hold the partition, and only suffix directories with differing hashes" " on the remote server are rsynced. After pushing files to the remote server," " the replication process notifies it to recalculate hashes for the rsynced " "suffix directories." msgstr "" #: ./doc/training-guides/module003-ch009-replication.xml93(para) msgid "" "Performance of object replication is generally bound by the number of " "uncached directories it has to traverse, usually as a result of invalidated " "suffix directory hashes. Using write volume and partition counts from our " "running systems, it was designed so that around 2% of the hash space on a " "normal node will be invalidated per day, which has experimentally given us " "acceptable replication speeds." msgstr "" #: ./doc/training-guides/bk003-developer-training-guide.xml5(title) msgid "Developer Training Guide" msgstr "" #: ./doc/training-guides/bk003-ch011-developer-how-to-partipate.xml8(title) msgid "Developer How To Participate" msgstr "" #: ./doc/training-guides/bk003-ch011-developer-how-to-partipate.xml10(title) msgid "Day 5 to 9, 09:00 to 11:00, 11:15 to 12:30" msgstr "" #: ./doc/training-guides/bk003-ch014-developer-how-to-participate-day-six-lab.xml6(title) msgid "Developer How To Participate Lab Day Six" msgstr "" #: ./doc/training-guides/bk003-ch014-developer-how-to-participate-day-six-lab.xml8(title) msgid "Day 6, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/bk003-ch010-developer-apis-day-four-quiz.xml6(title) msgid "Developer APIs in Depth Day Four Quiz" msgstr "" #: ./doc/training-guides/bk003-ch010-developer-apis-day-four-quiz.xml8(title) msgid "Day 4, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/card011.xml7(title) msgid "Installing MySQL" msgstr "" #: ./doc/training-guides/bk001-bk010-associate-object-storage-node-quiz.xml7(title) msgid "Day 2, 14:25 to 14:45" msgstr "" #: ./doc/training-guides/lab004-openstack-production.xml7(title) msgid "OpenStack In Production" msgstr "" #: ./doc/training-guides/lab004-openstack-production.xml8(para) msgid "More Content To be Added." msgstr "" #: ./doc/training-guides/bk002-ch012-operator-network-node-quiz.xml6(title) #: ./doc/training-guides/bk001-ch008-associate-network-node-quiz.xml6(title) msgid "Network Node Quiz" msgstr "" #: ./doc/training-guides/bk002-ch012-operator-network-node-quiz.xml8(title) msgid "Days 7 to 8, 16:40 to 17:00" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml213(None) msgid "" "@@image: 'figures/lab000-virtual-box/image13.png'; " "md5=eeaf2e523b991a592182c76fcfc29e07" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml257(None) msgid "" "@@image: 'figures/lab000-virtual-box/image19.png'; " "md5=9a3c62ffc47b83ab5306820bd3a9a4fc" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml292(None) msgid "" "@@image: 'figures/lab000-virtual-box/image16.png'; " "md5=bb1f3c80211fafd0ce737725ca39a6b3" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml326(None) msgid "" "@@image: 'figures/lab000-virtual-box/image08.png'; " "md5=e52887e98a60caa87affd91d78ff6a4f" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml375(None) msgid "" "@@image: 'figures/lab000-virtual-box/image11.png'; " "md5=f0799ccd13811e991932b79655efe63b" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml415(None) msgid "" "@@image: 'figures/lab000-virtual-box/image07.png'; " "md5=dc8a7ca4a721116dad4d808efdcd0158" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml424(None) msgid "" "@@image: 'figures/lab000-virtual-box/image18.png'; " "md5=cc6c10310380102b418c665047c0539c" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml433(None) msgid "" "@@image: 'figures/lab000-virtual-box/image14.png'; " "md5=469f15068705c1a40cb5504cc2a8e5dd" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml452(None) msgid "" "@@image: 'figures/lab000-virtual-box/image12.png'; " "md5=266a767b48f2c3eba60b67e01a1c6cc5" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml494(None) msgid "" "@@image: 'figures/lab000-virtual-box/image05.png'; " "md5=c711ea21fcc2b1e18d9d41375bc9a713" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml503(None) msgid "" "@@image: 'figures/lab000-virtual-box/image17.png'; " "md5=9077ae7ff15e88187de9941fd8c7db5f" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml512(None) msgid "" "@@image: 'figures/lab000-virtual-box/image02.png'; " "md5=001129ba8b8030bbf1ca9e23805d9b84" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml521(None) msgid "" "@@image: 'figures/lab000-virtual-box/image00.png'; " "md5=e90be704c41d381dedab6f8fb3b8c391" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml539(None) msgid "" "@@image: 'figures/lab000-virtual-box/image04.png'; " "md5=8577d54796c8479a2f089ee09846e130" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml576(None) msgid "" "@@image: 'figures/lab000-virtual-box/image15.png'; " "md5=2d2b9eb2d913030490694d3df8c26c20" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml585(None) msgid "" "@@image: 'figures/lab000-virtual-box/image10.png'; " "md5=4f06faaf244be263d90b41855b10d62a" msgstr "" #. When image changes, this message will be marked fuzzy or untranslated for #. you. #. It doesn't matter what you translate it to: it's not used at all. #: ./doc/training-guides/lab000-virtualbox-basics.xml594(None) msgid "" "@@image: 'figures/lab000-virtual-box/image01.png'; " "md5=1eb33f35a0af357f7e96fa03830d49c0" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml11(title) msgid "VirtualBox Basics" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml13(para) msgid "" "The following are the conventional methods of deploying OpenStack on Virtual" " Box for the sake of a test/sandbox or just to try out OpenStack on " "commodity hardware." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml16(para) msgid "1. DevStack" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml17(para) msgid "2. Vagrant" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml18(para) msgid "" "But DevStack and Vagrant bring in some level of automated deployment as " "running the scripts will get your VirtualBox Instance configured as the " "required OpenStack deployment. We will be manually deploying OpenStack on " "VirtualBox Instance to get better view of how OpenStack works." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml23(guilabel) msgid "Prerequisite:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml24(para) msgid "" "Well, its a daunting task to just cover all of OpenStack’s concepts let " "alone Virtualization and Networking. So some basic idea/knowledge on " "Virtualization, Networking and Linux is required. Even though I will try to " "keep the level as low as possible for making it easy for Linux Newbies as " "well as experts." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml30(para) msgid "" "These Virtual Machines and Virtual Networks will be given equal privilege as" " a physical machine on a physical network." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml33(para) msgid "" "Just for those who would want to do a deeper research or study, for more " "information you may refer the following links" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml36(para) msgid "" "OpenStack:OpenStack Official " "Documentation (docs.openstack.org)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml38(para) msgid "" "Networking:Computer Networks (5th " "Edition) by Andrew S. Tanenbaum" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml40(para) msgid "" "VirtualBox:Virtual Box Manual " "(http://www.virtualbox.org/manual/UserManual.html)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml42(emphasis) msgid "Requirements :" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml43(para) msgid "" "Operating Systems - I recommend Ubuntu Server 12.04 LTS, Ubuntu Server 13.10" " or Debian Wheezy" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml45(para) msgid "" "Note :Ubuntu 12.10 is not supporting " "OpenStack Grizzly Packages. Ubuntu team has decided not to package Grizzly " "Packages for Ubuntu 12.10." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml50(para) msgid "Recommended Requirements." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml56(td) msgid "VT Enabled PC:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml57(td) msgid "Intel ix or AMD QuadCore" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml60(td) msgid "4 GB RAM:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml61(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml79(td) msgid "DDR2/DDR3" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml67(para) msgid "Minimum Requirements." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml73(td) msgid "Non-VT PC's:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml74(td) msgid "Intel Core 2 Duo or Amd Dual Core" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml78(td) msgid "2GB Ram:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml83(para) msgid "" "If you don't know whether your processor is VT enabled, you could check it " "by installing cpu checker" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml95(para) msgid "If your device does not support VT it will show" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml96(para) msgid "INFO:Your CPU does not support KVM extensions" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml97(para) msgid "KVM acceleration can NOT be used" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml98(para) msgid "" "You will still be able to use Virtual Box but the instances will be very " "slow." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml100(para) msgid "" "There are many ways to configure your OpenStack Setup, we will be deploying " "OpenStack Multi Node using OVS as the Network Plugin and QEMU/ KVM as the " "hypervisor." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml103(emphasis) msgid "Host Only Connections:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml106(para) msgid "" "Host only connections provide an Internal network between your host and the " "Virtual Machine instances up and running on your host machine.This network " "is not traceable by other networks." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml112(para) msgid "" "You may even use Bridged connection if you have a router/switch. I am " "assuming the worst case (one IP without any router), so that it is simple to" " get the required networks running without the hassle of IP tables." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml118(para) msgid "" "The following are the host only connections that you will be setting up " "later on :" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml124(para) msgid "vboxnet0 - OpenStack Management Network - Host static IP 10.10.10.1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml128(para) msgid "vboxnet1 - VM Conf.Network - Host Static IP 10.20.20.1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml132(para) msgid "vboxnet2 - VM External Network Access (Host Machine) 192.168.100.1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml148(para) msgid "" "Vboxnet0, Vboxnet1, Vboxnet2 - are virtual networks setup up by virtual box " "with your host machine. This is the way your host can communicate with the " "virtual machines. These networks are in turn used by virtual box VM’s for " "OpenStack networks, so that OpenStack’s services can communicate with each " "other." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml153(guilabel) msgid "Setup Your VM Environment" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml154(para) msgid "" "Before you can start configuring your Environment you need to download some " "of the following stuff:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml159(link) msgid "Oracle Virtual Box" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml163(para) msgid "Note:You cannot set up a amd64 VM on a x86 machine." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml166(link) msgid "Ubuntu 12.04 Server or Ubuntu 13.04 Server" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml170(para) msgid "" "Note:You need a x86 image for VM's if kvm-ok fails, even though you are on " "amd64 machine." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml172(para) msgid "" "Note: Even Though I'm using Ubuntu as Host, the same is applicable to " "Windows, Mac and other Linux Hosts." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml176(para) msgid "" "If you have i5 or i7 2nd gen processor you can have VT technology inside " "VM's provided by VmWare. This means that your OpenStack nodes(Which are in " "turn VM's) will give positive result on KVM-OK. (I call it - Nesting of " "type-2 Hypervisors). Rest of the configurations remain same except for the " "UI and few other trivial differences." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml184(guilabel) msgid "Configure Virtual Networks" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml187(para) msgid "" "This section of the guide will help you setup your networks for your Virtual" " Machine." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml191(para) msgid "Launch Virtual Box" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml196(para) msgid "" "Click on File>Preferences present on " "the menu bar of Virtual Box." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml201(para) msgid "Select the Network tab." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml205(para) msgid "On the right side you will see an option to add Host-Only networks." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml210(title) msgid "Create Host Only Networks" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml219(para) msgid "Create three Host-Only Network Connections. As shown above." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml223(para) msgid "Edit the Host-Only Connections to have the following settings." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml227(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml254(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml395(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml469(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml556(td) msgid "Vboxnet0" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml232(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml267(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml301(th) msgid "Option" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml233(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml268(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml302(th) msgid "Value" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml236(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml271(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml305(td) msgid "IPv4 Address:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml237(td) msgid "10.10.10.1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml240(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml275(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml309(td) msgid "IPv4 Network Mask:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml241(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml276(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml310(td) msgid "255.255.255.0" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml244(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml279(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml313(td) msgid "IPv6 Address:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml245(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml249(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml280(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml284(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml314(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml318(td) msgid "Can be Left Blank" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml248(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml283(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml317(td) msgid "IPv6 Network Mask Length :" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml261(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml289(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml474(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml561(td) msgid "Vboxnet1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml272(td) msgid "10.20.20.1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml296(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml400(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml479(td) msgid "Vboxnet2" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml306(td) msgid "192.168.100.1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml323(title) msgid "Image: Vboxnet2" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml330(guilabel) msgid "Install SSH and FTP" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml333(para) msgid "" "You may benefit by installing SSH and FTP so that you could use your remote " "shell to login into the machine and use your terminal which is more " "convenient that using the Virtual Machines tty through the Virtual Box's UI." " You get a few added comforts like copy - paste commands into the remote " "terminal which is not possible directly on VM." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml341(para) msgid "" "FTP is for transferring files to and fro ... you can also use SFTP or " "install FTPD on both HOST and VM's." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml345(para) msgid "" "Installation of SSH and FTP with its configuration is out of scope of this " "GUIDE and I may put it up but it depends upon my free time. If someone wants" " to contribute to this - please do so." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml351(para) msgid "" "Note:Please set up the Networks from " "inside the VM before trying to SSH and FTP into the machines. I would " "suggest setting it up at once just after the installation of the Server on " "VM's is over." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml355(guilabel) msgid "Install Your VM's Instances" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml358(para) msgid "" "During Installation of The Operating Systems you will be asked for Custom " "Software to Install , if you are confused or not sure about this, just skip " "this step by pressing Enter Key without selecting any of the given Options." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml364(para) msgid "" "Warning - Please do not install any of " "the other packages except for which are mentioned below unless you know what" " you are doing. There is a good chance that you may end up getting unwanted " "errors, package conflicts ... due to the same." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml369(guilabel) msgid "Control Node:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml370(para) msgid "Create a new virtual machine. Select Ubuntu Server" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml372(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml449(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml536(title) msgid "Create New Virtual Machine" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml379(para) msgid "" "Select the appropriate amount of RAM. For the control node, the minimum is " "512 MB of RAM. For other settings, use the defaults. The hard disk size can " "be 8 GB as default." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml382(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml456(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml543(para) msgid "Configure the networks" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml383(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml457(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml544(para) msgid "(Ignore the IP Address for now, you will set it up from inside the VM)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml389(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml463(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml550(th) msgid "Network Adapter" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml390(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml464(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml551(th) msgid "Host-Only Adapter Name" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml391(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml465(th) #: ./doc/training-guides/lab000-virtualbox-basics.xml552(th) msgid "IP Address" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml394(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml468(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml555(td) msgid "eth0" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml396(td) msgid "10.10.10.51" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml399(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml473(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml560(td) msgid "eth1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml401(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml480(td) msgid "192.168.100.51" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml404(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml478(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml565(td) msgid "eth2" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml405(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml484(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml566(td) msgid "NAT" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml406(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml485(td) #: ./doc/training-guides/lab000-virtualbox-basics.xml567(td) msgid "DHCP" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml410(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml489(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml571(emphasis) msgid "Adapter 1 (Vboxnet0)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml412(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml573(title) msgid "Adapter1 - Vboxnet0" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml419(emphasis) msgid "Adapter 2 (Vboxnet2)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml421(title) msgid "Adapter2 - Vboxnet2" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml428(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml589(emphasis) msgid "Adapter 3 (NAT)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml430(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml591(title) msgid "Adapter3 - NAT" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml437(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml525(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml598(para) msgid "Now Install Ubuntu Server 12.04 or 13.04 on this machine." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml439(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml527(para) #: ./doc/training-guides/lab000-virtualbox-basics.xml600(para) msgid "" "Note :Install SSH server when asked for " "Custom Software to Install. Rest of the packages are not required and may " "come in the way of OpenStack packages - like DNS servers etc. (not " "necessary). Unless you know what you are doing." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml444(guilabel) msgid "Network Node:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml445(para) msgid "Create a new Virtual Machine," msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml446(para) msgid "" "Minimum RAM is 512 MB. Rest all can be left default. Minimum HDD space 8 GB." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml470(td) msgid "10.10.10.52" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml475(td) msgid "10.20.20.52" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml483(td) msgid "eth3" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml491(title) msgid "Adapter 1 - Vboxnet0" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml498(emphasis) #: ./doc/training-guides/lab000-virtualbox-basics.xml580(emphasis) msgid "Adapter 2 (Vboxnet1)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml500(title) #: ./doc/training-guides/lab000-virtualbox-basics.xml582(title) msgid "Adapter2 - Vboxnet1" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml507(emphasis) msgid "Adapter 3 (Vboxnet2)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml509(title) msgid "Adapter3 - Vboxnet2" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml516(emphasis) msgid "Adapter 4 (NAT)" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml518(title) msgid "Adapter4 - NAT" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml532(guilabel) msgid "Compute Node:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml533(para) msgid "" "Create a virtual machine with at least 1,000 MB RAM and 8 GB HDD. For other " "settings, use the defaults." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml557(td) msgid "10.10.10.53" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml562(td) msgid "10.20.20.53" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml605(guilabel) msgid "Warnings/Advice :" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml608(para) msgid "" "Well there are a few warnings that I must give you out of experience due to " "common habits that most people may have :" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml613(para) msgid "" "Sometimes shutting down your Virtual Machine may lead to malfunctioning of " "OpenStack Services. Try not to direct shutdown your 3. In case your VM's " "don't get internet." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml618(para) msgid "" "From your VM Instance, use command to see whether Internet " "is on." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml623(para) msgid "If its not connected, restart networking service:" msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml629(para) msgid "" "If this doesn't work, you need to check your network settings from Virtual " "Box, you may have left something or misconfigured it." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml634(para) msgid "" "This should reconnect your network about 99% of the times. If you are really" " unlucky you must be having some other problems or your Internet connection " "itself is not functioning." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml640(para) msgid "" "Note :There are known bugs with the ping under NAT. Although the latest " "versions of Virtual Box have better performance, sometimes ping may not work" " even if your Network is connected to internet." msgstr "" #: ./doc/training-guides/lab000-virtualbox-basics.xml646(para) msgid "" "Congrats, you are ready with the infrastructure for deploying OpenStack. " "Just make sure that you have installed Ubuntu Server on the above setup " "Virtual Box Instances. In the next section we will go through deploying " "OpenStack using the above created Virtual Box instances." msgstr "" #: ./doc/training-guides/bk001-ch007-associate-network-node.xml10(title) msgid "Day 2, 09:00 to 11:00" msgstr "" #: ./doc/training-guides/bk001-ch007-associate-network-node.xml30(title) msgid "Network CLI Commands" msgstr "" #: ./doc/training-guides/bk001-ch007-associate-network-node.xml37(title) msgid "Manage Networks" msgstr "" #: ./doc/training-guides/bk001-ch008-associate-network-node-quiz.xml8(title) msgid "Day 2, 10:40 to 11:00" msgstr "" #: ./doc/training-guides/bk002-ch006-operator-controller-node-quiz.xml8(title) msgid "Days 2 to 4, 16:40 to 17:00" msgstr "" #: ./doc/training-guides/bk003-ch007-developer-apis-day-three-lab.xml6(title) msgid "Developer APIs in Depth Lab Day Three" msgstr "" #: ./doc/training-guides/bk003-ch007-developer-apis-day-three-lab.xml8(title) msgid "Day 3, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/card070-create-floating-ips.xml7(title) msgid "Create floating ip" msgstr "" #: ./doc/training-guides/bk003-ch005-developer-apis-day-two-lab.xml6(title) msgid "Developer APIs in Depth Lab Day Two" msgstr "" #: ./doc/training-guides/bk003-ch005-developer-apis-day-two-lab.xml8(title) msgid "Day 2, 13:30 to 14:45, 15:00 to 16:30" msgstr "" #: ./doc/training-guides/bk003-ch005-developer-apis-day-two-lab.xml10(title) msgid "Pre-Requisites" msgstr "" #: ./doc/training-guides/bk003-ch005-developer-apis-day-two-lab.xml16(link) msgid "Git Basics" msgstr "" #: ./doc/training-guides/bk003-ch005-developer-apis-day-two-lab.xml21(link) msgid "Gerrit Basics" msgstr "" #: ./doc/training-guides/bk003-ch005-developer-apis-day-two-lab.xml26(link) msgid "Jenkins" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml7(title) msgid "Ring Builder" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml8(para) msgid "" "The rings are built and managed manually by a utility called the ring-" "builder. The ring-builder assigns partitions to devices and writes an " "optimized Python structure to a gzipped, serialized file on disk for " "shipping out to the servers. The server processes just check the " "modification time of the file occasionally and reload their in-memory copies" " of the ring structure as needed. Because of how the ring-builder manages " "changes to the ring, using a slightly older ring usually just means one of " "the three replicas for a subset of the partitions will be incorrect, which " "can be easily worked around." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml18(para) msgid "" "The ring-builder also keeps its own builder file with the ring information " "and additional data required to build future rings. It is very important to " "keep multiple backup copies of these builder files. One option is to copy " "the builder files out to every server while copying the ring files " "themselves. Another is to upload the builder files into the cluster itself. " "Complete loss of a builder file will mean creating a new ring from scratch, " "nearly all partitions will end up assigned to different devices, and " "therefore nearly all data stored will have to be replicated to new " "locations. So, recovery from a builder file loss is possible, but data will " "definitely be unreachable for an extended time." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml30(guilabel) msgid "Ring Data Structure" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml31(para) msgid "" "The ring data structure consists of three top level fields: a list of " "devices in the cluster, a list of lists of device ids indicating partition " "to device assignments, and an integer indicating the number of bits to shift" " an MD5 hash to calculate the partition for the hash." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml36(guilabel) msgid "Partition Assignment List" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml38(para) msgid "" "This is a list of array(‘H’) of devices ids. The outermost list contains an " "array(‘H’) for each replica. Each array(‘H’) has a length equal to the " "partition count for the ring. Each integer in the array(‘H’) is an index " "into the above list of devices. The partition list is known internally to " "the Ring class as _replica2part2dev_id." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml45(para) msgid "" "So, to create a list of device dictionaries assigned to a partition, the " "Python code would look like: devices = [self.devs[part2dev_id[partition]] " "for part2dev_id in self._replica2part2dev_id]" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml49(para) msgid "" "That code is a little simplistic, as it does not account for the removal of " "duplicate devices. If a ring has more replicas than devices, then a " "partition will have more than one replica on one device; that’s simply the " "pigeonhole principle at work." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml54(para) msgid "" "array(‘H’) is used for memory conservation as there may be millions of " "partitions." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml56(guilabel) msgid "Fractional Replicas" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml57(para) msgid "" "A ring is not restricted to having an integer number of replicas. In order " "to support the gradual changing of replica counts, the ring is able to have " "a real number of replicas." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml61(para) msgid "" "When the number of replicas is not an integer, then the last element of " "_replica2part2dev_id will have a length that is less than the partition " "count for the ring. This means that some partitions will have more replicas " "than others. For example, if a ring has 3.25 replicas, then 25% of its " "partitions will have four replicas, while the remaining 75% will have just " "three." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml69(guilabel) msgid "Partition Shift Value" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml70(para) msgid "" "The partition shift value is known internally to the Ring class as " "_part_shift. This value used to shift an MD5 hash to calculate the partition" " on which the data for that hash should reside. Only the top four bytes of " "the hash is used in this process. For example, to compute the partition for " "the path /account/container/object the Python code might look like: " "partition = unpack_from('>I', " "md5('/account/container/object').digest())[0] >> self._part_shift" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml80(para) msgid "" "For a ring generated with part_power P, the partition shift value is 32 - P." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml82(guilabel) msgid "Building the Ring" msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml83(para) msgid "" "The initial building of the ring first calculates the number of partitions " "that should ideally be assigned to each device based the device’s weight. " "For example, given a partition power of 20, the ring will have 1,048,576 " "partitions. If there are 1,000 devices of equal weight they will each desire" " 1,048.576 partitions. The devices are then sorted by the number of " "partitions they desire and kept in order throughout the initialization " "process." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml92(para) msgid "" "Note: each device is also assigned a random tiebreaker value that is used " "when two devices desire the same number of partitions. This tiebreaker is " "not stored on disk anywhere, and so two different rings created with the " "same parameters will have different partition assignments. For repeatable " "partition assignments, RingBuilder.rebalance() takes an optional seed value " "that will be used to seed Python’s pseudo-random number generator." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml100(para) msgid "" "Then, the ring builder assigns each replica of each partition to the device " "that desires the most partitions at that point while keeping it as far away " "as possible from other replicas. The ring builder prefers to assign a " "replica to a device in a regions that has no replicas already; should there " "be no such region available, the ring builder will try to find a device in a" " different zone; if not possible, it will look on a different server; " "failing that, it will just look for a device that has no replicas; finally, " "if all other options are exhausted, the ring builder will assign the replica" " to the device that has the fewest replicas already assigned. Note that " "assignment of multiple replicas to one device will only happen if the ring " "has fewer devices than it has replicas." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml115(para) msgid "" "When building a new ring based on an old ring, the desired number of " "partitions each device wants is recalculated. Next the partitions to be " "reassigned are gathered up. Any removed devices have all their assigned " "partitions unassigned and added to the gathered list. Any partition replicas" " that (due to the addition of new devices) can be spread out for better " "durability are unassigned and added to the gathered list. Any devices that " "have more partitions than they now desire have random partitions unassigned " "from them and added to the gathered list. Lastly, the gathered partitions " "are then reassigned to devices using a similar method as in the initial " "assignment described above." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml128(para) msgid "" "Whenever a partition has a replica reassigned, the time of the reassignment " "is recorded. This is taken into account when gathering partitions to " "reassign so that no partition is moved twice in a configurable amount of " "time. This configurable amount of time is known internally to the " "RingBuilder class as min_part_hours. This restriction is ignored for " "replicas of partitions on devices that have been removed, as removing a " "device only happens on device failure and there’s no choice but to make a " "reassignment." msgstr "" #: ./doc/training-guides/module003-ch005-the-ring.xml138(para) msgid "" "The above processes don’t always perfectly rebalance a ring due to the " "random nature of gathering partitions for reassignment. To help reach a more" " balanced ring, the rebalance process is repeated until near perfect (less " "1% off) or when the balance doesn’t improve by at least 1% (indicating we " "probably can’t get perfect balance due to wildly imbalanced zones or too " "many partitions recently moved)." msgstr "" #: ./doc/training-guides/card038.xml7(title) msgid "" "Install and configure OpenStack Identity Service in the Controller Node" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml7(title) msgid "Development.Environment" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml9(title) #: ./doc/training-guides/sources/cinder/unit_tests.xml9(title) #: ./doc/training-guides/sources/cinder/architecture.xml9(title) #: ./doc/training-guides/sources/cinder/threading.xml9(title) msgid "Header" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml10(para) msgid "" ".. Copyright 2010-2011 United States Government as represented by the " "Administrator of the National Aeronautics and Space Administration. All " "Rights Reserved. Licensed 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." msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml27(title) msgid "Setting-Up-A-Development-Environment" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml28(para) msgid "" "==================================== This page describes how to setup a " "working Python development environment that can be used in developing cinder" " on Ubuntu, Fedora or Mac OS X. These instructions assume you're already " "familiar with git. Refer to GettingTheCode_ for additional information. .. " "_GettingTheCode: http://wiki.openstack.org/GettingTheCode Following these " "instructions will allow you to run the cinder unit tests. If you want to be " "able to run cinder (i.e., launch VM instances), you will also need to " "install libvirt and at least one of the `supported hypervisors`_. Running " "cinder is currently only supported on Linux, although you can run the unit " "tests on Mac OS X. See :doc:`../quickstart` for how to get a working version" " of OpenStack Compute running as quickly as possible. .. _supported " "hypervisors: http://wiki.openstack.org/HypervisorSupportMatrix" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml46(title) msgid "Virtual-Environments" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml47(para) msgid "" "-------------------- Cinder development uses `virtualenv " "[http://pypi.python.org/pypi/virtualenv]`__ to track and manage Python " "dependencies while in development and testing. This allows you to install " "all of the Python package dependencies in a virtual environment or " "\"virtualenv\" (a special subdirectory of your cinder directory), instead of" " installing the packages at the system level. .. note:: Virtualenv is useful" " for running the unit tests, but is not typically used for full integration " "testing or production usage." msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml60(title) msgid "Linux-Systems" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml61(para) msgid "" "------------- .. note:: This section is tested for Cinder on Ubuntu " "(12.04-64) and Fedora-based (RHEL 6.1) distributions. Feel free to add notes" " and change according to your experiences or operating system. Install the " "prerequisite packages. On Ubuntu:: sudo apt-get install python-dev libssl-" "dev python-pip git-core libmysqlclient-dev libpq-dev On Fedora-based " "distributions like Fedora, RHEL, CentOS and Scientific Linux:: sudo yum " "install python-devel openssl-devel python-pip git libmysqlclient-dev libqp-" "dev" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml75(title) msgid "Mac-Os-X-Systems" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml76(para) msgid "" "---------------- Install virtualenv:: sudo easy_install virtualenv Check the" " version of OpenSSL you have installed:: openssl version If you have " "installed OpenSSL 1.0.0a, which can happen when installing a MacPorts " "package for OpenSSL, you will see an error when running " "``cinder.tests.auth_unittest.AuthTestCase.test_209_can_generate_x509``. The " "stock version of OpenSSL that ships with Mac OS X 10.6 (OpenSSL 0.9.8l) or " "Mac OS X 10.7 (OpenSSL 0.9.8r) works fine with cinder." msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml90(title) msgid "Getting-The-Code" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml91(para) msgid "" "---------------- Grab the code from GitHub:: git clone " "https://github.com/openstack/cinder.git cd cinder" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml99(title) msgid "Running-Unit-Tests" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml100(para) msgid "" "------------------ The unit tests will run by default inside a virtualenv in" " the ``.venv`` directory. Run the unit tests by doing:: ./run_tests.sh The " "first time you run them, you will be asked if you want to create a virtual " "environment (hit \"y\"):: No virtual environment found...create one? (Y/n) " "See :doc:`unit_tests` for more details. .. _virtualenv:" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml113(title) msgid "Manually-Installing-And-Using-The-Virtualenv" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml114(para) msgid "" "-------------------------------------------- You can manually install the " "virtual environment instead of having ``run_tests.sh`` do it for you:: " "python tools/install_venv.py This will install all of the Python packages " "listed in the ``requirements.txt`` file into your virtualenv. There will " "also be some additional packages (pip, setuptools) that are installed by the" " ``tools/install_venv.py`` file into the virutalenv. If all goes well, you " "should get a message something like this:: Cinder development environment " "setup is complete. To activate the Cinder virtualenv for the extent of your " "current shell session you can run:: $ source .venv/bin/activate Or, if you " "prefer, you can run commands in the virtualenv on a case by case basis by " "running:: $ tools/with_venv.sh [your command]" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml134(title) msgid "Contributing-Your-Work" msgstr "" #: ./doc/training-guides/sources/cinder/development.environment.xml135(para) msgid "" "---------------------- Once your work is complete you may wish to contribute" " it to the project. Add your name and email address to the ``Authors`` file," " and also to the ``.mailmap`` file if you use multiple email addresses. Your" " contributions can not be merged into trunk unless you are listed in the " "Authors file. Cinder uses the Gerrit code review system. For information on " "how to submit your branch to Gerrit, see GerritWorkflow_." msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml6(title) msgid "Drivers" msgstr "" #.
#. Header #. #. .. #. Copyright (c) 2013 OpenStack Foundation #. All Rights Reserved. #. Licensed 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. #. #.
#.
#. Drivers #: ./doc/training-guides/sources/cinder/drivers.xml26(para) msgid "" "Cinder exposes an API to enable users to interact with different storage " "back-end solutions. The following standards are required across all drivers " "for Cinder services to properly interact with a driver." msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml30(para) msgid "" "Minimum features are enforced to avoid having a grid of which features are " "supported by which drivers in which releases. Cinder core requires that all " "drivers implement the following minimum features." msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml39(para) msgid "Volume Create/Delete" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml42(para) msgid "Volume Attach/Detach" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml45(para) msgid "Snapshot Create/Delete" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml48(para) msgid "Create Volume from Snapshot" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml51(para) msgid "Get Volume Stats" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml54(para) msgid "Copy Image to Volume" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml57(para) msgid "Copy Volume to Image" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml60(para) msgid "Clone Volume" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml70(para) msgid "All of the above plus" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml73(para) msgid "Extend Volume" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml79(title) msgid "Volume-Stats" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml80(para) msgid "" "Volume stats are used by the different schedulers for the drivers to provide" " a report on their current state of the back end. A driver must provide " "these stats:" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml85(para) msgid "driver_version" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml88(para) msgid "free_capacity_gb" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml91(para) msgid "reserved_percentage" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml94(para) msgid "storage_protocol" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml97(para) msgid "total_capacity_gb" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml100(para) msgid "vendor_name" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml103(para) msgid "volume_backend_name" msgstr "" #: ./doc/training-guides/sources/cinder/drivers.xml106(para) msgid "" "If the driver cannot provide a value for free_capacity_gb" " or total_capacity_gb, the driver can provide keywords " "instead. If the array cannot report the value, use " "unknown. If the array has no upper limit, use " "infinite." msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml7(title) msgid "Unit_Tests" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml14(title) msgid "Unit-Tests" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml15(para) msgid "" "========== Cinder contains a suite of unit tests, in the cinder/tests " "directory. Any proposed code change will be automatically rejected by the " "OpenStack Jenkins server [#f1]_ if the change causes unit test failures." msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml23(title) msgid "Running-The-Tests" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml24(para) msgid "" "----------------- Run the unit tests by doing:: ./run_tests.sh This script " "is a wrapper around the `nose`_ testrunner and the `pep8`_ checker. .. " "_nose: http://code.google.com/p/python-nose/ .. _pep8: " "https://github.com/jcrocholl/pep8 Flags ----- The ``run_tests.sh`` script " "supports several flags. You can view a list of flags by doing:: run_tests.sh" " -h This will show the following help information:: Usage: ./run_tests.sh " "[OPTION]... Run Cinder's test suite(s) -V, --virtual-env Always use " "virtualenv. Install automatically if not present -N, --no-virtual-env Don't " "use virtualenv. Run tests in local environment -s, --no-site-packages " "Isolate the virtualenv from the global Python environment -r, --recreate-db " "Recreate the test database (deprecated, as this is now the default). -n, " "--no-recreate-db Don't recreate the test database. -x, --stop Stop running " "tests after the first error or failure. -f, --force Force a clean re-build " "of the virtual environment. Useful when dependencies have been added. -p, " "--pep8 Just run pep8 -P, --no-pep8 Don't run pep8 -c, --coverage Generate " "coverage report -h, --help Print this usage message --hide-elapsed Don't " "print the elapsed time for each test along with slow test list Because " "``run_tests.sh`` is a wrapper around nose, it also accepts the same flags as" " nosetests. See the `nose options documentation`_ for details about these " "additional flags. .. _nose options documentation: " "http://readthedocs.org/docs/nose/en/latest/usage.html#options" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml58(title) msgid "Running-A-Subset-Of-Tests" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml59(para) msgid "" "------------------------- Instead of running all tests, you can specify an " "individual directory, file, class, or method that contains test code. To run" " the tests in the ``cinder/tests/scheduler`` directory:: ./run_tests.sh " "scheduler To run the tests in the ``cinder/tests/test_libvirt.py`` file:: " "./run_tests.sh test_libvirt To run the tests in the `HostStateTestCase` " "class in ``cinder/tests/test_libvirt.py``:: ./run_tests.sh " "test_libvirt:HostStateTestCase To run the `ToPrimitiveTestCase.test_dict` " "test method in ``cinder/tests/test_utils.py``:: ./run_tests.sh " "test_utils:ToPrimitiveTestCase.test_dict" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml76(title) msgid "Suppressing-Logging-Output-When-Tests-Fail" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml77(para) msgid "" "------------------------------------------ By default, when one or more unit" " test fails, all of the data sent to the logger during the failed tests will" " appear on standard output, which typically consists of many lines of text. " "The logging output can make it difficult to identify which specific tests " "have failed, unless your terminal has a large scrollback buffer or you have " "redirected output to a file. You can suppress the logging output by calling " "``run_tests.sh`` with the nose flag:: --nologcapture" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml90(title) msgid "Virtualenv" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml91(para) msgid "" "---------- By default, the tests use the Python packages installed inside a " "virtualenv [#f2]_. (This is equivalent to using the ``-V, --virtualenv`` " "flag). If the virtualenv does not exist, it will be created the first time " "the tests are run. If you wish to recreate the virtualenv, call " "``run_tests.sh`` with the flag:: -f, --force Recreating the virtualenv is " "useful if the package dependencies have changed since the virtualenv was " "last created. If the ``requirements.txt`` or ``tools/install_venv.py`` files" " have changed, it's a good idea to recreate the virtualenv. By default, the " "unit tests will see both the packages in the virtualenv and the packages " "that have been installed in the Python global environment. In some cases, " "the packages in the Python global environment may cause a conflict with the " "packages in the virtualenv. If this occurs, you can isolate the virtualenv " "from the global environment by using the flag:: -s, --no-site packages If " "you do not wish to use a virtualenv at all, use the flag:: -N, --no-virtual-" "env" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml113(title) msgid "Database" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml114(para) msgid "" "-------- Some of the unit tests make queries against a SQLite database " "[#f3]_. By default, the test database (``tests.sqlite``) is deleted and " "recreated each time ``run_tests.sh`` is invoked (This is equivalent to using" " the ``-r, --recreate-db`` flag). To reduce testing time if a database " "already exists it can be reused by using the flag:: -n, --no-recreate-db " "Reusing an existing database may cause tests to fail if the schema has " "changed. If any files in the ``cinder/db/sqlalchemy`` have changed, it's a " "good idea to recreate the test database." msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml128(title) msgid "Gotchas" msgstr "" #: ./doc/training-guides/sources/cinder/unit_tests.xml129(para) msgid "" "------- If you are running the unit tests from a shared " "folder, you may see tests start to fail or stop completely as a result of " "Python lockfile issues [#f4]_. You can get around this by manually setting " "or updating the following line in ``cinder/tests/conf_fixture.py``:: " "CONF['lock_path'].SetDefault('/tmp') Note that you may use any location (not" " just ``/tmp``!) as long as it is not a shared folder. .. rubric:: Footnotes" " .. [#f1] See :doc:`jenkins`. .. [#f2] See :doc:`development.environment` " "for more details about the use of virtualenv. .. [#f3] There is an effort " "underway to use a fake DB implementation for the unit tests. See " "https://lists.launchpad.net/openstack/msg05604.html" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml7(title) msgid "Architecture" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml10(para) msgid "" "Copyright 2010-2011 United States Government as represented by the " "Administrator of the National Aeronautics and Space Administration. All " "Rights Reserved. Licensed 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." msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml26(title) msgid "Block Storage System Architecture" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml27(para) msgid "" "The OpenStack Block Storage service is intended to run on one or more nodes." " Block Storage uses a SQL-based central database that is shared by all Block" " Storage services in the system. The amount and depth of the data fits into " "a SQL database quite well. For small deployments this seems like an optimal " "solution. For larger deployments, and especially if security is a concern, " "Block Storage will be moving towards multiple data stores with some kind of " "aggregation system." msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml33(title) msgid "Components" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml52(para) msgid "" "DB: SQL database for data storage. Used by all components (LINKS NOT SHOWN)" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml56(para) msgid "Web Dashboard: potential external component that talks to the API" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml60(para) msgid "" "API: component that receives HTTP requests, converts commands and " "communicates with other components via the queue or HTTP" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml64(para) msgid "" "Auth Manager: component responsible for users/projects/and roles. Can use as" " back-end a database or LDAP. This is not a separate binary, but rather a " "python class that is used by most components in the system." msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml70(para) msgid "scheduler: decides which host gets each volume" msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml73(para) msgid "volume: manages dynamically attachable block devices." msgstr "" #: ./doc/training-guides/sources/cinder/architecture.xml34(para) msgid "" "Below you will a brief explanation of the different components. /- ( LDAP ) " "[ Auth Manager ] --- | \\- ( DB ) | | cinderclient | / \\ | [ Web Dashboard " "]- -[ API ] -- [ AMQP ] -- [ scheduler ] -- [ volume ] -- ( iSCSI ) \\ / | " "novaclient | | | | [ REST ] " msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml7(title) msgid "Threading" msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml14(title) msgid "Threading-Model" msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml18(para) msgid "model of threading, implemented" msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml15(para) msgid "" "=============== through using the Python `eventlet " "[http://eventlet.net/]`_ and `greenlet " "[http://packages.python.org/greenlet/]`_ libraries. Green threads use a " "cooperative model of threading: thread context switches can only occur when " "specific eventlet or greenlet library calls are made. For example, sleep and" " certain I/O calls. From the operating system's point of view, each " "OpenStack service runs in a single thread. The use of green threads reduces " "the likelihood of race conditions, but does not completely eliminate them. " "In some cases, you may need to use the ``@utils.synchronized(...)`` " "decorator to avoid races. In addition, since there is only one operating " "system thread, a call that blocks that main thread will block the entire " "process." msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml34(title) msgid "Yielding-The-Thread-In-Long-Running-Tasks" msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml35(para) msgid "" "----------------------------------------- If a code path takes a long time " "to execute and does not contain any methods that trigger an eventlet context" " switch, the long-running thread will block any pending threads. This " "scenario can be avoided by adding calls to the eventlet sleep method in the " "long-running code path. The sleep call will trigger a context switch if " "there are pending threads, and using an argument of 0 will avoid introducing" " delays in the case that there is only a single green thread:: from eventlet" " import greenthread ... greenthread.sleep(0)" msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml50(title) msgid "Mysql-Access-And-Eventlet" msgstr "" #: ./doc/training-guides/sources/cinder/threading.xml51(para) msgid "" "------------------------- Queries to the MySQL database will block the main " "thread of a service. This is because OpenStack services use an external C " "library for accessing the MySQL database. Since eventlet cannot use monkey-" "patching to intercept blocking calls in a C library, the resulting database " "query blocks the thread. The Diablo release contained a thread-pooling " "implementation that did not block, but this implementation resulted in a " "`bug`_ and was removed. See this `mailing list thread`_ for a discussion of " "this issue, including a discussion of the `impact on performance`_. .. _bug:" " https://bugs.launchpad.net/cinder/+bug/838581 .. _mailing list thread: " "https://lists.launchpad.net/openstack/msg08118.html" msgstr "" #. Put one translator per line, in the form of NAME , YEAR1, YEAR2 #: ./doc/training-guides/sources/cinder/threading.xml0(None) msgid "translator-credits" msgstr ""