SIOS SANless clusters

SIOS SANless clusters High-availability Machine Learning monitoring

  • Home
  • Products
    • SIOS DataKeeper for Windows
    • SIOS Protection Suite for Linux
  • การทดสอบอาหารสัตว์
  • ข่าวสารและกิจกรรม
  • ทำให้เข้าใจง่ายเซิร์ฟเวอร์คลัสเตอร์
  • เรื่องราวความสำเร็จ
  • ติดต่อเรา
  • English
  • 中文 (中国)
  • 中文 (台灣)
  • 한국어
  • Bahasa Indonesia
  • ไทย

เอกสารทางเทคนิค: การใช้งานความพร้อมใช้งานสูงในสภาพแวดล้อม Linux

เมษายน 11, 2019 by Jason Aw Leave a Comment

เอกสารทางเทคนิค: การนำความพร้อมใช้งานสูงมาใช้ในสภาพแวดล้อม Linux โดยไม่ทำให้ประสิทธิภาพหรือความปลอดภัยลดลง

การใช้โซลูชันโอเพนซอร์ซสามารถลดค่าใช้จ่ายด้านทุนได้อย่างมากโดยเฉพาะค่าธรรมเนียมการออกใบอนุญาตซอฟต์แวร์ แต่องค์กรส่วนใหญ่ก็เข้าใจว่าซอฟต์แวร์โอเพ่นซอร์สต้องการ "การดูแลและให้อาหาร" มากกว่าซอฟต์แวร์เชิงพาณิชย์ซึ่งบางครั้งอาจทำให้ค่าใช้จ่ายในการดำเนินงานเพิ่มขึ้นสูงกว่าการประหยัดที่มีศักยภาพใน CapEx เอกสารทางเทคนิคนี้สำรวจว่าองค์กรต่างๆสามารถลดทั้ง CapEx และ OpEx ในการใช้งานแอพพลิเคชั่นที่มีความพร้อมใช้งานสูงในสภาพแวดล้อม Linux โดยไม่ทำให้ประสิทธิภาพหรือความปลอดภัยลดลง

เรียนรู้เพิ่มเติมเกี่ยวกับ SIOS Protection Suite สำหรับ Linux ซึ่งมีองค์ประกอบทั้งหมดที่คุณต้องการในการสร้างคลัสเตอร์ Linux ที่มีความพร้อมใช้งานสูงอย่างรวดเร็วและง่ายดาย

ดาวน์โหลดเอกสารข้อมูลทางเทคนิคบนกระดาษสีขาว: ปรับใช้ความพร้อมใช้งานสูงในสภาพแวดล้อม Linux

Filed Under: ข่าวสารและกิจกรรม Tagged With: ลินุกซ์

เอกสารทางเทคนิค: การใช้งานความพร้อมใช้งานสูงในสภาพแวดล้อม Linux

เมษายน 11, 2019 by Jason Aw Leave a Comment

การปรับใช้ความพร้อมใช้งานสูงในสภาพแวดล้อม Linux โดยไม่ทำให้ประสิทธิภาพหรือความปลอดภัยลดลง

เอกสารทางเทคนิค: การนำความพร้อมใช้งานสูงมาใช้ในสภาพแวดล้อม Linux โดยไม่ทำให้ประสิทธิภาพหรือความปลอดภัยลดลง

เอกสารทางเทคนิค: การใช้งานความพร้อมใช้งานสูงในสภาพแวดล้อม Linux
เอกสารทางเทคนิค: การใช้งานความพร้อมใช้งานสูงในสภาพแวดล้อม Linux

การใช้โซลูชันโอเพนซอร์ซสามารถลดค่าใช้จ่ายด้านทุนได้อย่างมากโดยเฉพาะค่าธรรมเนียมการออกใบอนุญาตซอฟต์แวร์ แต่องค์กรส่วนใหญ่ก็เข้าใจว่าซอฟต์แวร์โอเพ่นซอร์สต้องการ "การดูแลและให้อาหาร" มากกว่าซอฟต์แวร์เชิงพาณิชย์ซึ่งบางครั้งอาจทำให้ค่าใช้จ่ายในการดำเนินงานเพิ่มขึ้นสูงกว่าการประหยัดที่มีศักยภาพใน CapEx เอกสารทางเทคนิคนี้สำรวจว่าองค์กรต่างๆสามารถลดทั้ง CapEx และ OpEx ในการใช้งานแอพพลิเคชั่นที่มีความพร้อมใช้งานสูงในสภาพแวดล้อม Linux โดยไม่ทำให้ประสิทธิภาพหรือความปลอดภัยลดลง

เรียนรู้เพิ่มเติมเกี่ยวกับ SIOS Protection Suite สำหรับ Linux ซึ่งมีองค์ประกอบทั้งหมดที่คุณต้องการในการสร้างคลัสเตอร์ Linux ที่มีความพร้อมใช้งานสูงอย่างรวดเร็วและง่ายดาย

ดาวน์โหลดเอกสารข้อมูลทางเทคนิคบนกระดาษสีขาว: ปรับใช้ความพร้อมใช้งานสูงในสภาพแวดล้อม Linux

Filed Under: ข่าวสารและกิจกรรม Tagged With: ลินุกซ์

คำแนะนำแบบทีละขั้นสำหรับ SQL Server สำหรับ Linux

มกราคม 9, 2019 by Jason Aw Leave a Comment

SQL Server สำหรับ Linux - ตัวอย่างแบบสาธารณะพร้อมใช้งานแล้ว

ทีละขั้นตอน: SQL Server v.Next Linux ความพร้อมใช้งานสูง – การแสดงตัวอย่างสาธารณะ #azure #sql #sanless

เมื่อต้นปีนี้ Microsoft ประกาศว่าพวกเขาจะเปิดตัว SQL Server สำหรับ Linux รุ่นหนึ่ง  วันนี้ฉันรู้สึกตื่นเต้นที่ได้ทราบว่าในที่สุดไมโครซอฟท์ได้ประกาศตัวอย่างสาธารณะของสิ่งที่พวกเขากำลังเรียกใช้ SQL Server v.Next และมันพร้อมใช้งานสำหรับทั้งระบบปฏิบัติการ Linux และ Windows  ข้อมูลเพิ่มเติมพร้อมกับลิงค์ดาวน์โหลดและเอกสารประกอบอยู่ที่นี่:

https://www.microsoft.com/en-us/sql-server/sql-server-vnext-including-Linux

SQL Server สำหรับ Linux

