क्या डब्ल्यूएलसी 2504 नियंत्रक से कॉन्फ़िगरेशन का बैकअप लेने के लिए एक स्वचालित तरीका है?


11

मैं एक स्वचालित प्रक्रिया के माध्यम से नियंत्रक कॉन्फ़िगरेशन फ़ाइल का बैकअप लेने के लिए एक रास्ता तलाश रहा हूं। मैंने वेब इंटरफ़ेस के लिंक देखे हैं जो एक दूरस्थ होस्ट के लिए कॉन्फ़िगर की एक बार की tftp प्रतिलिपि करने के लिए प्रकट होता है, हालांकि मैं प्रतिलिपि को शेड्यूल करने का एक तरीका ढूंढ रहा हूं।

किसी को सिस्को WLCs के लिए कॉन्फ़िगरेशन बैकअप को स्वचालित करने का एक तरीका पता है?


क्या आपने यह प्रश्न देखा है ? सीधे तौर पर उचित नहीं, लेकिन संभवतः मददगार ...
क्रेग कॉन्स्टेंटाइन

1
धन्यवाद @CraigConstantine, हालांकि WLC एक कस्टम सॉफ़्टवेयर चलाते हैं जो कुछ सामान्य IOS-isms जैसे "टर्म लेन 0" का पालन नहीं करता है - वहाँ एक शुद्ध कमांड डंप की अनुमति देने के लिए शायद एक अस्पष्ट आदेश है, लेकिन अभी तक नहीं मिला है यह।
पीटर अनुग्रह

1
... इस सिस्को समर्थन धागे के बारे में कैसे ?
क्रेग कॉन्स्टेंटाइन

2
आदर्श रूप से सिस्को प्राइम इन्फ्रास्ट्रक्चर का उपयोग किया जाएगा, लेकिन मुझे संदेह है कि ओपी शून्य लागत विकल्पों की तलाश कर रहा है।
generalnetworkerror

जवाबों:


8

WLC में लॉगिन करने और ट्रांसफर कमांड चलाने के लिए एक स्क्रिप्ट का उपयोग करें: http://www.cisco.com/en/US/docs/wireless/controller/6.0/command/reference/cli60.html#wp1327209

इसका उपयोग आप WLC से दूसरे सर्वर पर TFTP / SFTP / FTP के माध्यम से कॉन्फ़िगरेशन अपलोड करने के लिए कर सकते हैं।

(Cisco Controller) >transfer upload mode sftp 

(Cisco Controller) >transfer upload username my-osx-user

(Cisco Controller) >transfer upload password my-os-password

(Cisco Controller) >transfer upload serverip 192.168.1.10

(Cisco Controller) >transfer upload path /Users/my-osx-user/

(Cisco Controller) >transfer upload filename wlc.config

(Cisco Controller) >transfer upload datatype config

(Cisco Controller) >transfer upload start

Mode............................................. SFTP
SFTP Server IP................................... 192.168.1.10
SFTP Server Port................................. 22
SFTP Path........................................ /Users/my-osx-user/
SFTP Filename.................................... wlc.config
SFTP Username.................................... my-osx-user
SFTP Password.................................... *********
Data Type........................................ Config File 
Encryption....................................... Disabled

                                                          **************************************************
                            ***  WARNING: Config File Encryption Disabled  ***
                                                                              **************************************************


Are you sure you want to start? (y/N) y

SFTP Config transfer starting.

File transfer operation completed successfully.

(Cisco Controller) >

जबकि लिंक WLC 6.0 को इंगित करता है, उदाहरण 7.4 पर चलाया गया था।


क्या Sftp केवल कुछ कंट्रोलर्स / रेव्स के लिए मान्य है? मैं केवल tftp या ftp का चयन करने में सक्षम हूं।
पीटर ग्रेस

यह विधि tftp के लिए काम करती है, और उम्मीद की तरह कुछ के माध्यम से स्वचालित किया जा सकता है। इससे मेरी समस्या हल हो गई!
पीटर ग्रेस

