เพิ่มแหล่งข้อมูล Amazon MSK Kafka ไปยังเหตุการณ์สตรีม

บทความนี้แสดงวิธีการเพิ่มแหล่งข้อมูล Amazon MSK Kafka ไปยังเหตุการณ์ 

Amazon MSK Kafka เป็นบริการของ Kafka ที่มีการจัดการเต็มรูปแบบ ทําให้ง่ายต่อการตั้งค่า การปรับขนาด และการจัดการ โดยการรวม Amazon MSK Kafka เป็นแหล่งภายในเหตุการณ์ของคุณ คุณสามารถนําเหตุการณ์แบบเรียลไทม์จาก MSK Kafka ของคุณและประมวลผลก่อนกําหนดเส้นทางไปยังปลายทางหลายแห่งภายใน Fabric ได้อย่างราบรื่น 

Prerequisites

  • เข้าถึงพื้นที่ทํางานในโหมดสิทธิ์การใช้งาน Fabric capacity (หรือ) โหมดสิทธิ์การใช้งานรุ่นทดลองใช้ที่มีสิทธิ์ผู้สนับสนุนหรือสูงกว่า

  • คลัสเตอร์ Amazon Managed Streaming for Kafka (MSK) ในสถานะใช้งานอยู่

  • คลัสเตอร์ Amazon MSK Kafka ของคุณต้องสามารถเข้าถึงได้โดยสาธารณะและไม่ได้อยู่หลังไฟร์วอลล์หรือปลอดภัยในเครือข่ายเสมือน ถ้าอยู่ในเครือข่ายที่มีการป้องกัน ให้เชื่อมต่อโดยใช้การแทรกเครือข่ายเสมือนของตัวเชื่อมต่อ Eventstream

  • หากคุณวางแผนที่จะใช้ การตั้งค่า TLS/mTLS ตรวจสอบให้แน่ใจว่าใบรับรองที่จําเป็นพร้อมใช้งานใน Azure Key Vault:

    • นําเข้าใบรับรองที่จําเป็นไปยัง Azure Key Vault ในรูปแบบ .pem
    • ผู้ใช้ที่กําหนดค่าแหล่งข้อมูลและข้อมูลตัวอย่างต้องมีสิทธิ์เข้าถึงใบรับรองใน Key Vault (ตัวอย่างเช่น ผู้ใช้ใบรับรอง Key Vault หรือ ผู้ดูแลระบบ Key Vault)
    • หากผู้ใช้ปัจจุบันไม่มีสิทธิ์ที่จําเป็น จะไม่สามารถดูตัวอย่างข้อมูลจากแหล่งข้อมูลนี้ใน Eventstream ได้

เพิ่ม Amazon MSK Kafka เป็นแหล่งข้อมูล

  1. ใน Fabric Real-Time Intelligence ให้เลือก Eventstream เพื่อสร้าง Eventstream ใหม่

  2. ในหน้าจอถัดไป ให้เลือก เชื่อมต่อแหล่งข้อมูล หรือเลือก เพิ่มแหล่งข้อมูล ->เชื่อมต่อแหล่งข้อมูล

  3. บนหน้า เลือกแหล่งข้อมูล ให้เลือก ดูแหล่งข้อมูลทั้งหมด

  4. ค้นหา Amazon MSK Kafka แล้วเลือก เชื่อมต่อ บนไทล์

    สกรีนช็อตที่แสดงการเลือก Amazon MSK Kafka เป็นชนิดแหล่งที่มาในตัวช่วยสร้างรับเหตุการณ์