ในบทความนี้ฉันจะไม่เพียงแสดงวิธีการปรับใช้ Linux VM ใน Azure ที่ใช้ SQL Server แต่ยังรวมถึงวิธีการกำหนดค่าคลัสเตอร์ล้มเหลว 2 โหนดเพื่อให้พร้อมใช้งานสูง! และไม่มีการใช้ที่เก็บข้อมูลที่ใช้ร่วมกัน (หรือที่รู้จักว่ากลุ่ม "ไร้สาระ" หรือ "ไม่มีการแบ่งปัน") ผลลัพธ์ที่ได้จะเป็น SQL Server 2 โหนดสำหรับคลัสเตอร์ Linux (รวมถึงเซิร์ฟเวอร์พยาน) ใน Microsoft Azure IaaS (โครงสร้างพื้นฐานเป็นบริการ)  คำแนะนำประกอบด้วยภาพหน้าจอคำสั่งเชลล์และตัวอย่างโค้ดตามความเหมาะสม  ฉันคิดว่าคุณค่อนข้างคุ้นเคยกับ Microsoft Azure และมีบัญชี Azure ที่มีการสมัครรับข้อมูลที่เกี่ยวข้องอยู่แล้ว  ถ้าไม่คุณสามารถสมัครใช้งานบัญชีฟรีวันนี้  ฉันจะสมมติว่าคุณมีทักษะการบริหารระบบพื้นฐานของ linux เช่นเดียวกับเข้าใจแนวคิดการทำคลัสเตอร์ failover พื้นฐานเช่น IP เสมือนจริงเป็นต้น คำเตือน: สีฟ้าเป็นเป้าหมายที่เคลื่อนไหวอย่างรวดเร็ว  และที่นี่ฉันกำลังทำงานกับรุ่นตัวอย่างสาธารณะของ SQL Server สำหรับ Linux  ดังนั้นคุณสมบัติ / หน้าจอ / ปุ่มจะถูกเปลี่ยนแปลงก่อนที่จะมีการเปิดตัว SQL v.Next อย่างเป็นทางการดังนั้นประสบการณ์ของคุณอาจแตกต่างจากที่คุณเห็นด้านล่างเล็กน้อย  ในขณะที่คู่มือนี้จะแสดงวิธีทำให้ฐานข้อมูล SQL Server สำหรับ Linux พร้อมใช้งานสูงคุณสามารถปรับข้อมูลและกระบวนการนี้เพื่อปกป้องแอปพลิเคชันหรือฐานข้อมูลอื่น ๆ อย่างที่ฉันได้เขียนไว้ก่อนหน้านี้ (ตัวอย่าง MySQL) นี่เป็นขั้นตอนระดับสูงในการสร้างฐานข้อมูล MySQL ที่มีอยู่ภายใน Microsoft Azure IaaS:

  1. สร้างกลุ่มทรัพยากร
  2. สร้างเครือข่ายเสมือน
  3. สร้างบัญชีหน่วยเก็บข้อมูล
  4. สร้างเครื่องเสมือนในชุดความพร้อมใช้งาน
  5. ตั้งค่า VM Static IP Addresses
  6. เพิ่มดิสก์ข้อมูลลงในโหนดคลัสเตอร์
  7. สร้างกฎความปลอดภัยขาเข้าเพื่ออนุญาตการเข้าถึง VNC
  8. การกำหนดค่า Linux OS
  9. ติดตั้งและกำหนดค่าเซิร์ฟเวอร์ SQL
  10. ติดตั้งและกำหนดค่าคลัสเตอร์
  11. สร้างเครื่องมือสร้างสมดุลภายใน
  12. ทดสอบการเชื่อมต่อของคลัสเตอร์

ภาพรวม

บทความนี้จะอธิบายวิธีการสร้างคลัสเตอร์ภายในภูมิภาค Azure เดียว  โหนดคลัสเตอร์ (sql-linux1, sql-linux2 และเซิร์ฟเวอร์พยาน) จะอยู่ในชุดความพร้อมใช้งาน (Fault Domains ที่แตกต่างกัน 3 รายการและอัปเดตโดเมน) ขอบคุณ Azure Resource Manager (ARM) ใหม่ เราจะสร้างทรัพยากรทั้งหมดโดยใช้ Azure Resource Manager ใหม่ การกำหนดค่าจะมีลักษณะดังนีทะเลสีลินุกซ์ sqlserver้: จะใช้ที่อยู่ IP ต่อไปนี้:

  • sql-linux1: 10.0.0.7
  • sql-linux2: 10.0.0.8
  • sql -itness: 10.0.0.9
  • เสมือน /” ลอย” IP: 10.0.0.199
  • พอร์ต SQL Server: 1433

สร้างกลุ่มทรัพยากร

ขั้นแรกสร้างกลุ่มทรัพยากร  กลุ่มทรัพยากรของคุณจะจบลงด้วยการมีวัตถุต่าง ๆ ที่เกี่ยวข้องกับการปรับใช้คลัสเตอร์ของเรา: เครื่องเสมือนบัญชีจัดเก็บข้อมูล ฯลฯ  ที่นี่เราจะเรียกกลุ่มทรัพยากร "sql-cluster" ที่สร้างขึ้นใหม่ของเรา SQL ทรัพยากรกลุ่มที่ 1 ระวังเมื่อเลือกภูมิภาคของคุณ  ทรัพยากรทั้งหมดของคุณจะต้องอยู่ในภูมิภาคเดียวกัน  ที่นี่เราจะปรับใช้ทุกอย่างในภูมิภาค "West US": SQL-ทรัพยากร group2

สร้างเครือข่ายเสมือน (VNet)

ถัดไปหากคุณยังไม่มีให้สร้างเครือข่ายเสมือน  เครือข่ายเสมือนเป็นเครือข่ายแยกภายในคลาวด์ Azure ที่ทุ่มเทให้กับคุณ  คุณสามารถควบคุมสิ่งต่าง ๆ เช่นบล็อกที่อยู่ IP และซับเน็ตการกำหนดเส้นทางนโยบายความปลอดภัย (เช่นไฟร์วอลล์) การตั้งค่า DNS และอื่น ๆ  คุณจะเปิดตัวเครื่องเสมือน Azure Iaas (VMs) ในเครือข่ายเสมือนของคุณ บัญชี Azure ของฉันมี VNet (10.0.0.0/16) ที่มีอยู่ชื่อ "เครือข่ายคลัสเตอร์" ที่ฉันจะใช้ในคู่มือนี้  การสร้าง VNet นั้นตรงไปตรงมาและฉันได้กล่าวถึงการสร้างไว้ที่นี่หากคุณต้องการทบทวน

สร้างบัญชีหน่วยเก็บข้อมูล

ก่อนที่คุณจะจัดเตรียมเครื่องเสมือนใด ๆ คุณจะต้องมีบัญชีที่เก็บข้อมูลเพื่อจัดเก็บ SQL-จัดเก็บ account1 ถัดไปตั้งชื่อบัญชีที่เก็บข้อมูลใหม่ของคุณ  ชื่อบัญชีที่จัดเก็บข้อมูลต้องไม่ซ้ำกันใน * ALL * ของ Azure  (ทุกวัตถุที่คุณจัดเก็บใน Azure Storage มีที่อยู่ URL ที่ไม่ซ้ำกัน ชื่อบัญชีพื้นที่เก็บข้อมูลเป็นโดเมนย่อยของที่อยู่นั้น) ในตัวอย่างนี้ฉันเรียกบัญชีเก็บข้อมูลของฉัน“ sqllinuxcluster” แต่คุณจะต้องเลือกสิ่งที่แตกต่างเมื่อคุณตั้งค่าของคุณเอง เลือกประเภทการจัดเก็บตามความต้องการและงบประมาณของคุณ  สำหรับวัตถุประสงค์ของคู่มือนี้ฉันเลือก“ Standard-LRS” (เช่น ซ้ำซ้อนในพื้นที่) เพื่อลดต้นทุน ตรวจสอบให้แน่ใจว่าบัญชีหน่วยเก็บข้อมูลใหม่ของคุณถูกเพิ่มไปยังกลุ่มทรัพยากรที่คุณสร้างในขั้นตอนที่ 1 (“ sql-cluster”) ในตำแหน่งเดียวกัน (“ West US” ในตัวอย่างนี้): SQL-จัดเก็บ account2

สร้างเครื่องเสมือนในชุดความพร้อมใช้งาน

