Kubernetes เป็นการเผยแพร่แบบโอเพ่นซอร์สฟรีและเป็นที่รู้จักในชื่อ k8s ใช้สำหรับการปรับใช้ การจัดการ และการปรับขนาดซอฟต์แวร์และแอปพลิเคชันในคอนเทนเนอร์โดยอัตโนมัติ โดยมีส่วนประกอบที่แตกต่างกันสำหรับการจัดการคอนเทนเนอร์ เช่น โหนด ระนาบควบคุม พ็อด และการปรับใช้ Kubernetes ด้วยความช่วยเหลือจาก Kubernetes นักพัฒนาซอฟต์แวร์สามารถดำเนินงานอัตโนมัติ ย้อนกลับการเปลี่ยนแปลง ตลอดจนตรวจสอบและปรับขนาดแอปพลิเคชันและซอฟต์แวร์ในคอนเทนเนอร์ได้อย่างง่ายดาย
ในบล็อกนี้ เราจะอธิบาย:
-
- การปรับใช้ Kubernetes คืออะไร
- เหตุใดการสร้างการปรับใช้จึงดีกว่าการสร้างพ็อด
- ReplicaSet ในการปรับใช้คืออะไร
- คำสั่ง “kubectl สร้างการปรับใช้” คืออะไร
- วิชาบังคับก่อน: ติดตั้ง kubectl และ minikube
- จะสร้างการปรับใช้ Kubernetes โดยใช้คำสั่ง “kubectl createployable” ได้อย่างไร
- วิธีเรียกใช้แบบจำลองในการปรับใช้ Kubernetes โดยใช้คำสั่ง“ kubectl create allowance”
- ReplicaSet ทำงานอย่างไรเพื่อควบคุมการใช้งาน Kubernetes
- บทสรุป
การปรับใช้ Kubernetes คืออะไร
การปรับใช้ Kubernetes เรียกว่าออบเจ็กต์ทรัพยากรที่ให้คำแนะนำที่ประกาศและอัปเดตองค์ประกอบหลัก เช่น Pods, ReplicaSet และแอปพลิเคชันแบบคอนเทนเนอร์ การปรับใช้ Kubernetes ช่วยให้นักพัฒนาสามารถอธิบายแอปพลิเคชันในคอนเทนเนอร์ได้ เช่น รูปภาพ จำนวนพ็อด พอร์ต แบบจำลอง และอื่นๆ เหตุผลสำคัญประการหนึ่งที่ทำให้ Kubernetes ดีกว่า Docker ก็คือมันมีคุณสมบัติการรักษาอัตโนมัติและการปรับขนาดอัตโนมัติให้เรา และสถานะเหล่านี้สามารถทำได้เนื่องจากการปรับใช้ Kubernetes
ในกลไก 'การรักษาอัตโนมัติ' เป็นเทคนิคการทดสอบอัตโนมัติที่ทดสอบออบเจ็กต์ที่ทำงานอยู่และในกรณีที่เกิดข้อผิดพลาดใดๆ จะใช้การจับคู่ที่ดีที่สุดสำหรับการแก้ไข และใช้การแก้ไขเพื่อให้ตรงกับสถานะจริงกับสถานะที่ต้องการ ในบริการ 'ปรับขนาดอัตโนมัติ' จะปรับขนาดปริมาณงานของแอปพลิเคชันโดยอัตโนมัติ
เหตุใดการสร้างการปรับใช้จึงดีกว่าการสร้างพ็อด
การใช้งาน Kubernetes ช่วยให้นักพัฒนาสามารถเก็บกลุ่มของพ็อดเดียวกันที่ทำงานด้วยการกำหนดค่าทั่วไปได้อย่างง่ายดาย ในทางตรงกันข้าม ในขณะที่สร้างพ็อด ผู้ใช้จะต้องสร้างและเรียกใช้พ็อดแยกกัน ในการปรับใช้ หากพ็อดหนึ่งถูกลบหรือยุติ พ็อดจะถูกสร้างขึ้นใหม่และเริ่มต้นโดยอัตโนมัติเนื่องจากกลไกการรักษาอัตโนมัติ แต่หากพ็อดดำเนินการโดยตรงโดยไม่มีการปรับใช้ ในกรณีที่เกิดข้อผิดพลาด ผู้ใช้จะต้องสร้างและรันพ็อดด้วยตนเอง
ReplicaSet ในการปรับใช้คืออะไร
เมื่อนักพัฒนาสร้างการปรับใช้ จะมีการสร้างองค์ประกอบหลักสามส่วนขึ้น และ ReplicaSet ก็เป็นหนึ่งในนั้น ReplicaSet คือตัวควบคุมการปรับใช้และมีหน้าที่รับผิดชอบในการรันพ็อดตามจำนวนที่ระบุภายในการปรับใช้ ในกรณีที่มีการลบพ็อดหนึ่งออก ReplicaSet จะสั่งให้สร้างพ็อดใหม่อย่างรวดเร็วเพื่อให้ตรงกับสถานะที่แท้จริงของพ็อดกับสถานะที่ต้องการ มีหน้าที่หลักในการจัดเตรียมการอัปเดตที่ประกาศให้กับพ็อด
คำสั่ง “kubectl สร้างการปรับใช้” คืออะไร
“ kubectl สร้างการปรับใช้ ” คือคำสั่งของเครื่องมือ Kubectl ที่ใช้ในการสร้างและเริ่มต้นการใช้งาน Kubernetes จากนั้นการปรับใช้งานจะแนะนำ Kubernetes ถึงวิธีสร้างและอัปเดตอินสแตนซ์ของแอปพลิเคชันของคุณ
ไวยากรณ์
kubectl สร้างการปรับใช้ < ชื่อการใช้งาน > --ภาพ = < ชื่อภาพ > -- < ตัวเลือก =ค่า >
ตัวเลือก
คำสั่ง “kubectl สร้างการปรับใช้” รองรับตัวเลือกต่างๆ เพื่อมอบชั้นการทำงานเพิ่มเติม และให้คำแนะนำเพิ่มเติมในการปรับใช้อินสแตนซ์ของแอปพลิเคชัน ตัวเลือกที่รองรับโดย “ kubectl สร้างการปรับใช้ ” คำสั่งได้รับด้านล่างในรูปแบบตาราง:
ตัวเลือก | คำอธิบาย |
“– –อนุญาตให้มีคีย์เทมเพลตที่หายไป | หากตั้งค่าเป็น True ระบบจะเพิกเฉยต่อข้อผิดพลาดใดๆ ในเทมเพลตเมื่อคีย์แผนที่หรือฟิลด์หายไปในเทมเพลต |
“– –ดรายรัน | ค่าของมันสามารถเป็น 'ไม่มี', 'เซิร์ฟเวอร์' หรือ 'ไคลเอนต์' หากค่าเป็นไคลเอนต์ มันจะแสดงหรือพิมพ์เฉพาะออบเจ็กต์ที่จะส่งโดยไม่ต้องส่ง หากค่าเป็นเซิร์ฟเวอร์ จะส่งคำขอฝั่งเซิร์ฟเวอร์เท่านั้น |
“– –ผู้จัดการภาคสนาม | แสดงหรือตั้งชื่อผู้จัดการที่ใช้ในการติดตามความเป็นเจ้าของฟิลด์ |
'- -ภาพ | ระบุชื่อรูปภาพเพื่อระบุเทมเพลตคอนเทนเนอร์ |
-o, “– –เอาต์พุต | ระบุรูปแบบเอาต์พุต |
'- -ท่าเรือ | มันตั้งค่าพอร์ตเพื่อแสดงคอนเทนเนอร์ |
-r, “– –แบบจำลอง | ใช้เพื่อกำหนดจำนวนแบบจำลองพ็อด |
“– –บันทึก-config | มันถูกใช้เพื่อบันทึกการกำหนดค่าของวัตถุในคำอธิบายประกอบ หากค่าเป็นเท็จ คำอธิบายประกอบจะไม่เปลี่ยนแปลง |
“– –แสดงฟิลด์ที่มีการจัดการ | โดยค่าเริ่มต้น ค่าของมันคือเท็จ แต่ถ้าตั้งค่าเป็น True ก็จะเก็บหรือบันทึก ManagedFields เมื่อพิมพ์ออบเจ็กต์ในรูปแบบ JSON หรือ YAML |
“– –ตรวจสอบ =’เข้มงวด’ | ค่าของมันอาจเป็น 'เข้มงวด' 'เตือน' หรือ 'เพิกเฉย' หากเป็น 'เข้มงวด' ระบบจะตรวจสอบความถูกต้องของอินพุตและล้มเหลวในการร้องขอหากไม่ถูกต้อง หากค่าของมันคือ 'คำเตือน' ระบบจะเตือนเกี่ยวกับฟิลด์ที่ซ้ำกันและไม่รู้จัก หากค่าของมันคือ 'ละเว้น' ก็จะไม่ดำเนินการตรวจสอบสคีมาใดๆ |
วิชาบังคับก่อน: ติดตั้ง kubectl และ minikube
หากต้องการเริ่มการปรับใช้ Kubernetes ในคลัสเตอร์ Kubernetes ขั้นแรกให้ติดตั้งเครื่องมือที่กำหนดด้านล่างบนระบบ:
-
- เครื่องมือ Kubectl: Kubectl เป็นเครื่องมือบรรทัดคำสั่ง Kubernetes ที่ใช้ในการควบคุม จัดการ และดำเนินการคลัสเตอร์ Kubernetes และส่วนประกอบต่างๆ เช่น การปรับใช้ Kubernetes
- เครื่องมือมินิคิวบ์: Minikube คือระบบปฏิบัติการสำหรับ Kubernetes ที่ให้หรือสร้างเครื่องเสมือนบนระบบเพื่อเริ่มต้นคลัสเตอร์ Kubernetes สามารถรันคลัสเตอร์โหนดเดียวได้ และส่วนใหญ่จะใช้โดยผู้เริ่มต้นหรือเพื่อการทดสอบ
เพื่อเริ่มต้นใช้งาน Kubernetes และติดตั้งส่วนประกอบที่จำเป็นเช่น “ คิวเบคเทิล ' และ ' มินิคิวเบะ ”, ผ่านลิงค์ของเรา” ' บทความ.
จะสร้างการปรับใช้ Kubernetes โดยใช้คำสั่ง 'kubectl create' ได้อย่างไร
คุณสามารถสร้างการใช้งาน Kubernetes ได้โดยใช้รายการ Yaml หรือโดย ' kubectl สร้างการปรับใช้ ' สั่งการ. หากต้องการสร้างการปรับใช้ Kubernetes โดยใช้คำสั่ง “kubectl create allowance” ให้ทำตามการสาธิตด้านล่าง
ขั้นตอนที่ 1: เรียกใช้ PowerShell
ขั้นแรก ให้เปิด Windows PowerShell ด้วยสิทธิ์ผู้ดูแลระบบจากเมนู Start จำเป็นต้องมีสิทธิ์ผู้ดูแลระบบเนื่องจาก minikube เริ่มคลัสเตอร์ Kubernetes บนเครื่องเสมือนโดยใช้ HyperV:
ขั้นตอนที่ 2: เริ่มคลัสเตอร์ Kubernetes
หากต้องการเริ่มต้นคลัสเตอร์ Kubernetes ให้ใช้ ' มินิคิวบ์สตาร์ท ' สั่งการ:
มินิคิวบ์สตาร์ท
ขั้นตอนที่ 3: รับโหนด Kubernetes
จากนั้น เข้าถึงโหนด Kubernetes เพื่อตรวจสอบว่าคลัสเตอร์เริ่มทำงานหรือไม่ใช้คำสั่ง “ kubectl รับโหนด ' สั่งการ:
kubectl รับโหนด
ขั้นตอนที่ 4: สร้างการปรับใช้ Kubernetes
สร้างการใช้งาน Kubernetes ใหม่ในคลัสเตอร์ผ่านคำสั่ง “k ubectl สร้างการปรับใช้
ขั้นตอนที่ 5: รับการปรับใช้ Kubernetes, ReplicaSet และ Pod
คำสั่ง “kubectl สร้างการปรับใช้” จะสร้างองค์ประกอบสามส่วน Deployment, ReplicaSet และ Pod หากต้องการเข้าถึงการปรับใช้ Kubernetes ให้เรียกใช้ ' kubectl ได้รับการปรับใช้ ' สั่งการ:
kubectl ได้รับการปรับใช้
ที่นี่คุณสามารถเห็น “ การปรับใช้ nginx ” มีอยู่ในคลัสเตอร์ Kubernetes:
ReplicaSet เป็นตัวควบคุมการปรับใช้งานที่ทำให้แน่ใจว่าแอปพลิเคชันในพ็อดจะดำเนินการโดยปราศจากข้อผิดพลาดและซ่อมแซมเบรกพอยต์ ในการเข้าถึง ReplicaSet ให้ใช้ ' kubectl รับอาร์เอส ' สั่งการ:
ที่นี่ ReplicaSet จะแสดงจำนวนพ็อดและพ็อดที่ทำงานอยู่ในปัจจุบันที่ต้องการ:
พ็อดเป็นหน่วยที่เล็กกว่าของคลัสเตอร์ Kubernetes ที่เรียกใช้แอปพลิเคชันที่มีคอนเทนเนอร์ หากต้องการเข้าถึงพ็อด Kubernetes ให้ใช้ปุ่ม “ kubectl รับพ็อด ' สั่งการ. ที่นี่ “ -โอ ตัวเลือก ” ใช้เพื่อระบุรูปแบบเอาต์พุต หากต้องการดูที่อยู่ IP ของ Pod เราได้ใช้ ' กว้าง ' รูปแบบ:
ขั้นตอนที่ 6: เข้าสู่ระบบคลัสเตอร์ Kubernetes
หากต้องการเข้าถึงแอปพลิเคชันที่ทำงานอยู่ในคอนเทนเนอร์ ขั้นแรกให้เข้าถึงคลัสเตอร์ Kubernetes โดยใช้ปุ่ม “ มินิคิวเบ้ssh ' สั่งการ:
มินิคิวเบะ สช
ขั้นตอนที่ 7: เข้าถึงแอปพลิเคชันที่ทำงานในการปรับใช้ Kubernetes
หลังจากนั้นให้ใช้ “ ขด ” คำสั่งพร้อมกับที่อยู่ IP ของ Pod เพื่อเข้าถึงแอปพลิเคชันคอนเทนเนอร์:
ขด 10.244.0.7
วิธีเรียกใช้แบบจำลองในการปรับใช้ Kubernetes โดยใช้คำสั่ง“ kubectl create allowance”
การสร้างการทำให้ใช้งานได้ของ Kubernetes ดีกว่าการเรียกใช้ Pod เนื่องจากสามารถเรียกใช้และจัดการกลุ่มของพ็อดได้ในคราวเดียวโดยการสร้างแบบจำลอง Pod หากต้องการเรียกใช้แบบจำลองในการปรับใช้ Kubernetes โดยใช้คำสั่ง “kubectl create allowance” ให้ทำตามคำแนะนำด้านล่าง
ขั้นตอนที่ 1: สร้างการปรับใช้ Kubernetes
ขั้นแรก สร้างการปรับใช้โดยใช้ ' kubectl สร้างการปรับใช้ ” คำสั่งพร้อมกับ “ “– –แบบจำลอง ' ตัวเลือก. ค่าของตัวเลือก “replicas” จะระบุจำนวนพ็อดที่ต้องการซึ่งควรจัดการและเรียกใช้โดย ReplicaSet:
kubectl สร้างการปรับใช้ nginx-deployment --ภาพ =nginx:stable-perl --แบบจำลอง = 2
ขั้นตอนที่ 2: รับการปรับใช้ Kubernetes, ReplicaSet และ Pod
ตอนนี้ให้เข้าถึงการปรับใช้ Kubernetes โดยใช้คำสั่ง “kubectl getploy”:
kubectl ได้รับการปรับใช้
ที่นี่ คุณจะเห็นว่าการปรับใช้งานแสดงจำนวนพ็อดที่พร้อมใช้งาน ทันสมัย และพร้อมใช้งาน:
ใช้คำสั่งด้านล่างเพื่อเข้าถึงข้อมูล ReplicaSet คุณจะเห็นว่า ReplicaSet กำลังแสดงสถานะของจำนวนพ็อดที่ต้องการและกำลังดำเนินการพ็อดอยู่:
ในทำนองเดียวกัน หากต้องการเข้าถึงพ็อดที่ทำงานอยู่ ให้ใช้คำสั่งด้านล่าง:
ผลลัพธ์บ่งชี้ว่าการปรับใช้งาน Kubernetes ดำเนินการแบบจำลอง Pods ในคลัสเตอร์ Kubernetes ตามจำนวนที่ต้องการได้สำเร็จ:
ReplicaSet ทำงานอย่างไรเพื่อควบคุมการปรับใช้ Kubernetes
ReplicaSet มีหน้าที่รับผิดชอบในการรันพ็อดตามจำนวนที่ต้องการภายในการปรับใช้ หากพ็อดหนึ่งพังหรือลบออก พ็อดจะสร้างใหม่โดยอัตโนมัติเพื่อให้ตรงกับสถานะปัจจุบันของพ็อดกับสถานะที่ต้องการ กลไกนี้ใช้เทคนิคการรักษาอัตโนมัติจริง ๆ สำหรับการสาธิต ให้ทำตามคำแนะนำด้านล่าง
ขั้นตอนที่ 1: ดูพ็อด Kubernetes แบบสด
ขั้นแรก ดูสถานะพ็อดสดโดยใช้ปุ่ม “ kubectl รับพ็อด -w ' สั่งการ. นอกจากนี้ ให้สังเกตชื่อของพ็อดที่จะใช้งานไม่ได้หรือถูกลบ:
kubectl รับพ็อด -ใน
ขั้นตอนที่ 2: ลบพ็อด
จากนั้น เปิดเทอร์มินัล PowerShell อื่นแล้วลองลบพ็อดที่สองโดยใช้เครื่องหมาย “ kubectl ลบพ็อด
ผลลัพธ์แสดงว่าเราได้ลบพ็อดสำเร็จแล้ว:
ตอนนี้ เปิดหน้าต่าง PowerShell ซึ่งมีสถานะของพ็อดอยู่ ที่นี่ คุณจะเห็นได้ว่าเมื่อเราลบ Pod แล้ว ReplicaSet จะสร้างและดำเนินการ Pod ใหม่โดยอัตโนมัติเพื่อให้ตรงกับสถานะพ็อดปัจจุบันกับสถานะที่ต้องการ:
เราได้กล่าวถึงวิธีการสร้างการปรับใช้ Kubernetes โดยใช้คำสั่ง “kubectl create allowance”
บทสรุป
เพื่อสร้างการปรับใช้ Kubernetes โดยใช้ “ kubectl สร้างการปรับใช้ ” ขั้นแรกให้ติดตั้งเครื่องมือที่จำเป็นเช่น minikube และ kubectl หลังจากนั้น ให้รันคลัสเตอร์ Kubernetes ใหม่โดยใช้ minikube ตอนนี้ สร้างการปรับใช้ใหม่โดยใช้ ' kubectl สร้างการปรับใช้