Date: มกราคม 5, 2023
ป้ายกำกับ:AWS
การสร้างคลัสเตอร์เซิร์ฟเวอร์ HA Oracle Database ใน AWS
บทนำ ในฐานะนักพัฒนาที่ได้รับมอบหมายให้สร้าง POC สำหรับแอปพลิเคชันที่สำคัญทางธุรกิจซึ่งต้องการอินสแตนซ์ Oracle ที่พร้อมใช้งานสูง (HA) ฉันจำเป็นต้องตั้งค่าคลัสเตอร์ Oracle EC2 HA ใน AWS EC2คุณจะเริ่มต้นที่ไหนถ้าคุณเป็นเหมือนพวกเราส่วนใหญ่ คุณจะใช้เวลาหลายชั่วโมงไปกับการค้นหางานต่อไป อ่านบทความ คู่มือการติดตั้ง เอกสารประกอบ และคำถามเกี่ยวกับ stack overflow คุณจะพบคำตอบที่เกือบจะถูกต้องมากมาย แต่คำตอบเหล่านั้นไม่เหมาะกับเวอร์ชันหรือสภาพแวดล้อมของคุณเลย ที่แย่กว่านั้นคือคุณลงหลุมกระต่ายและจบลงด้วยการเสียเวลาสร้างสภาพแวดล้อมที่ไม่ได้ผล
ฉันจะจัดโครงสร้างชุดบล็อกที่เน้นการตั้งค่าสภาพแวดล้อม HA สำหรับการพัฒนา Proof of Concepts โดยใช้ โซลูชั่น SIOS HA เช่น DataKeeper, LifeKeeper และ SIOS Protection Suite หากคุณมีความต้องการเร่งด่วนที่เรายังไม่ได้กล่าวถึง โปรดแจ้งให้เราทราบ แล้วเราจะย้ายการกำหนดค่าของคุณขึ้นไปใน Backlog
ขอบคุณที่อ่านสิ่งนี้ฉันหวังว่ามันจะทำให้ชีวิตคุณง่ายขึ้น ฉันมีรายการงานด้านล่างที่คุณสามารถดำเนินการได้หากคุณคุ้นเคยกับวิธีทำงานเหล่านั้นให้สำเร็จแล้ว ด้านล่างเป็นคำแนะนำทีละขั้นตอนสำหรับการทำงานแต่ละอย่าง
ฐานข้อมูล AWS HA Oracle SIOS Protection Suite สำหรับ Linux
- เปิดใช้ Oracle 2 อินสแตนซ์บน Linux
- ทำให้ Xwindows ทำงาน
- เชื่อมต่อกับอินสแตนซ์และติดตั้งดิสก์เพิ่มเติม
- ติดตั้งชุด AWS cli
- กำหนดค่าความปลอดภัย/การเข้าถึง
- สร้างรายการเส้นทางสำหรับ IP เสมือน
- ปิดใช้งานการตรวจสอบต้นทาง/ปลายทางสำหรับ ENI
- แก้ไข /etc/hosts
- กำหนดค่า Listener ด้วยชื่อโฮสต์ VIP
- ปิดใช้งาน SELinux
- ติดตั้ง SIOS Protection Suite สำหรับ Linux
- เริ่ม LifeKeeper
- เชื่อมต่อกับเซิร์ฟเวอร์ที่สอง
- สร้างเส้นทางการสื่อสาร
- สร้างทรัพยากร DataKeeper
- สร้างลำดับชั้นด้วยทรัพยากร Virtual IP
- สร้างทรัพยากรผู้ฟังของ Oracle
- สร้างลำดับชั้นด้วย Oracle Database
- สร้างลำดับชั้นด้วย EC2
- เปลี่ยนพฤติกรรมการปิดเครื่อง
- ทดสอบความล้มเหลว
1. เปิดใช้ Oracle 2 อินสแตนซ์บน Linux
ในบล็อกแรกนี้ เราจะตั้งค่าสภาพแวดล้อม HA ใน AWS สำหรับ Oracle Cluster โดยใช้ SIOS LifeKeeper สำหรับ Linuxซึ่งหมายถึงการนำข้อกำหนดเบื้องต้นทั้งหมดออกไปให้พ้นทาง ฉันจะใช้ aws-marketplace/Oracle Database 19.8.0 Enterprise Edition บน Oracle Linux 8 AMIการเปลี่ยนแปลงเหล่านี้บ่อยครั้งและอาจเป็นเรื่องยากที่จะค้นหาสิ่งที่ถูกต้องซึ่งตรงกับความต้องการของคุณAMI นี้เป็นความพยายามครั้งที่ 3 ของฉันเพราะการติดตั้งอะไรก็ตาม โดยเฉพาะอย่างยิ่งบางอย่างเช่น Oracle ในระบบคลาวด์นั้นทำได้ยากมาก เนื่องจากปัญหาเกี่ยวกับพื้นที่เก็บข้อมูล การออกใบอนุญาต การลงทะเบียน และความปลอดภัยAMI นี้ใช้งานได้จริงเพราะติดตั้ง Oracle บนอิมเมจแล้วตรวจสอบว่าเวอร์ชันของระบบปฏิบัติการและเวอร์ชัน Oracle DB ได้รับการสนับสนุนโดย SIOSที่สามารถตรวจสอบได้ ที่นี่ .
ตัวอย่างของฉันมี:
- VPC เดียว
- ภาคเดียว
- Availability Zone ที่แตกต่างกันสำหรับแต่ละเซิร์ฟเวอร์
- ไดรฟ์เพิ่มเติมสำหรับการจัดเก็บฐานข้อมูล
- 2 อินเทอร์เฟซเครือข่ายสำหรับแต่ละอินสแตนซ์ในเครือข่ายย่อยต่างๆ
- สร้างที่อยู่ IP แบบยืดหยุ่น 2 รายการและแนบหนึ่งรายการกับแต่ละเซิร์ฟเวอร์
ฉันกำลังแนบดิสก์เพิ่มเติมกับอินสแตนซ์สำหรับฐานข้อมูลและ NIC เพิ่มเติมสำหรับเส้นทางการสื่อสารที่ซ้ำซ้อนตรวจสอบให้แน่ใจว่า NIC ทั้งสองอยู่บนเครือข่ายย่อยที่แตกต่างกันนอกจากนี้ยังหมายความว่าคุณจะต้องสร้างและกำหนดที่อยู่ IP ของ Elastic ด้วยตนเองเพื่อเชื่อมต่อกับอินสแตนซ์
เชื่อมต่อกับอินสแตนซ์และติดตั้งดิสก์เพิ่มเติม ฉันใช้ Putty และ Xming เพื่อเชื่อมต่อกับอินสแตนซ์ของฉันหากใช้ Xming อย่าลืมเรียกใช้ Xlaunch ก่อนที่จะพยายามเชื่อมต่อ
หลังจากเปิดตัวอินสแตนซ์ คุณจะต้องแบ่งพาร์ติชันดิสก์ใหม่ง่ายที่สุดที่จะหาได้จาก[ ls /dev/disk/by-path ] :
ตอนนี้คุณต้องแบ่งพาร์ติชันดิสก์ด้วย fdisk :
จากนั้นสร้างระบบไฟล์ในพาร์ติชันใหม่ด้วย mkfs.xfs :
ตอนนี้เราจะเมานต์ระบบไฟล์ด้วย ภูเขา :
ในที่สุดเราจะเพิ่มรายการเพื่อเมานต์ดิสก์โดยอัตโนมัติใน fstab:
โปรดทราบว่าคุณไม่จำเป็นต้องเรียกใช้การติดตั้งสำหรับ OracleAMI ได้ดำเนินการดังกล่าวและสร้างฐานข้อมูลให้กับคุณฉันลบฐานข้อมูลที่กำหนดค่าไว้ล่วงหน้าด้วย AMI นี้ และสร้างฐานข้อมูลใหม่บนดิสก์ /data โดยใช้ DBCAฉันเริ่มต้นฐานข้อมูลและสร้างสคีมาและเพิ่มข้อมูลโดยใช้ SQLPLUSทั้งหมดนี้ต้องการให้ Xwindows ทำงาน
2. ทำให้ Xwindows ทำงาน
Xdisplay โดยใช้ Putty สามารถตั้งค่าได้โดยใช้ Xming สำหรับ Windowsติดตั้ง Xming ก่อนจากนั้นตรวจสอบให้แน่ใจว่าคุณเปิดใช้งานการส่งต่อ X11 ป้อน localhost:0.0 ในตำแหน่ง x display และพาธและ xming.exe executable ในไฟล์ x Authority สำหรับการแสดงผลในเครื่อง:
ที่ดูแลด้าน Windows แต่คุณยังต้องแก้ไขด้าน Linuxก่อนอื่นให้แก้ไข /etc/ssh/sshd_config และยกเลิกการแสดงความคิดเห็น “X11Forwarding yes”การค้นหาและเพิ่มคีย์ที่ถูกต้องใน Xauthority เป็นเรื่องถัดไปคุณอาจต้องเริ่มเซสชันใหม่หากคุณเปลี่ยนผู้ใช้แล้วหลังจากเข้าสู่ระบบในฐานะผู้ใช้ ec2 รายการ xauth ซึ่งจะให้คีย์ hex ที่คุณต้องเพิ่มในไฟล์ Xauthority ของคุณเปลี่ยนเป็นผู้ใช้ oracle: ซู – ออราเคิลจากนั้นเรียกใช้ xauth เพิ่ม $DISPLAY <hexkey คัดลอกมาจากรายการ xauth>ซึ่งเก็บข้อมูลไว้ในไฟล์ /home/oracle/.Xauthorityทางออก กลับไปที่ผู้ใช้ ec2
3. เชื่อมต่อกับอินสแตนซ์และติดตั้งดิสก์เพิ่มเติม
ฉันใช้ Putty และ Xming เพื่อเชื่อมต่อกับอินสแตนซ์ของฉันหากใช้ Xming อย่าลืมเรียกใช้ Xlaunch ก่อนที่จะพยายามเชื่อมต่อ
หลังจากเปิดตัวอินสแตนซ์ คุณจะต้องแบ่งพาร์ติชันดิสก์ใหม่ง่ายที่สุดที่จะหาได้จาก[ ls /dev/disk/by-path ] :
ตอนนี้คุณต้องแบ่งพาร์ติชันดิสก์ด้วย fdisk :
ต่อไปเราจะสร้างระบบไฟล์ในพาร์ติชันใหม่ด้วย mkfs.xfs :
ณ จุดนี้ เราต้องการเปลี่ยนชื่อ /u01 เป็นไดเร็กทอรี /oracle เพื่อให้เราสามารถติดตั้งระบบไฟล์ใหม่บน /u01 ซึ่งเป็นตำแหน่งที่ Oracle อยู่บนเซิร์ฟเวอร์ของเราที่สร้างด้วย AMI
สร้างจุดเมานต์ด้วย mkdir /u01 และเมานต์โวลุ่มด้วยเมานต์ย้ายไฟล์ไปยังดิสก์ใหม่ด้วย mv /oracle /u01 การดำเนินการนี้จะใช้เวลาสักครู่เนื่องจากมีข้อมูลประมาณ 11GB
ในที่สุดเราจะเพิ่มรายการเพื่อเมานต์ดิสก์โดยอัตโนมัติใน fstab:
โปรดทราบว่าคุณไม่จำเป็นต้องเรียกใช้การติดตั้งสำหรับ OracleAMI ได้ดำเนินการดังกล่าวและสร้างฐานข้อมูลให้กับคุณฉันเริ่มต้นฐานข้อมูล สร้างสคีมา และเพิ่มข้อมูลโดยใช้ SQLPLUS
4. ติดตั้งชุด AWS cli
เราต้องการชุด awscli ดังนั้นในขณะที่เรารูทดาวน์โหลดไฟล์ด้วย ขด “https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip” -o “awscliv2.zip”
แตกไฟล์ด้วย เปิดเครื่องรูด awscliv2.zip
ติดตั้งแอพพลิเคชั่นด้วย sudo ./aws/install
ตั้งค่าคีย์การเข้าถึงใน AWS ถัดไปโดยคลิกที่บัญชีของคุณที่ด้านบนขวาของคอนโซล จากนั้นเลือก ข้อมูลรับรองความปลอดภัย
คลิกที่สร้างคีย์การเข้าถึง:
จากนั้นคลิกที่ดาวน์โหลดไฟล์ .csv:
ถ่ายโอนไฟล์นี้ไปยังเซิร์ฟเวอร์ของคุณและกำหนดค่า AWS โดยใช้ ID คีย์และคีย์การเข้าถึงจากไฟล์ csv ของคุณด้วย aws กำหนดค่า สั่งการ:
ทดสอบว่ามันใช้งานได้กับสิ่งต่อไปนี้: aws –no-paginate –no-cli-pager ec2 อธิบายอินสแตนซ์
5. กำหนดค่าความปลอดภัย/การเข้าถึง
อันดับแรก ฉันเพิ่มผู้ใช้ Oracle ในกลุ่มรูทและวงล้อโดยให้สิทธิ์หลอก ( Usermod -aG ล้อ oracle) .สิ่งนี้จะทำให้ชีวิตง่ายขึ้นโดยทำให้บัญชี Oracle เป็นบัญชี lkadminฉันดาวน์โหลด sps.img และไฟล์ลิขสิทธิ์ลงบนเซิร์ฟเวอร์ทั้งสองเครื่อง
ก่อนติดตั้งซอฟต์แวร์ มีขั้นตอนที่จำเป็นเพิ่มเติมอีกสองสามขั้นตอนที่ต้องทำขั้นแรกให้กำหนดค่ากลุ่มความปลอดภัยสำหรับเซิร์ฟเวอร์เพื่อให้สามารถสื่อสารได้โดยเปิดพอร์ต TCP 5900-59010 เปิดพอร์ต TCP 81 และ 82 ด้วย ตรวจสอบให้แน่ใจว่าพอร์ตเปิดอยู่สำหรับ Virtual IP
6. สร้างรายการเส้นทางสำหรับ IP เสมือน
ตารางเส้นทางจะต้องได้รับการอัพเดตเพื่อให้ Virtual IP ของคลัสเตอร์ทำงานได้ในการกำหนดค่าคลัสเตอร์หลายเครือข่ายย่อยนี้ Virtual IP จำเป็นต้องอยู่นอกช่วงของ CIDR ที่จัดสรรให้กับ VPC ของคุณกำหนดเส้นทางใหม่ที่จะส่งทราฟฟิกไปยัง Virtual IP ของคลัสเตอร์ (172.30.0.101) ไปยังโหนดคลัสเตอร์หลัก (Oracle1) จากแดชบอร์ด VPC เลือกตารางเส้นทาง คลิกแก้ไขเพิ่มเส้นทางสำหรับ “172.30.0.101/32” โดยมีปลายทางของ Elastic Network Interface (ENI) หลักบนเซิร์ฟเวอร์หลัก:
7. ปิดใช้งานการตรวจสอบต้นทาง/ปลายทางสำหรับ ENI's
ภายใต้ Network Interfaces ให้เลือกทีละอินเทอร์เฟซ จากนั้นภายใต้ Actions ให้เลือก change source/dest
ตราบใดที่คุณไม่ได้รับข้อผิดพลาดในการรับรองความถูกต้อง แสดงว่ามีการติดตั้งและกำหนดค่าอย่างถูกต้อง
ยกเลิกการเลือก เปิดใช้งาน กล่อง:
ทำซ้ำสำหรับอินเทอร์เฟซทั้งหมด
8. แก้ไข /etc/hosts
เว้นแต่คุณจะมีการตั้งค่าเซิร์ฟเวอร์ DNS อยู่แล้ว คุณจะต้องสร้างรายการไฟล์โฮสต์บนเซิร์ฟเวอร์ทั้งสองเพื่อให้สามารถแก้ไขชื่อซึ่งกันและกันได้อย่างถูกต้อง
9. กำหนดค่า Listener ด้วยชื่อโฮสต์ VIP
แก้ไขหรือสร้างไฟล์ $ORACLE_HOME/network/admin/listener.ora เพื่อชี้ไปที่ oracle-vip:
10. ปิดใช้งาน SELinux
แก้ไขไฟล์ /etc/sysconfig/selinux และตั้งค่า “SELINUX=disabled”
รีบูทเซิร์ฟเวอร์หาก ณ จุดนี้เซิร์ฟเวอร์ไม่สำรองข้อมูล เป็นไปได้ว่าคุณปล่อยการตั้งค่า SELINUX ไว้ที่อนุญาตและตั้งค่า SELINUXTYPE เป็นปิดใช้งาน ซึ่งจะทำให้อินสแตนซ์หยุดทำงานเพียงยกเลิกการเชื่อมโยงไดรฟ์ข้อมูลใน AWS จากอินสแตนซ์ของคุณแล้วติดตั้งด้วย เมานต์ -o rw, nouuid {อุปกรณ์} {เมานต์ไดเร็กทอรี} คำสั่งไปยังอินสแตนซ์การทำงานใหม่หรือที่มีอยู่แก้ไขไฟล์ /{mount directory]/etc/sysconfig/selinux และแก้ไขข้อผิดพลาดบันทึกไฟล์ ยกเลิกการต่อเชื่อมและยกเลิกการเชื่อมโยงไดรฟ์ข้อมูลกับอินสแตนซ์นี้ และแนบกลับเข้าไปใหม่กับอินสแตนซ์เก่า
11. ติดตั้ง SIOS Protection Suite สำหรับ Linux
ต่อไป ในฐานะรูท ฉันได้ติดตั้งชุดป้องกัน SIOS โดยการเมานต์ไฟล์อิมเมจด้วย เมานต์ /home/ec2-user/sps.img /mnt/ -t iso9660 -o วนซ้ำ . เรียกใช้การตั้งค่าด้วย /mnt/ตั้งค่า :
ภายใต้ LifeKeeper Authentication ฉันเลื่อนลงไปที่กลุ่ม lkadmin กด Enter และเพิ่ม oracle ลงในกลุ่ม 'lkadmin':
เลือกตกลงแล้วแท็บเสร็จสิ้นและกด Enterเลื่อนถัดไปเพื่อติดตั้งไฟล์รหัสใบอนุญาตและกด Enter:
จากที่นี่ พิมพ์ตำแหน่งและชื่อไฟล์ใบอนุญาตของคุณ:
ต่อไป ฉันเลือก Recovery Kit Selection Menu และกด Enter:
ที่นี่ฉันเลือกเครือข่าย:
กดปุ่มสเปซบาร์เพื่อเลือก LifeKeeper Recovery Kit สำหรับ EC2 แท็บเสร็จสิ้นแล้วกด Enterต่อไป ฉันเลือกเมนูฐานข้อมูล เลื่อนลงและกดสเปซบาร์บน LifeKeeper Oracle RDBMS Recovery Kit:
แท็บเสร็จสิ้นหรือกด D แล้วเลื่อนลงไปที่ Storage แล้วกด Enterต่อไปฉันกดสเปซบาร์แล้วเลือก DataKeeper สำหรับ Linux:
แท็บเสร็จสิ้นแล้วกด Enter หรือกด d เพื่อสำรองข้อมูลไปที่ Recovery Kit Selection จากนั้นกดแท็บเสร็จสิ้นหรือกด D เพื่อถอยออกจากเมนูการกำหนดค่าหลัก:
ตรวจสอบให้แน่ใจว่าได้เลือก LifeKeeper Startup After Install แล้วเลือกแท็บสุดท้ายเสร็จหรือกด d แล้วเราจะได้หน้าจอยืนยันการติดตั้ง:
ที่นี่กด Enter หรือ y และการติดตั้งจะเริ่มขึ้น
12. เริ่ม LifeKeeper
เริ่มต้น LifeKeeper GUI ด้วย /opt/LifeKeeper/bin/lkGUIapp หากล้มเหลว อาจเป็นเพราะคุณไม่มีหมายเลขวิเศษสำหรับบัญชีที่คุณลงชื่อเข้าใช้ไฟล์ .Xauthorityฉันเข้าสู่ระบบด้วย oracle แล้วทำ sudo -i เพื่อไปที่รูทดังนั้นหาก gui ของฉันไม่โหลด ฉันจะคัดลอกไฟล์ /home/oracle/.Xauthority ไปที่ /root :
ที่นี่ฉันเข้าสู่ระบบในฐานะ oracle:
13. เชื่อมต่อกับเซิร์ฟเวอร์ที่สอง
จากนั้นคลิกที่ปุ่มเชื่อมต่อคลัสเตอร์
เข้าสู่ระบบด้วย oracle:
14. สร้างเส้นทางการสื่อสาร
คลิกที่ปุ่มสร้างเส้นทางการสื่อสาร :
หากเกิดข้อผิดพลาด ตรวจสอบให้แน่ใจว่าไฟร์วอลล์และ iptables ถูกปิดใช้งานตีต่อไป:
ตีต่อไป:
เลือกที่อยู่ IP แรกของคุณแล้วกดถัดไป:
เลือก IP ระยะไกล:
ตีต่อไป:
กดสร้าง:
ตีต่อไป:
ตีเสร็จแล้ว: ต่อไปเราต้องสร้างเส้นทางการสื่อสารที่สองโดยทำซ้ำขั้นตอนที่ 14 กับที่อยู่สำรอง
เมื่อสร้างเส้นทางทั้งสองสำเร็จแล้ว เซิร์ฟเวอร์ควรเป็นสีเขียว
15. สร้างทรัพยากร DataKeeper
คลิกที่ปุ่มสร้างลำดับชั้นของทรัพยากร:
เลือกการจำลองข้อมูลและกดถัดไป:
กดปุ่มถัดไป (Intelligent หมายความว่าหลังจากเกิดข้อผิดพลาด คุณต้องดำเนินการย้อนกลับด้วยตนเอง):
ตีต่อไป:
เลือกเซิร์ฟเวอร์หลักของคุณและกดถัดไป:
เลือกจำลองระบบไฟล์ที่มีอยู่แล้วกดถัดไป:
เลือกจุดเชื่อมต่อที่มีอยู่แล้วกดถัดไป:
สร้าง การจำลองข้อมูล แท็กทรัพยากร และกดถัดไป:
เลือกแท็กทรัพยากรระบบไฟล์และกดถัดไป:[1]
เพื่อประสิทธิภาพสูงสุด ควรวางไฟล์บิตแมปไว้บนวอลุ่มชั่วคราว เพื่อวัตถุประสงค์ในการทดสอบ สามารถวางบิตแมปบนดิสก์ OS ดังที่แสดงไว้ด้านบน เลือกตำแหน่งไฟล์บิตแมปและกดถัดไป:
เลือกไม่สำหรับ เปิดใช้งานการจำลองแบบอะซิงโครนัส และกดถัดไป:
เลือกเซิร์ฟเวอร์เป้าหมายและกดถัดไป:
เลือกประเภท Switchback และกดถัดไป:
เลือกลำดับความสำคัญของเทมเพลตแล้วกดถัดไป:
เลือก Target Priority แล้วกดถัดไป:
ตีต่อไป:
เลือก Target Disk แล้วกด Next:
ตีต่อไป:
ตีต่อไป:
เลือกปลายทางเครือข่ายที่คุณต้องการใช้สำหรับการจำลองแบบและกดถัดไป:
เลือกจุดเมานต์แล้วกดถัดไป:
เลือกแท็กทรัพยากรและกดถัดไป:
ตีเสร็จ:
ตีเสร็จ:
หากคุณคลิกที่ /u01 คุณจะเห็นปริมาณการซิงค์:
16. สร้างลำดับชั้นด้วยทรัพยากร Virtual IP
คลิกที่ปุ่มสร้างทรัพยากร:
เลือก IP และกดถัดไป:
เลือกประเภท Switchback และกดถัดไป:
เลือกเซิร์ฟเวอร์หลักและกดถัดไป:
ป้อนที่อยู่ IP เสมือนจากขั้นตอนที่ 6 และกดถัดไป:
ป้อน subnet mask สำหรับ VIP แล้วกด Next:
ป้อนอินเทอร์เฟซเครือข่ายและกดถัดไป
ป้อนแท็กทรัพยากรและกดถัดไป:
หลังจากสร้างสำเร็จให้กดต่อไป:
เลือกเซิร์ฟเวอร์เป้าหมายและกดถัดไป:
เลือกประเภทการสลับกลับและกดถัดไป:
เลือกลำดับความสำคัญและกดถัดไป:
เลือกลำดับความสำคัญและกดถัดไป:
เมื่อเสร็จสิ้นให้กดต่อไป:
ตีต่อไป:
เลือกเน็ตมาสก์ที่เหมาะสมแล้วกดถัดไป:
เลือกอินเทอร์เฟซและกดถัดไป:
เลือกแท็กทรัพยากรและขยายการกด:
ตีเสร็จเมื่อสำเร็จ:
กดเสร็จสิ้นหลังจากการตรวจสอบ
17. สร้างทรัพยากร Oracle Listener
ตรวจสอบให้แน่ใจว่าฐานข้อมูลและผู้ฟังกำลังทำงานก่อนที่จะพยายามกำหนดค่าทรัพยากรเหล่านี้ใน LifeKeeperคลิกที่ปุ่มสร้างทรัพยากร:
เลือก Oracle Database Listener แล้วกดถัดไป:
เลือกเซิร์ฟเวอร์หลักและกดถัดไป:
ป้อนเส้นทางไฟล์การกำหนดค่า Listener และชื่อไฟล์ แล้วกดถัดไป:
ตีต่อไป:
ป้อนเส้นทางสำหรับ Listener Executables และกดถัดไป:
เลือกระดับการป้องกันและกดถัดไป:
เลือกระดับการกู้คืนและกดถัดไป:
เลือกที่อยู่ IP ที่เชื่อมโยงกับ Listener หากจำเป็น และกดถัดไป:
ป้อนชื่อแท็กผู้ฟังและกดสร้าง:
ตีต่อไป:
กดยอมรับค่าเริ่มต้นเพื่อสร้างทรัพยากรบนเซิร์ฟเวอร์ที่สองของคุณ:
คลิกที่เสร็จสิ้น:
คลิกที่เสร็จสิ้นและขยาย LSNR และ /u01:
18. สร้างลำดับชั้นด้วยฐานข้อมูล Oracle
คลิกที่ปุ่มสร้างลำดับชั้นของทรัพยากร :
เลือก Oracle Database แล้วกด Next:
เลือกประเภท Switchback และกดถัดไป:
เลือกเซิร์ฟเวอร์และกดถัดไป:
เลือกชื่อฐานข้อมูลและกดถัดไป (หากคุณได้รับข้อผิดพลาดไม่พบโฮมไดเร็กทอรี ตรวจสอบให้แน่ใจว่าฐานข้อมูลกำลังทำงานอยู่):
ป้อนชื่อผู้ใช้ sysdba และกดถัดไป:
ป้อนรหัสผ่านสำหรับบัญชีและกดถัดไป:
เลือก Oracle Listener และกดถัดไป:
กดสร้าง:
เมื่อสร้างสำเร็จให้เลือก ถัดไป:
เลือกยอมรับค่าเริ่มต้น:
เลือกเสร็จสิ้น:
ตีเสร็จ: ขยายต้นไม้เพื่อดูทรัพยากรทั้งหมด:
19. สร้างลำดับชั้นด้วย EC2
คลิกที่ปุ่มสร้างลำดับชั้นของทรัพยากร :
เลือก Amazon EC2 แล้วกด Next>
เลือกอัจฉริยะแล้วกดถัดไป>
เลือกเซิร์ฟเวอร์หลักของคุณและกด Next>
เลือกประเภททรัพยากร EC2 (เราใช้คลัสเตอร์แบ็กเอนด์สำหรับตัวอย่างนี้) แล้วกด Next>
เลือกทรัพยากร IP และเลือก ถัดไป>
เลือกชื่อแท็กทรัพยากร EC2 แล้วกดสร้าง
เมื่อสร้างทรัพยากรสำเร็จ ให้กด Next> หลังจากนั้นไม่กี่วินาที ตัวช่วยสร้างการขยายล่วงหน้าจะปรากฏขึ้นกดยอมรับค่าเริ่มต้น:
เมื่อการตรวจสอบเสร็จสิ้นให้กดยอมรับค่าเริ่มต้นอีกครั้ง:
ตี เสร็จสิ้น และหลังจากการยืนยันกด เสร็จสิ้น:
การกำหนดค่าเสร็จสมบูรณ์ตอนนี้เราสามารถทดสอบการเฟลโอเวอร์ได้แล้ว
20. เปลี่ยนพฤติกรรมการปิดเครื่อง
ตามค่าเริ่มต้น LifeKeeper จะไม่ ล้มเหลว ทรัพยากรถ้าคุณเพียงแค่ปิดหรือรีบูตเซิร์ฟเวอร์ หากคุณต้องการย้ายปริมาณงานก่อนที่จะปิดเซิร์ฟเวอร์ คุณควรย้ายทรัพยากรไปยังเซิร์ฟเวอร์สแตนด์บายด้วยตนเองก่อนที่จะปิดโหนดที่ใช้งานอยู่ อย่างไรก็ตาม คุณอาจต้องการเปลี่ยนลักษณะการทำงานเริ่มต้นเพื่ออำนวยความสะดวกในการทดสอบ ที่ถูกควบคุมโดยการเปลี่ยนกลยุทธ์การปิดระบบที่แสดงด้านล่าง
คลิกขวาที่เซิร์ฟเวอร์หลักของคุณและเลือกคุณสมบัติ:
ภายใต้แท็บทั่วไปให้เปลี่ยนกลยุทธ์การปิดเครื่องเป็นสลับทรัพยากรแล้วกดใช้:
จากนั้นเลือกเซิร์ฟเวอร์รองจากเซิร์ฟเวอร์แบบเลื่อนลงและตรวจสอบการเปลี่ยนแปลงการตั้งค่า: กดตกลง:
21. ทดสอบความล้มเหลว
ฉันกำลังเรียกใช้ lkGUIapp จากเซิร์ฟเวอร์รองหากคุณอยู่บนเซิร์ฟเวอร์หลัก ให้ออกจาก LifeKeeper GUI และเรียกใช้จากเซิร์ฟเวอร์รอง
ขยายลำดับชั้นทรัพยากรทั้งหมดและเปิดเซสชัน SSH ไปยังเซิร์ฟเวอร์หลักของคุณ
ฉันยังใช้ ping -i 5 กับ oracle-vip:
ปิดเซิร์ฟเวอร์หลัก:
คุณสามารถเห็นในกรณีของฉัน IP หยุดตอบสนองเป็นเวลา < 25 วินาทีฉันพลาด 4 ปิง 20-23 ในช่วงเวลา 5 วินาทีตอนนี้ทุกอย่างใช้งานได้บนเซิร์ฟเวอร์สำรองเนื่องจากหลักของเรายังคงไม่ทำงาน เราจึงได้รับคำเตือนเกี่ยวกับลำดับชั้น
เมื่อคุณเรียกใช้เซิร์ฟเวอร์หลักหากคุณปล่อยให้การสลับกลับเป็นอัจฉริยะ คุณจะต้องนำบริการขึ้นมาบนเซิร์ฟเวอร์หลักด้วยตนเองตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์หลักเป็นแบบ InSync ก่อนที่จะพยายามให้บริการ:
คลิกขวาที่ปุ่มสแตนด์บายสำหรับ cdb1 แล้วเลือก In Service…
คลิกในบริการ
กด เสร็จสิ้น
จะใช้เวลาสองสามนาทีในการซิงค์ดิสก์อีกครั้ง แต่ในที่สุดก็จะซิงค์
หลังจากกู้คืนทุกอย่างแล้ว ขณะนี้เรามีฐานข้อมูล HA Oracle ใน AWS ที่พร้อมสำหรับการพัฒนา
ทำซ้ำโดยได้รับอนุญาตจาก SIOS