เราจะทำการจัดเตรียม 3 เครื่องเสมือนในคู่มือนี้  VMs สองตัวแรก (ฉันจะเรียกพวกเขาว่า "sql-linux1" และ "sql-linux2") จะทำหน้าที่เป็นโหนดคลัสเตอร์ที่มีความสามารถในการนำฐานข้อมูล SQL Server และทรัพยากรที่เกี่ยวข้องออนไลน์  VM ที่ 3 จะทำหน้าที่เป็นเซิร์ฟเวอร์พยานของคลัสเตอร์สำหรับการป้องกันเพิ่มเติมจากสมองแยก เพื่อให้แน่ใจว่ามีความพร้อมใช้งานสูงสุด VM ทั้งหมด 3 เครื่องจะถูกเพิ่มไปยังชุดความพร้อมใช้งานเดียวกันเพื่อให้แน่ใจว่าพวกเขาจะลงเอยด้วย Fault Domains และ Update Domains ที่แตกต่างกัน Azure Marketplace มีเทมเพลต VM ชื่อ“ SQL Server vNext บน Red Hat Enterprise Linux 7.2” ที่มีรุ่นทดลองใช้สาธารณะตัวอย่าง SQL Server v.Next สำหรับ Linux ที่ติดตั้งไว้ล่วงหน้าซึ่งจะช่วยให้คุณประหยัดเวลาได้ไม่กี่ขั้นตอน  หากคุณต้องการเริ่มต้นด้วย VM ที่ว่างเปล่าและติดตั้ง SQL ด้วยตนเองคุณสามารถดูคำแนะนำการติดตั้งได้ที่นี่

สร้าง VM“ sql-linux1”

สร้าง VM แรกของคุณ (“ sql-linux1”) และเลือกภาพตลาดดังกล่าวข้างต้น SQL สร้าง-VM1 ตั้งชื่อโฮสต์ VM (“ sql-linux1”) และชื่อผู้ใช้ / รหัสผ่านที่จะใช้ในภายหลังเพื่อ SSH เข้าสู่ระบบ  ตรวจสอบให้แน่ใจว่าคุณเพิ่ม VM นี้ในกลุ่มทรัพยากรของคุณ (“ sql-cluster”) และอยู่ในภูมิภาคเดียวกับทรัพยากรอื่น ๆ ทั้งหมดของคุณSQL สร้าง-vm2: ถัดไปเลือกขนาดอินสแตนซ์ของคุณ  สำหรับข้อมูลเพิ่มเติมเกี่ยวกับขนาดอินสแตนซ์ต่าง ๆ ที่มีให้คลิกที่นี่ สำหรับวัตถุประสงค์ของคู่มือนี้ฉันเลือกขนาดที่เล็กที่สุด / ราคาถูกที่สุดเท่าที่จะทำได้ในกรณีนี้คือ "DS1_V2 มาตรฐาน" เพื่อลดค่าใช้จ่ายให้น้อยที่สุดเนื่องจากสิ่งนี้จะไม่ทำงานเป็นจำนวนมาก  เลือกขนาดอินสแตนซ์ที่เหมาะสมที่สุดตามสิ่งที่คุณต้องการทดสอบ: สำคัญ: SQL สร้าง-vm3ตามค่าเริ่มต้น VM ของคุณจะไม่ถูกเพิ่มในชุดความพร้อมใช้งาน  ในหน้าจอการตั้งค่าระหว่างตรวจสอบให้แน่ใจว่าคุณสร้างชุดความพร้อมใช้งานใหม่เราจะเรียกว่า "sql-Availability-set"  Azure Resource Manager (ARM) อนุญาตให้คุณสร้างชุดความพร้อมใช้งานด้วย 3 Fault Domains  ค่าเริ่มต้นที่นี่ใช้ได้: ในหน้าSQL สร้าง-VM4จอถัดไปให้ตรวจสอบคุณสมบัติ VM ของคุณและคลิกตกลงเพื่อสร้าง VM เครื่องแรกของคุณ

สร้าง VMs“ sql-linux2” และ“ sql -itness”

ทำซ้ำขั้นตอนด้านบนสองครั้งเพื่อสร้าง VM เพิ่มเติมอีกสองรายการ ข้อแตกต่างเพียงอย่างเดียวที่นี่คือคุณจะเพิ่ม VM เหล่านี้ไปยังชุดความพร้อมใช้งาน (“ sql-Availability-set”) ที่เราเพิ่งสร้างขึ้น อาจใช้เวลาสักครู่สำหรับการเตรียม VM 3 ของคุณ  เมื่อเสร็จแล้วคุณจะเห็น VM ของคุณ (sql-linux1, sql-linux2 และ sql -itness) อยู่ในรายการบนหน้าจอ Virtual Machines ภายใน Azure Portal ของคุณ

ตั้งค่า VM Static IP Addresses

VMs จะถูกตั้งค่าด้วยที่อยู่ IP ต่อไปนี้:

  • sql-linux1: 10.0.0.7
  • sql-linux2: 10.0.0.8
  • sql -itness: 10.0.0.9

ทำซ้ำขั้นตอนนี้สำหรับแต่ละ VM  เลือก VM ของคุณและแก้ไขการเชื่อมต่อเครือSQL ไฟฟ้าสถิต-IP1ข่ายเลือกอินเทอร์เฟซเครือข่ายที่เกี่ยวข้องกับ VM และแก้ไขการกำหนดค่า IP  เลือก“ คงที่” และระบุที่อยู่ IP ที่ต้องการ: SQL ไฟฟ้าสถิต-IP2

เพิ่มดิสก์ข้อมูลลงในโหนดคลัสเตอร์

ต่อไปเราจะต้องเพิ่มดิสก์พิเศษลงในโหนดคลัสเตอร์ของเรา (“ sql-linux1” และ“ sql-linux2”)  ดิสก์นี้จะเก็บฐานข้อมูล SQL ของเราและจะถูกจำลองแบบในภายหลังระหว่างโหนด หมายเหตุ: คุณไม่จำเป็นต้องเพิ่มดิสก์เพิ่มเติมในโหนด“ sql -itness”  เฉพาะ“ sql-linux1” และ“ sql-linux2” แก้ไข VM ของคุณเลือกดิสก์แล้วแนบดิสก์ใหม่  เลือกประเภทดิสก์ (Standard หรือ Premium SSD) และขนาดตามภาระงานของคุณ  ที่นี่ฉันสร้างดิสก์ 10GB Standard บนโหนดคลัสเตอร์ทั้งสองของฉัน  เท่าที่การแคชโฮสต์ดำเนินต่อไปการแคช“ ไม่มี” หรือ“ อ่านอย่างเดียว” ก็ถือว่าใช้ได้  ฉันไม่แนะนำให้ใช้“ อ่าน / เขียน” เนื่องจากมีโอกาสที่ข้อมูลจะสูญหาย: SQL-add-Disk1

สร้างกฎความปลอดภัยขาเข้าเพื่ออนุญาตการเข้าถึง VNC

หาก VM ของคุณเป็นส่วนหนึ่งของกลุ่มความปลอดภัยเครือข่าย (NSG) ซึ่งโดยค่าเริ่มต้นเป็นไปได้ว่าหากคุณไม่ได้ปิดใช้งานในระหว่างการสร้าง VM จะมีเพียงพอร์ตเดียวที่เปิดใน“ ไฟร์วอลล์ Azure” คือ SSH (พอร์ต 22)  ต่อมาในคำแนะนำฉันจะใช้ VNC เพื่อเข้าถึงเดสก์ท็อปของ“ sql-linux1” และกำหนดค่าคลัสเตอร์โดยใช้ GUI  สร้างกฎความปลอดภัยขาเข้าเพื่อเปิดการเข้าถึง VNC  ในคู่มือนี้มีการใช้พอร์ต 5902  ปรับสิ่งนี้ตามการกำหนดค่า VNC ของคุณ เครื่องเสมือน -> (เลือก sql-linux1) -> อินเตอร์เฟสเครือข่าย -> (เลือก NIC) -> กลุ่มความปลอดภัยเครือข่าย -> (เลือก NSG) -> กฎความปลอดภัยขาเข้า -> เพิ่ม SQL การรักษาความปลอดภัยกลุ่มที่ 1

การกำหนดค่า Linux OS

ที่นี่คือที่ที่เราจะออกจาก Azure Portal สักครู่และทำให้มือของเราสกปรกในบรรทัดคำสั่งซึ่งในฐานะผู้ดูแลระบบ Linux ที่คุณควรใช้ในตอนนี้  คุณไม่ได้รับรหัสผ่านรูทแก่ Linux VM ของคุณใน Azure ดังนั้นเมื่อคุณลงชื่อเข้าใช้ในฐานะผู้ใช้ที่ระบุระหว่างการสร้าง VM ให้ใช้คำสั่ง“ sudo” เพื่อรับสิทธิ์รูต:

