สร้างการปรับใช้โดยใช้ “kubectl สร้างการปรับใช้”

Srang Kar Prab Chi Doy Chi Kubectl Srang Kar Prab Chi



Kubernetes เป็นการเผยแพร่แบบโอเพ่นซอร์สฟรีและเป็นที่รู้จักในชื่อ k8s ใช้สำหรับการปรับใช้ การจัดการ และการปรับขนาดซอฟต์แวร์และแอปพลิเคชันในคอนเทนเนอร์โดยอัตโนมัติ โดยมีส่วนประกอบที่แตกต่างกันสำหรับการจัดการคอนเทนเนอร์ เช่น โหนด ระนาบควบคุม พ็อด และการปรับใช้ Kubernetes ด้วยความช่วยเหลือจาก 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 สร้างการปรับใช้ “– –image= ' สั่งการ. สำหรับการสาธิต เราได้สร้าง “nginx-deployment” ที่จะรันแอปพลิเคชัน Nginx ในพ็อดโดยใช้อิมเมจ “nginx:stable-perl”:

kubectl สร้างการปรับใช้ nginx-deployment --ภาพ =nginx:stable-perl



ขั้นตอนที่ 5: รับการปรับใช้ Kubernetes, ReplicaSet และ Pod

คำสั่ง “kubectl สร้างการปรับใช้” จะสร้างองค์ประกอบสามส่วน Deployment, ReplicaSet และ Pod หากต้องการเข้าถึงการปรับใช้ Kubernetes ให้เรียกใช้ ' kubectl ได้รับการปรับใช้ ' สั่งการ:

kubectl ได้รับการปรับใช้


ที่นี่คุณสามารถเห็น “ การปรับใช้ nginx ” มีอยู่ในคลัสเตอร์ Kubernetes:


ReplicaSet เป็นตัวควบคุมการปรับใช้งานที่ทำให้แน่ใจว่าแอปพลิเคชันในพ็อดจะดำเนินการโดยปราศจากข้อผิดพลาดและซ่อมแซมเบรกพอยต์ ในการเข้าถึง ReplicaSet ให้ใช้ ' kubectl รับอาร์เอส ' สั่งการ:

kubectl รับอาร์เอส


ที่นี่ ReplicaSet จะแสดงจำนวนพ็อดและพ็อดที่ทำงานอยู่ในปัจจุบันที่ต้องการ:


พ็อดเป็นหน่วยที่เล็กกว่าของคลัสเตอร์ Kubernetes ที่เรียกใช้แอปพลิเคชันที่มีคอนเทนเนอร์ หากต้องการเข้าถึงพ็อด Kubernetes ให้ใช้ปุ่ม “ kubectl รับพ็อด ' สั่งการ. ที่นี่ “ -โอ ตัวเลือก ” ใช้เพื่อระบุรูปแบบเอาต์พุต หากต้องการดูที่อยู่ IP ของ Pod เราได้ใช้ ' กว้าง ' รูปแบบ:

kubectl รับพ็อด -โอ กว้าง



ขั้นตอนที่ 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 กำลังแสดงสถานะของจำนวนพ็อดที่ต้องการและกำลังดำเนินการพ็อดอยู่:

kubectl รับอาร์เอส



ในทำนองเดียวกัน หากต้องการเข้าถึงพ็อดที่ทำงานอยู่ ให้ใช้คำสั่งด้านล่าง:

kubectl รับพ็อด


ผลลัพธ์บ่งชี้ว่าการปรับใช้งาน Kubernetes ดำเนินการแบบจำลอง Pods ในคลัสเตอร์ Kubernetes ตามจำนวนที่ต้องการได้สำเร็จ:

ReplicaSet ทำงานอย่างไรเพื่อควบคุมการปรับใช้ Kubernetes

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

ขั้นตอนที่ 1: ดูพ็อด Kubernetes แบบสด

ขั้นแรก ดูสถานะพ็อดสดโดยใช้ปุ่ม “ kubectl รับพ็อด -w ' สั่งการ. นอกจากนี้ ให้สังเกตชื่อของพ็อดที่จะใช้งานไม่ได้หรือถูกลบ:

kubectl รับพ็อด -ใน



ขั้นตอนที่ 2: ลบพ็อด

จากนั้น เปิดเทอร์มินัล PowerShell อื่นแล้วลองลบพ็อดที่สองโดยใช้เครื่องหมาย “ kubectl ลบพ็อด ' สั่งการ:

kubectl ลบพ็อด nginx-deployment-7584b4674d-hbx4f


ผลลัพธ์แสดงว่าเราได้ลบพ็อดสำเร็จแล้ว:


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


เราได้กล่าวถึงวิธีการสร้างการปรับใช้ Kubernetes โดยใช้คำสั่ง “kubectl create allowance”

บทสรุป

เพื่อสร้างการปรับใช้ Kubernetes โดยใช้ “ kubectl สร้างการปรับใช้ ” ขั้นแรกให้ติดตั้งเครื่องมือที่จำเป็นเช่น minikube และ kubectl หลังจากนั้น ให้รันคลัสเตอร์ Kubernetes ใหม่โดยใช้ minikube ตอนนี้ สร้างการปรับใช้ใหม่โดยใช้ ' kubectl สร้างการปรับใช้ “– –image= ' สั่งการ. หลังจากนั้น ให้ดูการปรับใช้ Kubernetes, ReplicaSet และ Pods โดยใช้คำสั่ง “ kubectl รับทั้งหมด ' สั่งการ. บทความนี้ได้อธิบายวิธีการสร้างการปรับใช้ Kubernetes โดยใช้คำสั่ง “ kubectl สร้างการปรับใช้ ' สั่งการ.