Tôi đã sử dụng salt-sproxy một thời gian với mạng dựa trên Juniper của chúng tôi và tất cả đều hoạt động tốt.
Tôi bắt đầu phát hiện một số vấn đề với mã Junos mới mà chúng tôi sử dụng (18.x)
Tôi có thể giao tiếp với thiết bị (net.connected, net.cli, grain....etc), nhưng tôi không thể định cấu hình bất kỳ thứ gì trên thiết bị đó qua cả net.cli và net.load_config/template, thiết bị không báo cáo quay lại mọi khác biệt và thấy rằng các cấu hình mới đã được định cấu hình, ngay cả khi tệp bộ mới chứa các cấu hình mới chắc chắn chưa được định cấu hình trên thiết bị.
Và tôi không thể thấy thiết bị nào quay lại thông qua rpc-reply trong khi gỡ lỗi yêu cầu.
Tôi đã thử nghiệm điều đó cho nhiều thiết bị Juniper có cùng mã và tất cả đều có hành vi sai giống nhau.
muối-sproxy '10-220-1-9' net.load_config text='set vlans vlan888 vlan-id 888'
10-220-1-9:
----------
đã được cấu hình:
Thật
bình luận:
Đã được cấu hình.
khác:
đã tải_config:
kết quả:
Thật
mkh@sw220-1-9> hiện cấu hình vlans vlan888
{chính chủ:0}
mkh@sw220-1-9>
Gỡ lỗi hiển thị giống nhau
[INFO ] [host 10.220.1.9 session-id 82730] Đang yêu cầu 'ExecuteRpc'
[DEBUG ] [host 10.220.1.9 session-id 82730] đang xếp hàng <?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns: netconf:base:1.0" message-id="urn:uuid:ff66d123-c081-487d-971f-5d7e2932524a"><lock-configuration/></nc:rpc>
[DEBUG ] [host 10.220.1.9 session-id 82730] Yêu cầu đồng bộ hóa, sẽ chờ hết thời gian chờ = 60
[DEBUG ] [host 10.220.1.9 session-id 82730] Đang gửi tin nhắn
[INFO ] [host 10.220.1.9 session-id 82730] Đang gửi:
<?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid :ff66d123-c081-487d-971f-5d7e2932524a"><lock-configuration/></nc:rpc>]]>]]>
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[THÔNG TIN ] [máy chủ 10.220.1.9 id phiên 82730] Đã nhận tin nhắn từ máy chủ
[DEBUG ] [host 10.220.1.9 session-id 82730] Đã nhận:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/18.2R3/junos" xmlns:nc=" urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:ff66d123-c081-487d-971f-5d7e2932524a">
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới những người nghe khác nhau: <rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http:/ /xml.juniper.net/junos/18.2R3/junos" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:ff66d123-c081-487d- 971f-5d7e2932524a">
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.operations.rpc.RPCReplyListener đối tượng tại 0x7fa31e732670>
[DEBUG ] [host 10.220.1.9 session-id 82730] Phân phối tới đối tượng <ncclient.operations.third_party.juniper.rpc.ExecuteRpc tại 0x7fa31efeac10>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.transport.session.NotificationHandler đối tượng tại 0x7fa31e644130>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <jnpr.junos.device.DeviceSessionListener đối tượng tại 0x7fa31e628370>
[INFO ] [host 10.220.1.9 session-id 82730] Đang yêu cầu 'ExecuteRpc'
[DEBUG ] [host 10.220.1.9 session-id 82730] đang xếp hàng <?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns: netconf:base:1.0" message-id="urn:uuid:5f53421e-6d44-4c58-91e1-c19ccea38b1e"><load-configuration format="text" action="set"><configuration-set>đặt vlan vlan888 vlan -id 888
</configuration-set></load-configuration></nc:rpc>
[DEBUG ] [host 10.220.1.9 session-id 82730] Yêu cầu đồng bộ hóa, sẽ chờ hết thời gian chờ = 60
[DEBUG ] [host 10.220.1.9 session-id 82730] Đang gửi tin nhắn
[INFO ] [host 10.220.1.9 session-id 82730] Đang gửi:
<?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid :5f53421e-6d44-4c58-91e1-c19ccea38b1e"><load-configuration format="text" action="set"><configuration-set>đặt vlans vlan888 vlan-id 888
</configuration-set></load-configuration></nc:rpc>]]>]]>
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[THÔNG TIN ] [máy chủ 10.220.1.9 id phiên 82730] Đã nhận tin nhắn từ máy chủ
[DEBUG ] [host 10.220.1.9 session-id 82730] Đã nhận:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/18.2R3/junos" xmlns:nc=" urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:5f53421e-6d44-4c58-91e1-c19ccea38b1e">
<tải-cấu hình-kết quả>
<ok/>
</load-cấu hình-kết quả>
</rpc-trả lời>
[GỠ LỖI ] [máy chủ 10.220.1.9 session-id 82730] gửi thông báo tới những người nghe khác nhau: <rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http:/ /xml.juniper.net/junos/18.2R3/junos" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:5f53421e-6d44-4c58- 91e1-c19ccea38b1e">
<tải-cấu hình-kết quả>
<ok/>
</load-cấu hình-kết quả>
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.operations.rpc.RPCReplyListener đối tượng tại 0x7fa31e732670>
[DEBUG ] [host 10.220.1.9 session-id 82730] Phân phối tới đối tượng <ncclient.operations.third_party.juniper.rpc.ExecuteRpc tại 0x7fa31f160fd0>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.transport.session.NotificationHandler đối tượng tại 0x7fa31e644130>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <jnpr.junos.device.DeviceSessionListener đối tượng tại 0x7fa31e628370>
[INFO ] [host 10.220.1.9 session-id 82730] Đang yêu cầu 'ExecuteRpc'
[DEBUG ] [host 10.220.1.9 session-id 82730] đang xếp hàng <?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns: netconf:base:1.0" message-id="urn:uuid:aa19bafc-a8b9-42ee-a9ae-f18de0448176"><get-configuration compare="rollback" rollback="0" format="text"/></nc :rpc>
[DEBUG ] [host 10.220.1.9 session-id 82730] Yêu cầu đồng bộ hóa, sẽ chờ hết thời gian chờ = 60
[DEBUG ] [host 10.220.1.9 session-id 82730] Đang gửi tin nhắn
[INFO ] [host 10.220.1.9 session-id 82730] Đang gửi:
<?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid :aa19bafc-a8b9-42ee-a9ae-f18de0448176"><get-configuration compare="rollback" rollback="0" format="text"/></nc:rpc>]]>]]>
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[THÔNG TIN ] [máy chủ 10.220.1.9 id phiên 82730] Đã nhận tin nhắn từ máy chủ
[DEBUG ] [host 10.220.1.9 session-id 82730] Đã nhận:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/18.2R3/junos" xmlns:nc=" urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:aa19bafc-a8b9-42ee-a9ae-f18de0448176">
<thông tin cấu hình>
<cấu hình-đầu ra>
</cấu hình-đầu ra>
</cấu hình-thông tin>
</rpc-trả lời>
[GỠ LỖI ] [máy chủ 10.220.1.9 session-id 82730] gửi thông báo tới những người nghe khác nhau: <rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http:/ /xml.juniper.net/junos/18.2R3/junos" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:aa19bafc-a8b9-42ee- a9ae-f18de0448176">
<thông tin cấu hình>
<cấu hình-đầu ra>
</cấu hình-đầu ra>
</cấu hình-thông tin>
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.operations.rpc.RPCReplyListener đối tượng tại 0x7fa31e732670>
[DEBUG ] [host 10.220.1.9 session-id 82730] Phân phối tới đối tượng <ncclient.operations.third_party.juniper.rpc.ExecuteRpc tại 0x7fa31f0edb80>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.transport.session.NotificationHandler đối tượng tại 0x7fa31e644130>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <jnpr.junos.device.DeviceSessionListener đối tượng tại 0x7fa31e628370>
[DEBUG ] Loại bỏ cấu hình
[DEBUG ] {'result': True, 'comment': '', 'already_configured': False, 'loaded_config': '', 'diff': ''}
[INFO ] [host 10.220.1.9 session-id 82730] Đang yêu cầu 'ExecuteRpc'
[DEBUG ] [host 10.220.1.9 session-id 82730] đang xếp hàng <?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns: netconf:base:1.0" message-id="urn:uuid:4ef1fa52-c32d-49c4-aab2-e2db867a3761"><load-configuration compare="rollback" rollback="0"/></nc:rpc>
[DEBUG ] [host 10.220.1.9 session-id 82730] Yêu cầu đồng bộ hóa, sẽ chờ hết thời gian chờ = 60
[DEBUG ] [host 10.220.1.9 session-id 82730] Đang gửi tin nhắn
[INFO ] [host 10.220.1.9 session-id 82730] Đang gửi:
<?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid :4ef1fa52-c32d-49c4-aab2-e2db867a3761"><load-configuration compare="rollback" rollback="0"/></nc:rpc>]]>]]>
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[THÔNG TIN ] [máy chủ 10.220.1.9 id phiên 82730] Đã nhận tin nhắn từ máy chủ
[DEBUG ] [host 10.220.1.9 session-id 82730] Đã nhận:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/18.2R3/junos" xmlns:nc=" urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:4ef1fa52-c32d-49c4-aab2-e2db867a3761">
<tải-cấu hình-kết quả>
<ok/>
</load-cấu hình-kết quả>
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới những người nghe khác nhau: <rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http:/ /xml.juniper.net/junos/18.2R3/junos" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:4ef1fa52-c32d-49c4- aab2-e2db867a3761">
<tải-cấu hình-kết quả>
<ok/>
</load-cấu hình-kết quả>
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.operations.rpc.RPCReplyListener đối tượng tại 0x7fa31e732670>
[DEBUG ] [host 10.220.1.9 session-id 82730] Phân phối tới đối tượng <ncclient.operations.third_party.juniper.rpc.ExecuteRpc tại 0x7fa31f160f70>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.transport.session.NotificationHandler đối tượng tại 0x7fa31e644130>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <jnpr.junos.device.DeviceSessionListener đối tượng tại 0x7fa31e628370>
[INFO ] [host 10.220.1.9 session-id 82730] Đang yêu cầu 'ExecuteRpc'
[DEBUG ] [host 10.220.1.9 session-id 82730] đang xếp hàng <?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns: netconf:base:1.0" message-id="urn:uuid:ddb0f24c-387a-4366-9703-9a618e7ad6f4"><unlock-configuration/></nc:rpc>
[DEBUG ] [host 10.220.1.9 session-id 82730] Yêu cầu đồng bộ hóa, sẽ chờ hết thời gian chờ = 60
[DEBUG ] [host 10.220.1.9 session-id 82730] Đang gửi tin nhắn
[INFO ] [host 10.220.1.9 session-id 82730] Đang gửi:
<?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid :ddb0f24c-387a-4366-9703-9a618e7ad6f4"><unlock-configuration/></nc:rpc>]]>]]>
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[THÔNG TIN ] [máy chủ 10.220.1.9 id phiên 82730] Đã nhận tin nhắn từ máy chủ
[DEBUG ] [host 10.220.1.9 session-id 82730] Đã nhận:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/18.2R3/junos" xmlns:nc=" urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:ddb0f24c-387a-4366-9703-9a618e7ad6f4">
</rpc-trả lời>
[GỠ LỖI ] [máy chủ 10.220.1.9 session-id 82730] gửi thông báo tới những người nghe khác nhau: <rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http:/ /xml.juniper.net/junos/18.2R3/junos" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:ddb0f24c-387a-4366- 9703-9a618e7ad6f4">
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.operations.rpc.RPCReplyListener đối tượng tại 0x7fa31e732670>
[DEBUG ] [host 10.220.1.9 session-id 82730] Phân phối tới đối tượng <ncclient.operations.third_party.juniper.rpc.ExecuteRpc tại 0x7fa31f0ed430>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <ncclient.transport.session.NotificationHandler đối tượng tại 0x7fa31e644130>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới người nghe: <jnpr.junos.device.DeviceSessionListener đối tượng tại 0x7fa31e628370>
[INFO ] [host 10.220.1.9 session-id 82730] Đang yêu cầu 'CloseSession'
[DEBUG ] [host 10.220.1.9 session-id 82730] đang xếp hàng <?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns: netconf:base:1.0" message-id="urn:uuid:f8b65a65-5563-46b3-a7a1-36f2da78487e"><nc:close-session/></nc:rpc>
[DEBUG ] [host 10.220.1.9 session-id 82730] Yêu cầu đồng bộ hóa, sẽ chờ hết thời gian chờ = 60
[DEBUG ] [host 10.220.1.9 session-id 82730] Đang gửi tin nhắn
[INFO ] [host 10.220.1.9 session-id 82730] Đang gửi:
<?xml version="1.0" encoding="UTF-8"?><nc:rpc xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid :f8b65a65-5563-46b3-a7a1-36f2da78487e"><nc:close-session/></nc:rpc>]]>]]>
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[DEBUG ] [host 10.220.1.9 session-id 82730] phân tích cú pháp netconf v1.0
[THÔNG TIN ] [máy chủ 10.220.1.9 id phiên 82730] Đã nhận tin nhắn từ máy chủ
[DEBUG ] [host 10.220.1.9 session-id 82730] Đã nhận:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/18.2R3/junos" xmlns:nc=" urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:f8b65a65-5563-46b3-a7a1-36f2da78487e">
<ok/>
</rpc-trả lời>
[DEBUG ] [host 10.220.1.9 session-id 82730] gửi thông báo tới những người nghe khác nhau: <rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http:/ /xml.juniper.net/junos/18.2R3/junos" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:f8b65a65-5563-46b3- a7a1-36f2da78487e">
<ok/>
</rpc-trả lời>
Một điểm nữa là cùng một tệp set + Â lệnh net đang hoạt động cho một mã Junos khác với mã 18, đã thử nghiệm trên 20.4 và 15.1 mà không gặp sự cố tương tự.
Tôi đã thêm phần này vào dự án Salt-sproxy như hiển thị bên dưới, tôi đảm bảo rằng vấn đề không phải do bom napalm hay netconf, những thứ đã được thử nghiệm riêng lẻ và hoạt động:
https://github.com/mirceaulinic/salt-sproxy/issues/255
Đánh giá cao bất kỳ hỗ trợ và trân trọng,
mo