ฉันต้องการแสดงให้คุณเห็นว่าการรีสตาร์ท ตาข่ายสาน
ไม่จำเป็นต้องใช้พ็อด นโยบายเครือข่าย
เพื่อให้มีผล
ของคุณ ทดสอบเครือข่ายนโยบาย
นโยบายเครือข่าย
ใช้กับ Pods ที่มีป้ายกำกับ run=prod-nginx
ใน แยง
เนมสเปซและอนุญาตการรับส่งข้อมูลขาเข้าทั้งหมดและปฏิเสธการรับส่งข้อมูลขาออกทั้งหมด
ฉันจะสร้างตัวอย่างเพื่ออธิบายวิธีการทำงาน
ก่อนอื่นฉันสร้างไฟล์ ผลิตภัณฑ์ nginx
& การทดสอบผลิตภัณฑ์
พ็อดและทดสอบการเชื่อมต่อด้วยหมายเลข นโยบายเครือข่าย
ปรับใช้:
# kubectl รัน prod-nginx --image=nginx -n prod
สร้าง pod/prod-nginx แล้ว
# kubectl รัน prod-test --image=nginx -n prod
สร้างการทดสอบพ็อด/ผลิตภัณฑ์แล้ว
# kubectl รับพ็อด -o กว้าง -n ผลิตภัณฑ์
สถานะพร้อมชื่อ รีสตาร์ทอายุ ป้ายชื่อ IP
prod-nginx 1/1 ทำงาน 0 37s 10.44.0.1 run=prod-nginx
ทดสอบผลิตภัณฑ์ 1/1 ทำงาน 0 11 วินาที 10.44.0.2 เรียกใช้ = ทดสอบผลิตภัณฑ์
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.1 | grep - ฉันประสบความสำเร็จ
<p>หากคุณเห็นหน้านี้ แสดงว่าติดตั้งเว็บเซิร์ฟเวอร์ nginx สำเร็จและ
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.2 | grep - ฉันประสบความสำเร็จ
<p>หากคุณเห็นหน้านี้ แสดงว่าติดตั้งเว็บเซิร์ฟเวอร์ nginx สำเร็จและ
ทุกอย่างทำงานได้ดี ดังนั้นเรามาปรับใช้ ทดสอบเครือข่ายนโยบาย
นโยบายเครือข่าย
และทดสอบอีกครั้ง:
#แมวnetpol.yml
รุ่น api: networking.k8s.io/v1
ชนิด: NetworkPolicy
ข้อมูลเมตา:
ชื่อ: ทดสอบเครือข่ายนโยบาย
เนมสเปซ: ผลิตภัณฑ์
ข้อมูลจำเพาะ:
ทางเข้า:
- {}
ตัวเลือกพ็อด:
ป้ายกำกับการแข่งขัน:
เรียกใช้: prod-nginx
ประเภทนโยบาย:
- ขาเข้า
- ขาออก
# kubectl ใช้ -f netpol.yml
สร้าง networkpolicy.networking.k8s.io/test-network-policy แล้ว
เราจะเห็นได้ว่า ผลิตภัณฑ์ nginx
พ็อดไม่สามารถเชื่อมต่อกับพ็อดอื่นๆ ได้ แต่เชื่อมต่อกับตัวเองได้:
บันทึก: พ็อดไม่สามารถปิดกั้นการเข้าถึงตัวเองได้ (ดู: นโยบายเครือข่าย เอกสาร)
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.1 | grep - ฉันประสบความสำเร็จ
<p>หากคุณเห็นหน้านี้ แสดงว่าติดตั้งเว็บเซิร์ฟเวอร์ nginx สำเร็จและ
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.2 | grep - ฉันประสบความสำเร็จ
คำสั่งสิ้นสุดด้วยรหัสทางออก 7
ตอนนี้เรามาสร้าง เวที nginx
พ็อดใน เวที
เนมสเปซและตรวจสอบว่าไฟล์ ผลิตภัณฑ์ nginx
Pod สามารถเชื่อมต่อกับมัน:
# kubectl เรียกใช้ stage-nginx --image=nginx -n เวที
สร้าง pod/stage-nginx แล้ว
# kubectl รับ pod -o กว้าง -n เวที
ชื่อ พร้อม สถานะ เริ่มอายุ IP ใหม่
stage-nginx 1/1 ทำงาน 0 20s 10.44.0.6
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.6 | grep - ฉันประสบความสำเร็จ
คำสั่งสิ้นสุดด้วยรหัสทางออก 7
เราได้ตรวจสอบแล้วว่ากฎขาออกทำงานได้อย่างถูกต้องและเริ่มต้นระบบใหม่ ตาข่ายสาน
ไม่จำเป็นต้องใช้พ็อด