$ sudo su -

แก้ไข / etc / hosts

นอกจากว่าคุณมีการตั้งค่าเซิร์ฟเวอร์ DNS อยู่แล้วคุณจะต้องการสร้างรายการไฟล์โฮสต์บนเซิร์ฟเวอร์ทั้ง 3 แห่งเพื่อให้พวกเขาสามารถแก้ไขซึ่งกันและกันได้อย่างถูกต้องด้วยชื่อเพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์ / etc / hosts

10.0.0.7 sql-linux1
10.0.0.8 sql-linux2
10.0.0.9 ตารางพยาน
10.0.0.199 sql-vip

ปิดการใช้งาน SELinux

แก้ไข / etc / sysconfig / linux และตั้งค่า“ SELINUX = ปิดใช้งาน”:

# vi / etc / sysconfig / selinux

# ไฟล์นี้ควบคุมสถานะของ SELinux บนระบบ
# SELINUX = สามารถใช้หนึ่งในสามค่าต่อไปนี้:
# enforcing - บังคับใช้นโยบายความปลอดภัยของ SELinux
# permissive - SELinux พิมพ์คำเตือนแทนที่จะบังคับใช้
# disabled - ไม่มีการโหลดนโยบาย SELinux
SELINUX = คนพิการ
# SELINUXTYPE = สามารถรับหนึ่งในสองค่าต่อไปนี้:
# เป้าหมาย - กระบวนการเป้าหมายได้รับการคุ้มครอง
# mls - การป้องกันความปลอดภัยหลายระดับ
SELINUXTYPE = การกำหนดเป้าหมาย

กำหนดค่า iptables เพื่อให้คลัสเตอร์ IP เสมือนทำงานได้

ในการรับการเชื่อมต่อกับ IP เสมือนของคลัสเตอร์ให้ทำงานและตรวจสอบทรัพยากร IP กฎ iptables บางอย่างจำเป็นต้องติดตั้ง  หมายเหตุ: 10.0.0.199 เป็น IP เสมือนจริงที่เราจะใช้ในคลัสเตอร์ของเราและ 1433 เป็นพอร์ตเริ่มต้นที่ใช้ SQL Server ของฉัน หมายเหตุ: RHEL7 เปลี่ยนไฟร์วอลล์เริ่มต้นเป็น FirewallD แทน iptables  ยังไม่ได้ใช้เวลากับ firewalld ดังนั้นในตอนนี้คู่มือนี้จะปิดการใช้งาน firewalld และใช้ iptables แทน คุณจะต้องติดตั้งแพคเกจ“ iptables-services” เพื่อให้คำสั่งบริการและ chkconfig ด้านล่างใช้งานได้

# systemctl หยุดการไฟร์วอลล์
# systemctl ปิดใช้งานไฟร์วอลล์

บน sql-linux1 (10.0.0.7) ให้รันคำสั่งต่อไปนี้:

# yum ติดตั้ง iptables-services
# iptables - ล้างข้อมูล
# iptables -t nat -A การเตรียมความพร้อม -p tcp - พอร์ต 1433 -j DNAT - ไปยังปลายทาง 10.0.0.199:1433
# iptables -t nat -A การเตรียมความพร้อม -p tcp - พอร์ต 1434 -j DNAT - ไปยังปลายทาง 10.0.0.199:1434
# iptables -t nat -A การนำเสนอ -p icmp -s 10.0.0.199 -j SNAT - ไปยังแหล่ง 10.0.0.7 
# บริการ iptables บันทึก 
# chkconfig iptables เปิดอยู่ 

บน sql-linux2 (10.0.0.8) ให้รันคำสั่งต่อไปนี้:

# yum ติดตั้ง iptables-services
# iptables - ล้างข้อมูล 
# iptables -t nat -A การเตรียมความพร้อม -p tcp - พอร์ต 1433 -j DNAT - ไปยังปลายทาง 10.0.0.199:1433
# iptables -t nat -A การเตรียมความพร้อม -p tcp - พอร์ต 1434 -j DNAT - ไปยังปลายทาง 10.0.0.199:1434
# iptables -t nat -A POSTROUTING -p icmp -s 10.0.0.199 -j SNAT - ไปยังซอร์ส 10.0.0.8 
# บริการ iptables บันทึก 
# chkconfig iptables เปิดอยู่

ติดตั้งและกำหนดค่า VNC (และแพ็คเกจที่เกี่ยวข้อง)

เพื่อเข้าถึง GUI ของเซิร์ฟเวอร์ linux ของเราและเพื่อติดตั้งและกำหนดค่าคลัสเตอร์ของเราในภายหลังติดตั้งเซิร์ฟเวอร์ VNC รวมถึงแพ็คเกจอื่น ๆ ที่จำเป็น (ซอฟต์แวร์คลัสเตอร์ต้องการ redhat-lsb และ patch rpms)

# yum ติดตั้ง tigervnc-server xterm รับการคลายซิปแพทช์ redhat-lsb
# vncpasswd

URL ต่อไปนี้เป็นแนวทางที่ดีในการเรียกใช้เซิร์ฟเวอร์ VNC บน RHEL 7 / CentOS 7: https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-remote-access-for -the-gnome-desktop-on-centos-7 หมายเหตุ: การกำหนดค่าตัวอย่างนี้รัน VNC บนจอแสดงผล 2 (: 2, aka พอร์ต 5902) และเป็นรูท (ไม่ปลอดภัย)  ปรับตาม!

# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service
# vi /etc/systemd/system/vncserver@:2.service


[บริการ]
type = ฟอร์ก
# ล้างไฟล์ที่มีอยู่ในสภาพแวดล้อม /tmp/.X11-unix
ExecStartPre = / bin / sh -c '/ usr / bin / vncserver -kill% i> / dev / null 2> & 1 | | :'
ExecStart = / sbin / runuser -l root -c "/ usr / bin / vncserver% i -geometry 1024x768"
PIDFile = / ราก / .vnc / H%% i.pid
ExecStop = / bin / sh -c '/ usr / bin / vncserver -kill% i> / dev / null 2> & 1 | | :'


# systemctl daemon-reload
# systemctl เปิดใช้งาน vncserver @: 2.service
# vncserver: 2 -geometry 1024x768

รีบูตคลัสเตอร์โหนด

รีบูตโหนดคลัสเตอร์ของคุณเพื่อให้ SELinux ถูกปิดใช้งานและตรวจพบดิสก์ที่สองที่คุณเพิ่มก่อนหน้านี้

การแบ่งพาร์ติชันและฟอร์แมตดิสก์“ data”

ในขั้นตอนที่ 6 ของคู่มือนี้ (“ เพิ่มดิสก์ข้อมูลไปยังโหนดคลัสเตอร์”) เราทำแค่นั้น…. เพิ่มดิสก์พิเศษให้กับแต่ละโหนดคลัสเตอร์เพื่อเก็บข้อมูลแอปพลิเคชันที่เราจะปกป้อง  ในกรณีนี้มันเป็นฐานข้อมูล MySQL ใน Azure IaaS, Linux Virtual Machines ใช้การจัดเรียงต่อไปนี้สำหรับดิสก์:

  • / dev / sda – ดิสก์ระบบปฏิบัติการ
  • / dev / sdb – ดิสก์ชั่วคราว
  • / dev / sdc – ดิสก์ข้อมูลที่ 1
  • / dev / sdd – ดิสก์ข้อมูลลำดับที่สอง
  • …
  • / dev / sdj – ดิสก์ข้อมูลที่ 8

