ราบรื่นเกือบ! เรียงจาก ...
เช่นเดียวกับที่สุดของความคิดของฉันมันเริ่มต้นด้วยแบบสอบถามของลูกค้าผู้บริสุทธิ์ อีเอ็มซีมีบางเย็นมากเครื่องมือ inbuilt สำหรับการทำ CIFS การโยกย้ายที่ไร้รอยต่อข้อมูล แต่เน็ตแอพทำไม่ได้ เป็นสิ่งที่มักจะทำให้เกิดความยุติธรรมจำนวนปัญหาที่เกิดขึ้นและบางการวางแผนอย่างระมัดระวังกับเน็ตแอพในขณะที่เราไม่ได้นี้ แต่ฉันคิดวันนี้เราจี๊ดทำผมก็ไม่คิดว่าเราใช้ประโยชน์จากเครื่องมือที่ใช้ได้อย่างถูกต้อง
ป้อน widelinks ที่นี่ที่สกัดมาจากบทความของเน็ตแอพในหัวข้อกิโลไบต์ (KB 3011420) คือ ...
การเชื่อมโยงสัญลักษณ์เป็นแฟ้มพิเศษที่สร้างขึ้นโดยลูกค้า NFS ที่ชี้ไปยังแฟ้มอื่นหรือไดเรกทอรี รายการ Widelink เป็นวิธีที่จะเปลี่ยนเส้นทางการเชื่อมโยงสัญลักษณ์ที่แน่นอนเกี่ยวกับ filer พวกเขาช่วยให้ปลายทางของลิงก์สัญลักษณ์ที่จะใช้ร่วมกับ filer เดียวกันหรือบน filer อื่น ตัวอย่างต่อไปนี้แสดงให้เห็นถึงวิธีการสร้าง symlink จากปริมาณการ qtree เมื่อ filer เดียวกันและจากปริมาณปริมาณที่แตกต่างกันเกี่ยวกับ filers
สิ่งนี้หมายความว่าและทำไมชีวิตของฉันจะง่ายขึ้นหลังจากที่ได้อ่านส่วนที่เหลือของบทความนี้?
ดังนั้นถ้าฉันมีที่ดี filer NetApp มันใหม่ (หรือเก่าฉันไม่ได้มีตลอดไปย้ายข้อมูล CIFS ของฉันลงบนยัง) และฉันมีเก่าเซิร์ฟเวอร์ของฉันแฟ้ม CIFS ที่ใกล้ความล้มเหลวอย่างรวดเร็วหรือออกจากการสนับสนุนของ ฉันสามารถสร้างไฟล์ใหม่ของฉันและโครงสร้างร่วมกันบนเน็ตแอพของฉันแล้วใช้ widelinks เปลี่ยนเส้นทางผู้ใช้ไปยังเซิร์ฟเวอร์แฟ้ม CIFS ในขณะที่ฉันกังวลเกี่ยวกับข้อมูลทั้งหมดที่คัดลอกออกมาจากชั่วโมงโดยไม่ต้องมีลูกปวดจากการคัดลอกข้อมูลทั้งหมดของฉันทั้งหมดที่ เมื่อ อ่านข้อมูลเพิ่มเติม ... (1385 คำ, 3 ภาพที่ประมาณ 5:32 นาทีการอ่านเวลา)
บรรทัดคำสั่ง , ทั่วไป CIFS , NetApp , การเชื่อมโยงสัญลักษณ์ , symlinks , widelinks
ฉันมีงานของการจำลอง filer ลูกค้าที่มีอยู่ในระบบ DR ของพวกเขาใหม่ นี้ก็ค่อนข้างเป็นระบบใหญ่และมากที่สุดเท่าที่สร้าง SnapMirrors ไม่ซับซ้อนโดยเฉพาะอย่างยิ่งก็คือเสียเวลา ดังนั้นเช่นเดียวกับหลายสิ่งที่ฉันทำฉันเขียนสคริปต์เพื่อให้บรรลุภารกิจนี้ฉันได้เร็วและไปได้ยังกาแฟอื่น
คุณจะต้อง pre-shared การตั้งค่าคีย์ (เช่นเคย) แต่ส่วนที่เหลือจะถูกพร้อมท์สำหรับ มีการตรวจสอบข้อมูลที่ไม่มี (ไม่แปลกใจ) สถานที่ สคริปต์จะออก 4 ไฟล์ข้อความอย่างใดอย่างหนึ่งสำหรับการสร้าง / การ จำกัด ปริมาณทั้งหมดหนึ่งสำหรับ "snapmirror.conf" เพื่อนำมาใช้ในสถานที่ของ "snapmirror.conf" ในขณะที่คุณกำลังทำเริ่มต้นพื้นฐานและสุดท้ายหนึ่งไปยัง ที่จริงเริ่มต้น snapmirrors มีสติปัญญาที่มีกระแสเกิดขึ้นพร้อมกันไม่มีการเริ่มต้นเพื่อให้ยังคงเป็นบิตของการกระทำการเล่นกลและเกมรอคอย
กรุณาแจ้งให้เราทราบหากคุณพบนี้มีประโยชน์
#! / bin / bash
echo "กรุณาใส่ชื่อของ filer ประถมศึกษา:"
อ่าน PRI_FILER
echo "กรุณาใส่ชื่อของ filer DR:"
อ่าน DR_FILER
ConnectString = "ssh-C 3DES"
# ConnectString = "rsh"
SnapMirrorHour = 22
SnapMirrorMinute = 0
SnapMirrorStagger = 5
echo "" _filer_volumes.txt> $ {} DR_FILER
echo "" _snapmirror.conf> $ {} DR_FILER
echo ""> $ {} DR_FILER _sm_initialize.txt
echo "" _snapmirror_init.conf> $ {} DR_FILER
สำหรับใน AGGR `$ {} $ ConnectString PRI_FILER" aggr สถานะ "| awk '$ 2 ~ รัฐ / / {print $ 1}'`
ทำ
SIZE = `$ {} $ ConnectString PRI_FILER" df-Ah $ AGGR "| sed 's / \ ([0-9] [KMGT] \) B / \ 1 / g' |! awk '$ 1 ~ snapshot /. | รวม / {print $ 2} '`
สำหรับ VOL ใน `$ {ConnectString} $ PRI_FILER" aggr show_space $ AGGR "| awk '$ 1 ~ อวกาศ / / {print $ 0}' | awk '$ 4 ~ ปริมาณ / | แฟ้ม | / ไม่มี {print $ 1}'`
ทำ
echo "ปริมาตรสร้าง $ {} VOL-S ไม่มี $ {AGGR} $ {} ขนาด" >> $ {} DR_FILER _filer_volumes.txt
echo "ปริมาตร จำกัด $ {} VOL" >> $ {} DR_FILER _filer_volumes.txt
echo "SnapMirror เริ่มต้น-S $ {} PRI_FILER: $ {VOL} $ {} DR_FILER: $ {} VOL" >> $ {} DR_FILER _sm_initialize.txt
echo "$ {} PRI_FILER: $ {VOL} $ {} DR_FILER: $ {VOL} - $ {SnapMirrorMinute} $ {} SnapMirrorHour **" _snapmirror.conf >> $ {} DR_FILER
echo "$ {} PRI_FILER: $ {VOL} $ {} DR_FILER: $ {} VOL -----" >> $ {} DR_FILER _snapmirror_init.conf
SnapMirrorMinute = `expr $ SnapMirrorStagger SnapMirrorMinute + $` Read more ... (328 คำประมาณ 1:19 นาทีการอ่านเวลา)
บรรทัดคำสั่ง เริ่มต้นได้ , เริ่มต้น , NetApp , ติดตั้ง , SnapMirror
ฉันคิดว่ามันสำคัญมากที่จะบันทึกการตั้งค่าของการติดตั้งที่ดี ประการแรกก็อ้างอิงที่ดีถ้าคุณเคยต้องกลับไปและดูสิ่งที่สองก็เป็นวิธีที่ดีที่จะแสดงสิ่งที่คุณได้เป็นจริงที่ถูกต้องและว่าที่คุณคิดว่าการกำหนดค่าสิ่งที่ถูกต้องตั้งแต่เริ่มต้น!
มีเครื่องมือที่มีประโยชน์ให้ภายใน ONTAP ทำทิ้ง config ของทั้งเปรียบเทียบและเรียกคืน นี้จะถูก จำกัด การกำหนดค่าฐาน filers และไม่จำเป็นต้องรวมถึงพื้นที่เช่นการติดตั้งไดรฟ์
filer01> config
การใช้งาน:
ปรับแต่งโคลน <remote_user> <filer>
การตั้งค่า diff [-o <output_file>] <config_file1> [<config_file2>]
การตั้งค่าการถ่ายโอนข้อมูล [-f] [-V] <config_file>
การตั้งค่าการเรียกคืน [-V] <config_file>
คำสั่งสามารถทำได้ง่ายและตรงไปตรงมา คุณเริ่มต้นด้วยการทิ้งที่ออกจากการกำหนดค่า filer นี้โดยอัตโนมัติไป configs / ลง / etc จากที่นี่แล้วคุณสามารถปรับแต่งโคลนถ้าจำเป็นหรือเปรียบเทียบ (diff) ปรับแต่ง วิ่งต่างเป็นวิธีที่ดีมากของการเปรียบเทียบค่าระหว่าง 2 จุดในเวลาหากคุณไม่แน่ใจว่ามีอะไรเปลี่ยนแปลงหรือแม้กระทั่งถ้าคุณกำลังเปรียบเทียบปรับ filer และคุณคัดลอกไฟล์ config ระหว่าง 2 ระบบ (เช็คเอาต์ ไฟล์ NetApp คัดลอก ) และในที่สุดคุณยังสามารถใช้คุณลักษณะการเรียกคืนแม้ว่านี้อาจจะต้องรีบูตและอาจมีผลกระทบต่อ knockon กับสิ่งที่อาจจะหรืออาจจะไม่จำเป็นต้องใช้ในหลายไฟล์ config อื่น ๆ ภายใน / ฯลฯ
รวมคำสั่งที่มีประโยชน์มาก ผมใช้ส่วนใหญ่นี้สำหรับการสำรองข้อมูลของ configs filer และเปรียบเทียบระหว่างระบบที่คล้ายกัน (เช่นระดับประถมศึกษาและ DR) หรือแม้กระทั่งการเปรียบเทียบ configs เมื่อเวลาผ่านไป
VN: F [1.9.11_1134]
คะแนน: 10.0 / 10 (4 votes cast)
บรรทัดคำสั่ง กำหนดค่า , การถ่ายโอนข้อมูล Config , NetApp , ONTAP , ม Save Config
มันก็จะปรากฏขึ้นมาว่าฉันสามารถคัดลอกไฟล์เดียวหรือพื้นที่ขนาดใหญ่ได้โดยตรงจากคอนโซล NetApp? โดยทั่วไปคำตอบกลับมาคุณจะไม่สามารถใช้ RoboCopy หรือ rsync หรือเครื่องมืออื่นที่ย้ายไฟล์ แต่มีวิธีที่แน่นอนของการคัดลอกไฟล์ที่มีการโดยตรงจาก filer ตัวเองเป็นและมักจะเป็นวิธีที่มีประสิทธิภาพมากที่สุดของการทำมัน! แต่เหล่านี้จะไม่ได้คำสั่งที่ใช้งานง่ายที่สุดหรือเอกสารดี
อาจมีวิธีการอื่น ๆ และหากคุณมีสิ่งที่คุณได้ใช้ในอดีตหรือคุณทราบโปรดที่จะแบ่งปัน! วิธีการทั้งหมดไม่เหมาะสำหรับงานทั้งหมด แต่จะมีบุคคลที่เป็นของตัวเองใช้
ndmpcopy
นี้มักจะมองข้ามเป็นแฟ้ม / สำเนาคำสั่งโฟลเดอร์และมักจะใช้เพียงการโยกย้ายปริมาณทั้งหมดที่มี ในความเป็นจริงมันสามารถใช้ในการคัดลอกแต่ละโฟลเดอร์หรือ filers รอบ ๆ และดียิ่งขึ้นสามารถนำมาใช้เพื่อคัดลอกข้อมูลไปยัง filers อื่น ๆ ! ให้แน่ใจว่า NDMP ถูกเปิดใช้งานครั้งแรก (ndmpd บน) ไวยากรณ์ค่อนข้างง่าย ...
ndmpcopy / vol vol_source_name / โฟลเดอร์ / / file / vol / vol_dest_name / ไฟล์
เพียงแค่นี้ที่จะทำลายลงเรากำลังเลือกที่จะคัดลอก filer จาก "/ vol / vol_source_name / โฟลเดอร์" และเราต้องการที่จะคัดลอกลงใน "/ ปริมาตร / vol_dest_name" นี้ไม่ได้เป็นข้อ จำกัด มากเกินไปเราจะไม่ต้องเก็บเส้นทางเดียวกันและเรายังสามารถคัดลอกสิ่งที่เกี่ยวกับในปริมาณเดียวกัน (เช่นการคัดลอกสิ่งที่เป็น QTrees หากคุณต้องการ) คุณสามารถคัดลอกสิ่งจากปริมาณทั้งหมดเพื่อ QTree เดียวลงไปที่โฟลเดอร์เดียวทางลงในโครงสร้างไดเรกทอรี ข้อ จำกัด ที่แท้จริงเพียงอย่างเดียวคือคุณไม่สามารถใช้สัญลักษณ์แทนและคุณไม่สามารถเลือกหลายไฟล์ที่จะคัดลอก
หากคุณต้องการคัดลอกไฟล์จากที่หนึ่งไปยังอีก filer เราก็ขยายรูปแบบนี้ ...
ndmpcopy-Sa <user>: <pass>-da <user>: <pass> source_filer :/ vol / vol_source_name / โฟลเดอร์ / ไฟล์ destination_filer :/ vol / vol_dest_name / file Read more ... (1037 คำประมาณ 4:09 นาทีที่อ่านเวลา)
บรรทัดคำสั่ง cp , สำเนาแฟ้ม , เฟล็กซ์โคลน , mv , สำเนาแฟ้ม NetApp , ฉบับสำเนา
มีถูกหลายครั้งที่ฉันอยาก / จำเป็นในการย้าย vol0 ไปที่อื่น เพียงสัปดาห์สุดท้ายที่ฉันมีลูกค้าที่ต้องการที่จะทำลายการรวมรากและย้ายดิสก์บางรอบ แต่พวกเขาอยู่แล้วต้องการติดตั้ง filer และไม่ต้องการที่จะสูญเสียนี้
กระบวนการเป็นจริงง่ายมาก!
VN: F [1.9.11_1134]
คะแนน: 10.0 / 10 (ออกเสียงลงคะแนน 1)
อ่านข้อมูลเพิ่มเติม ... (292 คำประมาณ 1:10 นาทีการอ่านเวลา)
บรรทัดคำสั่ง บูต , bootvol , NetApp , ระบบ , sysvol , vol0
นี้เป็นสคริปต์ที่ผมเขียนเพื่อช่วยในการ failover เว็บไซต์อื่น โดยทั่วไปสคริปต์ SnapMirror ใช้งานได้ดีเพื่อนำมาวอลุ่มออนไลน์ แต่ถ้าทุกอย่างอยู่ใน VMware (และเป็น iSCSI ดังกล่าวจากภายใน VM), คุณต้องการเหล่านี้จะทำงานโดยอัตโนมัติอีกครั้งแมปและบันทึกที่คุณทำงานขาบาง!
ดีสคริปต์นี้จะทำงานจากเซิร์ฟเวอร์นั่งอยู่ในตำแหน่งที่ DR ที่มีการเข้าถึง filers หลัก ฉันได้พยายามที่จะทำให้สคริปต์แบบไดนามิกนี้สวยดังนั้นคุณสามารถวางไว้ในฐานะ filers หลักมากเท่าที่คุณต้องการ (สร้างไฟล์ 'primary_filers.txt' ด้วยชื่อ filer 1 ต่อบรรทัด) แต่ก็เพียงไม่ได้กับหนึ่ง filer บนด้าน DR นี้จะเป็นแก้ได้ง่าย แต่อีกครั้งเพียงการแสดงแนวคิดของวิธีการที่ง่ายเรียงลำดับของสิ่งนี้คือการบรรลุ
ความยากลำบากที่นี่ก็คือผล 'igroup แสดง' 'FCP' และ 'iSCSI' ซึ่งเป็นคำขอ 'igroup สร้าง' คุณใช้ 'f' และ 'i' ดังนั้นการเขียนสคริปต์อีกเล็กน้อยในช่วงกลางเพื่อแก้ปัญหานี้
สคริปต์นี้จะสร้างสคริปต์ (และถ้าทำงานเป็น cron เพียงเขียนทับมันในแต่ละครั้ง) ที่สามารถเรียกใช้เพื่อสร้าง iGroups ทั้งหมดเกี่ยวกับ filer DR ประโยชน์จริงๆถ้าคุณมีไม่กี่ LUNs ที่ต้องทำแผนที่ แม้การทำเช่นนี้ด้วยตนเองเป็นเวลา 10 คือปวด ส่วนใหญ่ลูกค้าของฉันมีอย่างน้อย 50 +
VN: F [1.9.11_1134]
คะแนน: 0.0 / 10 (0 votes cast)
อ่านข้อมูลเพิ่มเติม ... (396 คำประมาณ 1:35 นาทีการอ่านเวลา)
บรรทัดคำสั่ง failover , igroup สร้าง , NetApp , สคริปต์
ดังนั้นผมจึงช่วยให้ลูกค้าไม่กี่เดือนที่ผ่านมา (ก่อน SRM) สคริปต์ failover เว็บไซต์ที่สมบูรณ์ มันจะนำมาออนไลน์เว็บไซต์ DR ภายใน 30 นาที, คริปเป็นบิต clunky และต้องใหญ่ Re-design ดังนั้นฉันคิดว่าฉันโพสต์ต้นฉบับที่นี่
นี้ผมคิดว่าเป็นตัวอย่างที่ดีของวิธีการที่ยืดหยุ่นระบบเน็ตแอพอยู่ในที่ที่คุณอย่างรวดเร็วและสามารถติดตั้งเข้า SSH จากโฮสต์การจัดการและสคริปต์หัวใจของคุณให้พ้น! ทันทีที่ฉันได้รับการแขวนของ API ที่ฉันแน่ใจว่าจะมีข้อมูลมากมายที่มาพร้อมเกินไป
สคริปต์นี้จะนำไดรฟ์ทั้งหมดที่ออนไลน์บน filer DR, สิ่งที่เพิ่มเติมในปริมาณที่ถูกระบุว่าเป็น "_vm" ที่สิ้นสุด (ซึ่งเป็นแผนการตั้งชื่อที่ดีที่จะใช้สำหรับทุกปริมาณ VMware ต่อไป) จะได้รับการ re-แมปไปยัง ใหม่ igroup ที่คุณเลือกและมีการตั้งค่าสำหรับ DR ESX เซิร์ฟเวอร์
ฉันได้แก้ไขสคริปต์นี้เล็กน้อยนับเขียนมันจะลบชื่อ filer ดังนั้นฉันไม่คาดหวังให้ทำงานออกจากกล่องเช่นเดียวกับสคริปอื่น ๆ ของฉันมันหมายเพียงเพื่อเป็นตัวอย่างของวิธีการนี้สามารถทำได้
VN: F [1.9.11_1134]
คะแนน: 0.0 / 10 (0 votes cast)
อ่านข้อมูลเพิ่มเติม ... (321 คำประมาณ 1:17 นาทีการอ่านเวลา)
บรรทัดคำสั่ง แบ่ง , failover , NetApp , quiesce , SnapMirror
สคริปต์นี้จะช่วยให้การติดตามเมื่อ VM ถูกสร้างขึ้น ผมไม่แน่ใจว่าถ้ามันถูกต้องทางด้านเทคนิค แต่ที่ทำงานเกี่ยวกับเวลาที่สร้างจากแฟ้ม. vmsd อย่างไรก็ตามหลักการจะมีและควรจะทำงาน
VN: F [1.9.11_1134]
คะแนน: 0.0 / 10 (0 votes cast)
อ่านข้อมูลเพิ่มเติม ... (112 คำประมาณ 27 วินาทีอ่านเวลา)
บรรทัดคำสั่ง เครื่องเสมือนที่สร้างขึ้น , VMware
ซึ่งจะเป็นประโยชน์ในการติดตามสิ่งที่ผู้คนกำลังสร้าง รับดัชนีของขนาดเครื่องเสมือนและพื้นที่ว่างใน datastores (สำคัญมาก)
VN: F [1.9.11_1134]
คะแนน: 0.0 / 10 (0 votes cast)
อ่านข้อมูลเพิ่มเติม ... (121 คำประมาณ 29 วินาทีอ่านเวลา)
บรรทัดคำสั่ง ขนาด datastore , ขนาดเครื่องเสมือน , VMware
ฉันเกลียดบันทึก VM และในหลายกรณีคุณสามารถท้ายที่มีมากมายของพวกเขาซึ่งมีความยากที่จะลบหรือแม้กระทั่งการเรียกดูไดเรกทอรี สคริปต์นี้ฉันมีที่ทำงานอยู่บน cron ที่จะทำขึ้นที่ชัดเจนปกติ ในฐานะที่เป็นเรื่องของหลักสูตรฉันปิดการใช้งานการเข้าสู่ระบบ VM ตอนนี้ แต่ก็ยังสามารถเป็นสิ่งที่ท้าทายให้ชัดเจนขึ้นทุกไฟล์ที่บันทึก
VN: F [1.9.11_1134]
คะแนน: 0.0 / 10 (0 votes cast)
อ่านข้อมูลเพิ่มเติม ... (116 คำประมาณ 28 วินาทีอ่านเวลา)
บรรทัดคำสั่ง แฟ้มบันทึก , VMware , vmware.log