เอกสารนี้นี้ได้รับการอัพเดตแล้ว
คำแปลเป็น ภาษาไทย ยังไม่เสร็จสมบูรณ์
ภาษาอังกฤษที่อัพเดต: 29 มิ.ย. 2023

การนำไปใช้ด้วย Amazon Web Services

เอกสารนี้จะแสดงให้คุณเห็นวิธีใช้ Amazon Web Services (AWS) เพื่อนำ WhatsApp Business API ไปใช้ กระบวนการนี้แบ่งออกได้เป็น 2 ขั้นตอนหลักๆ ดังนี้

  1. การปรับใช้ไคลเอ็นต์ WhatsApp Business API
  2. การกำหนดค่าไคลเอ็นต์ WhatsApp Business API

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

เอกสารนี้จะแนะนำเทมเพลต AWS แบบใหม่ ซึ่งเราได้ทดสอบมาแล้วว่ารองรับปริมาณการส่งข้อความได้มากขึ้นและเสถียรขึ้น หากคุณมองหาเทมเพลต AWS แบบเก่า โปรดดูที่คลัง AWS

เริ่มต้นใช้งาน

ก่อนเริ่มต้น คุณจะต้องดำเนินการดังต่อไปนี้

ตั้งค่า ID บัญชี AWS

คุณต้องตั้งค่าบัญชี AWS ให้ถูกต้องและทำความคุ้นเคยในการทำงานกับ AWS WhatsApp มาพร้อมเทมเพลต CloudFormation เพื่อให้นำไคลเอ็นต์ WhatsApp Business API ไปใช้ได้อย่างง่ายดาย โปรดดูข้อมูลเพิ่มเติมที่ศูนย์แหล่งข้อมูลการเริ่มต้นใช้งาน AWS

สร้างคู่คีย์ AWS

คุณต้องสร้างคู่คีย์ใหม่เพื่อเข้าถึงอินสแตนซ์ EC2 ที่สร้างขึ้นโดยเทมเพลต WhatsApp Business API นอกจากนี้ คุณยังสามารถใช้คู่คีย์ที่สร้างไว้ก่อนหน้านี้ได้อีกด้วย โปรดดูข้อมูลเกี่ยวกับการสร้างและใช้คู่คีย์กับอินสแตนซ์ EC2 ที่เอกสารประกอบเกี่ยวกับคู่คีย์ EC2 ของ Amazon

คุณจำเป็นต้องสร้างคู่คีย์โดยใช้ภูมิภาคที่คุณจะนำ WhatsApp Business API ไปใช้

สมัครใช้บริการอิมเมจ CentOS 7

ไคลเอ็นต์ WhatsApp Business API จะใช้ประโยชน์จากอิมเมจ CentOS 7 (มีอยู่ใน AWS Marketplace) คุณควรอ่านและยอมรับข้อกำหนดและเงื่อนไขก่อนใช้เทมเพลต หากไม่ยอมรับข้อกำหนดดังกล่าว จะทำให้ไม่สามารถสร้างเทมเพลตได้

หากต้องการอ่านและยอมรับอิมเมจ CentOS 7 AMI ให้ดำเนินการดังนี้

  1. ไปที่หน้า AWS Marketplace: CentOS 7 (x86_64) - with Updates HVM
  2. คลิกที่ Continue to Subscribe (ดำเนินการต่อเพื่อสมัครใช้บริการ) ที่มุมขวาบน จากนั้นคลิกปุ่ม Accept Terms (ยอมรับข้อกำหนด)
การยอมรับข้อกำหนดของ CentOS

ภูมิภาคที่รองรับ

เทมเพลต WhatsApp Business API จะใช้ประเภททรัพยากร EFS ซึ่งมีให้ใช้ในภูมิภาค AWS บางภูมิภาคเท่านั้น ขณะนี้ มีเพียงภูมิภาคต่อไปนี้เท่านั้นที่ใช้ประเภททรัพยากรดังกล่าวได้

  • เวอร์จิเนียเหนือ (us-east-1)
  • โอไฮโอ (us-east-2)
  • แคลิฟอร์เนียเหนือ (us-west-1)
  • ออริกอน (us-west-2)
  • มุมไบ (ap-south-1)
  • โซล (ap-northeast-2)
  • สิงคโปร์ (ap-southest-1)
  • ซิดนีย์ (ap-southest-2)
  • โตเกียว (ap-northeast-1)
  • แฟรงก์เฟิร์ต (eu-central-1)
  • ไอร์แลนด์ (eu-west-1)

WhatsApp จะกำหนดว่าเราสามารถมอบตัวเลือกอื่นที่มีอยู่ให้แก่ภูมิภาคทั้งหมดได้หรือไม่ ทั้งนี้ขึ้นอยู่กับการทดสอบเบื้องต้น

คำถามที่พบบ่อย

การนำไปใช้

ขั้นตอนที่ 1: [ไม่บังคับ] การตั้งค่าเครือข่าย

โดยทั่วไปแล้ว ระบบจะสร้างเครือข่าย Virtual Private Cloud (VPC) เมื่อคุณสมัครใช้งานบัญชีผู้ใช้ AWS นอกจากนี้ ยังต้องมีการกำหนดค่าต่างๆ และการจำกัดการควบคุมการเข้าถึงที่สอดคล้องกับธุรกิจหนึ่งโดยเฉพาะ

คุณสามารถข้ามขั้นตอนนี้ได้ หากสร้างโครงสร้างพื้นฐานของเครือข่าย VPC เรียบร้อยแล้ว แต่หากยัง คุณก็สามารถใช้เทมเพลตต่อไปนี้เพื่อสร้างโครงสร้างพื้นฐานของเครือข่ายบน AWS ได้

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

ข้อกำหนดของเครือข่าย

  • ต้องมีซับเน็ตอย่างน้อย 2 รายการในพื้นที่ต่างๆ ที่ให้บริการภายในภูมิภาค มิฉะนั้น จะไม่สามารถสร้างเทมเพลตขณะที่สร้างทรัพยากร RDS (ฐานข้อมูล)
  • ซึ่งควรจะอนุญาตให้มีการเข้าถึงแบบ Inbound ไปยัง HTTP (พอร์ต: 80), HTTPS (พอร์ต: 443) และ SSH (พอร์ต: 22) เราขอแนะนำเป็นอย่างยิ่งให้ใช้ HTTPS และหลีกเลี่ยง HTTP เพื่อความปลอดภัย

