€cdocutils.nodes document q)q}q(U nametypesq}q(X+an introduction to boto's route53 interfaceqNXcreating a connectionqNXfqdnqˆXworking with domain namesq NXroute53_tut.rstq ˆXsetting up dumb recordsq NuUsubstitution_defsq }q Uparse_messagesq]qUcurrent_sourceqNU decorationqNUautofootnote_startqKUnameidsq}q(hU+an-introduction-to-boto-s-route53-interfaceqhUcreating-a-connectionqhUfqdnqh Uworking-with-domain-namesqh Uroute53-tut-rstqh Usetting-up-dumb-recordsquUchildrenq]q(cdocutils.nodes target q)q}q(U rawsourceq X.. _route53_tut.rst:Uparentq!hUsourceq"XA/Users/kyleknap/Documents/GitHub/boto/docs/source/route53_tut.rstq#Utagnameq$Utargetq%U attributesq&}q'(Uidsq(]Ubackrefsq)]Udupnamesq*]Uclassesq+]Unamesq,]Urefidq-huUlineq.KUdocumentq/hh]ubcdocutils.nodes section q0)q1}q2(h Uh!hh"h#Uexpect_referenced_by_nameq3}q4h hsh$Usectionq5h&}q6(h*]h+]h)]h(]q7(hheh,]q8(hh euh.Kh/hUexpect_referenced_by_idq9}q:hhsh]q;(cdocutils.nodes title q<)q=}q>(h X+An Introduction to boto's Route53 interfaceq?h!h1h"h#h$Utitleq@h&}qA(h*]h+]h)]h(]h,]uh.Kh/hh]qBcdocutils.nodes Text qCX+An Introduction to boto's Route53 interfaceqD…qE}qF(h h?h!h=ubaubcdocutils.nodes paragraph qG)qH}qI(h XœThis tutorial focuses on the boto interface to Route53 from Amazon Web Services. This tutorial assumes that you have already downloaded and installed boto.qJh!h1h"h#h$U paragraphqKh&}qL(h*]h+]h)]h(]h,]uh.Kh/hh]qMhCXœThis tutorial focuses on the boto interface to Route53 from Amazon Web Services. This tutorial assumes that you have already downloaded and installed boto.qN…qO}qP(h hJh!hHubaubhG)qQ}qR(h XRoute53 is a Domain Name System (DNS) web service. It can be used to route requests to services running on AWS such as EC2 instances or load balancers, as well as to external services. Route53 also allows you to have automated checks to send requests where you require them.qSh!h1h"h#h$hKh&}qT(h*]h+]h)]h(]h,]uh.K h/hh]qUhCXRoute53 is a Domain Name System (DNS) web service. It can be used to route requests to services running on AWS such as EC2 instances or load balancers, as well as to external services. Route53 also allows you to have automated checks to send requests where you require them.qV…qW}qX(h hSh!hQubaubhG)qY}qZ(h XGIn this tutorial, we will be setting up our services for *example.com*.q[h!h1h"h#h$hKh&}q\(h*]h+]h)]h(]h,]uh.Kh/hh]q](hCX9In this tutorial, we will be setting up our services for q^…q_}q`(h X9In this tutorial, we will be setting up our services for h!hYubcdocutils.nodes emphasis qa)qb}qc(h X *example.com*h&}qd(h*]h+]h)]h(]h,]uh!hYh]qehCX example.comqf…qg}qh(h Uh!hbubah$UemphasisqiubhCX.…qj}qk(h X.h!hYubeubh0)ql}qm(h Uh!h1h"h#h$h5h&}qn(h*]h+]h)]h(]qohah,]qphauh.Kh/hh]qq(h<)qr}qs(h XCreating a connectionqth!hlh"h#h$h@h&}qu(h*]h+]h)]h(]h,]uh.Kh/hh]qvhCXCreating a connectionqw…qx}qy(h hth!hrubaubhG)qz}q{(h XUTo start using Route53 you will need to create a connection to the service as normal:q|h!hlh"h#h$hKh&}q}(h*]h+]h)]h(]h,]uh.Kh/hh]q~hCXUTo start using Route53 you will need to create a connection to the service as normal:q…q€}q(h h|h!hzubaubcdocutils.nodes doctest_block q‚)qƒ}q„(h XN>>> import boto.route53 >>> conn = boto.route53.connect_to_region('us-west-2')h!hlh"h#h$U doctest_blockq…h&}q†(U xml:spaceq‡Upreserveqˆh(]h)]h*]h+]h,]uh.Kh/hh]q‰hCXN>>> import boto.route53 >>> conn = boto.route53.connect_to_region('us-west-2')qŠ…q‹}qŒ(h Uh!hƒubaubhG)q}qŽ(h XaYou will be using this conn object for the remainder of the tutorial to send commands to Route53.qh!hlh"h#h$hKh&}q(h*]h+]h)]h(]h,]uh.Kh/hh]q‘hCXaYou will be using this conn object for the remainder of the tutorial to send commands to Route53.q’…q“}q”(h hh!hubaubeubh0)q•}q–(h Uh!h1h"h#h$h5h&}q—(h*]h+]h)]h(]q˜hah,]q™h auh.Kh/hh]qš(h<)q›}qœ(h XWorking with domain namesqh!h•h"h#h$h@h&}qž(h*]h+]h)]h(]h,]uh.Kh/hh]qŸhCXWorking with domain namesq …q¡}q¢(h hh!h›ubaubhG)q£}q¤(h X\You can manipulate domains through a zone object. For example, you can create a domain name:q¥h!h•h"h#h$hKh&}q¦(h*]h+]h)]h(]h,]uh.K!h/hh]q§hCX\You can manipulate domains through a zone object. For example, you can create a domain name:q¨…q©}qª(h h¥h!h£ubaubh‚)q«}q¬(h X+>>> zone = conn.create_zone("example.com.")q­h!h•h"h#h$h…h&}q®(h‡hˆh(]h)]h*]h+]h,]uh.K$h/hh]q¯hCX+>>> zone = conn.create_zone("example.com.")q°…q±}q²(h Uh!h«ubaubhG)q³}q´(h X¯Note that trailing dot on that domain name is significant. This is known as a fully qualified domain name (`FQDN `_).h!h•h"h#h$hKh&}qµ(h*]h+]h)]h(]h,]uh.K&h/hh]q¶(hCXkNote that trailing dot on that domain name is significant. This is known as a fully qualified domain name (q·…q¸}q¹(h XkNote that trailing dot on that domain name is significant. This is known as a fully qualified domain name (h!h³ubcdocutils.nodes reference qº)q»}q¼(h XB`FQDN `_h&}q½(UnameXFQDNUrefuriq¾X8http://en.wikipedia.org/wiki/Fully_qualified_domain_nameq¿h(]h)]h*]h+]h,]uh!h³h]qÀhCXFQDNqÁ…qÂ}qÃ(h Uh!h»ubah$U referenceqÄubh)qÅ}qÆ(h X; U referencedqÇKh!h³h$h%h&}qÈ(Urefurih¿h(]qÉhah)]h*]h+]h,]qÊhauh]ubhCX).qË…qÌ}qÍ(h X).h!h³ubeubh‚)qÎ}qÏ(h X>>> zone h!h•h"h#h$h…h&}qÐ(h‡hˆh(]h)]h*]h+]h,]uh.K*h/hh]qÑhCX>>> zone qÒ…qÓ}qÔ(h Uh!hÎubaubhG)qÕ}qÖ(h X,You can also retrieve all your domain names:q×h!h•h"h#h$hKh&}qØ(h*]h+]h)]h(]h,]uh.K,h/hh]qÙhCX,You can also retrieve all your domain names:qÚ…qÛ}qÜ(h h×h!hÕubaubh‚)qÝ}qÞ(h X*>>> conn.get_zones() []h!h•h"h#h$h…h&}qß(h‡hˆh(]h)]h*]h+]h,]uh.K/h/hh]qàhCX*>>> conn.get_zones() []qá…qâ}qã(h Uh!hÝubaubhG)qä}qå(h X$Or you can retrieve a single domain:qæh!h•h"h#h$hKh&}qç(h*]h+]h)]h(]h,]uh.K1h/hh]qèhCX$Or you can retrieve a single domain:qé…qê}që(h hæh!häubaubh‚)qì}qí(h X5>>> conn.get_zone("example.com.") h!h•h"h#h$h…h&}qî(h‡hˆh(]h)]h*]h+]h,]uh.K4h/hh]qïhCX5>>> conn.get_zone("example.com.") qð…qñ}qò(h Uh!hìubaubhG)qó}qô(h XeFinally, you can retrieve the list of nameservers that AWS has setup for this domain name as follows:qõh!h•h"h#h$hKh&}qö(h*]h+]h)]h(]h,]uh.K6h/hh]q÷hCXeFinally, you can retrieve the list of nameservers that AWS has setup for this domain name as follows:qø…qù}qú(h hõh!hóubaubh‚)qû}qü(h X‰>>> zone.get_nameservers() [u'ns-1000.awsdns-42.org.', u'ns-1001.awsdns-30.com.', u'ns-1002.awsdns-59.net.', u'ns-1003.awsdns-09.co.uk.']h!h•h"h#h$h…h&}qý(h‡hˆh(]h)]h*]h+]h,]uh.K:h/hh]qþhCX‰>>> zone.get_nameservers() [u'ns-1000.awsdns-42.org.', u'ns-1001.awsdns-30.com.', u'ns-1002.awsdns-59.net.', u'ns-1003.awsdns-09.co.uk.']qÿ…r}r(h Uh!hûubaubhG)r}r(h X¢Once you have finished configuring your domain name, you will need to change your nameservers at your registrar to point to those nameservers for Route53 to work.rh!h•h"h#h$hKh&}r(h*]h+]h)]h(]h,]uh.K>> status = a.add_record("MX", "example.com.", "10 mail.isp.com")r"h!j h"h#h$h…h&}r#(h‡hˆh(]h)]h*]h+]h,]uh.KEh/hh]r$hCXB>>> status = a.add_record("MX", "example.com.", "10 mail.isp.com")r%…r&}r'(h Uh!j ubaubhG)r(}r)(h XSWhen you send a change request through, the status of the update will be *PENDING*:h!j h"h#h$hKh&}r*(h*]h+]h)]h(]h,]uh.KGh/hh]r+(hCXIWhen you send a change request through, the status of the update will be r,…r-}r.(h XIWhen you send a change request through, the status of the update will be h!j(ubha)r/}r0(h X *PENDING*h&}r1(h*]h+]h)]h(]h,]uh!j(h]r2hCXPENDINGr3…r4}r5(h Uh!j/ubah$hiubhCX:…r6}r7(h X:h!j(ubeubh‚)r8}r9(h X>>> status h!j h"h#h$h…h&}r:(h‡hˆh(]h)]h*]h+]h,]uh.KKh/hh]r;hCX>>> status r<…r=}r>(h Uh!j8ubaubhG)r?}r@(h XEYou can call the API again and ask for the current status as follows:rAh!j h"h#h$hKh&}rB(h*]h+]h)]h(]h,]uh.KMh/hh]rChCXEYou can call the API again and ask for the current status as follows:rD…rE}rF(h jAh!j?ubaubh‚)rG}rH(h X>>> status.update() 'INSYNC'h!j h"h#h$h…h&}rI(h‡hˆh(]h)]h*]h+]h,]uh.KPh/hh]rJhCX>>> status.update() 'INSYNC'rK…rL}rM(h Uh!jGubaubh‚)rN}rO(h X>>> status h!j h"h#h$h…h&}rP(h‡hˆh(]h)]h*]h+]h,]uh.KSh/hh]rQhCX>>> status rR…rS}rT(h Uh!jNubaubhG)rU}rV(h XYWhen the status has changed to *INSYNC*, the change has been propagated to remote serversh!j h"h#h$hKh&}rW(h*]h+]h)]h(]h,]uh.KUh/hh]rX(hCXWhen the status has changed to rY…rZ}r[(h XWhen the status has changed to h!jUubha)r\}r](h X*INSYNC*h&}r^(h*]h+]h)]h(]h,]uh!jUh]r_hCXINSYNCr`…ra}rb(h Uh!j\ubah$hiubhCX2, the change has been propagated to remote serversrc…rd}re(h X2, the change has been propagated to remote serversh!jUubeubeubeubeh UU transformerrfNU footnote_refsrg}rhUrefnamesri}rjUsymbol_footnotesrk]rlUautofootnote_refsrm]rnUsymbol_footnote_refsro]rpU citationsrq]rrh/hU current_linersNUtransform_messagesrt]rucdocutils.nodes system_message rv)rw}rx(h Uh&}ry(h*]UlevelKh(]h)]Usourceh#h+]h,]UlineKUtypeUINFOrzuh]r{hG)r|}r}(h Uh&}r~(h*]h+]h)]h(]h,]uh!jwh]rhCX5Hyperlink target "route53-tut-rst" is not referenced.r€…r}r‚(h Uh!j|ubah$hKubah$Usystem_messagerƒubaUreporterr„NUid_startr…KU autofootnotesr†]r‡U citation_refsrˆ}r‰Uindirect_targetsrŠ]r‹UsettingsrŒ(cdocutils.frontend Values rorŽ}r(Ufootnote_backlinksrKUrecord_dependenciesr‘NU rfc_base_urlr’Uhttp://tools.ietf.org/html/r“U tracebackr”ˆUpep_referencesr•NUstrip_commentsr–NU toc_backlinksr—Uentryr˜U language_coder™UenršU datestampr›NU report_levelrœKU _destinationrNU halt_levelržKU strip_classesrŸNh@NUerror_encoding_error_handlerr Ubackslashreplacer¡Udebugr¢NUembed_stylesheetr£‰Uoutput_encoding_error_handlerr¤Ustrictr¥U sectnum_xformr¦KUdump_transformsr§NU docinfo_xformr¨KUwarning_streamr©NUpep_file_url_templaterªUpep-%04dr«Uexit_status_levelr¬KUconfigr­NUstrict_visitorr®NUcloak_email_addressesr¯ˆUtrim_footnote_reference_spacer°‰Uenvr±NUdump_pseudo_xmlr²NUexpose_internalsr³NUsectsubtitle_xformr´‰U source_linkrµNUrfc_referencesr¶NUoutput_encodingr·Uutf-8r¸U source_urlr¹NUinput_encodingrºU utf-8-sigr»U_disable_configr¼NU id_prefixr½UU tab_widthr¾KUerror_encodingr¿UUTF-8rÀU_sourcerÁh#Ugettext_compactrˆU generatorrÃNUdump_internalsrÄNU smart_quotesrʼnU pep_base_urlrÆUhttp://www.python.org/dev/peps/rÇUsyntax_highlightrÈUlongrÉUinput_encoding_error_handlerrÊj¥Uauto_id_prefixrËUidrÌUdoctitle_xformr͉Ustrip_elements_with_classesrÎNU _config_filesrÏ]Ufile_insertion_enabledrЈU raw_enabledrÑKU dump_settingsrÒNubUsymbol_footnote_startrÓKUidsrÔ}rÕ(hh1hhÅhh1hj hh•hhluUsubstitution_namesrÖ}r×h$h/h&}rØ(h*]h(]h)]Usourceh#h+]h,]uU footnotesrÙ]rÚUrefidsrÛ}rÜh]rÝhasub.