2012-07-11 8 views
9

नहीं मिला है, मैं मार्ग 53 रिकॉर्ड्स को हटाने के लिए निम्न का उपयोग कर रहा हूं। मुझे कोई त्रुटि संदेश नहीं मिला।बोटो - मार्ग 53 से रिकॉर्ड सेट को कैसे हटाएं- संसाधन रिकॉर्ड सेट को हटाने का प्रयास किया गया लेकिन यह

conn = Route53Connection(aws_access_key_id, aws_secret_access_key) 
changes = ResourceRecordSets(conn, zone_id) 
change = changes.add_change("DELETE",sub_domain, "A", 60,weight=weight,identifier=identifier) 
change.add_value(ip_old) 
changes.commit() 

सभी आवश्यक फ़ील्ड मौजूद हैं और वे match..weight, पहचानकर्ता, टीटीएल = 60 आदि \

उदा

test.com. A 111.111.111.111 60 1 id1 
test.com. A 111.111.111.222 60 1 id2 

मैं 111.111.111.222 और रिकॉर्ड सेट को हटाना चाहता हूं।

तो, रिकॉर्ड सेट को हटाने का सही तरीका क्या है?

एक रिकॉर्ड सेट के लिए, मेरे पास एक से अधिक मान होंगे जो को एक अद्वितीय पहचानकर्ता द्वारा प्रतिष्ठित किया गया है। जब कोई आईपी पता सक्रिय हो जाता है तो मैं मार्ग 53 से हटाने के लिए चाहता हूं। मैं एक गरीब मनुष्य लोड संतुलन का उपयोग कर रहा हूँ।

Here is the meta of the record want to delete. 
{'alias_dns_name': None, 
    'alias_hosted_zone_id': None, 
    'identifier': u'15754-1', 
    'name': u'hui.com.', 
    'resource_records': [u'103.4.xxx.xxx'], 
    'ttl': u'60', 
    'type': u'A', 
    'weight': u'1'} 



Traceback (most recent call last): 
    File "/home/ubuntu/workspace/rtbopsConfig/classes/redis_ha.py", line 353, in <module> 
    deleteRedisSubDomains(aws_access_key_id, aws_secret_access_key,platform=platform,sub_domain=sub_domain,redis_domain=redis_domain,zone_id=zone_id,ip_address=ip_address,weight=1,identifier=identifier) 
    File "/home/ubuntu/workspace/rtbopsConfig/classes/redis_ha.py", line 341, in deleteRedisSubDomains 
    changes.commit() 
    File "/usr/local/lib/python2.7/dist-packages/boto-2.3.0-py2.7.egg/boto/route53/record.py", line 131, in commit 
    return self.connection.change_rrsets(self.hosted_zone_id, self.to_xml()) 
    File "/usr/local/lib/python2.7/dist-packages/boto-2.3.0-py2.7.egg/boto/route53/connection.py", line 291, in change_rrsets 
    body) 
boto.route53.exception.DNSServerError: DNSServerError: 400 Bad Request 
<?xml version="1.0"?> 
<ErrorResponse xmlns="https://route53.amazonaws.com/doc/2011-05-05/"><Error><Type>Sender</Type><Code>InvalidChangeBatch</Code><Message>Tried to delete resource record set hui.com., type A, SetIdentifier 15754-1 but it was not found</Message></Error><RequestId>9972af89-cb69-11e1-803b-7bde5b9c457d</RequestId></ErrorResponse> 

धन्यवाद

उत्तर

1

क्या आप वाकई add_change के लिए उन मापदंडों के सभी की जरूरत है?

Look at add_change here.

डिफ़ॉल्ट पैरामीटर कार्य करने के लिए दिया जाता है, तो आप के ऊपर-निर्दिष्ट करने के लिए वजन और टीटीएल प्रदान करके किया जा सकता है।

वजन और टीटीएल को छोड़ने का प्रयास करें (आपको पहचानकर्ता रखने की आवश्यकता हो सकती है)। This blog रिकॉर्ड हटाने का एक सरल उदाहरण प्रदान करता है:

इसके अलावा, मैं आपके पैरामीटर के मानों को नहीं देख पा रहा हूं, लेकिन उनकी ईमानदारी सुनिश्चित करें और '।' आपके सबडोमेन के अंत में

1

मैंने इसी तरह के उदाहरण की कोशिश की और सफल हटाने के लिए वजन और टीटीएल समेत सभी फ़ील्ड निर्दिष्ट करना पड़ा। (इसे डिफ़ॉल्ट रखकर, यह काम नहीं किया)। भारित DNS रिकॉर्ड के साथ मूल समस्या का उत्पादन नहीं कर सका और स्पष्ट रूप से उत्तीर्ण टीटीएल।

संबंधित मुद्दे