หากต้องการนำเทมเพลตเครือข่ายไปใช้ ให้ดำเนินการดังนี้

  1. ไปที่คอนโซล CloudFormation สำหรับภูมิภาคของคุณ (เช่น eu-west-1)
  2. เลือก Create a stack (สร้างสแต็ก)
  3. เลือก Amazon S3 URL เป็นแหล่งที่มาของเทมเพลต
    สร้างสแต็ก
  4. ป้อน https://wa-biz-cfn.s3.amazonaws.com/wa_ent_net.yml และคลิก Next (ถัดไป) หรือคลิก

    นำเทมเพลตไปใช้

    แล้วเลือกภูมิภาคที่เหมาะสม (หากต้องการ) จากมุมขวาบนของเว็บเพจ
  5. บนหน้าจอ Specify stack details (ระบุรายละเอียดสแต็ก) โปรดป้อนค่าพารามิเตอร์ตามตารางด้านล่าง

พารามิเตอร์

ชื่อคำอธิบาย

Stack name

จำเป็นต้องระบุ

ชื่อสแต็กที่จะสร้าง

การกำหนดค่าพื้นที่ที่พร้อมให้บริการ

ชื่อคำอธิบาย

Availability zones

จำเป็นต้องระบุ

พื้นที่ที่พร้อมให้บริการ (AZ) สำหรับการสร้าง VPC
เทมเพลตกำหนดให้ต้องเลือก AZ อย่างน้อย 2 รายการ สำหรับสภาพแวดล้อมที่ใช้งานจริง ขอแนะนำให้เลือก AZ อย่างน้อย 3 รายการ

Number of availability zones

จำเป็นต้องระบุ

จำนวนพื้นที่ที่พร้อมให้บริการซึ่งคุณได้เลือกไว้

การกำหนดค่า VPC

ชื่อคำอธิบาย

IP address range

จำเป็นต้องระบุ

ช่วงที่อยู่ IP (CIDR) สำหรับ VPC นี้

Tenancy

จำเป็นต้องระบุ

ระบบการทำงาน VPC
ตัวเลือก:default, dedicated

การกำหนดค่าซับเน็ตสาธารณะ

ชื่อคำอธิบาย

IP range - subnet #1

จำเป็นต้องระบุ

ช่วงที่อยู่ IP (CIDR) สำหรับซับเน็ตสาธารณะ

IP range - subnet #2

จำเป็นต้องระบุ

ช่วงที่อยู่ IP (CIDR) สำหรับซับเน็ตสาธารณะ

IP range - subnet #3

ระบุหรือไม่ก็ได้

จำเป็นต้องระบุ หากจำนวนพื้นที่ที่พร้อมให้บริการมากกว่า 2

IP range - subnet #4

ระบุหรือไม่ก็ได้

จำเป็นต้องระบุ หากจำนวนพื้นที่ที่พร้อมให้บริการมากกว่า 3

การกำหนดค่าซับเน็ตส่วนตัว

ชื่อคำอธิบาย

Create private subnets?

จำเป็นต้องระบุ

ระบุหรือไม่ก็ได้true (ค่าเริ่มต้น), false
หากไม่จำเป็นต้องใช้ซับเน็ตส่วนตัวด้วยเหตุผลบางประการ คุณสามารถตั้งค่าแฟล็กนี้เป็น false ได้

IP range - subnet #1

มีเงื่อนไข

จำเป็นต้องระบุ หากตั้งค่าการสร้างซับเน็ตส่วนตัวเป็น true

IP range - subnet #2

มีเงื่อนไข

จำเป็นต้องระบุ หากตั้งค่าการสร้างซับเน็ตส่วนตัวเป็น true

IP range - subnet #3

มีเงื่อนไข

จำเป็นต้องระบุ หากตั้งค่าการสร้างซับเน็ตส่วนตัวเป็น true และจำนวน AZ มากกว่า 2

IP range - subnet #4

มีเงื่อนไข

จำเป็นต้องระบุ หากตั้งค่าการสร้างซับเน็ตส่วนตัวเป็น true และจำนวน AZ มากกว่า 3

ขั้นตอนที่ 2: อัพโหลดไฟล์การกำหนดค่าสแต็ก DB และ Monitoring

ก่อนจะนำสแต็ก WhatsApp Business API ไปใช้บน AWS ก่อนอื่น คุณจำเป็นต้องอัพโหลดไฟล์การกำหนดค่าของสแต็กย่อยที่มีการอ้างอิงไปยังบักเก็ต S3 ที่คุณมีสิทธิ์ในการอ่าน

  1. สร้างบักเก็ต S3 ใหม่ หรือใช้บักเก็ต S3 ที่มีอยู่ซึ่งคุณมีสิทธิ์ในการอ่าน
  2. ดาวน์โหลดไฟล์ wa_ent_db.yml และไฟล์ wa_ent_monitoring.yml จาก GitHub และอัพโหลดทั้ง 2 ไฟล์ไปยังบักเก็ต S3 ที่กล่าวถึงในขั้นตอนที่ 1
  3. เลือกไฟล์ wa_ent_db.yml จากรายการ “Objects” (อ็อบเจ็กต์) และคัดลอก URL ของไฟล์ โดย URL ดังกล่าวควรอยู่ในรูปแบบ https://xxx.s3.<avalability_zone>.amazonaws.com/wa_ent_db.yml
  4. ในไฟล์ wa_ent.yml ให้แทนที่ค่าของ TemplateURL ใน dbStack ด้วย URL ของอ็อบเจ็กต์จากขั้นตอนที่ 3 และบันทึกไฟล์
  5. เลือกไฟล์ wa_ent_monitoring.yml จากรายการ “Objects” (อ็อบเจ็กต์) และคัดลอก URL ของไฟล์ โดย URL ดังกล่าวควรอยู่ในรูปแบบ https://xxx.s3.<avalability_zone>.amazonaws.com/wa_ent_monitoring.yml
  6. ในไฟล์ wa_ent.yml ให้แทนที่ค่าของ TemplateURL ในสแต็ก Monitoring ด้วย URL ของอ็อบเจ็กต์จากขั้นตอนที่ 5 และบันทึกไฟล์
อัพโหลดไปยังบักเก็ต S3

ขั้นตอนที่ 3: การนำ WhatsApp Business API ไปใช้

WhatsApp Business API เป็นเทมเพลตหลักและจะสร้างทรัพยากรทั้งหมด (ยกเว้นเครือข่าย) ที่จำเป็นสำหรับไคลเอ็นต์ WhatsApp Business API ตามที่ได้กล่าวไปแล้วก่อนหน้านี้ เทมเพลตนี้จะสร้างทรัพยากรฐานข้อมูลด้วย หากต้องใช้