SFTP 7.4 में जारी
some_guy_long_gone

5

उम्मीद है कि नौकरी के लिए एक अच्छा उम्मीदवार हो सकता है।

नीचे एक उदाहरण टेम्पलेट है जिसे मैंने एक साथ रखा है जो आपके साथ खेलने के लिए टिप्पणी की गई है। यह एक डब्ल्यूएलसी में प्रवेश करेगा, चल रहे कॉन्फ़िगरेशन को पकड़ो और इसे अपनी पसंद की फ़ाइल में जोड़ देगा।

उदाहरण फ़ाइल का नाम और स्थान है /var/log/script-log/config-log.txt

आपको फ़ाइल नाम और स्थान को अपनी पसंद की फ़ाइल (पर्याप्त अनुमतियों के साथ) और साथ ही अपने WLC के उपयोगकर्ता नाम, पासवर्ड और आईपी पते को संशोधित करना होगा।

अंत में आप एक वांछित अंतराल का उपयोग करके बैकअप स्क्रिप्ट को निष्पादित करने के लिए अपने कॉन्टैब को संपादित कर सकते हैं।

Crontab उदाहरण:

# Run configuration backup every night at midnight
0 0 * * * /path/to/script/script-name

कॉन्फ़िगरेशन बैकअप स्क्रिप्ट उदाहरण:

#!/usr/bin/expect

set timeout 15

set user "username-here"
set password "password-here"
set ipaddress1 "ip-address-here"


# Store the current date in 'date' and add header to log for appending separation

catch { exec sh -c { date } } date
set env(date) "$date"
exec sh -c {
             {
               echo -e "\n\n==================================================="
               echo -e "= WLC Configuration - $date"
               echo -e "===================================================\n\n"
             } >>/var/log/script-log/config-log.txt
}

# Log to the log.txt file and append to the log on subsequent runs (a)

set log [open "/var/log/script-log/config-log.txt" a]
set accum {}

# Expect diagnostic information with 1 | off = 0

exp_internal 0

# View stdout with 1 | off = 0

log_user 0

# Connect to physical WLC (ipaddr) with ssh

spawn ssh $ipaddress1
match_max 100000
sleep 1

match_max [expr 32 * 1024]
while 1  {
      expect {
        "no)?" {send "yes\r"}
        "n as:*" {send "$user\r"}
        "ser:*" {send "$user\r"}
        "assword:*" {send "$password\r"}
        "r) >"             {break}
        "denied"        {send_user "Can't login\r"; exit 1}
        "refused"       {send_user "Connection refused\r"; exit 2}
        "failed"        {send_user "Host exists. Check ssh_hosts file\r"; exit 3}
         timeout         {send_user "Timeout problem\r"; exit 4}
      }
    }

# send carriage return (\r) to make sure we get back to CLI prompt

send "\r"
sleep 1

# Remove scroll limit and show running configuration

send "config paging disable\r"
sleep 1
send "show run-config\r"
sleep 1
expect {
         "nue..." {send "\r"}
}
sleep 1
send "logout\r"
sleep 1
# Upon logging out you can either save any pending changes with y or simply use n to ignore them
send "y\r"
sleep 4

# Grab string that matched the greedy regexp

expect {
        -regexp {..*} {
            set accum "${accum}$expect_out(0,string)"
            exp_continue
        }
    }

puts $log $accum

मैं उम्मीद का उपयोग करने की उम्मीद कर रहा था, लेकिन रन-कॉन्फिगर से आउटपुट "ट्रांसफर अपलोड" के कच्चे विन्यास को नहीं ले सकता है जैसा कि लेगियोक्सी के जवाब में उल्लेख किया गया है। मैं जो कर रहा हूं वह एक नियमित अंतराल पर ट्रांसफर अपलोड स्टार्ट कमांड को ट्रिगर करने के लिए एक उम्मीद की स्क्रिप्ट का उपयोग करना था।
पीटर ग्रेस