กําหนดค่าและเชื่อมต่อกับ Amazon MSK Kafka

  1. บนหน้า เชื่อมต่อ เลือก การเชื่อมต่อใหม่

    สกรีนช็อตที่แสดงการเลือกลิงก์การเชื่อมต่อใหม่บนหน้าเชื่อมต่อของตัวช่วยสร้างรับเหตุการณ์

  2. ในส่วน การตั้งค่าการเชื่อมต่อ สําหรับ Bootstrap Server ให้ป้อนปลายทางเซิร์ฟเวอร์ Kafka bootstrap สาธารณะอย่างน้อยหนึ่งรายการ ใช้เครื่องหมายจุลภาค (,) เพื่อแยกเซิร์ฟเวอร์หลายเครื่อง สกรีนช็อตที่แสดงการเลือกเขตข้อมูลเซิร์ฟเวอร์ Bootstrap บนหน้าเชื่อมต่อของตัวช่วยสร้างรับเหตุการณ์

    เพื่อรับจุดสิ้นสุดสาธารณะ:

    สกรีนช็อตที่แสดงตําแหน่งข้อมูลสาธารณะของคลัสเตอร์ Amazon Managed Streaming for Apache Kafka (MSK)

  3. ในส่วนข้อมูลประจําตัวการเชื่อมต่อ หากคุณมีการเชื่อมต่อกับคลัสเตอร์ Amazon MSK Kafka อยู่แล้ว ให้เลือกจากรายการดรอปดาวน์สําหรับการเชื่อมต่อ มิฉะนั้น ให้ทําตามขั้นตอนเหล่านี้:

    1. สําหรับ ชื่อการเชื่อมต่อ ให้ใส่ชื่อสําหรับการเชื่อมต่อ
    2. สําหรับ ประเภทการรับรองความถูกต้อง ให้ยืนยันว่าได้เลือก API Key แล้ว
    3. สําหรับ คีย์ และ ข้อมูลลับ ให้ป้อนคีย์ API และคีย์ลับสําหรับคลัสเตอร์ Amazon MSK Kafka

      Note

      หากคุณใช้ mTLS เพื่อทําการตรวจสอบสิทธิ์เท่านั้น คุณจะเพิ่มสตริงใดก็ได้ในส่วนคีย์ระหว่างการสร้างการเชื่อมต่อ

  4. เลือก เชื่อมต่อ

  5. ตอนนี้ ที่หน้าเชื่อมต่อ ให้ทําตามขั้นตอนเหล่านี้

    1. สําหรับ หัวข้อ ให้ป้อนหัวข้อ Kafka

    2. สําหรับ กลุ่มผู้บริโภค ให้ป้อนกลุ่มผู้บริโภคของคลัสเตอร์ Kafka ของคุณ เขตข้อมูลนี้มอบกลุ่มผู้บริโภคเฉพาะสําหรับการรับเหตุการณ์ให้กับคุณ

    3. เลือก รีเซ็ตออฟเซต อัตโนมัติเพื่อระบุตําแหน่งที่จะเริ่มต้นค่าชดเชยการอ่านถ้าไม่มีการยอมรับ

    4. สําหรับ โปรโตคอลความปลอดภัย ให้เลือกหนึ่งในตัวเลือกต่อไปนี้:

      • SASL_SSL: ใช้ตัวเลือกนี้เมื่อคลัสเตอร์ Kafka ของคุณใช้การรับรองความถูกต้องตาม SASL ตามค่าเริ่มต้น ใบรับรองเซิร์ฟเวอร์ของโบรกเกอร์ Kafka จะต้องลงนามโดยผู้ออกใบรับรอง (CA) ที่รวมอยู่ในรายการ CA ที่เชื่อถือได้ หากคลัสเตอร์ Kafka ของคุณใช้ CA แบบกําหนดเอง คุณสามารถกําหนดค่าได้โดยใช้การตั้งค่า TLS/mTLS
      • SSL (mTLS): ใช้ตัวเลือกนี้เมื่อคลัสเตอร์ Kafka ของคุณต้องการการตรวจสอบสิทธิ์ mTLS และคุณต้องกําหนดค่าทั้งใบรับรอง CA ของเซิร์ฟเวอร์แบบกําหนดเองและใบรับรองไคลเอ็นต์ในการตั้งค่า TLS/mTLS
    5. กลไก SASL เริ่มต้นคือ SCRAM-SHA-512 และไม่สามารถเปลี่ยนแปลงได้

    6. หากคลัสเตอร์ Kafka ของคุณใช้ CA แบบกําหนดเองหรือต้องใช้ mTLS ให้ขยาย การตั้งค่า TLS/mTLS และกําหนดค่าตัวเลือกต่อไปนี้ตามต้องการ:

      • เชื่อถือใบรับรอง CA: เปิดใช้งานตัวเลือกนี้เพื่อกําหนดค่าใบรับรอง CA ของเซิร์ฟเวอร์ เลือกการสมัครใช้งาน กลุ่มทรัพยากร และ Key Vault ของคุณ แล้วระบุชื่อใบรับรอง
      • ใบรับรองไคลเอ็นต์และคีย์: เปิดใช้งานตัวเลือกนี้เพื่อกําหนดค่าใบรับรองไคลเอ็นต์และคีย์
        • ใช้คลังคีย์ใบรับรอง CA เดียวกัน: เลือกช่องทําเครื่องหมายนี้เมื่อใบรับรองทั้งสองถูกเก็บไว้ใน Key Vault เดียวกัน จากนั้นระบุชื่อใบรับรอง
        • ถ้าคุณไม่เลือกกล่องกาเครื่องหมายนี้ ให้เลือกการสมัครใช้งาน กลุ่มทรัพยากร และ Key Vault แล้วระบุชื่อใบรับรอง

      Note

      สําหรับแหล่งข้อมูลในเครือข่ายส่วนตัว ตรวจสอบให้แน่ใจว่า Azure Key Vault ที่มีใบรับรองของคุณเชื่อมต่อกับเครือข่ายเสมือน Azure ที่ใช้โดยเกตเวย์ข้อมูลเครือข่ายเสมือนการสตรีมสําหรับการแทรกเครือข่ายเสมือนของตัวเชื่อมต่อ Eventstream (ตัวอย่างเช่น ผ่านปลายทางส่วนตัว)

    สกรีนช็อตที่แสดงหน้าแรกของการตั้งค่าการเชื่อมต่อ Amazon MSK Kafka

ข้อกําหนดของใบรับรอง TLS/mTLS

หากคุณกําหนดค่า <การตั้งค่า c0>TLS/mTLS โปรดดูส่วนนี้สําหรับข้อมูลจําเพาะของรูปแบบใบรับรองและข้อผิดพลาดในการกําหนดค่าที่พบบ่อยเมื่ออัปโหลดไปยัง Azure Key Vault

