2012-07-11 29 views
9

Tôi đang sử dụng các bước sau để xóa tuyến đường53. Tôi không nhận được thông báo lỗi.Boto - Cách xóa tập bản ghi khỏi tuyến đường 53 -Thử để xóa bộ bản ghi tài nguyên nhưng không tìm thấy

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() 

tất cả các trường bắt buộc có mặt và họ match..weight, định danh, ttl = 60, vv \

ví dụ

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

Tôi muốn xóa 111.111.111.222 và tập hợp bản ghi.

Vì vậy, cách thích hợp để xóa bộ bản ghi là gì?

Đối với tập hợp bản ghi, tôi sẽ có nhiều giá trị được phân biệt bằng số nhận dạng duy nhất. Khi địa chỉ ip trở nên hoạt động, tôi muốn để xóa khỏi tuyến đường53. Tôi đang sử dụng một cân bằng tải của người nghèo.

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> 

Cảm ơn

Trả lời

1

Bạn có chắc chắn bạn cần tất cả những thông số cho add_change?

Look at add_change here.

thông số mặc định được trao cho các chức năng, vì vậy bạn có thể quá mức quy định cụ thể bằng cách cung cấp cân và TTL.

Hãy thử để lại trọng lượng và TTL ra (bạn có thể cần phải giữ số nhận dạng). This blog cung cấp ví dụ đơn giản về xóa bản ghi:

Ngoài ra, tôi không thể thấy giá trị của các tham số mà bạn đang truyền, nhưng đảm bảo tính toàn vẹn của chúng và thử bao gồm '.' ở cuối tên miền phụ của bạn

1

Tôi đã thử ví dụ tương tự và phải chỉ định tất cả các trường bao gồm trọng lượng và ttl để xóa thành công. (Bằng cách giữ nó mặc định, nó không hoạt động). Không thể tạo ra vấn đề ban đầu với bản ghi DNS có trọng số và thông qua ttl một cách rõ ràng.