หากต้องการนำไคลเอ็นต์ WhatsApp Business API ไปใช้ ให้ดำเนินการดังนี้

  1. ไปที่คอนโซล CloudFormation สำหรับภูมิภาคของคุณ (เช่น eu-west-1)
  2. เลือก Create a stack (สร้างสแต็ก)
  3. ดาวน์โหลดไฟล์ wa_ent.yml จาก GitHub และบันทึกไว้ในเครื่อง
  4. เลือก Upload a template file (อัพโหลดไฟล์เทมเพลต) เป็นแหล่งที่มาของเทมเพลต และอัพโหลดไฟล์เทมเพลตที่ดาวน์โหลดมาจากขั้นตอนที่ 3
    สร้างสแต็ก
  5. คลิก Next (ถัดไป)
  6. จากนั้น คุณจะสามารถป้อนพารามิเตอร์ต่างๆ ได้ โปรดดูคำอธิบายพารามิเตอร์ที่ตารางด้านล่าง
  7. หลังจากตั้งค่าพารามิเตอร์ครบทั้งหมดแล้ว (ในตารางด้านล่าง) ให้คลิก Next (ถัดไป) ไปยังหน้า Configure stack options (กำหนดค่าตัวเลือกสแต็ก) คุณอาจดำเนินการเปลี่ยนแปลงต่างๆ ที่จำเป็นได้ตามการกำหนดลักษณะของคุณ และคลิก Next (ถัดไป)
  8. ในหน้า Review stack (ตรวจสอบสแต็ก) คุณจะเห็นข้อมูลสรุปเกี่ยวกับค่าพารามิเตอร์และตัวเลือกสแต็ก หลังจากตรวจสอบยืนยันแล้ว ในส่วน “Capabilities” (ความสามารถ) ให้ทำเครื่องหมายทั้ง 2 ช่อง และคลิก Submit (ส่ง) เพื่อเริ่มสร้างสแต็ก
    หมายเหตุ: การนำไปใช้จะใช้เวลาประมาณ 20-30 นาที

พารามิเตอร์

ชื่อคำอธิบาย

Stack name

จำเป็นต้องระบุ

ชื่อสแต็กที่จะสร้าง

ชื่อสแต็กต้องมีอักขระไม่เกิน 22 ตัว หมายเหตุ: ในกรณีที่เป็นการนำไปใช้ในภูมิภาค ap-southeast-1, ap-southeast-2, ap-northeast-1 หรือ ap-northeast-2 ชื่อสแต็กจะต้องมีอักขระไม่เกิน 8 ตัว

หาก stack name มีจำนวนอักขระมากกว่าที่กำหนดไว้ การสร้างสแต็กจะติดขัดและไม่สำเร็จ เนื่องจากสแต็กดังกล่าวจะไม่สามารถสร้างใบรับรอง SSL ได้

การกำหนดค่าทั่วไป

ชื่อคำอธิบาย

High Availability

ระบุหรือไม่ก็ได้

เปิดใช้งานฟีเจอร์ความพร้อมใช้งานสูง


ค่าเริ่มต้น:enabled

Desired Throughput

จำเป็นต้องระบุ

จำนวนข้อความที่คุณต้องการส่งต่อวินาที


เมื่อใช้ร่วมกับตัวเลือก Type of Message ระบบจะเลือกและกำหนดค่าทรัพยากรเซิร์ฟเวอร์และฐานข้อมูลโดยอัตโนมัติให้เป็นไปตามปริมาณงานที่ต้องการ เมื่อส่งข้อความประเภทที่เลือกไว้

Type of Message

จำเป็นต้องระบุ

ประเภทข้อความหลักที่คุณต้องการรับส่ง


เมื่อใช้ร่วมกับตัวเลือก Desired Throughput ระบบจะเลือกและกำหนดค่าทรัพยากรเซิร์ฟเวอร์และฐานข้อมูลโดยอัตโนมัติให้เป็นไปตามปริมาณงานที่ต้องการ เมื่อส่งข้อความประเภทที่เลือกไว้

Host exporter for instance monitoring

ระบุหรือไม่ก็ได้

ติดตั้ง node-exporter บนโฮสต์ CoreApp แต่ละรายการเพื่อตรวจสอบอินสแตนซ์


ค่าเริ่มต้น:enabled

การกำหนดค่าเครือข่าย

ชื่อคำอธิบาย

Network Stack Name

จำเป็นต้องระบุ

ชื่อสแต็ก CloudFormation ของเครือข่ายที่สร้างขึ้นในขั้นตอนการตั้งค่าเครือข่าย

Number of subnets

จำเป็นต้องระบุ

จำนวนซับเน็ตที่เลือก


ในตอนนี้ เรารองรับซับเน็ตเพียง 2 รายการสำหรับการนำไปใช้ เพื่อให้กระจายงาน ECS ให้กับโฮสต์ทั้งหมดได้เท่าๆ กัน

Load balancer scheme

จำเป็นต้องระบุ

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

การกำหนดค่าคอนเทนเนอร์

ชื่อคำอธิบาย

Keypair to use

จำเป็นต้องระบุ

คู่คีย์ที่เหมาะสมในการเข้าถึงอินสแตนซ์ EC2 (หากจำเป็น)

WA Enterprise container registry

ระบุหรือไม่ก็ได้

รายการนี้มีไว้เพื่อรองรับการเปลี่ยนแปลงในอนาคตและรองรับไคลเอ็นต์ WhatsApp Business API สำหรับทดลอง ค่าเริ่มต้นควรเหมาะสมสำหรับกรณีส่วนใหญ่

WA Enterprise Client version

จำเป็นต้องระบุ

ขอแนะนำให้ใช้เวอร์ชั่นล่าสุดซึ่งมีความเสถียรอยู่เสมอ (โปรดดูเวอร์ชั่นล่าสุดที่บันทึกการเปลี่ยนแปลง)
รูปแบบ:v2.yy.xx

เวอร์ชั่นของไคลเอ็นต์ WhatsApp Business API จะขึ้นต้นด้วย “v” อยู่เสมอ เว้นแต่จะระบุไว้เป็นอย่างอื่นโดยชัดเจน หากใช้เวอร์ชั่นที่ไม่ถูกต้อง จะสร้างสแต็กไม่ได้

EBS volume size

จำเป็นต้องระบุ

ขอแนะนำให้เลือกขนาด 32 GB ขึ้นไปสำหรับปริมาณงานที่ใช้งานจริง

การกำหนดค่าฐานข้อมูล

ชื่อคำอธิบาย

Store configuration in DB

ระบุหรือไม่ก็ได้

เปิดใช้งานการจัดเก็บข้อมูลการกำหนดค่าในฐานข้อมูล
ตัวเลือก:true (ค่าเริ่มต้น), false
การตั้งค่าเป็น false จะเป็นการปิดใช้งานการจัดเก็บข้อมูลการกำหนดค่าในฐานข้อมูลและจัดเก็บไว้ในไฟล์แทน

Existing DB hostname

ระบุหรือไม่ก็ได้

ชื่อโฮสต์ฐานข้อมูลที่มีอยู่
หากมีอินสแตนซ์ฐานข้อมูล MySQL โดยเฉพาะสำหรับไคลเอ็นต์ WhatsApp Business API อยู่แล้ว คุณสามารถป้อนชื่อโฮสต์ได้ที่นี่
หากปล่อยว่าง ระบบจะสร้างอินสแตนซ์ Amazon Aurora ใหม่ขึ้นมา หากต้องการปริมาณงานในระดับสูงและเสถียร เราขอแนะนำอย่างยิ่งให้สร้างฐานข้อมูล Aurora ใหม่ขึ้นมา หรือใช้ฐานข้อมูล Aurora ที่มีอยู่ซึ่งเทมเพลตนี้ได้สร้างขึ้นมาก่อนหน้านี้

Administrator name

จำเป็นต้องระบุ

ชื่อผู้ดูแลสำหรับการเข้าถึงฐานข้อมูล

Administrator password

จำเป็นต้องระบุ

รหัสผ่านของผู้ดูแลสำหรับการเข้าถึงฐานข้อมูล

รหัสผ่านของฐานข้อมูลไม่ควรมีอักขระ ?{}&~!()^/"@

Server port

จำเป็นต้องระบุ

หมายเลขพอร์ตในการเข้าถึงแบ็กเอนด์ของฐานข้อมูล

Persist DB Connection

ระบุหรือไม่ก็ได้

ระบุว่าจะคงการเชื่อมต่อฐานข้อมูลสำหรับคอนเทนเนอร์บนเว็บเอาไว้หรือไม่


ค่าเริ่มต้น:enabled

DB Idle Connection Timeout

ระบุหรือไม่ก็ได้

ระยะเวลาหลังจากที่ฐานข้อมูลปิดการเชื่อมต่อต่างๆ ที่ไม่ได้ใช้งาน โดยมีหน่วยเป็นมิลลิวินาที
ค่าเริ่มต้น: 180,000 มิลลิวินาที

การกำหนดค่าการลงบันทึก

ชื่อคำอธิบาย

Logging driver for container logs

ระบุหรือไม่ก็ได้

ไดรเวอร์การลงบันทึกสำหรับบันทึกคอนเทนเนอร์
ตัวเลือก:json-file, awslogs (ค่าเริ่มต้น)
ค่า json-file จะจัดเก็บบันทึกไว้บนโฮสต์ EC2 ค่า awslogs จะสตรีมบันทึกคอนเทนเนอร์ทั้งหมดไปยัง CloudWatch

Maximum container log file size

ระบุหรือไม่ก็ได้

ขนาดสูงสุดของไฟล์บันทึกคอนเทนเนอร์โดยมีหน่วยเป็น MB ก่อนจะมีการหมุนเวียน

ค่าที่อนุญาตอยู่ที่ตั้งแต่ 1 ถึง 250 ค่าเริ่มต้น: 50

Maximum number of container log files

ระบุหรือไม่ก็ได้

จำนวนไฟล์บันทึกสูงสุดที่จะจัดเก็บต่อคอนเทนเนอร์ 1 รายการ
ระบบจะลบคอนเทนเนอร์ที่ถูกหยุดการทำงานออกจากโฮสต์ในท้ายที่สุด ในกรณีเหล่านี้ ระบบจะลบไฟล์บันทึกทั้งหมดที่จัดเก็บไว้สำหรับคอนเทนเนอร์นั้น

ค่าที่อนุญาตอยู่ที่ตั้งแต่ 1 ถึง 30 ค่าเริ่มต้น: 7

Days to retain CloudWatch logs

ระบุหรือไม่ก็ได้

จำนวนวันที่จะจัดเก็บบันทึกไว้ใน CloudWatch
เลือกมา 1 ค่าจากที่มีให้ในรายการ

ค่าเริ่มต้น: 7

การกำหนดค่าระบบไฟล์

ชื่อคำอธิบาย

File system identifier

ไม่ใช้

ให้ปล่อยพารามิเตอร์นี้ว่างไว้

การกำหนดค่าการรักษาความปลอดภัย

ชื่อคำอธิบาย

Key to encrypt DB & EFS

ระบุหรือไม่ก็ได้

โดยค่าเริ่มต้น ระบบจะใช้คีย์บริการ AWS (ตัวเลือก Default-Key) เพื่อเข้ารหัสข้อมูล DB และ EFS ที่จัดเก็บ ตัวเลือกอื่นๆ มีดังนี้

  • Unencrypted: ข้อมูลที่จัดเก็บไม่มีการเข้ารหัส
  • Create-New-Key: ระบบจะสร้างและใช้คีย์ KMS ใหม่ในการเข้ารหัสข้อมูล
  • User-Provided-Key: คุณสามารถระบุ ID คีย์ KMS ที่ใช้ในการเข้ารหัสข้อมูลได้ ให้ปล่อยว่าง หากเลือกตัวเลือกอื่น

User provided key id

ระบุหรือไม่ก็ได้

คุณสามารถระบุ ID คีย์ KMS ที่ใช้ในการเข้ารหัสข้อมูลได้ ให้ปล่อยว่าง หากไม่ได้เลือกตัวเลือก User-Provided-Key

DB connection encryption

ระบุหรือไม่ก็ได้

โดยค่าเริ่มต้น ข้อมูลที่อยู่ระหว่างการถ่ายโอนไปยังฐานข้อมูลจะได้รับการเข้ารหัส โดยในปัจจุบันจะใช้ได้กับ Coreapp เท่านั้น ระบบยังไม่รองรับการเข้ารหัส Webapp นอกจากนี้ เมื่อใช้เอนจิ้นฐานข้อมูลใหม่ แม้ว่าจะปิดใช้งานตัวเลือกนี้ แต่ Coreapp ก็จะเข้ารหัส ทั้งนี้จะไม่ใช้การตรวจสอบยืนยัน (ข้อมูลระบุตัวตนของ) ใบรับรองเซิร์ฟเวอร์

CA certificate for DB connection

ระบุหรือไม่ก็ได้

ค่าเริ่มต้นจะมีชุดใบรับรอง RDS อยู่ หากใช้ฐานข้อมูลที่ไม่ใช่ RDS คุณสามารถระบุชุดใบรับรอง CA ที่เหมาะสมได้ หรือจะปล่อยว่างไว้ก็ได้ ค่าเริ่มต้นนั้นเพียงพอที่จะทำให้การเชื่อมต่อกับฐานข้อมูลเป็นไปอย่างปลอดภัย

Client certificate for DB connection

ระบุหรือไม่ก็ได้

ใบรับรองไคลเอ็นต์สำหรับการเชื่อมต่อฐานข้อมูล

Client key for DB connection

ระบุหรือไม่ก็ได้

คีย์ไคลเอ็นต์สำหรับการเชื่อมต่อฐานข้อมูล

จุดเข้าใช้งาน WhatsApp Business API

คุณจำเป็นต้องระบุพารามิเตอร์เหล่านี้สำหรับแดชบอร์ด Grafana ในการเรียกดูเกณฑ์ชี้วัดของแอพพลิเคชั่นเพื่อจุดประสงค์ในการตรวจสอบ

ชื่อคำอธิบาย

WAWebUsername

จำเป็นต้องระบุ

ระบุชื่อผู้ใช้ของ WhatsApp Business API

WAWebPassword

จำเป็นต้องระบุ

ระบุรหัสผ่านสำหรับ WAWebUsername รายการนี้จะเป็นรหัสผ่านใหม่หลังจากที่คุณเปลี่ยนรหัสผ่านเริ่มต้นเมื่อเข้าสู่ระบบเป็นครั้งแรก

Grafana

ชื่อคำอธิบาย

GrafanaAdminPassword

จำเป็นต้องระบุ

ระบุรหัสผ่านที่ใช้เป็นรหัสผ่านในการเข้าสู่ระบบสำหรับแดชบอร์ด Grafana เมื่อมีการสร้างสแต็กขึ้น

GrafanaEnableSmtp

ระบุหรือไม่ก็ได้

ระบุว่ามีการเปิดใช้งาน SMTP เพื่อตั้งค่าการแจ้งเตือนทางอีเมลหรือไม่ ค่าที่ถูกต้อง ได้แก่ 0 สำหรับปิดใช้งาน และ 1 สำหรับเปิดใช้งาน

ค่าเริ่มต้น:0 (ปิดใช้งาน)

GrafanaSmtpHost

ระบุหรือไม่ก็ได้

โฮสต์ SMTP ที่ใช้ในการแจ้งเตือนทางอีเมล ตัวอย่างเช่น smtp.gmail.com:465

GrafanaSmtpUser

ระบุหรือไม่ก็ได้

ระบุชื่อผู้ใช้ SMTP ที่ใช้ในการแจ้งเตือนทางอีเมล

GrafanaSmtpPassword

ระบุหรือไม่ก็ได้

ระบุรหัสผ่าน SMTP ที่ใช้ในการแจ้งเตือนทางอีเมล

เอาต์พุตหลังจากการนำไปใช้

เมื่อสร้างเทมเพลตสำเร็จแล้ว พารามิเตอร์ต่อไปนี้จะแสดงขึ้น

  • ชื่อโหลดบาลานเซอร์: ชื่อโฮสต์ของโหลดบาลานเซอร์ที่เข้าถึงไคลเอ็นต์ API แพลตฟอร์ม WhatsApp Business
  • ชื่อโฮสต์ฐานข้อมูล: ชื่อโฮสต์ของฐานข้อมูลที่ระบบสร้างขึ้นหรือจัดเตรียมให้ในระหว่างที่สร้างเทมเพลต
  • หมายเลขพอร์ตของฐานข้อมูล: หมายเลขพอร์ตสำหรับการเชื่อมต่อฐานข้อมูล
  • ชื่อคลัสเตอร์ ECS: ชื่อของคลัสเตอร์ ECS ที่สร้างขึ้น
  • จำนวนวันที่เก็บรักษาบันทึกไว้: จำนวนวันที่จะเก็บรักษาบันทึกไว้
  • CA การเชื่อมต่อ DB: ค่าของ CA การเชื่อมต่อ DB (หากกำหนดค่าไว้)
  • ใบรับรองการเชื่อมต่อ DB: ค่าของใบรับรองการเชื่อมต่อ DB (หากกำหนดค่าไว้)
  • คีย์การเชื่อมต่อ DB: ค่าของคีย์การเชื่อมต่อ DB (หากกำหนดค่าไว้)
  • Grafana: URL ของแดชบอร์ด Grafana
  • ShardCount: จำนวนชาร์ดที่จะกำหนดค่าสำหรับ API แพลตฟอร์ม WhatsApp Business

แก้ไขกฎการรักษาความปลอดภัย SSH

โดยค่าเริ่มต้น กฎการรักษาความปลอดภัยที่สแต็กสร้างขึ้นจะเปิดให้การเข้าใช้งานทั้งหมดสามารถเข้าถึงอินสแตนซ์ EC2 ได้ผ่าน SSH รวมถึงตำแหน่งข้อมูล API และแดชบอร์ด Grafana ผ่าน HTTPs ตลอดจนคอนเทนเนอร์ cadvisor และ Prometheus เราขอแนะนำเป็นอย่างยิ่งให้ปิดสิทธิ์การเข้าถึงที่ไม่จำเป็นทั้งหมดเพื่อความปลอดภัย ส่วนนี้จะอธิบายขั้นตอนต่างๆ ในการอัพเดตกฎการรักษาความปลอดภัย SSH ให้เห็นเป็นตัวอย่าง คุณควรจำกัดสิทธิ์การเข้าถึง SSH เอาไว้ให้เฉพาะการเข้าใช้งานที่คุณไว้วางใจเท่านั้นอยู่เสมอ

  1. ในคอนโซล “EC2 - Security Groups” (EC2 - กลุ่มการรักษาความปลอดภัย) (ตัวอย่างเช่น คอนโซลการจัดการ EC2 (amazon.com)) ให้ดำเนินการดังนี้
    1. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
    2. เลือกกลุ่มการรักษาความปลอดภัยที่มี <stackName>-EcsSecurityGroup แล้วสลับไปที่แท็บ Inbound Rules (กฎขาเข้า)
      แก้ไขกฎขาเข้า
    3. เลือก Edit inbound rules (แก้ไขกฎขาเข้า) อัพเดตคอลัมน์ Source (แหล่งที่มา) ให้อนุญาตเฉพาะการเข้าใช้งานที่ไว้วางใจเท่านั้น (เช่น “My IP” (IP ของฉัน)) เพื่อเข้าถึงโฮสต์ EC2 ผ่าน SSH
    4. หลังจากปรับกฎการรักษาความปลอดภัยครบทั้งหมดแล้ว ให้คลิก Save rules (บันทึกกฎ) เพื่อนำการเปลี่ยนแปลงไปใช้
    5. ดำเนินการเปลี่ยนแปลงเหล่านี้ซ้ำอีกครั้งกับกลุ่มการรักษาความปลอดภัยที่มี "<stackName>-ms-xxx-EcsSecurityGroup" เพื่อจำกัดสิทธิ์การเข้าถึง SSH สำหรับสแต็กการตรวจสอบ

การกำหนดค่าไคลเอ็นต์ WhatsApp Business API

เมื่อนำไคลเอ็นต์ WhatsApp Business API ไปใช้ได้สำเร็จ จะต้องมีการกำหนดค่าให้ทำงานได้

ขั้นตอนที่ 1: การลงทะเบียนโทรศัพท์

โปรดดูข้อมูลเชิงลึกเพิ่มเติมเกี่ยวกับการลงทะเบียนหมายเลขโทรศัพท์ที่คำแนะนำเกี่ยวกับหมายเลขโทรศัพท์

ดาวน์โหลดใบรับรองที่เข้ารหัสแบบ base64 จากบัญชี WhatsApp ของคุณในตัวจัดการธุรกิจของ Facebook ใต้แท็บหมายเลขโทรศัพท์ของตัวจัดการ WhatsApp

เมื่อคุณเลือกหมายเลขโทรศัพท์ที่ถูกต้องและมีใบรับรองที่เข้ารหัสแบบ base64 แล้ว คุณจำเป็นต้องลงทะเบียนไคลเอ็นต์ WhatsApp Business API ผ่านโหนด account โปรดดูข้อมูลเพิ่มเติมที่เอกสารประกอบเกี่ยวกับการลงทะเบียน

หากหมายเลขโทรศัพท์สามารถรับข้อความ SMS ได้ ให้ใช้วิธี SMS ในการเรียกดูรหัสการลงทะเบียน

คุณสามารถข้ามขั้นตอนนี้ได้ หากได้รับรหัสการลงทะเบียนจาก WhatsApp ไปแล้ว

ขั้นตอนที่ 2: ตั้งค่าชาร์ด

หลังจากสร้างสแต็ก คุณจำเป็นต้องใช้การเรียกใช้ API shards ในการเพิ่มจำนวนอินสแตนซ์ Coreapp ที่ใช้งานอยู่ เพื่อให้ได้ปริมาณงานตามที่ต้องการ คุณสามารถดูจำนวนชาร์ดได้ในส่วนเอาต์พุตของสแต็ก

ขั้นตอนที่ 3: อัพเดตการตั้งค่าแอพพลิเคชั่น

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

 {
    "settings": {
        "application": {
            "callback_backoff_delay_ms": 3000,
            "callback_persist": true,
            "db_garbagecollector_enable": false, # change this to true when there are no ongoing messaging campaigns
            "heartbeat_interval": 5,
            "max_callback_backoff_delay_ms": 900000,
            "media": {
                "auto_download": [
                    "document",
                    "image",
                    "video",
                    "voice",
                    "sticker",
                    "audio"
                ]
            },
            "notify_user_change_number": true,
            "pass_through": false,
            "sent_status": true,
            "show_security_notifications": false,
            "skip_referral_media_download": false,
            "unhealthy_interval": 30,
            "wa_id": "12245552741",
            "webhooks": {
                "max_concurrent_requests": 24,
                "message": {
                    "delivered": true,
                    "read": true,
                    "sent": true
                },
                "url": "<YOUR_WEBHOOK_SERVER_URL>"
            }
        }
    },
    "meta": {
        "api_status": "stable",
        "version": "2.41.3"
    }
}

      
      
    

ขั้นตอนที่ 4: [ไม่บังคับ] การกำหนดค่า SSL

ไคลเอ็นต์ WhatsApp Business API จะสร้างใบรับรองที่ลงชื่อด้วยตนเองโดยค่าเริ่มต้นเมื่อมีการสร้างขึ้น คุณอาจต้องใช้ใบรับรอง Certification Authority (CA) ที่ใช้ในการสร้างใบรับรองที่ลงชื่อด้วยตนเองในการตรวจสอบยืนยันตำแหน่งข้อมูลไคลเอ็นต์ WhatsApp Business API และหลีกเลี่ยงการแจ้งเตือนเกี่ยวกับการไว้วางใจใบรับรอง

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

ในการนำ AWS ไปใช้ ระบบจะสร้างใบรับรอง SSL โดยใช้ชื่อโฮสต์โหลดบาลานเซอร์ หากใช้ที่อยู่ IP แทนชื่อโฮสต์ในการเข้าถึง ระบบจะยังแสดงการแจ้งเตือนอยู่

WhatsApp จะรองรับการกำหนดค่าใบรับรอง SSL ที่ลูกค้าระบุในรุ่นต่อๆ ไป

ขั้นตอนที่ 5: การตรวจสอบการตั้งค่า

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

เมื่อรับข้อความได้สำเร็จ ไคลเอ็นต์ WhatsApp Business API จะ POST สถานะ/รายละเอียดของข้อความไปยัง Webhook ที่กำหนดค่าในขั้นตอนที่ 3

หากได้รับข้อความของคุณเรียบร้อยแล้ว คุณก็จะพร้อมแล้ว ขอแสดงความยินดีด้วย! โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับตำแหน่งข้อมูล API ที่ใช้งานได้ที่เอกสารอ้างอิง

การรีสตาร์ท Coreapp และ Webapp

หากต้องการรีสตาร์ทไคลเอ็นต์ WhatsApp Business API ในคอนโซล ECS (เช่น https://us-west-2.console.aws.amazon.com/ecs/home?region=us-west-2#/clusters) ให้ดำเนินการดังนี้

  1. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
  2. เลือกคลัสเตอร์ที่เหมาะสมจากรายการ
  3. ในแท็บ Services (บริการ) ให้เลือกชื่อบริการที่มี WAEntService
  4. เลือกแท็บ Tasks (งาน) โดยปกติแล้ว ควรจะมีเพียง 1 งานโดยที่ ID เป็นเลขฐานสิบหก
  5. ในหน้าต่าง Tasks (งาน) ให้คลิก Stop (หยุด) ที่มุมบนขวา และคลิก Stop (หยุด) อีกครั้งเมื่อได้รับข้อความแจ้ง

การดำเนินการนี้จะหยุดทั้ง Webapp และ CoreApp หลังจากนั้นไม่นาน โครงสร้างพื้นฐาน AWS จะรีสตาร์ททั้ง Webapp และ CoreApp

คุณอาจพบการหยุดทำงานเป็นเวลา 1 หรือ 2 นาที

การอัพเกรด

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

ส่วนนี้จะแนะนำวิธีอัพเกรดทั้งไคลเอ็นต์ WhatsApp Business API และเทมเพลต CloudFormation (CFN) การดำเนินการอัพเกรดจะส่งผลให้เกิดการหยุดทำงาน ดังนั้น อย่าส่งข้อความในช่วงนี้ ให้กลับมาส่งข้อความอีกครั้งหลังจากอัพเกรดเสร็จเรียบร้อยแล้วเท่านั้น

คุณสามารถอัพเกรดเทมเพลต CFN และเวอร์ชั่นไคลเอ็นต์ WhatsApp Business API พร้อมกันได้โดยดำเนินการดังนี้

  1. ในขั้นตอนที่ 5 ของคำแนะนำในการอัพเกรดไคลเอ็นต์ WhatsApp Business API ให้เลือก Replace current template (แทนที่เทมเพลตปัจจุบัน) แทน Use current template (ใช้เทมเพลตปัจจุบัน)
  2. ในส่วน “Specify template” (ระบุเทมเพลต) ให้เลือก “Upload a template file” (อัพโหลดไฟล์เทมเพลต) และเลือกไฟล์เทมเพลตล่าสุดที่ดาวน์โหลดมาจาก GitHub

การอัพเกรดไคลเอ็นต์ WhatsApp Business API

  1. ไปที่คอนโซล CFN (เช่น https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks?filter=active)
  2. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
  3. เลือกสแต็กไคลเอ็นต์ WhatsApp Business API ที่สร้างไว้อยู่แล้ว
  4. คลิก Update (อัพเดต)
  5. ในหน้า Prerequisite - Prepare template (ข้อกำหนดเบื้องต้น - จัดเตรียมเทมเพลต) ให้เลือกตัวเลือก Replace current template (แทนที่เทมเพลตปัจจุบัน) ในส่วน Specify template (ระบุเทมเพลต) ให้เลือก “Upload a template file” (อัพโหลดไฟล์เทมเพลต) และเลือกไฟล์เทมเพลตล่าสุดที่ดาวน์โหลดมาจาก GitHub คลิก Next (ถัดไป)
  6. ในหน้า Specify stack details (ระบุรายละเอียดสแต็ก) ให้เปลี่ยนเวอร์ชั่นไคลเอ็นต์ WhatsApp Business API (คอนเทนเนอร์) เป็นเวอร์ชั่นที่ต้องการ “อย่าเปลี่ยน” พารามิเตอร์อื่นใด คลิก Next (ถัดไป)
  7. ในหน้า Configure stack options (กำหนดค่าตัวเลือกสแต็ก) ให้คลิก Next (ถัดไป)
  8. ในหน้า Review (ตรวจสอบ) ให้เลือก “I acknowledge that AWS CloudFormation might create IAM resources with custom names” (ฉันรับทราบว่า CloudFormation ของ AWS อาจสร้างทรัพยากร IAM ที่มีชื่อแบบกำหนดเอง) ดูที่ส่วน Change set preview (เปลี่ยนแปลงตัวอย่างที่กำหนดไว้) เพื่อดูการเปลี่ยนแปลงที่ไม่คาดคิดต่างๆ หากมีการเปลี่ยนแปลงที่ไม่คาดคิดหรือคุณไม่แน่ใจ โปรดติดต่อขอรับความช่วยเหลือโดยตรงจาก WhatsApp คลิก Update stack (อัพเดตสแต็ก) คุณสามารถติดตามสถานะ “Stack Update” (การอัพเดตสแต็ก) ได้ในคอนโซล CFN และสถานะจะเปลี่ยนจาก UPDATE_IN_PROGRESS เป็น UPDATE_COMPLETE เมื่อการอัพเกรดเสร็จสิ้นแล้ว

การตรวจสอบยืนยันการอัพเกรดด่วน:ส่งข้อความ SMS และตรวจสอบยืนยันว่าการตอบกลับ API มีหมายเลขเวอร์ชั่นที่ถูกต้อง (กล่าวคือ เป็นเวอร์ชั่นใหม่) ให้ตรวจสอบยืนยันด้วยว่าผู้รับได้รับข้อความ

การอัพเกรดเทมเพลต CFN ของ WhatsApp

  1. ไปที่คอนโซล CFN (เช่น https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks?filter=active)
  2. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
  3. เลือกสแต็กไคลเอ็นต์ WhatsApp Business API ที่สร้างไว้อยู่แล้ว
  4. คลิก Update (อัพเดต)
  5. ในหน้า Prerequisite - Prepare template (ข้อกำหนดเบื้องต้น - จัดเตรียมเทมเพลต) ให้เลือกตัวเลือก Replace current template (แทนที่เทมเพลตปัจจุบัน) ในส่วน Specify template (ระบุเทมเพลต) ให้เลือก “Upload a template file” (อัพโหลดไฟล์เทมเพลต) และเลือกไฟล์เทมเพลตล่าสุดที่ดาวน์โหลดมาจาก GitHub คลิก Next (ถัดไป)
  6. ในหน้า Specify Stack Details (ระบุรายละเอียดสแต็ก) ให้ป้อนพารามิเตอร์ที่เหมาะสมตามข้อมูลในส่วนก่อนหน้า คลิก Next (ถัดไป)
  7. ในหน้า Configure Stack Options (กำหนดค่าตัวเลือกสแต็ก) ให้คลิก Next (ถัดไป)
  8. ในหน้า Review (ตรวจสอบ) ให้เลือก “I acknowledge that AWS CloudFormation might create IAM resources with custom names” (ฉันรับทราบว่า CloudFormation ของ AWS อาจสร้างทรัพยากร IAM ที่มีชื่อแบบกำหนดเอง) ดูที่ส่วน Change set preview (เปลี่ยนแปลงตัวอย่างที่กำหนดไว้) เพื่อดูการเปลี่ยนแปลงที่ไม่คาดคิดต่างๆ หากมีการเปลี่ยนแปลงที่ไม่คาดคิดหรือคุณไม่แน่ใจ โปรดติดต่อขอรับความช่วยเหลือโดยตรงจาก WhatsApp คลิก Update stack (อัพเดตสแต็ก) คุณสามารถติดตามสถานะ “Stack Update” (การอัพเดตสแต็ก) ได้ในคอนโซล CFN และสถานะจะเปลี่ยนจาก UPDATE_IN_PROGRESS เป็น UPDATE_COMPLETE เมื่อการอัพเกรดเสร็จสิ้นแล้ว

วิธีลดค่าใช้จ่ายด้วยตนเองเมื่อระบบไม่ได้ใช้งาน (ไม่บังคับ)

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

สำคัญ: โปรดทราบว่าจะมีเวลาหยุดทำงาน ซึ่งการหยุดทำงานอาจอยู่ที่ 5 ถึง 15 นาทีโดยประมาณ โปรดตรวจสอบให้แน่ใจว่าคุณทำตามหลักปฏิบัติที่ดีที่สุดของ DevOps โดยครบถ้วนแล้ว เช่น การสำรองข้อมูลการตั้งค่าแอพพลิเคชั่นและการสำรองฐานข้อมูล

  1. ในคอนโซล ECS (เช่น Amazon ECS) ให้ดำเนินการดังนี้
    1. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
    2. เลือกคลัสเตอร์ที่เหมาะสมจากรายการ
    3. ในแท็บ Services (บริการ) ให้เลือกชื่อบริการที่มี WAEntCoreappService เลือก Edit Service (แก้ไขบริการ) และอัพเดตค่า “Desired tasks” (งานที่ต้องการ) ให้เป็น 0
      การกำหนดค่าการนำไปใช้
    4. ทำซ้ำขั้นตอน c กับบริการอื่นๆ ทั้งหมด ซึ่งรวมถึง WAEntWebService, WAEntMasterService และ HostExporterService
    5. กลับไปที่หน้าคลัสเตอร์ และให้ตรวจสอบในแท็บ Tasks (งาน) ว่าไม่มีงานที่ดำเนินอยู่ของบริการต่างๆ ข้างต้น
  2. ในคอนโซล “EC2 - Auto Scaling Groups” (EC2 - กลุ่มแบบปรับขนาดอัตโนมัติ) (เช่น กลุ่มแบบปรับขนาดอัตโนมัติ | คอนโซลการจัดการ EC2 (amazon.com)) ให้ดำเนินการดังนี้
    1. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
    2. เลือกกลุ่มแบบปรับขนาดอัตโนมัติของสแต็กที่มี HAECSAutoScalingGroup อยู่ในชื่อ และเลือก Edit (แก้ไข) อัพเดตทั้ง “Desired capacity” (ขีดความสามารถที่ต้องการ) และ “Minimum capacity” (ขีดความสามารถขั้นต่ำ) เป็น 3
      ขนาดกลุ่ม
    3. เลือกกลุ่มแบบปรับขนาดอัตโนมัติของสแต็กที่มี HAECSAutoScalingGroupWeb อยู่ในชื่อ และเลือก Edit (แก้ไข) อัพเดตทั้ง “Desired capacity” (ขีดความสามารถที่ต้องการ) และ “Minimum capacity” (ขีดความสามารถขั้นต่ำ) เป็น 2
  3. (ไม่บังคับ) หากค่าตั้งต้นของ “Type of message” (ประเภทข้อความ) เป็นประเภทรูปภาพใดๆ คุณสามารถแทนที่ประเภทอินสแตนซ์ EC2 ด้วยตัวเลือก c5.large ที่มีราคาถูกลงได้
    1. ในคอนโซล “EC2 - Launch Templates” (EC2 - เทมเพลตการเปิดใช้) ให้เลือกเทมเพลตการเปิดใช้ที่เหมาะสมจากรายการ
    2. เลือก “Actions” (การดำเนินการ) - “Modify template (create new version)” (แก้ไขเทมเพลต (สร้างเวอร์ชั่นใหม่))
      คอนโซลเทมเพลตการเปิดใช้
    3. ในส่วน Instance type (ประเภทอินสแตนซ์) ให้อัพเดตประเภทอินสแตนซ์เป็น c5.large และเลือก Create template version (สร้างเวอร์ชั่นเทมเพลต)
      ประเภทอินสแตนซ์
    4. ในคอนโซล “EC2 - Auto Scaling Groups” (EC2 - กลุ่มแบบปรับขนาดอัตโนมัติ) ให้เลือกกลุ่มแบบปรับขนาดอัตโนมัติของสแต็กที่มี HAECSAutoScalingGroup อยู่ในชื่อ
    5. เลือก Edit (แก้ไข) ในส่วน Launch template (เทมเพลตการเปิดใช้)
    6. เลือกเทมเพลตการเปิดใช้รายการใหม่ที่สร้างขึ้นในขั้นตอนที่ 3c และเลือก Update (อัพเดต)
      เทมเพลตการเปิดใช้
  4. ในคอนโซล RDS (เช่น คอนโซลการจัดการ RDS (amazon.com)) ให้ดำเนินการดังนี้
    1. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
    2. เลือกฐานข้อมูล Aurora ที่เหมาะสมจากรายการ
    3. เลือก Modify (แก้ไข) และอัพเดตคลาสอินสแตนซ์ DB เป็น r5.xlarge
      การกำหนดค่าอินสแตนซ์
  5. ในคอนโซล ECS (เช่น Amazon ECS) ให้ดำเนินการดังนี้
    1. เลือกภูมิภาคที่ถูกต้องที่มุมขวาบน
    2. เลือกคลัสเตอร์ที่เหมาะสมจากรายการ
    3. ในแท็บ Services (บริการ) ให้เลือกชื่อบริการที่มี WAEntCoreappService เลือก Edit Service (แก้ไขบริการ) และอัพเดตค่า “Desired tasks” (งานที่ต้องการ) ให้เป็น 3
    4. ในแท็บ Services (บริการ) ให้เลือกชื่อบริการที่มี HostExporterService เลือก Edit Service (แก้ไขบริการ) และอัพเดตค่า “Desired tasks” (งานที่ต้องการ) ให้เป็น 3
    5. ในแท็บ Services (บริการ) ให้เลือกชื่อบริการที่มี WAEntWebService เลือก Edit Service (แก้ไขบริการ) และอัพเดตค่า “Desired tasks” (งานที่ต้องการ) ให้เป็น 2
    6. ในแท็บ Services (บริการ) ให้เลือกชื่อบริการที่มี WAEntMasterService เลือก Edit Service (แก้ไขบริการ) และอัพเดตค่า “Desired tasks” (งานที่ต้องการ) ให้เป็น 2
  6. รอให้บริการทั้งหมดเริ่มทำงานต่างๆ ครบตามจำนวนที่ต้องการ เมื่องานทั้งหมดกำลังดำเนินอยู่ ให้ใช้ API ตั้งค่าชาร์ดเพื่อรีเซ็ตชาร์ดเป็น 2
  7. ตรวจสอบสถานะของระบบด้วย API สถานะ นอกจากนี้ คุณยังสามารถรับส่งข้อความเพื่อตรวจสอบฟังก์ชั่นการทำงานพื้นฐานของไคลเอ็นต์ WhatsApp Business API ได้ด้วย โดยมีคำอธิบายอย่างครบถ้วนอยู่ในเอกสารประกอบเกี่ยวกับข้อความ