ดิสก์ที่เราเพิ่มในขั้นตอนที่ 6 ของคู่มือนี้ควรปรากฏเป็น / dev / sdc  คุณสามารถเรียกใช้คำสั่ง“ fdisk -l” เพื่อตรวจสอบ  คุณจะเห็นว่า / dev / sda (OS) และ / dev / sdb (ชั่วคราว) มีพาร์ติชั่นดิสก์อยู่แล้วและกำลังใช้งานอยู่

# fdisk -l

ดิสก์ / dev / sda: 31.5 GB, 31457280000 ไบต์, 61440000 ภาค
หน่วย = ส่วนของ 1 * 512 = 512 ไบต์
ขนาดเซกเตอร์ (ตรรกะ / กายภาพ): 512 ไบต์ / 4096 ไบต์
ขนาด I / O (ต่ำสุด / เหมาะสมที่สุด): 4096 ไบต์ / 4096 ไบต์
ประเภทฉลากดิสก์: dos
ตัวระบุดิสก์: 0x000c46d3

การบูตอุปกรณ์เริ่มต้น End Ids Id System
/ dev / sda1 * 2048 1026047 512000 83 Linux
/ dev / sda2 1026048 61439999 30206976 83 Linux

ดิสก์ / dev / sdb: 7516 MB, 7516192768 ไบต์, 14680064 เซกเตอร์
หน่วย = ส่วนของ 1 * 512 = 512 ไบต์
ขนาดเซกเตอร์ (ตรรกะ / กายภาพ): 512 ไบต์ / 4096 ไบต์
ขนาด I / O (ต่ำสุด / เหมาะสมที่สุด): 4096 ไบต์ / 4096 ไบต์
ประเภทฉลากดิสก์: dos
ตัวระบุดิสก์: 0x7cd70e11

การบูตอุปกรณ์เริ่มต้น End Ids Id System
/ dev / sdb1 128 14678015 7338944 83 Linux

ดิสก์ / dev / sdc: 10.7 GB, 10737418240 ไบต์, 20971520 ภาค
หน่วย = ส่วนของ 1 * 512 = 512 ไบต์
ขนาดเซกเตอร์ (ตรรกะ / กายภาพ): 512 ไบต์ / 4096 ไบต์
ขนาด I / O (ต่ำสุด / เหมาะสมที่สุด): 4096 ไบต์ / 4096 ไบต์

ที่นี่ฉันจะสร้างพาร์ติชัน (/ dev / sdc1) จัดรูปแบบและเมาต์ที่ตำแหน่งเริ่มต้นสำหรับ SQL ซึ่งเป็น / var / opt / mssql  ทำตามขั้นตอนต่อไปนี้บนทั้ง“ sql-linux1” และ“ sql-linux2”:

# fdisk / dev / sdc
คำสั่ง (m สำหรับความช่วยเหลือ): n
การกระทำคำสั่ง
e ขยาย
p พาร์ติชันหลัก (1-4)
พี
หมายเลขพาร์ติชัน (1-4): 1
กระบอกแรก (1-1305 ค่าเริ่มต้น 1): <enter>
ใช้ค่าเริ่มต้น 1
ไส้กุญแจทรงกระบอกกระบอกสูบหรือขนาด {K, M, G} (1-1305, ค่าเริ่มต้น 1305): <enter>
ใช้ค่าเริ่มต้น 1305
 
คำสั่ง (m สำหรับความช่วยเหลือ): w
มีการเปลี่ยนแปลงตารางพาร์ติชัน!
การเรียก ioctl () เพื่ออ่านตารางพาร์ติชันอีกครั้ง
กำลังซิงค์ดิสก์
[root @ sql-linux1 ~] #
# mkfs.ext4 / dev / sdc1
# mkdir / var / opt / mssql
# chmod 770 / var / opt / mssql

เมานต์ระบบไฟล์:

# mount / dev / sdc1 / var / opt / mssql

ติดตั้งและกำหนดค่าเซิร์ฟเวอร์ SQL

หากคุณเริ่มต้นด้วยระบบ linux ที่ใหม่คำแนะนำการติดตั้งแบบสมบูรณ์สามารถดูได้ที่นี่ หากคุณสร้าง VM ของคุณโดยใช้“ SQL Server vNext บน Red Hat Enterprise Linux 7.2” เทมเพลต Azure ดังที่ฉันได้ทำในคู่มือนี้แล้ว SQL Server จะถูกติดตั้งแล้ว  สิ่งที่คุณต้องทำตอนนี้คือเรียกใช้สคริปต์การตั้งค่า:

# / opt / mssql / bin / sqlservr-setup
การตั้งค่าเซิร์ฟเวอร์ Microsoft (R) SQL (R)

คุณสามารถยกเลิกการตั้งค่าได้ตลอดเวลาโดยกด Ctrl-C เริ่มโปรแกรมนี้
ด้วยตัวเลือก - ช่วยสำหรับข้อมูลเกี่ยวกับการเรียกใช้ในแบบอัตโนมัติ
โหมด.

สามารถดาวน์โหลดข้อกำหนดสิทธิการใช้งานสำหรับผลิตภัณฑ์นี้ได้
http://go.microsoft.com/fwlink/?LinkId=746388 และพบ
ใน /usr/share/doc/mssql-server/LICENSE.TXT

คุณยอมรับข้อกำหนดสิทธิการใช้งานหรือไม่ ถ้าเป็นเช่นนั้นโปรดพิมพ์ "YES": ใช่

โปรดป้อนรหัสผ่านสำหรับบัญชีผู้ดูแลระบบ (SA): <ป้อนรหัสผ่านที่ต้องการ>
โปรดยืนยันรหัสผ่านสำหรับบัญชีผู้ดูแลระบบ (SA): <ป้อนรหัสผ่านที่ต้องการ>

ตั้งค่ารหัสผ่านบัญชีผู้ดูแลระบบ (SA) ...

คุณต้องการเริ่มบริการ SQL Server ทันทีหรือไม่ [y / n]: y
คุณต้องการเปิดใช้งาน SQL Server เพื่อเริ่มระบบหรือไม่ [y / n]: n

คุณสามารถใช้ sqlservr-setup --enable-service เพื่อเปิดใช้งาน SQL Server เพื่อเริ่มต้น
ตอนบูต

การตั้งค่าเสร็จสมบูรณ์

ตรวจสอบว่าบริการกำลังทำงานอยู่:

# systemctl status mssql-server

หยุด SQL Server บนทั้งสองโหนด  ซอฟต์แวร์คลัสเตอร์จะต้องรับผิดชอบในการเริ่มต้นใช้งานในภายหลัง:

# systemctl หยุด mssql-server
# systemctl หยุด mssql-server-telemetry

ติดตั้งและกำหนดค่าคลัสเตอร์

ณ จุดนี้เราพร้อมที่จะติดตั้งและกำหนดค่าคลัสเตอร์ของเรา  SIOS Protection Suite สำหรับ Linux (aka SPS-Linux) จะใช้ในคู่มือนี้เป็นเทคโนโลยีการทำคลัสเตอร์  มันมีทั้งฟีเจอร์การคลัสเตอร์ล้มเหลวที่มีความพร้อมใช้งานสูง (LifeKeeper) รวมถึงการจำลองข้อมูลระดับบล็อกแบบเรียลไทม์ (DataKeeper) ในโซลูชันเดียวที่รวมเข้าด้วยกัน  SPS-Linux ช่วยให้คุณสามารถปรับใช้คลัสเตอร์“ SANLess” หรือที่เรียกว่าคลัสเตอร์“ ไม่มีอะไรที่ใช้ร่วมกัน” ซึ่งหมายความว่าโหนดคลัสเตอร์ไม่มีที่เก็บข้อมูลใด ๆ ที่ใช้ร่วมกันเช่นเดียวกับ Azure VM

ติดตั้ง SIOS Protection Suite สำหรับ Linux

ทำตามขั้นตอนต่อไปนี้บน VM ทั้ง 3 (sql-linux1, sql-linux2, sql -itness): ดาวน์โหลดไฟล์อิมเมจการติดตั้ง SPS-Linux (sps.img) และขอรับใบอนุญาตทดลองใช้งานหรือซื้อใบอนุญาตถาวร  ติดต่อ SIOS เพื่อรับข้อมูลเพิ่มเติม คุณจะวนลูปติดตั้งและรันสคริปต์“ ตั้งค่า” ด้านในในฐานะรูท (หรือ“ sudo su -” เป็นครั้งแรกเพื่อรับรูตเชลล์ถ้าคุณยังไม่ได้ทำ) ตัวอย่างเช่น:

# mkdir / tmp / install
# mount -o loop sps.img / tmp / install
# cd / tmp / install
# ./ติดตั้ง

ระหว่างสคริปต์การติดตั้งคุณจะได้รับแจ้งให้ตอบคำถามจำนวนหนึ่ง  คุณจะกด Enter บนเกือบทุกหน้าจอเพื่อยอมรับค่าเริ่มต้น  สังเกตข้อยกเว้นต่อไปนี้:

  • บนหน้าจอชื่อ“ High Availability NFS” คุณอาจเลือก“ n” เนื่องจากเราจะไม่สร้างเซิร์ฟเวอร์ NFS ที่มีความพร้อมใช้งานสูง
  • ในตอนท้ายของสคริปต์การตั้งค่าคุณสามารถเลือกที่จะติดตั้งรหัสสัญญาอนุญาตรุ่นทดลองใช้ทันทีหรือใหม่กว่า เราจะติดตั้งรหัสลิขสิทธิ์ในภายหลังเพื่อให้คุณสามารถเลือก“ n” ได้อย่างปลอดภัยในจุดนี้
  • ในหน้าจอสุดท้ายของ“ การตั้งค่า” เลือก ARKs (ชุดกู้คืนแอพพลิเคชั่นเช่น "ตัวแทนตัวแทน") ที่คุณต้องการติดตั้งจากรายการที่แสดงบนหน้าจอ
    • ARK จำเป็นต้องใช้กับ "sql-linux1" และ "sql-linux2" เท่านั้น  คุณไม่จำเป็นต้องติดตั้งบน“ sql -itness”
    • นำทางรายการด้วยลูกศรขึ้น / ลงและกด SPACEBAR เพื่อเลือกรายการต่อไปนี้:
      • lkDR – DataKeeper สำหรับ Linux
    • ซึ่งจะส่งผลให้มีการติดตั้ง RPM เพิ่มเติมต่อไปนี้ใน“ sql-linux1” และ“ sql-linux2”:
      • Steeleye-lkDR-9.0.2-6513.noarch.rpm

ติดตั้งแพ็คเกจ Witness / Quorum

แพคเกจการสนับสนุน Quorum / Witness Server สำหรับ LifeKeeper (steeleye-lkQWK) รวมกับกระบวนการ failover ที่มีอยู่ของแกน LifeKeeper ช่วยให้การล้มเหลวของระบบเกิดขึ้นพร้อมความมั่นใจในสถานการณ์ที่เครือข่ายล้มเหลวทั้งหมด สิ่งนี้มีประสิทธิภาพหมายถึงการล้มเหลวสามารถทำได้ในขณะที่ลดความเสี่ยงของสถานการณ์ "สมองแตก" อย่างมาก ติดตั้ง Witness / Quorum rpm บนทั้ง 3 โหนด (sql-linux1, sql-linux2, sql -itness):

# cd / tmp / install / quorum
# rpm -Uvh steeleye-lkQWK-9.0.2-6513.noarch.rpm

 

 

 

 

 

 

 

 

  

 

 

 

   

 

   

 

  

  •  
  •  

    

  •  
  •  
  •  

       

 

  

  

    

 
 
 
 
 
 
 
 
 

  

 
 
 
 
 
 
 
 
 
 

  

 

  

 
 
 
 
 
 
 

 

 
 
 
 
 
 
 
 

 

          

 

   

  •  
  •  
  •  
  •  
 

 

 

 
 
 

 

 
 
 

 

 
 
 

 

 
 
 

 

 

 

   

 
 
 
 
 
 
 
 
 
 

 

 
 
 
 
 
 

  

 

        

 

              

 

  

 

 

 
 

 
 

 

  

 

 

 
 

 
 

 

 

 

Filed Under: ทำให้เข้าใจง่ายเซิร์ฟเวอร์คลัสเตอร์ Tagged With: SQL Server สำหรับ Linux, ลินุกซ์

เพิ่มประสิทธิภาพการจำลองแบบสำหรับ Linux Clustering ด้วย Fusion-io

พฤศจิกายน 27, 2018 by Jason Aw Leave a Comment

เพิ่มประสิทธิภาพการจำลองแบบสำหรับ Linux Clustering ด้วย Fusion-io

เคล็ดลับเพื่อเพิ่มประสิทธิภาพการจำลองแบบสำหรับ Linux Clustering ด้วย Fusion-io

เมื่อคนส่วนใหญ่คิดถึงการตั้งค่าคลัสเตอร์เซิร์ฟเวอร์จะมีเซิร์ฟเวอร์มากกว่าสองเครื่องและ SAN หรือบางส่วนของที่เก็บข้อมูลที่แชร์กัน SAN มีค่าใช้จ่ายสูงมากและซับซ้อนในการติดตั้งและบำรุงรักษา นอกจากนี้ยังแสดงให้เห็นถึงเทคนิคที่เป็นไปได้ในจุดเดียวของความล้มเหลว (SPOF) ในสถาปัตยกรรมคลัสเตอร์ของคุณ ทุกวันนี้ผู้คนจำนวนมากหันไปหา บริษัท อย่าง Fusion-io พร้อมด้วย ioDrives ที่เร็วที่สุดเพื่อเร่งการใช้งานที่สำคัญ  อุปกรณ์จัดเก็บข้อมูลเหล่านี้นั่งอยู่ภายในเซิร์ฟเวอร์ (เช่นไม่ใช่ "ดิสก์ที่ใช้ร่วมกัน") ดังนั้นจึงไม่สามารถใช้เป็นดิสก์คลัสเตอร์กับโซลูชันการจัดกลุ่มแบบเดิม ๆ ได้ โชคดีที่มีวิธีเพิ่มประสิทธิภาพการจำลองแบบสำหรับ Linux Clustering ด้วย Fusion-io โซลูชันที่ช่วยให้คุณสามารถสร้างคลัสเตอร์ failover ได้เมื่อไม่มีที่เก็บข้อมูลที่ใช้ร่วมกันนั่นคือกลุ่ม "ไม่มีการแชร์อะไร"

กลุ่มแบบดั้งเดิม เพิ่มประสิทธิภาพการจำลองแบบสำหรับ Linux Clustering ด้วย Fusion-io - Cluster แบบดั้งเดิม  กลุ่ม "Shared Nothing"เพิ่มประสิทธิภาพการจำลองแบบสำหรับ Linux Clustering ด้วย Fusion-io - Shared Cluster

เมื่อใช้ประโยชน์จากการจำลองข้อมูลเป็นส่วนหนึ่งของการกำหนดค่าคลัสเตอร์สิ่งสำคัญคือคุณมีแบนด์วิธเพียงพอเพื่อให้สามารถจำลองข้อมูลในเครือข่ายได้รวดเร็วเท่าที่เขียนลงดิสก์  ต่อไปนี้คือเคล็ดลับการปรับแต่งที่จะช่วยให้คุณได้รับประโยชน์สูงสุดจากการกำหนดค่าคลัสเตอร์ "ไม่มีการแบ่งปัน" เมื่อมีการเก็บข้อมูลความเร็วสูง:

เครือข่าย

  • ใช้ 10Gbps NIC: อุปกรณ์จัดเก็บข้อมูลแบบ Flash จาก Fusion-io (หรือผลิตภัณฑ์อื่นที่คล้ายคลึงกันจาก OCZ, LSI และอื่น ๆ ) สามารถเขียนข้อมูลด้วยความเร็วใน HUNDREDS (750) MB / วินาทีหรือมากกว่า  NIC ขนาด 1Gbps สามารถดันสูงสุดได้ถึง 125 เมกะไบต์ต่อวินาทีดังนั้นทุกคนที่ใช้ประโยชน์จากศักยภาพของ ioDrive สามารถเขียนข้อมูลได้เร็วกว่าที่จะถูกผลักผ่านการเชื่อมต่อเครือข่าย 1 Gbps  เพื่อให้แน่ใจว่าคุณมีแบนด์วิธที่เพียงพอระหว่างเซิร์ฟเวอร์เพื่ออำนวยความสะดวกในการจำลองแบบข้อมูลแบบเรียลไทม์ควรใช้ NIC ขนาด 10 Gbps เพื่อรับข้อมูลการจำลองแบบ
  • เปิดใช้งานกรอบ Jumbo: สมมติว่าการ์ดเครือข่ายและสวิทช์ของคุณสนับสนุนการเปิดใช้งานเฟรม jumbo สามารถเพิ่มประสิทธิภาพการทำงานของเครือข่ายของคุณได้มากขึ้นในขณะเดียวกันก็ลดรอบการทำงานของ CPU  หากต้องการเปิดใช้งานเฟรม jumbo ให้ใช้การกำหนดค่าต่อไปนี้ (ตัวอย่างจากเซิร์ฟเวอร์ RedHat / CentOS / OEL linux)
    • ifconfig <interface_name> mtu 9000
    • แก้ไขไฟล์ / etc / sysconfig / network-scripts / ifcfg- <interface_name> และเพิ่ม "MTU = 9000" เพื่อให้การเปลี่ยนแปลงยังคงอยู่ในการเริ่มต้นใหม่
    • เมื่อต้องการตรวจสอบการดำเนินการของกรอบ jumbo แบบ end-to-end ให้เรียกใช้คำสั่งนี้: ping -s 8900 -M do <IP-of-other-server>
  • เปลี่ยนความยาวคิวส่งของ NIC:
    • / sbin / ifconfig <interface_name> txqueuelen 10000
    • เพิ่มข้อมูลนี้ใน /etc/rc.local เพื่อรักษาการตั้งค่าข้ามการเริ่มระบบใหม่

TCP / IP Tuning

  • เปลี่ยน netdev_max_backlog ของ NIC:
    • ตั้งค่า "net.core.netdev_max_backlog = 100000" ใน /etc/sysctl.conf
  • การปรับแต่ง TCP / IP อื่น ๆ ที่ได้รับการแสดงเพื่อเพิ่มประสิทธิภาพการจำลองแบบ:
    • หมายเหตุ: เป็นค่าตัวอย่างและอาจจำเป็นต้องปรับเปลี่ยนตามการกำหนดค่าฮาร์ดแวร์ของคุณ
    • แก้ไข /etc/sysctl.conf และเพิ่มพารามิเตอร์ต่อไปนี้:
      • net.core.rmem_default = 16777216
      • net.core.wmem_default = 16777216
      • net.core.rmem_max = 16777216
      • net.core.wmem_max = 16777216
      • net.ipv4.tcp_rmem = 4096 87380 16777216
      • net.ipv4.tcp_wmem = 4096 65536 16777216
      • net.ipv4.tcp_timestamps = 0
      • net.ipv4.tcp_sack = 0
      • net.core.optmem_max = 16777216
      • net.ipv4.tcp_congestion_control = HTCP

การปรับ

โดยปกติคุณจะต้องปรับเปลี่ยนการกำหนดค่าคลัสเตอร์ของคุณซึ่งจะแตกต่างกันไปขึ้นอยู่กับเทคโนโลยีการจัดกลุ่มและจำลองข้อมูลที่คุณตัดสินใจใช้  ในตัวอย่างนี้ฉันใช้ SteelEye Protection Suite สำหรับ Linux (SPS หรือ aka LifeKeeper) จาก SIOS Technologies จะช่วยให้ผู้ใช้สามารถสร้างกลุ่ม failover ที่ใช้ประโยชน์จากประเภทจัดเก็บข้อมูลแบบแบ็คเอนด์: Fibre Channel SAN, iSCSI, NAS หรือส่วนใหญ่ที่เกี่ยวข้องกับบทความนี้ดิสก์ในเครื่องที่ต้องมีการซิงโครไนซ์ / จำลองแบบเรียลไทม์ระหว่างโหนดคลัสเตอร์  SPS for Linux รวมถึงฟังก์ชันการทำสำเนาข้อมูลระดับบล็อคที่ทำให้การติดตั้งคลัสเตอร์เป็นเรื่องง่ายเมื่อไม่มีที่เก็บข้อมูลที่ใช้ร่วมกัน

ข้อเสนอแนะ

เพื่อเพิ่มประสิทธิภาพการจำลองแบบสำหรับ Linux Clustering ด้วย Fusion-io ให้มากที่สุดลองใช้วิธีนี้ SteelEye Protection Suite (SPS) สำหรับคำแนะนำการกำหนดค่า Linux:

  • จัดสรรพาร์ติชันดิสก์ขนาดเล็ก (~ 100 MB) ที่อยู่ในไดรฟ์ Fusion-io เพื่อวางไฟล์บิตแมป  สร้างระบบแฟ้มบนพาร์ติชันนี้และติดตั้งตัวอย่างเช่นที่ / bitmap:
    • # mount | grep / bitmap
    • / dev / fioa1 on / ประเภทบิตแมป ext3 (rw)
  • ก่อนที่จะสร้างกระจกของคุณปรับพารามิเตอร์ต่อไปนี้ใน / etc / default / LifeKeeper
    • แทรก: LKDR_CHUNK_SIZE = 4096
      • ค่าดีฟอลต์คือ 64
    • แก้ไข: LKDR_SPEED_LIMIT = 1500000
      • (ค่าเริ่มต้นคือ 50000)
      • LKDR_SPEED_LIMIT ระบุแบนด์วิดท์สูงสุดที่ resync จะใช้เวลา – ควรตั้งค่าสูงพอที่จะทำให้ resyncs ไปที่ความเร็วสูงสุดเท่าที่จะเป็นไปได้
    • แก้ไข: LKDR_SPEED_LIMIT_MIN = 200000
      • (ค่าดีฟอลต์คือ 20000)
      • LKDR_SPEED_LIMIT_MIN ระบุความเร็วที่ควรจะได้รับอนุญาตให้ทำซ้ำเมื่อมี I / O อื่น ๆ เกิดขึ้นพร้อม ๆ กัน – ตามกฎของหัวแม่มือนี้ควรตั้งค่าให้เขียนได้ไม่เกินครึ่งหรือน้อยกว่าเพื่อหลีกเลี่ยงความอดอยาก ออกกิจกรรม I / O ตามปกติเมื่อเกิดการ resync

จากนี้ไปข้างหน้าและสร้างกระจกเงาของคุณและกำหนดค่าคลัสเตอร์ตามปกติ สนใจที่จะเพิ่มประสิทธิภาพการจำลองแบบสูงสุดสำหรับการทำคลัสเตอร์ Linux ด้วย Fusion-io ดูว่า SIOS สามารถให้อะไรได้อีก ทำซ้ำโดยได้รับอนุญาตจาก LinuxClustering

Filed Under: Datakeeper, ทำให้เข้าใจง่ายเซิร์ฟเวอร์คลัสเตอร์ Tagged With: Fusion-io, การทำซ้ำ, ลินุกซ์, เพิ่มประสิทธิภาพการจำลองแบบสำหรับการจัดกลุ่ม linux ด้วย io แบบฟิวชั่น

วิธีหลีกเลี่ยงการแยกกลุ่มความพร้อมในการให้บริการกับ SQL Server บน Linux

ตุลาคม 30, 2018 by Jason Aw Leave a Comment

วิธีการหลีกเลี่ยง-split-brain-On-ส่วนลดของ-กลุ่มที่มี SQL เซิร์ฟเวอร์-On-ลินุกซ์

SQL Server 2017 ในปัญหาความสามารถในการแยกกลุ่มปัญหาของ Linus Availability Brain

วิธีการหลีกเลี่ยง-split-brain-On-ส่วนลดของ-กลุ่มที่มี SQL เซิร์ฟเวอร์-On-ลินุกซ์

SQL Server 2017 ในปัญหาความสามารถในการแยกกลุ่มปัญหาของ Linus Availability Brain

หลีกเลี่ยงการแบ่งกลุ่มความพร้อมกับ SQL Server บน Linux โดยใช้บทความสนับสนุนนี้ที่โพสต์โดย Microsoft การเรียกใช้ SQL Server บน Linux อาจมีข้อดีบางประการรวมถึงการประหยัดค่าใช้จ่ายในระบบปฏิบัติการถ้าทำงานใน Azure ทำการคำนวณบางอย่าง การประหยัดค่าใช้จ่ายเป็นสิ่งที่ยืนยันได้เนื่องจากจำนวนแกนที่เพิ่มขึ้น นอกจากนี้คุณกำลังให้สัญญาอนุญาตอย่างน้อยสองเซิร์ฟเวอร์สำหรับทุกคู่ของคลัสเตอร์ อย่างไรก็ตามทำไมต้องกังวลเรื่องการออมเงินถ้าเทคโนโลยีไม่ใช่ของแข็ง? หนึ่งในปัญหาที่ใหญ่ที่สุดที่ฉันเห็นกับการรัน SQL Server บน Linux คือการขาดเรื่องราว HA / DR ที่เชื่อมโยงกัน ใน Windows Microsoft เป็นเจ้าของสแต็ค HA ทั้งหมดและ SQL Server อาศัย Windows Server Failover Clustering อย่างมากเพื่อสนับสนุนกลุ่มความพร้อมใช้งานและอินสแตนซ์ของคลัสเตอร์ล้มเหลว การดำเนินการนี้ประสบความสำเร็จเป็นเวลาหลายปีและมีประวัติที่ยาวนานของเรื่องราวความสำเร็จ เมื่อย้ายไปที่ Linux Microsoft ไม่ได้เป็นเจ้าของกอง HA ในระดับระบบปฏิบัติการอีกต่อไป ขึ้นอยู่กับ distro ของ Linux ของคุณคุณจะเหลือพยายามที่จะร่วมกันแก้ปัญหามาเปิดเช่น Pacemaker ไม่พูดถึงพยายามที่จะได้รับสิ่งที่จะร่วมมือกับ SQL Server Availability Groups เพื่อหลีกเลี่ยงการแบ่งกลุ่มความพร้อมในการใช้งาน SQL Server บน Linux ฉันค่อนข้างจะต้องการโซลูชันความพร้อมใช้งานสูงของ บริษัท อื่นเช่น SIOS Protection Suite สำหรับ Linux (SPS-L) ช่วยให้คุณได้รับโซลูชัน HA ที่พยายามอย่างแท้จริงและสำหรับแอพพลิเคชันที่สำคัญของธุรกิจที่ทำงานบน Linux

แยก Brain On Availability Groups ด้วย SQL Server บน Linux
เซิร์ฟเวอร์ SQL บน Linux Cluster ใน Azure

แยก Brain On Availability Groups ด้วย SQL Server บน Linux ด้วย SIOS

SPS-L ได้รับการปกป้องแอพพลิเคชันที่สำคัญทางธุรกิจที่ทำงานบน Linux ตั้งแต่ปี 2542 เป็นโซลูชัน HA / DR แบบเต็มรูปแบบที่สามารถตรวจสอบได้ กู้คืนแอ็พพลิเคชันทั้งหมดรวมถึงเซิร์ฟเวอร์และเครือข่ายที่มีอยู่จริงเพื่อให้แน่ใจว่าแอพพลิเคชันที่สำคัญของธุรกิจของคุณสามารถใช้งานได้อย่างเต็มที่ ทั้งหมดนี้ขณะที่ยังคงมีสำเนาที่ 3 สำหรับการกู้คืนความเสียหายในศูนย์ข้อมูลระยะไกลหรือพื้นที่ทางภูมิศาสตร์ที่ต่างกันของระบบคลาวด์ ข้อดีอื่น ๆ ของ SPS-L คือไม่ต้องใช้ Enterprise Edition ของ SQL Server ดังนั้นจึงสามารถมีข้อได้เปรียบด้านการประหยัดค่าใช้จ่ายที่สำคัญในใบอนุญาต SQL Server ด้วย พิจารณา SQL Server Standard Edition มีค่าใช้จ่าย 1859 เหรียญต่อแกนเทียบกับ 7128 ดอลลาร์ต่อหนึ่งแกนสำหรับ SQL Server Enterprise Edition ข้อได้เปรียบด้านการประหยัดค่าใช้จ่ายอาจมีนัยสำคัญขึ้นอยู่กับจำนวนคอร์ที่คุณต้องมีใบอนุญาต ด้านล่างนี้เป็นการสาธิตวิดีโอเกี่ยวกับ SPS-L เพื่อปกป้อง SQL Server ที่ทำงานบน Linux ใน Azure Cloud การสาธิตแสดงคลัสเตอร์ SQL Server Standard Edition ที่ถูกล้มเหลวด้วยตนเองระหว่างโหนดในโดเมน Azure Fault ที่แตกต่างกันรวมทั้ง SPS-L ตอบสนองต่อความล้มเหลวที่ไม่คาดคิด ต้องการเรียนรู้เคล็ดลับอื่น ๆ เช่นการหลีกเลี่ยงการแยกกลุ่มความพร้อมในการใช้งานเซิร์ฟเวอร์ SQL บน Linux โปรดอ่านเกี่ยวกับบล็อกของเราที่ทำซ้ำกับ ClusteringForMereMortals.com

Filed Under: ทำให้เข้าใจง่ายเซิร์ฟเวอร์คลัสเตอร์ Tagged With: ลินุกซ์, แบ่งสมองในกลุ่มที่มีเซิร์ฟเวอร์ sql บน linux

  • « Previous Page
  • 1
  • 2
  • 3

โพสต์ล่าสุด

  • วิธีการแก้ไขโดยไม่ต้องหยุดชะงัก: เวลาหยุดทำงานที่แทบจะเป็นศูนย์ด้วย HA
  • การสาธิต SIOS LifeKeeper: การอัปเดตแบบต่อเนื่องและการสำรองข้อมูลช่วยปกป้อง PostgreSQL ใน AWS ได้อย่างไร
  • วิธีการประเมินว่าการ์ดเครือข่ายของฉันจำเป็นต้องเปลี่ยนหรือไม่
  • SIOS Technology จะสาธิตซอฟต์แวร์คลัสเตอร์ความพร้อมใช้งานสูงสำหรับแอปพลิเคชันที่สำคัญต่อภารกิจในงาน Red Hat Summit, Milestone Technology Day และ XPerience Day และ SQLBits 2025
  • ปัญญาประดิษฐ์ในแอปพลิเคชันที่เกี่ยวข้องกับความพร้อมใช้งานสูง

กระทู้ยอดนิยม

เข้าร่วมรายชื่อผู้รับจดหมายของเรา

Copyright © 2025 · Enterprise Pro Theme on Genesis Framework · WordPress · Log in