4

मुझे पता है कि यह एक पुरानी पोस्ट है, लेकिन सबसे अच्छा तरीका है कि मैं अपने नियंत्रकों से बैक अप को स्वचालित करने के लिए मिल सकता था, क्रोन से एक स्क्रिप्ट रन में एसएनएमपी का उपयोग करना था।

snmpset -v2c -c <snmp_RW> <WLC_IP> .1.3.6.1.4.1.14179.1.2.9.1.1.0 i 1
snmpset -v2c -c <snmp_RW> <WLC_IP> .1.3.6.1.4.1.14179.1.2.9.1.2.0 a TFTP_Server_IP
snmpset -v2c -c <snmp_RW> <WLC_IP> .1.3.6.1.4.1.14179.1.2.9.1.3.0 s /<TFTP_Path>
snmpset -v2c -c <snmp_RW> <WLC_IP> .1.3.6.1.4.1.14179.1.2.9.1.4.0 s <File_name>
snmpset -v2c -c <snmp_RW> <WLC_IP> .1.3.6.1.4.1.14179.1.2.9.1.5.0 i 2
snmpset -v2c -c <snmp_RW> <WLC_IP> .1.3.6.1.4.1.14179.1.2.9.1.6.0 i 1

अपने सेटअप को फिट करने के लिए आइटम को स्पष्ट रूप से <> के भीतर बदलें। उम्मीद है कि किसी को यह मददगार मिल सकता है।


अच्छा लगा। SNMP लिखने की क्षमता को हमेशा कम आंका जाता है!
RedShift

4

आपके पास कितने उपकरण हैं, इस पर निर्भर करते हुए, आप उनके साथ काम करने के लिए रैंकिड को हैक कर सकते हैं। फिर आप इसे एक संस्करण नियंत्रण प्रणाली के साथ सेट कर सकते हैं और समय के साथ अलग-अलग वेब गुइ हो सकते हैं।

यदि आपके पास बहुत से उपकरण नहीं हैं, तो [ cloginरैंसीड का हिस्सा] crontabदैनिक, á la नामक स्क्रिप्ट में पर्याप्त होना चाहिए

for device in wlc1 wlc2 wlc3 (..) wlcN; do
    clogin -c "show run; show clock" $device > ~/WLC-config-backups/$(date +%Y-%m-%d)-$device-backup.txt
done

यह लूप के bash लिए एक मूल है जिसे लगभग असीम रूप से बढ़ाया जा सकता है।


2
"शो रन" WLC पर एक मान्य कमांड नहीं है, यह रनिंग-कॉन्फिग दिखाता है और तब भी यह आपको पृष्ठ-दर-पृष्ठ रोकता है और संकेत देता है। यह "टर्म लेन 0" को स्वीकार नहीं करेगा - अगर यह एक नियमित IOS था, तो मैं बस उसी स्क्रिप्ट का उपयोग करूंगा जिसका उपयोग मैं अपने सभी अन्य सिस्को उपकरणों को वापस करने के लिए करता हूं .. :(
पीटर ग्रेस

3
config paging disabledIOS "टर्म लेन 0" के बराबर है। show run-configहालांकि यह लुढ़कता हुआ सौभाग्य एक बार गर्भपात करने की कोशिश करता है । अभी भी एक प्रारंभिक "प्रेस जारी रखने के लिए दर्ज करें।"
generalnetworkerror

@generalnetworkerror, FYI कॉन्फिग पेजिंग विकलांग लॉक को टेलनेट और ssh सत्र को WLC4404s जो हमारे पास है
माइक पेनिंगटन

1
@ मायकेपेनिंगटन: SSH सत्र में WLC 5508 v7.5.102.0 पर लॉक-अप के बिना पेजिंग अक्षम परीक्षण किया गया।
generalnetworkerror
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.