เนมสเปซและป้ายกำกับเพื่อการจัดระเบียบ
จัดระเบียบทรัพยากรในคลัสเตอร์ด้วยเนมสเปซเพื่อการแยกส่วน และใช้ป้ายกำกับกับตัวเลือกเพื่อจัดกลุ่มและค้นหาออบเจ็กต์
เนมสเปซและป้ายกำกับเพื่อการจัดระเบียบ เป็นบทเรียน Docker & DevOps Fundamentals ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Docker & DevOps Fundamentals และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Docker & DevOps Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดต้องจัดระเบียบ
คลัสเตอร์จริงทำงานกับแอปจำนวนมากจากหลายทีม เนมสเปซและป้ายกำกับเป็นเครื่องมือในตัวของ Kubernetes ที่ช่วยจัดระเบียบและค้นหาออบเจ็กต์ทั้งหมดได้ง่าย
เนมสเปซคืออะไร
เนมสเปซคือคลัสเตอร์เสมือนภายในคลัสเตอร์ของคุณ ชื่อทรัพยากรต้องไม่ซ้ำกันภายในเนมสเปซเดียวกัน แต่ชื่อเดียวกันสามารถปรากฏซ้ำในเนมสเปซต่างกันได้
เนมสเปซเริ่มต้น
ทุกคลัสเตอร์จะมีเนมสเปซติดมาสองสามรายการ ได้แก่ default (ออบเจ็กต์ของคุณจะอยู่ที่นี่หากไม่ได้ระบุที่อื่น), kube-system (ส่วนประกอบของคลัสเตอร์) และ kube-public
kubectl get namespacesการสร้างเนมสเปซ
สร้างเนมสเปซใหม่เพื่อแยกสิ่งต่าง ๆ เช่น ทีมหรือสภาพแวดล้อมออกจากกัน
kubectl create namespace team-aการทำงานในเนมสเปซ
ระบุเนมสเปซสำหรับแต่ละคำสั่งด้วย -n หรือกำหนดค่าเริ่มต้นให้บริบทของคุณ เพื่อไม่ต้องระบุแฟล็กนี้ซ้ำ
kubectl get pods -n team-aเนมสเปซไม่ใช่การแยกออกจากกันอย่างสมบูรณ์
เนมสเปซกำหนดขอบเขตของ ชื่อ และเปิดใช้โควตากับ RBAC แต่ตัวมันเองไม่ได้แยกการรับส่งข้อมูลเครือข่ายออกจากกัน คุณต้องเพิ่มนโยบายเครือข่ายเพื่อทำเช่นนั้น
ป้ายกำกับคืออะไร
ป้ายกำกับ คือคู่คีย์/ค่าที่แนบอยู่กับออบเจ็กต์ โดยสื่อความหมายสำหรับผู้ใช้ เช่น app: web หรือ env: prod และใช้สำหรับจัดกลุ่ม
metadata:
labels:
app: web
env: prodการเพิ่มป้ายกำกับด้วย kubectl
แนบป้ายกำกับให้กับออบเจ็กต์ที่มีอยู่ได้ทันที
kubectl label pod nginx tier=frontendการเลือกตามป้ายกำกับ
สืบค้นออบเจ็กต์ตามป้ายกำกับด้วย -l วิธีนี้ทำให้คุณดำเนินการกับทั้งกลุ่มได้พร้อมกัน
kubectl get pods -l app=web,env=prodตัวเลือกช่วยเชื่อมทุกอย่างเข้าด้วยกัน
ป้ายกำกับไม่ได้มีไว้สำหรับมนุษย์เท่านั้น บริการและการติดตั้งใช้งานใช้ ตัวเลือกป้ายกำกับ เพื่อค้นหาพ็อดที่ตนเองจัดการอยู่ การเชื่อมโยงแบบหลวมนี้เป็นหัวใจสำคัญของ Kubernetes
selector:
matchLabels:
app: webคำอธิบายประกอบกับป้ายกำกับ
คำอธิบายประกอบ ก็เก็บข้อมูลในรูปคู่คีย์/ค่าเช่นกัน แต่ใช้สำหรับข้อมูลเมตาที่ไม่ได้ใช้ระบุอัตลักษณ์ เช่น ข้อมูลการสร้างและคำแนะนำสำหรับเครื่องมือ และ ไม่ถูกใช้โดยตัวเลือก
ตรวจสอบความเข้าใจ
ป้ายกำกับกับเนมสเปซแตกต่างกันอย่างไร
สรุปทบทวน
ตอนนี้คุณสามารถจัดระเบียบคลัสเตอร์ได้แล้ว:
- เนมสเปซ กำหนดขอบเขตของชื่อและเปิดใช้โควตา/RBAC โดยระบุเป้าหมายด้วย
-n - ป้ายกำกับ คือแท็กในรูปคู่คีย์/ค่า สืบค้นได้ด้วย
-l - ตัวเลือกเชื่อมบริการและการติดตั้งใช้งานเข้ากับพ็อด
- คำอธิบายประกอบเก็บข้อมูลเมตาที่ไม่ได้ใช้ระบุอัตลักษณ์
องค์ประกอบพื้นฐานเหล่านี้รองรับการขยายตั้งแต่แอปเดียวไปจนถึงคลัสเตอร์ที่มีหลายทีมใช้งานอย่างหนาแน่น
คำถามที่พบบ่อย
บทเรียน “เนมสเปซและป้ายกำกับเพื่อการจัดระเบียบ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “เนมสเปซและป้ายกำกับเพื่อการจัดระเบียบ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Docker & DevOps Fundamentals ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Docker & DevOps Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “เนมสเปซและป้ายกำกับเพื่อการจัดระเบียบ”
จัดระเบียบทรัพยากรในคลัสเตอร์ด้วยเนมสเปซเพื่อการแยกส่วน และใช้ป้ายกำกับกับตัวเลือกเพื่อจัดกลุ่มและค้นหาออบเจ็กต์ คุณปฏิบัติ Docker & DevOps Fundamentals ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Docker & DevOps Fundamentals หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Docker & DevOps Fundamentals บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “เนมสเปซและป้ายกำกับเพื่อการจัดระเบียบ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Docker & DevOps Fundamentals นี้ได้ไหม
ได้ บทเรียน Docker & DevOps Fundamentals ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- สถาปัตยกรรม Kubernetes
- Pod: หน่วยที่เล็กที่สุด
- พื้นฐานคำสั่ง kubectl
- เนมสเปซและป้ายกำกับเพื่อการจัดระเบียบ