Tôi muốn cho bạn thấy rằng khởi động lại lưới dệt Pods không cần thiết cho Chính sách mạng có hiệu lực.
Của bạn chính sách kiểm tra mạng Chính sách mạng được áp dụng cho các Nhóm có nhãn chạy=prod-nginx bên trong sản xuất Không gian tên và cho phép tất cả lưu lượng truy cập vào và từ chối tất cả lưu lượng truy cập đi ra.
Tôi sẽ tạo một ví dụ để minh họa cách nó hoạt động.
Đầu tiên, tôi tạo prod-nginx & sản phẩm thử nghiệm Pods và kiểm tra kết nối mà không có Chính sách mạng triển khai:
# kubectl chạy prod-nginx --image=nginx -n prod
pod/prod-nginx được tạo
# kubectl chạy prod-test --image=nginx -n prod
đã tạo pod/prod-test
# kubectl get pod -o wide -n prod
TÊN TRẠNG THÁI SẴN SÀNG KHỞI ĐỘNG LẠI TUỔI NHÃN IP
prod-nginx 1/1 Chạy 0 37s 10.44.0.1 run=prod-nginx
prod-test 1/1 Đang chạy 0 11 giây 10.44.0.2 run=prod-test
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.1 | grep -i thành công
<p>Nếu bạn thấy trang này, máy chủ web nginx đã được cài đặt thành công và
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.2 | grep -i thành công
<p>Nếu bạn thấy trang này, máy chủ web nginx đã được cài đặt thành công và
Mọi thứ hoạt động tốt, vì vậy hãy triển khai một chính sách kiểm tra mạng Chính sách mạng và kiểm tra lại:
# mèo netpol.yml
apiVersion: mạng.k8s.io/v1
loại: NetworkPolicy
metadata:
tên: thử nghiệm-chính sách mạng
không gian tên: prod
thông số kỹ thuật:
xâm nhập:
- {}
podSelector:
trận đấuNhãn:
chạy: prod-nginx
loại chính sách:
- Xâm nhập
- Đi ra
# áp dụng kubectl -f netpol.yml
networkpolicy.networking.k8s.io/test-network-policy đã tạo
Chúng ta có thể thấy rằng prod-nginx Pod không thể kết nối với các Pod khác nhưng có thể kết nối với chính nó:
GHI CHÚ: Một nhóm không thể chặn quyền truy cập vào chính nó (xem: Chính sách mạng tài liệu)
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.1 | grep -i thành công
<p>Nếu bạn thấy trang này, máy chủ web nginx đã được cài đặt thành công và
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.2 | grep -i thành công
lệnh kết thúc bằng mã thoát 7
Bây giờ hãy tạo một sân khấu-nginx Vỏ trong sân khấu không gian tên và kiểm tra xem prod-nginx Pod có thể kết nối với nó:
# kubectl chạy giai đoạn-nginx --image=nginx -n giai đoạn
pod/giai đoạn-nginx được tạo
# kubectl get pod -o wide -n stage
TÊN TÌNH TRẠNG SẴN SÀNG KHỞI ĐỘNG LẠI TUỔI IP
giai đoạn-nginx 1/1 Đang chạy 0 20 giây 10.44.0.6
# kubectl exec -it prod-nginx -n prod -- curl 10.44.0.6 | grep -i thành công
lệnh kết thúc bằng mã thoát 7
Chúng tôi đã xác minh rằng quy tắc đầu ra đang hoạt động bình thường và đang khởi động lại lưới dệt Pods là không cần thiết.