Middle
Ինչպե՞ս կարելի է սահմանափակել տարբեր անունների տարածքներում գտնվող ծրագրերի փոխազդեցությունը։
sobes.tech AI
Պատասխան AI-ից
Օգտագործեք ցանցային քաղաքականություններ:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-from-namespace
namespace: default # Նեյմսփեյս, որտեղ գտնվում է ծառայությունը, որի հետ փոխազդեցությունը սահմանափակում ենք
spec:
podSelector: {} # Կիրառվում է բոլոր պոդերի վրա այս նեյմսփեյսում
ingress:
- from:
- namespaceSelector:
matchLabels:
project: internal # Թույլատրել տրաֆիկ միայն այն նեյմսփեյսներից, որոնք ունեն label project: internal
ports:
- protocol: TCP
port: 80 # Թույլատրել տրաֆիկ միայն 80 պորտի վրա
Այլ մոտեցումներ են ներառում.
- Service Mesh (Istio, Linkerd): Ներկայացնում են ավելի մանրամասն վերահսկողություն տրաֆիկի վրա, ներառյալ mutual TLS (mTLS):
- Firewall-ներ: Նոդի մակարդակով (iptables) կամ ամպային մատակարարի կողմից:
- Ներքին մեխանիզմներ ծրագրերում: Օրինակ, API Gateway մակարդակով թույլտվություն։