ห่วงโซ่ใบรับรอง

ประกาศนียบัตร ขนาดคีย์ ลงนามโดย จุดประสงค์
ใบรับรอง CA RSA 4096 บิต ลงนามด้วยตนเอง Trust anchor - โบรกเกอร์ตรวจสอบใบรับรองลูกค้ากับ CA นี้
ใบรับรองเซิร์ฟเวอร์ RSA 2048 บิต CA ตัวตนของโบรกเกอร์ - ลูกค้ายืนยันว่าโบรกเกอร์เป็นคนที่อ้างว่าเป็น
ใบรับรองลูกค้า RSA 2048 บิต CA ข้อมูลประจําตัวไคลเอ็นต์ - โบรกเกอร์ตรวจสอบว่าตัวเชื่อมต่อได้รับอนุญาต

ข้อกําหนด SAN ของใบรับรองเซิร์ฟเวอร์

ใบรับรองเซิร์ฟเวอร์ ต้องมี ที่อยู่ IP ของโบรกเกอร์และชื่อ DNS ในชื่อทางเลือกของหัวเรื่อง (SAN) เพื่อผ่านการยืนยันชื่อโฮสต์ (ssl.endpoint.identification.algorithm=https):

subjectAltName:
  DNS.1 = {broker FQDN}
  DNS.2 = localhost
  IP.1  = {broker public IP}
  IP.2  = 127.0.0.1

อัปโหลดใบรับรองไปยัง Azure Key Vault

ใบรับรองจะถูกอัปโหลดเป็นออบเจ็กต์ใบรับรอง Azure Key Vault ในรูปแบบ PEM ไฟล์บันเดิล PEM เป็นใบรับรอง + คีย์ส่วนตัวที่เชื่อมต่อกันในไฟล์เดียว:

-----BEGIN CERTIFICATE-----
MIIExjCCA...
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIB...
-----END RSA PRIVATE KEY-----

ใช้ นโยบายการนําเข้า ที่ตรงกับคุณสมบัติหลัก:

{
  "secretProperties": {
    "contentType": "application/x-pem-file"
  },
  "keyProperties": {
    "exportable": true,
    "keyType": "RSA",
    "keySize": 4096,
    "reuseKey": false
  },
  "issuerParameters": {
    "name": "Unknown"
  }
}

เมื่อต้องการนําเข้าใบรับรอง ให้เรียกใช้คําสั่งต่อไปนี้:

az keyvault certificate import \
  --vault-name {kvName} \
  --name {certName} \
  --file {pemBundleFile} \
  --policy @{policyFile}

ข้อผิดพลาดทั่วไป

หลีก เลี่ยง ทําสิ่งนี้แทน
อัปโหลดเป็น PKCS#12/PFX ใช้รูปแบบ PEM กับ contentType: application/x-pem-file.
อัปโหลดใบรับรองโดยไม่ต้องใช้คีย์ส่วนตัว บันเดิล PEM ต้องมีทั้งใบรับรองและคีย์
ตั้งค่า keySize: 2048 สําหรับคีย์ 4096 บิต keySizeค่าต้องตรงกับขนาดคีย์จริง
ตั้ง ค่า issuerParameters.name: "Self" ใช้สําหรับ "Unknown" ใบรับรองที่ลงนามภายนอก
ใช้การลงท้ายบรรทัดของ Windows (CRLF) ไฟล์ PEM ต้องใช้การลงท้ายบรรทัด Unix (LF เท่านั้น)

ดูเหตุการณ์ที่อัปเดตแล้ว

คุณสามารถดูแหล่งที่มาของ Amazon MSK Kafka ที่เพิ่มลงในสตรีมเหตุการณ์ของคุณในโหมดแก้ไข

สกรีนช็อตที่แสดงแหล่งข้อมูล Amazon MSK Kafka ในมุมมองแก้ไข

หลังจากที่คุณทําตามขั้นตอนเหล่านี้เสร็จแล้ว แหล่งที่มาของ Amazon MSK Kafka จะพร้อมใช้งานสําหรับการแสดงภาพในมุมมองสด

สกรีนช็อตที่แสดงแหล่งข้อมูล Amazon MSK Kafka ในมุมมองสด

Note

หากต้องการดูตัวอย่างเหตุการณ์จากแหล่งที่มาของ Amazon MSK Kafka นี้ ให้ตรวจสอบให้แน่ใจว่าคีย์ที่ใช้ในการสร้างการเชื่อมต่อระบบคลาวด์มีสิทธิ์ในการอ่านสําหรับกลุ่มผู้บริโภคที่มีคํานําหน้าด้วย "preview-"

สําหรับแหล่งที่มาของ Amazon MSK Kafka สามารถดูตัวอย่างได้เฉพาะข้อความในรูปแบบ JSON เท่านั้น

สกรีนช็อตที่แสดงการแสดงตัวอย่างข้อมูลต้นทาง Amazon MSK Kafka

ตัวเชื่อมต่ออื่นๆ: