โปรเจกต์ใน AWS

บอตเก่งยิ่งขึ้น

ด้วย .NET และ AWS Toolkit for Visual Studio

โมดูลที่ 5: การปรับใช้และการล้างข้อมูล

ในโมดูลนี้ คุณจะต้องปรับใช้ ChatBot ของคุณกับ EC2 โดยใช้ CodeBuild และ CodeDeploy รวมถึงล้างข้อมูลทรัพยากรของ AWS ที่ใช้ในโมดูลเหล่านี้เพื่อหลีกเลี่ยงค่าใช้จ่าย

ภาพรวม

ปฏิบัติตามคำแนะนำแบบทีละขั้นตอนด้านล่างเพื่อปรับใช้แอปพลิเคชัน ChatBot และล้างข้อมูลทรัพยากรหลังจากนั้น คลิกหมายเลขขั้นตอนแต่ละหมายเลขเพื่อขยายส่วนนั้น

 เวลาดำเนินการ

30 นาที

 บริการที่ใช้

CodeDeploy, CodeBuild, EC2

คำแนะนำในการนำมาใช้งาน

    • ก. จากคอนโซล AWS คลิกที่ Services (บริการ) แล้วเลือก CodeStar ในส่วน Developer Tools (เครื่องมือสำหรับนักพัฒนา)
      ข. คลิก Create a new project (สร้างโปรเจกต์ใหม่) และเลือก ASP.NET Core Web Application template (เทมเพลตเว็บแอปพลิเคชัน ASP.NET Core)
      ค. ป้อน “Project Name” (ชื่อโปรเจกต์) เลือก CodeCommit เป็นคลังของคุณและคลิก Next (ถัดไป)
      ง. ตรวจสอบให้แน่ใจว่าได้กาเครื่องหมายเลือก “AWS CodeStar would like permission to administer AWS resources on your behalf” (AWS CodeStar ขอสิทธิ์ในการดูแลทรัพยากร AWS ในนามของคุณ) และคลิก Create Project (สร้างโปรเจกต์)
      จ. เลือกคู่คีย์และตรวจสอบว่า “I acknowledge that I have access to the private key file for this key pair (mytestkeypair.pem), and that without this file, I won’t be able to log into my instance.” (ฉันรับทราบว่าฉันสามารถเข้าถึงไฟล์คีย์ส่วนบุคคลสำหรับคู่คีย์นี้ (mytestkeypair.pem) ได้ และหากไม่มีไฟล์นี้ ฉันจะไม่สามารถเข้าใช้งานอินสแตนซ์ของฉันได้) ถูกทำเครื่องหมายไว้แล้ว
      ฉ. คุณสามารถเลือกวิธีที่คุณต้องการเพื่อแก้ไขโค้ดโปรเจกต์ของคุณ คุณสามารถเปลี่ยนแปลงตัวเลือกนี้ได้เสมอ แต่สำหรับตอนนี้ให้คลิก “Command Line Tools” (เครื่องมือบรรทัดคำสั่ง) และปฏิบัติตามคำแนะนำในการตั้งค่าสำหรับระบบปฏิบัติการที่คุณเลือกใช้
      ช. ใน Command Line (บรรทัดคำสั่ง) หากคุณปฏิบัติตามคำแนะนำ คุณจะโคลนคลังโปรเจกต์จาก CodeCommit
      ซ. คุณสามารถใช้ผลิตภัณฑ์และเครื่องมือนำเข้า Git ต่างๆ ได้ อย่างไรก็ตาม ในกรณีที่คุณไม่มีเครื่องมือดังกล่าว เราจะจัดเตรียมวิธีการแบบรวดเร็ว/ด้วยตนเองสำหรับการดำเนินการนี้ ใช้โค้ดที่คุณโคลนมาจาก github repo ในโมดูลที่ 4 และแทนที่โค้ดทั้งหมดในคลัง CodeCommit ที่โคลนใหม่ด้วยโค้ดเหล่านั้น (ตรวจสอบให้แน่ใจว่าได้ลบโค้ดเก่าทั้งหมดก่อนที่จะวางโค้ด .NET Chatbot ลงไป)
      ฌ. เข้าสู่ไดเรกทอรีที่โคลนในบรรทัดคำสั่งและดำเนินการเรียกใช้งานคำสั่งดังต่อไปนี้:
      1. git add .
      2. git commit -m "adding Chatbot code"
      3. git push
      ญ. คลิก “Skip” (ข้าม) และคุณจะถูกนำไปยังแดชบอร์ดของโค้ดคุณผ่านการปรับใช้งานแบบต่อเนื่อง (ในหลายตัวเลือกซึ่งเราแนะนำให้คุณลองสำรวจดู)
      ฎ. ในส่วนไดเรกทอรีของโปรเจกต์ซึ่งจัดเก็บไฟล์ Visual Studio Solution ให้คัดลอกไฟล์ appspec.yml และ buildspec.yml
      ฏ. ในส่วนไดเรกทอรีของโปรเจกต์ซึ่งจัดเก็บไฟล์ Visual Studio Solution ให้สร้างโฟลเดอร์และตั้งชื่อว่าสคริปต์
      ฐ. คัดลอกไฟล์ทั้งหมดจากไดเรกทอรีการติดตั้ง Linux เพื่อใช้จริงของ repo ที่โคลนไว้ลงในไดเรกทอรีสคริปต์ที่สร้างขึ้นในขั้นตอนก่อนหน้า
      ฑ. คลิกลิงก์ตำแหน่งข้อมูลแอปพลิเคชันเพื่อดูและทดสอบแอปพลิเคชัน Chatbot

      ⚐ หมายเหตุ: สำหรับข้อมูลเพิ่มเติม โปรดดูเอกสารประกอบที่จัดเก็บอยู่ในโปรเจกต์ github ในโฟลเดอร์เอกสารประกอบ > Step By Step Deployment of dotNet Chatbot - Linux.pdf

      สคริปต์การปรับใช้

      คู่คีย์ EC2
    • ก. ลงชื่อเข้าใช้งานบัญชี AWS ของคุณ ตรวจสอบว่าคุณอยู่ในเขต us-east-1 (เวอร์จิเนียเหนือ) หรือ eu-west-1 (ไอร์แลนด์)
      ข. ลงชื่อเข้าใช้งานบัญชี GitHub โดยใช้ข้อมูลประจำตัว GitHub ของคุณ
      ค. ใช้ AWS CloudFormation เพื่อสร้างสแตกโครงสร้างพื้นฐานโดยคลิกเลือกเทมเพลตที่นี่: <ลิงก์ไปยังเทมเพลตในแบบฟอร์มด้านล่าง>
      ง. คุณจะถูกนำไปยังหน้าเว็บคอนโซล AWS CloudFormation และจะแสดงหน้าจอเพื่อป้อนพารามิเตอร์ที่จำเป็นในการสร้างทรัพยากรโครงสร้างพื้นฐานของคุณ ป้อนค่าที่ต้องการสำหรับพารามิเตอร์ชื่อสแตกและแอปพลิเคชัน
      จ. เปิดหน้าต่างเบราว์เซอร์ขึ้นมาอีกหนึ่งหน้าต่างและกลับไปที่บัญชี Github ของคุณ คลิกที่การตั้งค่าในบัญชี Github แล้วคลิกโทเค็นการเข้าถึงส่วนบุคคล และสร้างโทเค็นใหม่ด้วย repo ที่กำหนดและ admin:repo_hook ตรวจสอบว่าได้เลือกตัวเลือกรองทั้งหมดสำหรับสคริปต์ที่กล่าวถึงไว้ก่อนหน้าทั้งสองตัว
      ฉ. กลับไปที่หน้าเว็บ AWS CloudFormation และป้อนพารามิเตอร์ GitHubOAuthToken ด้วยค่าจาก GitHub ที่สร้างขึ้นในขั้นตอนก่อนหน้า
      ช. เลือก VPC ที่คุณต้องการปรับใช้โซลูชัน Public Subnet (ที่มีอินเทอร์เน็ตเกตเวย์) ซึ่งเป็นของ VPC นั้น
      ซ. เลือก ชื่อคู่คีย์
      ฌ. เปลี่ยนประเภทอินสแตนซ์หากต้องการ ไม่เช่นนั้นให้ปล่อยไว้เป็นค่าเริ่มต้น
      ญ. ในช่อง OSTtype ให้เลือกประเภทของระบบปฏิบัติการสำหรับ EC2 instance ที่ต้องการเป็น Windows แล้วคลิกปุ่ม Next (ถัดไป)
      ฎ. สำหรับส่วน Options and Advanced (ตัวเลือกและขั้นสูง) ให้ใช้ตัวเลือกที่เป็นค่าเริ่มต้น แล้วคลิกปุ่ม Next (ถัดไป)
      ฏ. ในหน้าจอการตรวจสอบ ให้คลิกที่กล่องถัดจาก: “I acknowledge that AWS CloudFormation might create IAM resources with custom names.” (ฉันรับทราบว่า AWS CloudFormation อาจมีการสร้างทรัพยากร IAM ด้วยชื่อแบบกำหนดเอง)
      ฐ. สร้างสแตกและเฝ้าดูสแตกเต็มรวมถึงทรัพยากรที่จำเป็นถูกสร้างขึ้นในแท็บ “Events” (เหตุการณ์) จนกระทั่งสถานะเปลี่ยนเป็น CREATE_COMPLETE
      ฑ. ตรวจสอบที่ CodePipeline และดูแอปพลิเคชันของคุณเข้าสู่กระบวนการ CD/CI จาก GitHub ไปยัง CodeBuild ถึง CodeDeploy ซึ่งปรับใช้บน EC2 เมื่อสิ้นสุด 1
      ฒ. เมื่อปรับใช้งานเสร็จสิ้น ให้ไปที่แท็บผลลัพธ์ใน CloudFormation แล้วคลิกที่ค่า URL และดูแอปพลิเคชัน Chatbot ที่กำลังทำงานในสภาพแวดล้อมของคุณ

      ⚐ หมายเหตุ: สำหรับข้อมูลเพิ่มเติม โปรดดูเอกสารประกอบที่จัดเก็บอยู่ในโปรเจกต์ GitHub ในโฟลเดอร์เอกสารประกอบ > Step By Step Deployment of dotNet Chatbot - Windows.pdf

    • ก. ไปยังหน้า CodeStar ใน Console
      ข. เลือก “…” ที่มุมขวาบนของโปรเจกต์
      ค. เลือกตัวเลือก “Delete” (ลบ)
      ง. พิมพ์ชื่อโปรเจกต์ของคุณเพื่อยืนยันการลบ นำเครื่องหมายออกจากกล่องทำเครื่องหมายถัดจาก “Keep associated AWS resources but delete project in AWS Codestar. Learn more” (เก็บทรัพยากรของ AWS ที่เกี่ยวข้องแต่ลบโปรเจกต์ใน AWS Codestar เรียนรู้เพิ่มเติม)
      จ. กดปุ่ม “Delete” (ลบ)

    • ก. ไปยังหน้า CloudFormation ใน Console
      ข. เลือกสแตกของคุณ
      ค. ไปยังเมนูดรอปดาวน์ “Actions” (การดำเนินการ)
      ง. เลือกตัวเลือก “Delete Stack” (ลบสแตก)
      จ. กดปุ่ม “Yes, Delete” (ใช่ ฉันต้องการลบ)

  • Lambda
    ก. ไปยังหน้า Lambda ใน Console
    ข. เลือกฟังก์ชันของคุณในรายการโดยคลิกที่บับเบิลด้านซ้ายของชื่อ
    ค. คลิก actions (การดำเนินการ) และคลิก Delete (ลบ)

    Lex
    ก. ไปยังหน้า Lex ใน Console
    ข. เลือกบอตของคุณในรายการโดยคลิกที่บับเบิลด้านซ้ายของชื่อ
    ค. คลิก actions (การดำเนินการ) และคลิก Delete (ลบ)

    Cognito
    ก. ไปยังหน้า Cognito ใน Console
    ข. คลิก Manage Federated Identities (จัดการข้อมูลประจำตัวที่เชื่อมโยง)
    ค. คลิกที่ข้อมูลประจำตัวที่เชื่อมโยงของคุณ
    ง. คลิก Edit Identity Pool (แก้ไขพูลข้อมูลประจำตัว) ที่มุมขวาบน
    จ. เลื่อนลงด้านล่างมายัง Delete Identity Pool (ลบพูลข้อมูลประจำตัว) และคลิกปุ่มดังกล่าว จากนั้นยืนยันโดยการคลิกที่ปุ่มลบสีแดง

    ⚐ หมายเหตุ: คำแนะนำเหล่านี้จัดเก็บอยู่ในโปรเจกต์ GitHub project ในโฟลเดอร์เอกสารประกอบ > dotNet Chatbot CleanUp and Deletion Instructions.pdf

แชร์ Chatbot ของคุณกับเพื่อนๆ และบอกให้เราทราบว่าคุณจะสร้างอะไรต่อไป!