เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจจเฉ‹เจŸ เจ•เจฐเฉ‹เฅค เจ…เจจเฉเจตเจพเจฆ: เจฒเฉ‡เจ– เจฆเฉ‡ เจฒเฉ‡เจ–เจ•, เจฐเฉ€เจฏเฉ‚เจตเฉ‡เจจ เจนเฉˆเจฐเฉ€เจธเจจ, เจ•เฉ‹เจฒ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจตเจฟเจ•เจพเจธ เจตเจฟเฉฑเจš 20 เจธเจพเจฒเจพเจ‚ เจคเฉ‹เจ‚ เจตเฉฑเจง เจฆเจพ เจคเจœเจฐเจฌเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ…เฉฑเจœ เจŸเฉ‚เจซเจฟเจจ เจฆเฉ‡ เจธเฉ€เจŸเฉ€เจ“ เจ…เจคเฉ‡ เจธเจนเจฟ-เจธเฉฐเจธเจฅเจพเจชเจ• เจนเจจ, เจ‡เฉฑเจ• เจ•เฉฐเจชเจจเฉ€ เจœเฉ‹ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจจเฉ€เจคเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจจ เจนเฉฑเจฒ เจคเจฟเจ†เจฐ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจ•เจฟ เจ‰เจน Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจตเจฟเจญเจพเจœเจจ เจฒเจˆ เจ‡เฉฑเจ• เจ•เจพเจซเจผเฉ€ เจธเจผเจ•เจคเฉ€เจธเจผเจพเจฒเฉ€ เจŸเฉ‚เจฒ เจตเจœเฉ‹เจ‚ เจฆเฉ‡เจ–เจฆเจพ เจนเฉˆ, เจ‰เจน เจ‡เจน เจตเฉ€ เจฎเฉฐเจจเจฆเจพ เจนเฉˆ เจ•เจฟ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ…เจฎเจฒ เจตเจฟเฉฑเจš เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจ‡เฉฐเจจเจพ เจ†เจธเจพเจจ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจ‡เจน เจธเจฎเฉฑเจ—เจฐเฉ€ (เจ•เจพเจซเจผเฉ€ เจตเจฟเจธเจผเจพเจฒ) เจ‡เจธ เจฎเฉเฉฑเจฆเฉ‡ เจฌเจพเจฐเฉ‡ เจฎเจพเจนเจฟเจฐเจพเจ‚ เจฆเฉ€ เจœเจพเจ—เจฐเฉ‚เจ•เจคเจพ เจจเฉ‚เฉฐ เจฌเจฟเจนเจคเจฐ เจฌเจฃเจพเจ‰เจฃ เจ…เจคเฉ‡ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€เจ†เจ‚ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจฌเจฃเจพเจ‰เจฃ เจตเจฟเฉฑเจš เจ‰เจนเจจเจพเจ‚ เจฆเฉ€ เจฎเจฆเจฆ เจ•เจฐเจจ เจฒเจˆ เจนเฉˆเฅค

เจ…เฉฑเจœ, เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เฉฐเจชเจจเฉ€เจ†เจ‚ เจ†เจชเจฃเฉ€เจ†เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐ เจฐเจนเฉ€เจ†เจ‚ เจนเจจเฅค เจ‡เจธ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจตเจฟเฉฑเจš เจฆเจฟเจฒเจšเจธเจชเฉ€ เจ‡เฉฐเจจเฉ€ เจœเจผเจฟเจ†เจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉเจ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉ‚เฉฐ "เจกเจพเจŸเจพ เจธเฉˆเจ‚เจŸเจฐ เจฒเจˆ เจจเจตเจพเจ‚ เจ“เจชเจฐเฉ‡เจŸเจฟเฉฐเจ— เจธเจฟเจธเจŸเจฎ" เจ•เจนเจฟ เจฐเจนเฉ‡ เจนเจจเฅค เจนเฉŒเจฒเฉ€-เจนเฉŒเจฒเฉ€, เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ (เจœเจพเจ‚ k8s) เจจเฉ‚เฉฐ เจ•เจพเจฐเฉ‹เจฌเจพเจฐ เจฆเฉ‡ เจ‡เฉฑเจ• เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเจฟเฉฑเจธเฉ‡ เจตเจœเฉ‹เจ‚ เจธเจฎเจเจฟเจ† เจœเจพเจฃ เจฒเฉฑเจ—เจพ เจนเฉˆ, เจœเจฟเจธ เจฒเจˆ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉเจฐเฉฑเจ–เจฟเจ† เจธเจฎเฉ‡เจค เจชเจฐเจฟเจชเฉฑเจ• เจตเจชเจพเจฐเจ• เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจฆเฉ‡ เจธเฉฐเจ—เจ เจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจœเฉ‹ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจ•เฉ‡ เจ‰เจฒเจเฉ‡ เจนเฉ‹เจ เจนเจจ, เจ…เจธเจฒ เจ–เฉเจฒเจพเจธเจพ เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ เจฆเฉ€ เจกเจฟเจซเฉŒเจฒเจŸ เจจเฉ€เจคเฉ€ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆ: เจนเจฐ เจšเฉ€เจœเจผ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเจ“เฅค

เจ‡เจน เจ—เจพเจˆเจก เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ เจฌเจฃเจคเจฐ เจจเฉ‚เฉฐ เจธเจฎเจเจฃ เจตเจฟเฉฑเจš เจคเฉเจนเจพเจกเฉ€ เจฎเจฆเจฆ เจ•เจฐเฉ‡เจ—เฉ€; เจธเจฎเจเฉ‹ เจ•เจฟ เจ‰เจน เจจเจฟเจฏเจฎเจค เจซเจพเจ‡เจฐเจตเจพเจฒเจพเจ‚ เจฆเฉ‡ เจจเจฟเจฏเจฎเจพเจ‚ เจคเฉ‹เจ‚ เจ•เจฟเจตเฉ‡เจ‚ เจตเฉฑเจ–เจฐเฉ‡ เจนเจจเฅค เจ‡เจน เจ•เฉเจ เจ•เจฎเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจตเฉ€ เจ•เจตเจฐ เจ•เจฐเฉ‡เจ—เจพ เจ…เจคเฉ‡ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ 'เจคเฉ‡ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจฎเจฆเจฆ เจฒเจˆ เจธเจฟเจซเจผเจพเจฐเจธเจผเจพเจ‚ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเฉ‡เจ—เจพเฅค

Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚

Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจตเจฟเจงเฉ€ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจฒเฉ‡เจ…เจฐ (OSI เจฎเจพเจกเจฒ เจตเจฟเฉฑเจš เจคเฉ€เจœเจพ) 'เจคเฉ‡ เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ 'เจคเฉ‡ เจคเฉˆเจจเจพเจค เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ‡ เจ†เจชเจธเฉ€ เจคเจพเจฒเจฎเฉ‡เจฒ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจ†เจงเฉเจจเจฟเจ• เจซเจพเจ‡เจฐเจตเจพเจฒเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจ•เฉเจ เจ‰เฉฑเจจเจค เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจฆเฉ€ เจ˜เจพเจŸ เจนเฉˆ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ OSI เจฒเฉ‡เจ…เจฐ 7 เจ‡เจจเจซเฉ‹เจฐเจธเจฎเฉˆเจ‚เจŸ เจ…เจคเฉ‡ เจ–เจคเจฐเฉ‡ เจฆเจพ เจชเจคเจพ เจฒเจ—เจพเจ‰เจฃเจพ, เจชเจฐ เจ‰เจน เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเฉเจฐเฉฑเจ–เจฟเจ† เจฆเจพ เจ‡เฉฑเจ• เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจชเฉฑเจงเจฐ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเฉ‡ เจนเจจ เจœเฉ‹ เจ‡เฉฑเจ• เจตเจงเฉ€เจ† เจธเจผเฉเจฐเฉ‚เจ†เจคเฉ€ เจฌเจฟเฉฐเจฆเฉ‚ เจนเฉˆเฅค

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจชเฉŒเจกเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจธเฉฐเจšเจพเจฐ เจจเฉ‚เฉฐ เจ•เฉฐเจŸเจฐเฉ‹เจฒ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจตเจฐเจ•เจฒเฉ‹เจก เจจเฉ‚เฉฐ เจชเฉŒเจกเจพเจ‚ เจตเจฟเฉฑเจš เจตเฉฐเจกเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจœเจฟเจธ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจœเจพเจ‚ เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง เจ•เฉฐเจŸเฉ‡เจจเจฐ เจ‡เจ•เฉฑเจ เฉ‡ เจคเฉˆเจจเจพเจค เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจนเจฐเฉ‡เจ• เจชเฉŒเจก เจจเฉ‚เฉฐ เจ‡เฉฑเจ• IP เจชเจคเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจฆเจพ เจนเฉˆ เจœเฉ‹ เจนเฉ‹เจฐ เจชเฉŒเจกเจพเจ‚ เจคเฉ‹เจ‚ เจชเจนเฉเฉฐเจšเจฏเฉ‹เจ— เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจชเฉŒเจกเจพเจ‚ เจฆเฉ‡ เจธเจฎเฉ‚เจนเจพเจ‚ เจฒเจˆ เจชเจนเฉเฉฐเจš เจ…เจงเจฟเจ•เจพเจฐ เจ‰เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚ เจธเฉˆเฉฑเจŸ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฒเจพเจ‰เจก เจตเจฟเฉฑเจš เจธเฉเจฐเฉฑเจ–เจฟเจ† เจธเจฎเฉ‚เจนเจพเจ‚ เจจเฉ‚เฉฐ เจตเจฐเจšเฉเจ…เจฒ เจฎเจธเจผเฉ€เจจ เจ‰เจฆเจพเจนเจฐเจจเจพเจ‚ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจจเฉ‚เฉฐ เจจเจฟเจฏเฉฐเจคเจฐเจฟเจค เจ•เจฐเจจ เจฒเจˆ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจจเจพ

เจนเฉ‹เจฐ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจธเจฐเฉ‹เจคเจพเจ‚ เจตเจพเจ‚เจ—, เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ YAML เจตเจฟเฉฑเจš เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจนเจจเฅค เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš, เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ balance เจคเฉฑเจ• เจชเจนเฉเฉฐเจš postgres:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: balance
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

(เจจเฉ‹เจŸ เจ•เจฐเฉ‹เฅค เจ…เจจเฉเจตเจพเจฆ: เจ‡เจน เจธเจ•เจฐเฉ€เจจเจธเจผเจพเจŸ, เจ…เจ—เจฒเฉ‡ เจธเจพเจฐเฉ‡ เจธเจฎเจพเจจเจพเจ‚ เจตเจพเจ‚เจ—, เจฎเฉ‚เจฒ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจŸเฉ‚เจฒเจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจจเจนเฉ€เจ‚, เจฌเจฒเจ•เจฟ เจŸเฉ‚เจซเจฟเจจ เจ“เจฐเจ•เจพ เจŸเฉ‚เจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจธเฉ€, เจœเฉ‹ เจ•เจฟ เจ…เจธเจฒ เจฒเฉ‡เจ– เจฆเฉ‡ เจฒเฉ‡เจ–เจ• เจฆเฉ€ เจ•เฉฐเจชเจจเฉ€ เจฆเฉเจ†เจฐเจพ เจตเจฟเจ•เจธเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€ เจ…เจคเฉ‡ เจœเจฟเจธเจฆเจพ เจœเจผเจฟเจ•เจฐ เจธเจฎเฉฑเจ—เจฐเฉ€ เจฆเฉ‡ เจ…เฉฐเจค เจตเจฟเฉฑเจš เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค)

เจคเฉเจนเจพเจกเฉ€ เจ†เจชเจฃเฉ€ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจจ เจฒเจˆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ YAML เจฆเฉ‡ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจ—เจฟเจ†เจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€เฅค เจ‡เจน เจญเจพเจธเจผเจพ เจ‡เฉฐเจกเฉˆเจ‚เจŸเฉ‡เจธเจผเจจ 'เจคเฉ‡ เจ…เจงเจพเจฐเจค เจนเฉˆ (เจŸเฉˆเจฌเจพเจ‚ เจฆเฉ€ เจฌเจœเจพเจ เจธเจชเฉ‡เจธ เจฆเฉเจ†เจฐเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ€ เจ—เจˆ)เฅค เจ‡เฉฑเจ• เจ‡เฉฐเจกเฉˆเจ‚เจŸเจก เจเจฒเฉ€เจฎเฉˆเจ‚เจŸ เจ‡เจธเจฆเฉ‡ เจ‰เฉฑเจชเจฐเจฒเฉ‡ เจธเจญ เจคเฉ‹เจ‚ เจจเจœเจผเจฆเฉ€เจ•เฉ€ เจ‡เฉฐเจกเฉˆเจ‚เจŸเจก เจเจฒเฉ€เจฎเฉˆเจ‚เจŸ เจจเจพเจฒ เจธเจฌเฉฐเจงเจค เจนเฉˆเฅค เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจธเฉ‚เจšเฉ€ เจคเฉฑเจค เจ‡เฉฑเจ• เจนเจพเจˆเจซเจจ เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจฌเจพเจ•เฉ€ เจธเจพเจฐเฉ‡ เจคเฉฑเจคเจพเจ‚ เจฆเจพ เจฐเฉ‚เจช เจนเฉเฉฐเจฆเจพ เจนเฉˆ เจ•เฉเฉฐเจœเฉ€-เจฎเฉเฉฑเจฒ.

YAML เจตเจฟเฉฑเจš เจจเฉ€เจคเฉ€ เจฆเจพ เจตเจฐเจฃเจจ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจตเจฐเจคเฉ‹เจ‚ kubectlเจ‡เจธ เจจเฉ‚เฉฐ เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ:

kubectl create -f policy.yaml

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจจเจฟเจฐเจงเจพเจฐเจจ

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจจเจฟเจฐเจงเจพเจฐเจจ เจตเจฟเฉฑเจš เจšเจพเจฐ เจคเฉฑเจค เจธเจผเจพเจฎเจฒ เจนเจจ:

  1. podSelector: เจ‡เจธ เจจเฉ€เจคเฉ€ (เจŸเฉ€เจšเฉ‡) เจฆเฉเจ†เจฐเจพ เจชเฉเจฐเจญเจพเจตเจฟเจค เจชเฉŒเจกเจพเจ‚ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆ - เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ;
  2. policyTypes: เจ‡เจน เจฆเจฐเจธเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‡เจธ เจตเจฟเฉฑเจš เจ•เจฟเจธ เจ•เจฟเจธเจฎ เจฆเฉ€เจ†เจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจนเจจ: เจชเฉเจฐเจตเฉ‡เจธเจผ เจ…เจคเฉ‡/เจœเจพเจ‚ เจจเจฟเจ•เจพเจธเฉ€ - เจตเจฟเจ•เจฒเจชเจฟเจ•, เจชเจฐ เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจธเจพเจฐเฉ‡ เจฎเจพเจฎเจฒเจฟเจ†เจ‚ เจตเจฟเฉฑเจš เจธเจชเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจ เจฆเฉ€ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เจฐเจฆเจพ เจนเจพเจ‚;
  3. ingress: เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ†เจ—เจฟเจ† เจนเฉˆ เจ†เจ‰เจฃ เจตเจพเจฒเฉ‡ เจŸเจพเจฐเจ—เฉ‡เจŸ เจชเฉŒเจกเจพเจ‚ เจฒเจˆ เจ†เจตเจพเจœเจพเจˆ เจตเจฟเจ•เจฒเจชเจฟเจ• เจนเฉˆ;
  4. egress: เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ†เจ—เจฟเจ† เจนเฉˆ เจ†เจŠเจŸเจ—เฉ‹เจ‡เฉฐเจ— เจŸเจพเจฐเจ—เฉ‡เจŸ เจชเฉŒเจกเจธ เจคเฉ‹เจ‚ เจ†เจตเจพเจœเจพเจˆ เจตเจฟเจ•เจฒเจชเจฟเจ• เจนเฉˆเฅค

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเฉˆเฉฑเจฌเจธเจพเจˆเจŸ เจคเฉ‹เจ‚ เจฒเจˆ เจ—เจˆ เจ‰เจฆเจพเจนเจฐเจจ (เจฎเฉˆเจ‚ เจฌเจฆเจฒเจฟเจ† role 'เจคเฉ‡ app), เจฆเจฟเจ–เจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจธเจพเจฐเฉ‡ เจšเจพเจฐ เจคเฉฑเจค เจ•เจฟเจตเฉ‡เจ‚ เจตเจฐเจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
  podSelector:    # <<<
    matchLabels:
      app: db
  policyTypes:    # <<<
  - Ingress
  - Egress
  ingress:        # <<<
  - from:
    - ipBlock:
        cidr: 172.17.0.0/16
        except:
        - 172.17.1.0/24
    - namespaceSelector:
        matchLabels:
          project: myproject
    - podSelector:
        matchLabels:
          role: frontend
    ports:
    - protocol: TCP
      port: 6379
  egress:         # <<<
  - to:
    - ipBlock:
        cidr: 10.0.0.0/24
    ports:
    - protocol: TCP
      port: 5978

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ•เจฟเจฐเจชเจพ เจ•เจฐเจ•เฉ‡ เจงเจฟเจ†เจจ เจฆเจฟเจ“ เจ•เจฟ เจธเจพเจฐเฉ‡ เจšเจพเจฐ เจคเฉฑเจคเจพเจ‚ เจจเฉ‚เฉฐ เจธเจผเจพเจฎเจฒ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจ‡เจน เจธเจฟเจฐเจซเจผ เจฒเจพเจœเจผเจฎเฉ€ เจนเฉˆ podSelector, เจนเฉ‹เจฐ เจฎเจพเจชเจฆเฉฐเจก เจฒเฉ‹เฉœ เจ…เจจเฉเจธเจพเจฐ เจตเจฐเจคเฉ‡ เจœเจพ เจธเจ•เจฆเฉ‡ เจนเจจเฅค

เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจ›เฉฑเจก เจฆเจฟเฉฐเจฆเฉ‡ เจนเฉ‹ policyTypes, เจจเฉ€เจคเฉ€ เจฆเฉ€ เจตเจฟเจ†เจ–เจฟเจ† เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจตเฉ‡เจ—เฉ€:

  • เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, เจ‡เจน เจฎเฉฐเจจเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‡เจน เจชเฉเจฐเจตเฉ‡เจธเจผ เจตเจพเจฒเฉ‡ เจชเจพเจธเฉ‡ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจจเฉ€เจคเฉ€ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เจน เจจเจนเฉ€เจ‚ เจฆเฉฑเจธเจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจธเจฟเจธเจŸเจฎ เจ‡เจน เจฎเฉฐเจจ เจฒเจตเฉ‡เจ—เจพ เจ•เจฟ เจธเจพเจฐเฉ‡ เจ†เจตเจพเจœเจพเจˆ เจฆเฉ€ เจฎเจจเจพเจนเฉ€ เจนเฉˆเฅค
  • เจจเจฟเจ•เจพเจธ เจตเจพเจฒเฉ‡ เจชเจพเจธเฉ‡ เจฆเจพ เจตเจฟเจตเจนเจพเจฐ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจจเจฟเจ•เจพเจธเฉ€ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฆเฉ€ เจฎเฉŒเจœเฉ‚เจฆเจ—เฉ€ เจœเจพเจ‚ เจ—เฉˆเจฐเจนเจพเจœเจผเจฐเฉ€ เจฆเฉเจ†เจฐเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพเฅค

เจ—เจฒเจคเฉ€เจ†เจ‚ เจคเฉ‹เจ‚ เจฌเจšเจฃ เจฒเจˆ เจฎเฉˆเจ‚ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เจฐเจฆเจพ เจนเจพเจ‚ เจนเจฎเฉ‡เจธเจผเจพ เจ‡เจธ เจจเฉ‚เฉฐ เจธเจชเฉฑเจธเจผเจŸ เจ•เจฐเฉ‹ policyTypes.

เจ‰เจชเจฐเฉ‹เจ•เจค เจคเจฐเจ• เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ, เจœเฉ‡เจ•เจฐ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ ingress เจ…เจคเฉ‡ / เจœเจพเจ‚ egress เจ›เฉฑเจกเจฟเจ† เจ—เจฟเจ†, เจจเฉ€เจคเฉ€ เจธเจพเจฐเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจ…เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเฉ‡เจ—เฉ€ (เจนเฉ‡เจ เจพเจ‚ "เจธเจŸเจฐเจฟเฉฑเจชเจฟเฉฐเจ— เจจเจฟเจฏเจฎ" เจฆเฉ‡เจ–เฉ‹)เฅค

เจชเฉ‚เจฐเจต-เจจเจฟเจฐเจงเจพเจฐเจค เจจเฉ€เจคเฉ€ เจ‡เจœเจพเจœเจผเจค เจนเฉˆ

เจœเฉ‡เจ•เจฐ เจ•เฉ‹เจˆ เจจเฉ€เจคเฉ€ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆ, เจคเจพเจ‚ Kubernetes เจธเจพเจฐเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจธเจพเจฐเฉ‡ เจชเฉŒเจก เจธเฉเจคเฉฐเจคเจฐ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ†เจชเจธ เจตเจฟเฉฑเจš เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเจพ เจ†เจฆเจพเจจ-เจชเฉเจฐเจฆเจพเจจ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจ‡เจน เจธเฉเจฐเฉฑเจ–เจฟเจ† เจฆเฉเจฐเจฟเจธเจผเจŸเฉ€เจ•เฉ‹เจฃ เจคเฉ‹เจ‚ เจชเฉเจฐเจคเฉ€เจ•เฉ‚เจฒ เจœเจพเจชเจฆเจพ เจนเฉˆ, เจชเจฐ เจฏเจพเจฆ เจฐเฉฑเจ–เฉ‹ เจ•เจฟ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจกเจฟเจตเฉˆเจฒเจชเจฐเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ‡เฉฐเจŸเจฐเจ“เจชเจฐเฉ‡เจฌเจฟเจฒเจŸเฉ€ เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€เฅค เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฌเจพเจ…เจฆ เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจธเจจเฅค

เจจเฉ‡เจฎเจธเจชเฉ‡เจธ

เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจธเจนเจฟเจฏเฉ‹เจ— เจตเจฟเจงเฉ€ เจนเฉˆเฅค เจ‰เจน เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจคเฉ‹เจ‚ เจฒเจพเจœเจผเฉ€เจ•เจฒ เจตเจพเจคเจพเจตเจฐเจจ เจจเฉ‚เฉฐ เจ…เจฒเฉฑเจ— เจ•เจฐเจจ เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจ, เจœเจฆเฉ‹เจ‚ เจ•เจฟ เจธเจชเฉ‡เจธ เจตเจฟเจšเจ•เจพเจฐ เจธเฉฐเจšเจพเจฐ เจจเฉ‚เฉฐ เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฑเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

เจœเจผเจฟเจ†เจฆเจพเจคเจฐ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ•เฉฐเจชเฉ‹เจจเฉˆเจ‚เจŸเจธ เจตเจพเจ‚เจ—, เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจชเจพเจฒเจฟเจธเฉ€เจ†เจ‚ เจ‡เฉฑเจ• เจ–เจพเจธ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจฐเจนเจฟเฉฐเจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจฌเจฒเจพเจ• เจตเจฟเฉฑเจš metadata เจคเฉเจธเฉ€เจ‚ เจจเจฟเจธเจผเจšเจฟเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ•เจฟ เจจเฉ€เจคเฉ€ เจ•เจฟเจธ เจธเจชเฉ‡เจธ เจจเจพเจฒ เจธเจฌเฉฐเจงเจค เจนเฉˆ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: my-namespace  # <<<
spec:
...

เจœเฉ‡เจ•เจฐ เจฎเฉ‡เจŸเจพเจกเฉ‡เจŸเจพ เจตเจฟเฉฑเจš เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจจเจฟเจฐเจงเจพเจฐเจค เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ, เจคเจพเจ‚ เจธเจฟเจธเจŸเจฎ kubectl (เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš) เจตเจฟเฉฑเจš เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเฉ‡เจ—เจพ namespace=default):

kubectl apply -n my-namespace -f namespace.yaml

เจฎเฉˆเจ‚ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เจฐเจฆเจพ เจนเจพเจ‚ เจธเจชเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจฆเจฟเจ“, เจœเจฆเฉ‹เจ‚ เจคเฉฑเจ• เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจจเฉ€เจคเฉ€ เจจเจนเฉ€เจ‚ เจฒเจฟเจ– เจฐเจนเฉ‡ เจนเฉ‹ เจœเฉ‹ เจ‡เฉฑเจ•เฉ‹ เจธเจฎเฉ‡เจ‚ เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจจเฉ‚เฉฐ เจจเจฟเจธเจผเจพเจจเจพ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค

เจฎเฉเฉฑเจ– เจคเฉฑเจค podSelector เจชเจพเจฒเจฟเจธเฉ€ เจตเจฟเฉฑเจš เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจคเฉ‹เจ‚ เจชเฉŒเจกเจธ เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐเฉ‡เจ—เจพ เจœเจฟเจธ เจจเจพเจฒ เจชเจพเจฒเจฟเจธเฉ€ เจธเจฌเฉฐเจงเจค เจนเฉˆ (เจ‡เจธ เจจเฉ‚เฉฐ เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจคเฉ‹เจ‚ เจชเฉŒเจกเจธ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจคเฉ‹เจ‚ เจ‡เจจเจ•เจพเจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ)เฅค

เจ‡เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚, เจชเฉ‹เจกเจธเจฟเจฒเฉˆเจ•เจŸเจฐ เจชเฉเจฐเจตเฉ‡เจธเจผ เจ…เจคเฉ‡ เจจเจฟเจ•เจพเจธเฉ€ เจฌเจฒเจพเจ•เจพเจ‚ เจตเจฟเฉฑเจš เจธเจฟเจฐเจซเจผ เจ‰เจนเจจเจพเจ‚ เจฆเฉ‡ เจ†เจชเจฃเฉ‡ เจจเจพเจฎ-เจธเจฅเจพเจจ เจคเฉ‹เจ‚ เจชเฉŒเจกเจพเจ‚ เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจจ, เจœเจฆเฉ‹เจ‚ เจคเฉฑเจ• เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจ‰เจนเจจเจพเจ‚ เจจเจพเจฒ เจจเจนเฉ€เจ‚ เจœเฉ‹เฉœเจฆเฉ‡ namespaceSelector (เจ‡เจธ เจฌเจพเจฐเฉ‡ โ€œเจจเฉ‡เจฎ เจธเจชเฉ‡เจธ เจ…เจคเฉ‡ เจชเฉŒเจกเจธ เจฆเฉเจ†เจฐเจพ เจซเจฟเจฒเจŸเจฐ เจ•เจฐเฉ‹โ€ เจญเจพเจ— เจตเจฟเฉฑเจš เจšเจฐเจšเจพ เจ•เฉ€เจคเฉ€ เจœเจพเจตเฉ‡เจ—เฉ€)เฅค

เจจเฉ€เจคเฉ€ เจจเจพเจฎเจ•เจฐเจจ เจจเจฟเจฏเจฎ

เจชเจพเจฒเจฟเจธเฉ€ เจฆเฉ‡ เจจเจพเจฎ เจ‡เฉฑเจ•เฉ‹ เจจเฉ‡เจฎ เจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจตเจฟเจฒเฉฑเจ–เจฃ เจนเจจเฅค เจ‡เฉฑเจ•เฉ‹ เจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจ‡เฉฑเจ•เฉ‹ เจจเจพเจฎ เจฆเฉ€เจ†เจ‚ เจฆเฉ‹ เจชเจพเจฒเจฟเจธเฉ€เจ†เจ‚ เจจเจนเฉ€เจ‚ เจนเฉ‹ เจธเจ•เจฆเฉ€เจ†เจ‚, เจชเจฐ เจตเฉฑเจ–-เจตเฉฑเจ– เจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจ‡เฉฑเจ•เฉ‹ เจจเจพเจฎ เจตเจพเจฒเฉ€เจ†เจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจนเฉ‹ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจ‡เจน เจ‰เจฆเฉ‹เจ‚ เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉเฉฐเจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ•เฉ‹ เจจเฉ€เจคเฉ€ เจจเฉ‚เฉฐ เจ•เจˆ เจฅเจพเจตเจพเจ‚ 'เจคเฉ‡ เจฆเฉเจฌเจพเจฐเจพ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹เฅค

เจฎเฉˆเจจเฉ‚เฉฐ เจ–เจพเจธ เจคเฉŒเจฐ 'เจคเฉ‡ เจจเจพเจฎเจ•เจฐเจจ เจตเจฟเจงเฉ€เจ†เจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ‡เฉฑเจ• เจชเจธเฉฐเจฆ เจนเฉˆเฅค เจ‡เจธ เจตเจฟเฉฑเจš เจŸเจพเจฐเจ—เฉ‡เจŸ เจชเฉŒเจกเจธ เจฆเฉ‡ เจจเจพเจฒ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจจเจพเจฎ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจเจพ เจธเจผเจพเจฎเจฒ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจฃ เจฒเจˆ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres  # <<<
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: admin
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจฒเฉ‡เจฌเจฒ

เจคเฉเจธเฉ€เจ‚ เจ•เจธเจŸเจฎ เจฒเฉ‡เจฌเจฒ เจจเฉ‚เฉฐ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ†เจฌเจœเฉˆเจ•เจŸ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจชเฉŒเจก เจ…เจคเฉ‡ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจจเจพเจฒ เจœเฉ‹เฉœ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจฒเฉ‡เจฌเจฒ (เจฒเฉ‡เจฌเจฒ - เจŸเฉˆเจ—) เจ•เจฒเจพเจ‰เจก เจตเจฟเฉฑเจš เจŸเฉˆเจ—เจธ เจฆเฉ‡ เจฌเจฐเจพเจฌเจฐ เจนเจจเฅค Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจšเฉเจฃเจจ เจฒเจˆ เจฒเฉ‡เจฌเจฒ เจตเจฐเจคเจฆเฉ€เจ†เจ‚ เจนเจจ เจซเจฒเฉ€เจ†เจ‚เจœเจฟเจธ เจฒเจˆ เจ‰เจน เจฒเจพเจ—เฉ‚ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ:

podSelector:
  matchLabels:
    role: db

โ€ฆ เจœเจพเจ‚ เจจเจพเจฎ เจธเจฅเจพเจจเจœเจฟเจธ เจฒเจˆ เจ‰เจน เจ…เจชเจฒเจพเจˆ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค เจ‡เจน เจ‰เจฆเจพเจนเจฐเจจ เจ…เจจเฉเจธเจพเจฐเฉ€ เจฒเฉ‡เจฌเจฒเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจกเจพเจ‚ เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐเจฆเฉ€ เจนเฉˆ:

namespaceSelector:
  matchLabels:
    project: myproject

เจ‡เฉฑเจ• เจธเจพเจตเจงเจพเจจเฉ€: เจตเจฐเจคเจฃ เจตเฉ‡เจฒเฉ‡ namespaceSelector เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ“ เจ•เจฟ เจคเฉเจนเจพเจกเฉ‡ เจฆเฉเจ†เจฐเจพ เจšเฉเจฃเฉ‡ เจ—เจ เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจตเจฟเฉฑเจš เจธเจนเฉ€ เจฒเฉ‡เจฌเจฒ เจนเฉˆ. เจงเจฟเจ†เจจ เจฐเฉฑเจ–เฉ‹ เจ•เจฟ เจฌเจฟเจฒเจŸ-เจ‡เจจ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ default ะธ kube-system, เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฒเฉ‡เจฌเจฒ เจธเจผเจพเจฎเจฒ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค

เจคเฉเจธเฉ€เจ‚ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฒเฉ‡เจฌเจฒ เจœเฉ‹เฉœ เจธเจ•เจฆเฉ‡ เจนเฉ‹:

kubectl label namespace default namespace=default

เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚, เจญเจพเจ— เจตเจฟเฉฑเจš เจจเจพเจฎ-เจธเจฅเจพเจจ metadata เจ…เจธเจฒ เจธเจชเฉ‡เจธ เจจเจพเจฎ เจฆเจพ เจนเจตเจพเจฒเจพ เจฆเฉ‡เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ, เจจเจพ เจ•เจฟ เจฒเฉ‡เจฌเจฒ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default   # <<<
spec:
...

เจธเจฐเฉ‹เจค เจ…เจคเฉ‡ เจฎเฉฐเจœเจผเจฟเจฒ

เจซเจพเจ‡เจฐเจตเจพเจฒ เจจเฉ€เจคเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจธเจฐเฉ‹เจคเจพเจ‚ เจ…เจคเฉ‡ เจฎเฉฐเจœเจผเจฟเจฒเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจจเจฟเจฏเจฎ เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจŸเฉ€เจšเฉ‡ เจฒเจˆ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ - เจชเฉŒเจกเจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจธเจฎเฉ‚เจน เจœเจฟเจธ 'เจคเฉ‡ เจ‰เจน เจฒเจพเจ—เฉ‚ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ - เจ…เจคเฉ‡ เจซเจฟเจฐ เจชเฉเจฐเจตเฉ‡เจธเจผ เจ…เจคเฉ‡/เจœเจพเจ‚ เจจเจฟเจ•เจพเจธเฉ€ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฒเจˆ เจจเจฟเจฏเจฎ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจฆเฉ‡ เจนเจจเฅค เจธเจพเจกเฉ€ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš, เจจเฉ€เจคเฉ€ เจฆเจพ เจŸเฉ€เจšเจพ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจก เจนเฉ‹เจฃเจ—เฉ‡ default เจ•เฉเฉฐเจœเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจฒเฉ‡เจฌเจฒ เจฆเฉ‡ เจจเจพเจฒ app เจ…เจคเฉ‡ เจ…เจฐเจฅ db:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: db   # <<<
  policyTypes:
  - Ingress
  - Egress
  ingress:
  - from:
    - ipBlock:
        cidr: 172.17.0.0/16
        except:
        - 172.17.1.0/24
    - namespaceSelector:
        matchLabels:
          project: myproject
    - podSelector:
        matchLabels:
          role: frontend
    ports:
    - protocol: TCP
      port: 6379
  egress:
  - to:
    - ipBlock:
        cidr: 10.0.0.0/24
    ports:
    - protocol: TCP
      port: 5978

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ‰เจชเจญเจพเจ— ingress เจ‡เจธ เจจเฉ€เจคเฉ€ เจตเจฟเฉฑเจš, เจ†เจ‰เจฃ เจตเจพเจฒเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจŸเจพเจฐเจ—เฉ‡เจŸ เจชเฉŒเจกเจพเจ‚ เจฒเจˆ เจ–เฉ‹เจฒเฉเจนเจฆเจพ เจนเฉˆเฅค เจฆเฉ‚เจœเฉ‡ เจธเจผเจฌเจฆเจพเจ‚ เจตเจฟเจš, เจชเฉเจฐเจตเฉ‡เจธเจผ เจธเจฐเฉ‹เจค เจนเฉˆ เจ…เจคเฉ‡ เจŸเฉ€เจšเจพ เจ…เจจเฉเจธเจพเจฐเฉ€ เจฎเฉฐเจœเจผเจฟเจฒ เจนเฉˆเฅค เจ‡เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚, เจจเจฟเจ•เจพเจธเฉ€ เจฎเฉฐเจœเจผเจฟเจฒ เจนเฉˆ เจ…เจคเฉ‡ เจจเจฟเจธเจผเจพเจจเจพ เจ‡เจธเจฆเจพ เจธเจฐเฉ‹เจค เจนเฉˆเฅค

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ‡เจน เจฆเฉ‹ เจซเจพเจ‡เจฐเจตเจพเจฒ เจจเจฟเจฏเจฎเจพเจ‚ เจฆเฉ‡ เจฌเจฐเจพเจฌเจฐ เจนเฉˆ: เจ‡เจจเจ—เฉเจฐเฉ‡เจธ โ†’ เจŸเจพเจฐเจ—เฉ‡เจŸ; เจŸเฉ€เจšเจพ โ†’ เจจเจฟเจ•เจพเจธเฉ€เฅค

Egress เจ…เจคเฉ‡ DNS (เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ!)

เจฌเจพเจนเจฐ เจœเจพเจฃ เจตเจพเจฒเฉ‡ เจ†เจตเจพเจœเจพเจˆ เจจเฉ‚เฉฐ เจธเฉ€เจฎเจค เจ•เจฐเจ•เฉ‡, DNS 'เจคเฉ‡ เจตเจฟเจธเจผเฉ‡เจธเจผ เจงเจฟเจ†เจจ เจฆเจฟเจ“ - Kubernetes เจ‡เจธ เจธเฉ‡เจตเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ IP เจชเจคเจฟเจ†เจ‚ 'เจคเฉ‡ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเจพ เจจเจ•เจธเจผเจพ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจจเฉ€เจคเฉ€ เจ•เฉฐเจฎ เจจเจนเฉ€เจ‚ เจ•เจฐเฉ‡เจ—เฉ€ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจจเจนเฉ€เจ‚ เจฆเจฟเฉฑเจคเฉ€ เจนเฉˆ balance DNS เจคเฉฑเจ• เจชเจนเฉเฉฐเจš:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  policyTypes:
  - Egress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจคเฉเจธเฉ€เจ‚ DNS เจธเฉ‡เจตเจพ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจ–เฉ‹เจฒเฉเจน เจ•เฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ เฉ€เจ• เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  - to:               # <<<
    ports:            # <<<
    - protocol: UDP   # <<<
      port: 53        # <<<
  policyTypes:
  - Egress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ†เจ–เจฐเฉ€ เจคเฉฑเจค to เจ–เจพเจฒเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เจธเจฒเจˆ เจ‡เจน เจ…เจธเจฟเฉฑเจงเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡ เจšเฉเจฃเจฆเจพ เจนเฉˆ เจธเจพเจฐเฉ‡ เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจก, เจ‡เจœเจพเจœเจผเจค เจฆเฉ‡ เจฐเจฟเจนเจพ เจนเฉˆ balance DNS เจธเจตเจพเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ‰เจšเจฟเจค เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจธเฉ‡เจตเจพ (เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจšเฉฑเจฒเจฆเจพ เจนเฉˆ) เจจเฉ‚เฉฐ เจญเฉ‡เจœเฉ‹ kube-system).

เจ‡เจน เจชเจนเฉเฉฐเจš เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจนเจพเจฒเจพเจ‚เจ•เจฟ เจ‡เจน เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจ†เจ—เจฟเจ†เจ•เจพเจฐเฉ€ เจ…เจคเฉ‡ เจ…เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ‡เจน DNS เจธเจตเจพเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฒเฉฑเจธเจŸเจฐ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจจเจฟเจฐเจฆเฉ‡เจธเจผเจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค

เจคเฉเจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจฒเจ—เจพเจคเจพเจฐ เจคเจฟเฉฐเจจ เจชเฉœเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจธเฉเจงเจพเจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

1. เจธเจฟเจฐเจซเจผ DNS เจธเจตเจพเจฒเจพเจ‚ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเจ“ เจ…เฉฐเจฆเจฐ เจœเฉ‹เฉœ เจ•เฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  - to:
    - namespaceSelector: {} # <<<
    ports:
    - protocol: UDP
      port: 53
  policyTypes:
  - Egress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

2. เจธเจฟเจฐเจซเจผ เจจเจพเจฎ-เจธเจฅเจพเจจ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ DNS เจธเจตเจพเจฒเจพเจ‚ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเจ“ kube-system.

เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฒเจˆ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฒเฉ‡เจฌเจฒ เจœเฉ‹เฉœเจจเจพ เจนเฉ‹เจตเฉ‡เจ—เจพ kube-system: kubectl label namespace kube-system namespace=kube-system - เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจชเจพเจฒเจฟเจธเฉ€ เจตเจฟเฉฑเจš เจฒเจฟเจ–เฉ‹ namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  - to:
    - namespaceSelector:         # <<<
        matchLabels:             # <<<
          namespace: kube-system # <<<
    ports:
    - protocol: UDP
      port: 53
  policyTypes:
  - Egress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

3. เจชเจพเจ—เจฒ เจฒเฉ‹เจ• เจนเฉ‹เจฐ เจตเฉ€ เจ…เฉฑเจ—เฉ‡ เจœเจพ เจธเจ•เจฆเฉ‡ เจนเจจ เจ…เจคเฉ‡ DNS เจธเจตเจพเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ–เจพเจธ DNS เจธเฉ‡เจตเจพ เจคเฉฑเจ• เจธเฉ€เจฎเจฟเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจจ kube-system. เจธเฉˆเจ•เจธเจผเจจ "เจจเฉ‡เจฎ เจธเจชเฉ‡เจธ เจ…เจคเฉ‡ เจชเฉŒเจก เจฆเฉเจ†เจฐเจพ เจซเจฟเจฒเจŸเจฐ เจ•เจฐเฉ‹" เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเฉ‡เจ—เจพ เจ•เจฟ เจ‡เจธเจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจพ เจนเฉˆเฅค

เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจตเจฟเจ•เจฒเจช เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจชเฉฑเจงเจฐ 'เจคเฉ‡ DNS เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจจเจพ เจนเฉˆเฅค เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจ‡เจธเจจเฉ‚เฉฐ เจนเจฐเฉ‡เจ• เจธเฉ‡เจตเจพ เจฒเจˆ เจ–เฉ‹เจฒเฉเจนเจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉ‹เจตเฉ‡เจ—เฉ€:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.dns
  namespace: default
spec:
  podSelector: {} # <<<
  egress:
  - to:
    - namespaceSelector: {}
    ports:
    - protocol: UDP
      port: 53
  policyTypes:
  - Egress

เจ–เจพเจฒเฉ€ podSelector เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจก เจšเฉเจฃเจฆเจพ เจนเฉˆเฅค

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจชเจนเจฟเจฒเจพ เจฎเฉˆเจš เจ…เจคเฉ‡ เจจเจฟเจฏเจฎ เจ•เฉเจฐเจฎ

เจชเจฐเฉฐเจชเจฐเจพเจ—เจค เจซเจพเจ‡เจฐเจตเจพเจฒเจพเจ‚ เจตเจฟเฉฑเจš, เจ‡เฉฑเจ• เจชเฉˆเจ•เฉ‡เจŸ เจ‰เฉฑเจคเฉ‡ เจ•เจฟเจฐเจฟเจ† (เจ‡เจœเจพเจœเจผเจค เจœเจพเจ‚ เจ‡เจจเจ•เจพเจฐ) เจจเฉ‚เฉฐ เจชเจนเจฟเจฒเฉ‡ เจจเจฟเจฏเจฎ เจฆเฉเจ†เจฐเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเฉ‹ เจ‡เจน เจธเฉฐเจคเฉเจธเจผเจŸ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš, เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเจพ เจ•เฉเจฐเจฎ เจฎเจพเจ‡เจจเฉ‡ เจจเจนเฉ€เจ‚ เจฐเฉฑเจ–เจฆเจพเฅค

เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, เจœเจฆเฉ‹เจ‚ เจ•เฉ‹เจˆ เจจเฉ€เจคเฉ€เจ†เจ‚ เจธเฉˆเจŸ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจ, เจคเจพเจ‚ เจชเฉŒเจกเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจธเฉฐเจšเจพเจฐ เจฆเฉ€ เจ†เจ—เจฟเจ† เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจ‰เจน เจธเฉเจคเฉฐเจคเจฐ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเจพ เจ†เจฆเจพเจจ-เจชเฉเจฐเจฆเจพเจจ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจ‡เฉฑเจ• เจตเจพเจฐ เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจฌเจฃเจพเจ‰เจฃเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจฆเจฟเฉฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจ‰เจนเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ˜เฉฑเจŸเฉ‹-เจ˜เฉฑเจŸ เจ‡เฉฑเจ• เจฆเฉเจ†เจฐเจพ เจชเฉเจฐเจญเจพเจตเจฟเจค เจนเจฐเฉ‡เจ• เจชเฉŒเจก เจจเฉ‚เฉฐ เจšเฉเจฃเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ‡ เจตเจฟเจ˜เจจ (เจฒเจพเจœเจผเฉ€เจ•เจฒ OR) เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจ…เจฒเฉฑเจ— เจ•เจฐ เจฆเจฟเฉฑเจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ•เจฟเจธเฉ‡ เจตเฉ€ เจชเจพเจฒเจฟเจธเฉ€ เจคเฉ‹เจ‚ เจชเฉเจฐเจญเจพเจตเจฟเจค เจจเจพ เจนเฉ‹เจฃ เจตเจพเจฒเฉ€เจ†เจ‚ เจซเจฒเฉ€เจ†เจ‚ เจ–เฉเฉฑเจฒเฉเจนเฉ€เจ†เจ‚ เจฐเจนเจฟเฉฐเจฆเฉ€เจ†เจ‚ เจนเจจเฅค

เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจธเจŸเฉเจฐเจฟเจชเจฟเฉฐเจ— เจจเจฟเจฏเจฎ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เจธ เจตเจฟเจตเจนเจพเจฐ เจจเฉ‚เฉฐ เจฌเจฆเจฒ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจธเจŸเฉเจฐเจฟเจชเจฟเฉฐเจ— เจจเจฟเจฏเจฎ ("เจ‡เจจเจ•เจพเจฐ")

เจซเจพเจ‡เจฐเจตเจพเจฒ เจจเฉ€เจคเฉ€เจ†เจ‚ เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจ…เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ เจœเจฟเจธ เจฆเฉ€ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เจœเจพเจœเจผเจค เจจเจนเฉ€เจ‚ เจนเฉˆเฅค

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจ•เฉ‹เจˆ เจ‡เจจเจ•เจพเจฐเฉ€ เจ•เจพเจฐเจตเจพเจˆ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจธเจฐเฉ‹เจค เจชเฉŒเจกเจพเจ‚ (เจชเฉเจฐเจตเฉ‡เจธเจผ) เจฆเฉ‡ เจ‡เฉฑเจ• เจ–เจพเจฒเฉ€ เจธเจฎเฉ‚เจน เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐเจ•เฉ‡ เจ‡เฉฑเจ• เจจเจฟเจฏเจฎเจค (เจ…เจจเฉเจ•เฉ‚เจฒ) เจจเฉ€เจคเฉ€ เจจเจพเจฒ เจ‡เฉฑเจ• เจธเจฎเจพเจจ เจชเฉเจฐเจญเจพเจต เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: deny-all
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ‡เจน เจจเฉ€เจคเฉ€ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจกเจพเจ‚ เจจเฉ‚เฉฐ เจšเฉเจฃเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจ†เจ‰เจฃ เจตเจพเจฒเฉ‡ เจธเจพเจฐเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจคเฉ‹เจ‚ เจ‡เจจเจ•เจพเจฐ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจชเฉเจฐเจตเฉ‡เจธเจผ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจจเจนเฉ€เจ‚ เจ›เฉฑเจกเจฆเฉ€ เจนเฉˆเฅค

เจ‡เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚, เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจคเฉ‹เจ‚ เจธเจพเจฐเฉ‡ เจฌเจพเจนเจฐ เจœเจพเจฃ เจตเจพเจฒเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจธเฉ€เจฎเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: deny-all-egress
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ•เจฟเจฐเจชเจพ เจ•เจฐเจ•เฉ‡ เจงเจฟเจ†เจจ เจฆเจฟเจ“ เจ•เจฟ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจชเฉŒเจกเจพเจ‚ เจคเฉฑเจ• เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเฉ‡เจฃ เจตเจพเจฒเฉ€เจ†เจ‚ เจ•เฉ‹เจˆ เจตเฉ€ เจตเจพเจงเฉ‚ เจชเจพเจฒเจฟเจธเฉ€เจ†เจ‚ เจ‡เจธ เจจเจฟเจฏเจฎ เจ‰เฉฑเจคเฉ‡ เจชเจนเจฟเจฒ เจฆเฉ‡เจฃเจ—เฉ€เจ†เจ‚ (เจซเจพเจ‡เจฐเจตเจพเจฒ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจ…เจธเจตเฉ€เจ•เจพเจฐ เจจเจฟเจฏเจฎ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ‡เฉฑเจ• เจ†เจ—เจฟเจ† เจจเจฟเจฏเจฎ เจœเฉ‹เฉœเจจ เจฆเฉ‡ เจธเจฎเจพเจจ)เฅค

เจนเจฐ เจšเฉ€เจœเจผ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเจ“ (เจ•เฉ‹เจˆ-เจ•เฉ‹เจˆ-เจ•เฉ‹เจˆ-เจ‡เจœเจพเจœเจผเจค เจฆเจฟเจ“)

เจธเจญ เจจเฉ‚เฉฐ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเจ“ เจจเฉ€เจคเฉ€ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‰เฉฑเจชเจฐ เจฆเจฟเฉฑเจคเฉ€ เจ—เจˆ เจ‡เจจเจ•เจพเจฐ เจจเฉ€เจคเฉ€ เจจเฉ‚เฉฐ เจ–เจพเจฒเฉ€ เจคเฉฑเจค เจจเจพเจฒ เจชเฉ‚เจฐเจ• เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ ingress:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-all
  namespace: default
spec:
  podSelector: {}
  ingress: # <<<
  - {}     # <<<
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ เจธเจพเจฐเฉ‡ เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ (เจ…เจคเฉ‡ เจธเจพเจฐเฉ‡ IP) เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจก เจจเจพเจฎ-เจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจ•เจฟเจธเฉ‡ เจตเฉ€ เจชเฉŒเจก เจฒเจˆ default. เจ‡เจน เจตเจฟเจตเจนเจพเจฐ เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจธเจฎเจฐเจฅเจฟเจค เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจ‡เจธเจฒเจˆ เจ‡เจธเจจเฉ‚เฉฐ เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจนเฉ‹เจฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ•เจˆ เจตเจพเจฐ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเจฎเฉฑเจธเจฟเจ† เจฆเจพ เจจเจฟเจฆเจพเจจ เจ•เจฐเจจ เจฒเจˆ เจ•เฉเจ เจ–เจพเจธ เจ…เจจเฉเจฎเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ…เจธเจฅเจพเจˆ เจคเฉŒเจฐ 'เจคเฉ‡ เจ…เจฏเฉ‹เจ— เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

เจธเจฟเจฐเจซเจผ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเฉ‡เจฃ เจฒเจˆ เจจเจฟเจฏเจฎ เจจเฉ‚เฉฐ เจธเฉฐเจ•เฉเจšเจฟเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ เจชเฉŒเจกเจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจ–เจพเจธ เจธเจฎเฉ‚เจน (app:balanceเจจเจพเจฎ-เจธเจฅเจพเจจ เจตเจฟเฉฑเจš default:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-all-to-balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  ingress: 
  - {}
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจจเจฟเจฎเจจเจฒเจฟเจ–เจค เจจเฉ€เจคเฉ€ เจ•เจฒเฉฑเจธเจŸเจฐ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจ•เจฟเจธเฉ‡ เจตเฉ€ IP เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจธเจฎเฉ‡เจค เจธเจพเจฐเฉ‡ เจชเฉเจฐเจตเฉ‡เจธเจผ เจ…เจคเฉ‡ เจจเจฟเจ•เจพเจธเฉ€ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-all
spec:
  podSelector: {}
  ingress:
  - {}
  egress:
  - {}
  policyTypes:
  - Ingress
  - Egress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ•เจˆ เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเจพ เจธเฉฐเจฏเฉ‹เจ— เจ•เจฐเจจเจพ

เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจคเจฟเฉฐเจจ เจชเฉฑเจงเจฐเจพเจ‚ 'เจคเฉ‡ เจฒเจพเจœเจผเฉ€เจ•เจฒ OR เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ; เจนเจฐเฉ‡เจ• เจชเฉŒเจก เจฆเฉ€เจ†เจ‚ เจ…เจจเฉเจฎเจคเฉ€เจ†เจ‚ เจ‡เจธ เจจเฉ‚เฉฐ เจชเฉเจฐเจญเจพเจตเจฟเจค เจ•เจฐเจจ เจตเจพเจฒเฉ€เจ†เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ‡ เจ–เฉฐเจกเจจ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจธเฉˆเฉฑเจŸ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจ:

1. เจ–เฉ‡เจคเจพเจ‚ เจตเจฟเฉฑเจš from ะธ to เจคเฉฑเจคเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจคเจฟเฉฐเจจ เจ•เจฟเจธเจฎเจพเจ‚ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ (เจ‡เจน เจธเจพเจฐเฉ‡ OR เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เจ•เฉฑเจ เฉ‡ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจ):

  • namespaceSelector - เจชเฉ‚เจฐเจพ เจจเจพเจฎ-เจธเจฅเจพเจจ เจšเฉเจฃเจฆเจพ เจนเฉˆ;
  • podSelector - เจชเฉŒเจก เจšเฉเจฃเจฆเจพ เจนเฉˆ;
  • ipBlock โ€” เจ‡เฉฑเจ• เจธเจฌเจจเฉˆเฉฑเจŸ เจšเฉเจฃเจฆเจพ เจนเฉˆเฅค

เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ‰เจช-เจญเจพเจ—เจพเจ‚ เจตเจฟเฉฑเจš เจคเฉฑเจคเจพเจ‚ เจฆเฉ€ เจธเฉฐเจ–เจฟเจ† (เจ‡เฉฑเจ•เฉ‹ เจœเจฟเจนเฉ‡ เจตเฉ€) from/to เจธเฉ€เจฎเจฟเจค เจจเจนเฉ€เจ‚เฅค เจ‰เจนเจจเจพเจ‚ เจธเจพเจฐเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจฒเจพเจœเจผเฉ€เจ•เจฒ OR เจฆเฉเจ†เจฐเจพ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจตเฉ‡เจ—เจพเฅค

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
    - podSelector:
        matchLabels:
          app: admin
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

2. เจชเจพเจฒเจฟเจธเฉ€ เจธเฉˆเจ•เจธเจผเจจ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ ingress เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจคเฉฑเจค เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจ from (เจฒเจพเจœเจผเฉ€เจ•เจฒ OR เจฆเฉเจ†เจฐเจพ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ†)เฅค เจ‡เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚, เจธเฉˆเจ•เจธเจผเจจ egress เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจคเฉฑเจค เจธเจผเจพเจฎเจฒ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจ to (เจตเจฟเจ›เฉ‹เฉœเฉ‡ เจฆเฉเจ†เจฐเจพ เจตเฉ€ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ†):

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
  - from:
    - podSelector:
        matchLabels:
          app: admin
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

3. เจตเฉฑเจ–-เจตเฉฑเจ– เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจตเฉ€ เจคเจฐเจ•เจชเฉ‚เจฐเจจ OR เจจเจพเจฒ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ

เจชเจฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจตเฉ‡เจฒเฉ‡, เจ‡เฉฑเจ• เจธเฉ€เจฎเจพ เจนเฉˆ เจœเจฟเจธ 'เจคเฉ‡ เจ‡เจธเจผเจพเจฐเจพ เจ•เฉ€เจคเจพ เจ•เฉเจฐเจฟเจธ เจ•เฉ‚เจจเฉ€: Kubernetes เจธเจฟเจฐเจซเจผ เจตเฉฑเจ–-เจตเฉฑเจ– เจจเจพเจฒ เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœ เจธเจ•เจฆเฉ‡ เจนเจจ policyTypes (Ingress เจœ Egress). เจชเฉเจฐเจตเฉ‡เจธเจผ (เจœเจพเจ‚ เจจเจฟเจ•เจพเจธ) เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจจ เจตเจพเจฒเฉ€เจ†เจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจจเฉ‚เฉฐ เจ“เจตเจฐเจฐเจพเจˆเจŸ เจ•เจฐเจจเจ—เฉ€เจ†เจ‚เฅค

เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจธเจฌเฉฐเจง

เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจธเจพเจ‚เจเฉ€ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจนเฉˆเฅค เจ‡เจธ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ…เจธเจตเฉ€เจ•เจพเจฐ เจจเฉ€เจคเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจฌเจฆเจฒเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ เจœเฉ‹ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจ†เจŠเจŸเจ—เฉ‹เจ‡เฉฐเจ— เจ…เจคเฉ‡/เจœเจพเจ‚ เจจเจพเจฎ-เจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจ†เจ‰เจฃ เจจเฉ‚เฉฐ เจฐเฉ‹เจ• เจฆเฉ‡เจตเฉ‡เจ—เฉ€ (เจ‰เจชเจฐ "เจธเจŸเจฐเจฟเฉฑเจชเจฟเฉฐเจ— เจจเจฟเจฏเจฎ" เจฆเฉ‡เจ–เฉ‹)เฅค

เจ‡เฉฑเจ• เจตเจพเจฐ เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจจเฉ‚เฉฐ เจฌเจฒเฉŒเจ• เจ•เจฐ เจฒเจฟเจ† เจนเฉˆ (เจ‰เจชเจฐเฉ‹เจ•เจค "เจธเจŸเฉเจฐเจฟเจชเจฟเฉฐเจ— เจจเจฟเจฏเจฎ" เจตเฉ‡เจ–เฉ‹), เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจ–เจพเจธ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจคเฉ‹เจ‚ เจ•เจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเฉ‡ เจ•เฉ‡ เจ‡เจจเจ•เจพเจฐ เจ•เจฐเจจ เจตเจพเจฒเฉ€ เจจเฉ€เจคเฉ€ เจตเจฟเฉฑเจš เจ…เจชเจตเจพเจฆ เจฌเจฃเจพ เจธเจ•เจฆเฉ‡ เจนเฉ‹ namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: database.postgres
  namespace: database
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - namespaceSelector: # <<<
        matchLabels:
          namespace: default
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚, เจจเจพเจฎ-เจธเจฅเจพเจจ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจก default เจชเฉŒเจก เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจนเฉ‹เจตเฉ‡เจ—เฉ€ postgres เจจเจพเจฎ-เจธเจฅเจพเจจ เจตเจฟเฉฑเจš database. เจชเจฐ เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจเจ•เจธเฉˆเจธ เจ–เฉ‹เจฒเฉเจนเจฃเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹ เจคเจพเจ‚ เจ•เฉ€ เจนเฉ‹เจตเฉ‡เจ—เจพ postgres เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจฟเจฐเจซเจผ เจ–เจพเจธ เจชเฉŒเจกเจธ default?

เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจ…เจคเฉ‡ เจชเฉŒเจกเจธ เจฆเฉเจ†เจฐเจพ เจซเจฟเจฒเจŸเจฐ เจ•เจฐเฉ‹

Kubernetes เจธเฉฐเจธเจ•เจฐเจฃ 1.11 เจ…เจคเฉ‡ เจ‰เฉฑเจšเจพ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ†เจชเจฐเฉ‡เจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ namespaceSelector ะธ podSelector เจฒเจพเจœเจผเฉ€เจ•เจฒ AND เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจเฅค เจ‡เจน เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: database.postgres
  namespace: database
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          namespace: default
      podSelector: # <<<
        matchLabels:
          app: admin
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ‡เจธเจฆเฉ€ เจตเจฟเจ†เจ–เจฟเจ† เจ†เจฎ OR เจฆเฉ€ เจฌเจœเจพเจ AND เจตเจœเฉ‹เจ‚ เจ•เจฟเจ‰เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ?

เจจเฉ‹เจŸ เจ•เจฐเฉ‹ podSelector เจนเจพเจˆเจซเจจ เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเจพเฅค YAML เจตเจฟเฉฑเจš เจ‡เจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจ•เจฟ podSelector เจ…เจคเฉ‡ เจ‰เจธ เจฆเฉ‡ เจธเจพเจนเจฎเจฃเฉ‡ เจ–เฉœเฉเจนเจพ เจนเฉˆ namespaceSelector เจ‰เจธเฉ‡ เจธเฉ‚เจšเฉ€ เจคเฉฑเจค เจจเฉ‚เฉฐ เจตเฉ‡เจ–เฉ‹. เจ‡เจธ เจฒเจˆ, เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจฒเจพเจœเจผเฉ€เจ•เจฒ AND เจจเจพเจฒ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจชเจนเจฟเจฒเจพเจ‚ เจ‡เฉฑเจ• เจนเจพเจˆเจซเจจ เจœเฉ‹เฉœเจจเจพ podSelector เจฆเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚ เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจธเฉ‚เจšเฉ€ เจคเฉฑเจค เจชเฉˆเจฆเจพ เจนเฉ‹เจตเฉ‡เจ—เจพ, เจœเจฟเจธ เจจเฉ‚เฉฐ เจชเจฟเจ›เจฒเฉ‡ เจ‡เฉฑเจ• เจจเจพเจฒ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจตเฉ‡เจ—เจพ namespaceSelector เจฒเจพเจœเจผเฉ€เจ•เจฒ OR เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจเฅค

เจ‡เฉฑเจ• เจ–เจพเจธ เจฒเฉ‡เจฌเจฒ เจจเจพเจฒ เจซเจฒเฉ€เจ†เจ‚ เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐเจจ เจฒเจˆ เจธเจพเจฐเฉ‡ เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจตเจฟเฉฑเจš, เจ–เจพเจฒเฉ€ เจฆเจฐเจœ เจ•เจฐเฉ‹ namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: database.postgres
  namespace: database
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - namespaceSelector: {}
      podSelector:
        matchLabels:
          app: admin
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ•เจˆ เจฒเฉ‡เจฌเจฒเจพเจ‚ เจฆเฉ€ เจŸเฉ€เจฎ เจ†เจˆ

เจฎเจฒเจŸเฉ€เจชเจฒ เจ†เจฌเจœเฉˆเจ•เจŸ (เจนเฉ‹เจธเจŸ, เจจเฉˆเฉฑเจŸเจตเจฐเจ•, เจ—เจฐเฉเฉฑเจช) เจตเจพเจฒเฉ€ เจซเจพเจ‡เจฐเจตเจพเจฒ เจฒเจˆ เจจเจฟเจฏเจฎ เจฒเจพเจœเจผเฉ€เจ•เจฒ OR เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจฎเจฟเจฒเจพเจ เจœเจพเจ‚เจฆเฉ‡ เจนเจจเฅค เจœเฉ‡เจ•เจฐ เจชเฉˆเจ•เฉ‡เจŸ เจธเจฐเฉ‹เจค เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเจพ เจนเฉˆ เจคเจพเจ‚ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเจพ เจจเจฟเจฏเจฎ เจ•เฉฐเจฎ เจ•เจฐเฉ‡เจ—เจพ Host_1 เจœเจพเจ‚ Host_2:

| Source | Destination | Service | Action |
| ----------------------------------------|
| Host_1 | Subnet_A    | HTTPS   | Allow  |
| Host_2 |             |         |        |
| ----------------------------------------|

เจ‡เจธเจฆเฉ‡ เจ‰เจฒเจŸ, เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจตเฉฑเจ–-เจตเฉฑเจ– เจฒเฉ‡เจฌเจฒเจพเจ‚ เจตเจฟเฉฑเจš podSelector เจœ namespaceSelector เจฒเจพเจœเจผเฉ€เจ•เจฒ AND เจจเจพเจฒ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเจพ เจจเจฟเจฏเจฎ เจ‰เจนเจจเจพเจ‚ เจชเฉŒเจกเจพเจ‚ เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐเฉ‡เจ—เจพ เจœเจฟเจจเฉเจนเจพเจ‚ เจตเจฟเฉฑเจš เจฆเฉ‹เจตเฉ‡เจ‚ เจฒเฉ‡เจฌเจฒ เจนเจจ, role=db ะ˜ version=v2:

podSelector:
  matchLabels:
    role: db
    version: v2

เจ‡เจนเฉ‹ เจคเจฐเจ• เจนเจฐ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจ†เจชเจฐเฉ‡เจŸเจฐเจพเจ‚ 'เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ: เจจเฉ€เจคเฉ€ เจจเจฟเจธเจผเจพเจจเจพ เจšเฉ‹เจฃเจ•เจพเจฐ, เจชเฉŒเจก เจšเฉ‹เจฃเจ•เจพเจฐ, เจ…เจคเฉ‡ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจšเฉ‹เจฃเจ•เจพเจฐเฅค

เจธเจฌเจจเฉˆเฉฑเจŸ เจ…เจคเฉ‡ IP เจชเจคเฉ‡ (IPBlocks)

เจซเจพเจ‡เจฐเจตเจพเจฒ เจ‡เฉฑเจ• เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ‚เฉฐ เจตเฉฐเจกเจฃ เจฒเจˆ VLAN, IP เจเจกเจฐเฉˆเฉฑเจธ, เจ…เจคเฉ‡ เจธเจฌเจจเฉˆเฉฑเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš, IP เจเจกเจฐเฉˆเฉฑเจธ เจชเฉŒเจกเจพเจ‚ เจจเฉ‚เฉฐ เจธเจตเฉˆเจšเจฒเจฟเจค เจคเฉŒเจฐ 'เจคเฉ‡ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ เจ…เจคเฉ‡ เจ…เจ•เจธเจฐ เจฌเจฆเจฒ เจธเจ•เจฆเฉ‡ เจนเจจ, เจ‡เจธเจฒเจˆ เจฒเฉ‡เจฌเจฒเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจชเฉŒเจกเจพเจ‚ เจ…เจคเฉ‡ เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจจเฉ‚เฉฐ เจšเฉเจฃเจจ เจฒเจˆ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

เจธเจฌเจจเฉˆเฉฑเจŸ (ipBlocks) เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ‡เจจเจ•เจฎเจฟเฉฐเจ— (เจชเฉเจฐเจตเฉ‡เจธเจผ) เจœเจพเจ‚ เจฌเจพเจนเจฐ เจœเจพเจฃ เจตเจพเจฒเฉ‡ (เจจเจฟเจ•เจพเจธ) เจฌเจพเจนเจฐเฉ€ (เจ‰เฉฑเจคเจฐเฉ€-เจฆเฉฑเจ–เจฃ) เจ•เจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจตเฉ‡เจฒเฉ‡ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ‡เจน เจจเฉ€เจคเฉ€ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจคเฉ‹เจ‚ เจธเจพเจฐเฉ‡ เจชเฉŒเจกเจพเจ‚ เจฒเจˆ เจ–เฉเฉฑเจฒเฉเจนเจฆเฉ€ เจนเฉˆ default Google DNS เจธเฉ‡เจตเจพ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: egress-dns
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: 8.8.8.8/32
    ports:
    - protocol: UDP
      port: 53

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ‡เจธ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš เจ–เจพเจฒเฉ€ เจชเฉŒเจก เจšเฉ‹เจฃเจ•เจพเจฐ เจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ "เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเฉŒเจก เจšเฉเจฃเฉ‹เฅค"

เจ‡เจน เจจเฉ€เจคเฉ€ เจธเจฟเจฐเจซเจผ 8.8.8.8 เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆ; เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ IP เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจฆเฉ€ เจฎเจจเจพเจนเฉ€ เจนเฉˆเฅค เจ‡เจธ เจฒเจˆ, เจธเฉฐเจ–เฉ‡เจช เจตเจฟเฉฑเจš, เจคเฉเจธเฉ€เจ‚ เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ Kubernetes DNS เจธเฉ‡เจตเจพ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจจเฉ‚เฉฐ เจฌเจฒเฉŒเจ• เจ•เจฐ เจฆเจฟเฉฑเจคเจพ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจ…เจœเฉ‡ เจตเฉ€ เจ‡เจธเจจเฉ‚เฉฐ เจ–เฉ‹เจฒเฉเจนเจฃเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจธเจชเจธเจผเจŸ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฆเจฐเจธเจพเจ“เฅค

เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ ipBlocks ะธ podSelectors เจ†เจชเจธ เจตเจฟเฉฑเจš เจจเจฟเจตเฉ‡เจ•เจฒเฉ‡ เจนเจจ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจชเฉŒเจกเจพเจ‚ เจฆเฉ‡ เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ IP เจเจกเจฐเฉˆเฉฑเจธ เจตเจฟเฉฑเจš เจจเจนเฉ€เจ‚ เจตเจฐเจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ ipBlocks. เจ‡เจธเจผเจพเจฐเจพ เจ•เจฐเจ•เฉ‡ เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ IP เจชเฉŒเจก, เจคเฉเจธเฉ€เจ‚ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจ‡เจนเจจเจพเจ‚ เจชเจคเจฟเจ†เจ‚ เจฆเฉ‡ เจจเจพเจฒ เจชเฉŒเจกเจพเจ‚ เจคเฉ‹เจ‚/เจคเฉ‹เจ‚ เจ•เจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเฉ‡เจตเฉ‹เจ—เฉ‡เฅค เจ…เจญเจฟเจ†เจธ เจตเจฟเฉฑเจš, เจคเฉเจธเฉ€เจ‚ เจจเจนเฉ€เจ‚ เจœเจพเจฃเจฆเฉ‡ เจนเฉ‹เจตเฉ‹เจ—เฉ‡ เจ•เจฟ เจ•เจฟเจนเฉœเจพ IP เจชเจคเจพ เจตเจฐเจคเจฃเจพ เจนเฉˆ, เจ‡เจธ เจฒเจˆ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉŒเจก เจšเฉเจฃเจจ เจฒเจˆ เจจเจนเฉ€เจ‚ เจตเจฐเจคเจฟเจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

เจœเจตเจพเจฌเฉ€-เจ‰เจฆเจพเจนเจฐเจจ เจฆเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡, เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจจเฉ€เจคเฉ€ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ IP เจธเจผเจพเจฎเจฒ เจนเจจ เจ…เจคเฉ‡ เจ‡เจธเจฒเจˆ เจนเฉ‹เจฐ เจธเจพเจฐเฉ‡ เจชเฉŒเจกเจพเจ‚ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: egress-any
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: 0.0.0.0/0

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจคเฉเจธเฉ€เจ‚ เจชเฉŒเจกเจพเจ‚ เจฆเฉ‡ เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ IP เจชเจคเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจ›เฉฑเจก เจ•เฉ‡, เจธเจฟเจฐเจซเจผ เจฌเจพเจนเจฐเฉ€ IP เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจ–เฉ‹เจฒเฉเจน เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจœเฉ‡เจ•เจฐ เจคเฉเจนเจพเจกเฉ€ เจชเฉŒเจก เจฆเจพ เจธเจฌเจจเฉˆเฉฑเจŸ 10.16.0.0/14 เจนเฉˆ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: egress-any
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: 0.0.0.0/0
        except:
        - 10.16.0.0/14

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจชเฉ‹เจฐเจŸ เจ…เจคเฉ‡ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ

เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡, เจชเฉŒเจก เจ‡เฉฑเจ• เจชเฉ‹เจฐเจŸ เจจเฉ‚เฉฐ เจธเฉเจฃเจฆเฉ‡ เจนเจจเฅค เจ‡เจธเจฆเจพ เจฎเจคเจฒเจฌ เจ‡เจน เจนเฉˆ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจชเฉ‹เจฐเจŸ เจจเฉฐเจฌเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจนเจฐ เจšเฉ€เจœเจผ เจจเฉ‚เฉฐ เจกเจฟเจซเฉŒเจฒเจŸ เจตเจœเฉ‹เจ‚ เจ›เฉฑเจก เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจœเจฟเฉฐเจจเจพ เจธเฉฐเจญเจต เจนเฉ‹ เจธเจ•เฉ‡ เจชเฉเจฐเจคเฉ€เจฌเฉฐเจงเจฟเจค เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจ‡เจธ เจฒเจˆ เจ•เฉเจ เจฎเจพเจฎเจฒเจฟเจ†เจ‚ เจตเจฟเฉฑเจš เจคเฉเจธเฉ€เจ‚ เจ…เจœเฉ‡ เจตเฉ€ เจชเฉ‹เจฐเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจจเจฟเจธเจผเจšเจฟเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
    - podSelector:
        matchLabels:
          app: admin
    ports:             # <<<
      - port: 443      # <<<
        protocol: TCP  # <<<
      - port: 80       # <<<
        protocol: TCP  # <<<
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจจเฉ‹เจŸ เจ•เจฐเฉ‹ เจ•เจฟ เจšเฉ‹เจฃเจ•เจพเจฐ ports เจฌเจฒเจพเจ• เจฆเฉ‡ เจธเจพเจฐเฉ‡ เจคเฉฑเจคเจพเจ‚ 'เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ to เจœ from, เจœเจฟเจธ เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจนเจจเฅค เจตเฉฑเจ–-เจตเฉฑเจ– เจคเฉฑเจคเจพเจ‚ เจฆเฉ‡ เจธเฉˆเฉฑเจŸเจพเจ‚ เจฒเจˆ เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉ‹เจฐเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจจเจฟเจธเจผเจšเจฟเจค เจ•เจฐเจจ เจฒเจˆ, เจธเจชเจฒเจฟเจŸ เจ•เจฐเฉ‹ ingress เจœ egress เจฆเฉ‡ เจจเจพเจฒ เจ•เจˆ เจ‰เจช-เจญเจพเจ—เจพเจ‚ เจตเจฟเฉฑเจš to เจœ from เจ…เจคเฉ‡ เจนเจฐเฉ‡เจ• เจตเจฟเฉฑเจš เจ†เจชเจฃเฉ‡ เจชเฉ‹เจฐเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจฐเจœเจฟเจธเจŸเจฐ เจ•เจฐเฉ‹:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
    ports:             # <<<
     - port: 443       # <<<
       protocol: TCP   # <<<
  - from:
    - podSelector:
        matchLabels:
          app: admin
    ports:             # <<<
     - port: 80        # <<<
       protocol: TCP   # <<<
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจกเจฟเจซเฉŒเจฒเจŸ เจชเฉ‹เจฐเจŸ เจ“เจชเจฐเฉ‡เจธเจผเจจ:

  • เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจชเฉ‹เจฐเจŸ เจชเจฐเจฟเจญเจพเจธเจผเจพ เจจเฉ‚เฉฐ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ›เฉฑเจก เจฆเจฟเฉฐเจฆเฉ‡ เจนเฉ‹ (ports), เจ‡เจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจธเจพเจฐเฉ‡ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจ…เจคเฉ‡ เจธเจพเจฐเฉ€เจ†เจ‚ เจชเฉ‹เจฐเจŸเจพเจ‚;
  • เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจชเจฐเจฟเจญเจพเจธเจผเจพ เจจเฉ‚เฉฐ เจ›เฉฑเจก เจฆเจฟเฉฐเจฆเฉ‡ เจนเฉ‹ (protocol), เจ‡เจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ TCP;
  • เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจชเฉ‹เจฐเจŸ เจชเจฐเจฟเจญเจพเจธเจผเจพ เจจเฉ‚เฉฐ เจ›เฉฑเจก เจฆเจฟเฉฐเจฆเฉ‡ เจนเฉ‹ (port), เจ‡เจธ เจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจธเจพเจฐเฉ€เจ†เจ‚ เจชเฉ‹เจฐเจŸเจพเจ‚เฅค

เจธเจญ เจคเฉ‹เจ‚ เจตเจงเฉ€เจ† เจ…เจญเจฟเจ†เจธ: เจชเฉ‚เจฐเจต-เจจเจฟเจฐเจงเจพเจฐเจค เจฎเฉเฉฑเจฒเจพเจ‚ 'เจคเฉ‡ เจญเจฐเฉ‹เจธเจพ เจจเจพ เจ•เจฐเฉ‹, เจธเจชเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจฆเฉฑเจธเฉ‹ เจ•เจฟ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เฉ€ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

เจ•เจฟเจฐเจชเจพ เจ•เจฐเจ•เฉ‡ เจจเฉ‹เจŸ เจ•เจฐเฉ‹ เจ•เจฟ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจชเฉŒเจก เจชเฉ‹เจฐเจŸเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆ, เจธเจฐเจตเจฟเจธ เจชเฉ‹เจฐเจŸเจพเจ‚ เจฆเฉ€ เจจเจนเฉ€เจ‚ (เจ‡เจธ เจฌเจพเจฐเฉ‡ เจ…เจ—เจฒเฉ‡ เจชเฉˆเจฐเฉ‡ เจตเจฟเฉฑเจš เจนเฉ‹เจฐ)เฅค

เจ•เฉ€ เจชเฉŒเจก เจœเจพเจ‚ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฒเจˆ เจจเฉ€เจคเฉ€เจ†เจ‚ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจนเจจ?

เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡, เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจชเฉŒเจก เจ‡เฉฑเจ• เจธเฉ‡เจตเจพ เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจคเฉฑเจ• เจชเจนเฉเฉฐเจšเจฆเฉ‡ เจนเจจ - เจ‡เฉฑเจ• เจตเจฐเจšเฉเจ…เจฒ เจฒเฉ‹เจก เจฌเฉˆเจฒเฉˆเจ‚เจธเจฐ เจœเฉ‹ เจธเฉ‡เจตเจพ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจตเจพเจฒเฉ‡ เจชเฉŒเจกเจพเจ‚ เจฒเจˆ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจฐเฉ€เจกเจพเจ‡เจฐเฉˆเจ•เจŸ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจคเฉเจธเฉ€เจ‚ เจธเฉ‹เจš เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ•เจฟ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจจเฉ‚เฉฐ เจ•เฉฐเจŸเจฐเฉ‹เจฒ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ, เจชเจฐ เจ…เจœเจฟเจนเจพ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจชเฉ‹เจก เจชเฉ‹เจฐเจŸเจพเจ‚ 'เจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ, เจธเจฐเจตเจฟเจธ เจชเฉ‹เจฐเจŸเจพเจ‚ 'เจคเฉ‡ เจจเจนเฉ€เจ‚เฅค

เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจœเฉ‡เจ•เจฐ เจ•เฉ‹เจˆ เจธเฉ‡เจตเจพ เจชเฉ‹เจฐเจŸ 80 เจจเฉ‚เฉฐ เจธเฉเจฃเจฆเฉ€ เจนเฉˆ, เจชเจฐ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจ‡เจธเจฆเฉ‡ เจชเฉŒเจกเจพเจ‚ เจฆเฉ‡ เจชเฉ‹เจฐเจŸ 8080 'เจคเฉ‡ เจฐเฉ€เจกเจพเจ‡เจฐเฉˆเจ•เจŸ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจตเจฟเฉฑเจš เจฌเจฟเจฒเจ•เฉเจฒ 8080 เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเจพ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

เจ…เจœเจฟเจนเฉ€ เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจ‰เจช-เจ…เจจเฉเจ•เฉ‚เจฒ เจฎเฉฐเจจเจฟเจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ: เจœเฉ‡ เจธเฉ‡เจตเจพ เจฆเฉ€ เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ เจฌเจฃเจคเจฐ (เจœเจฟเจจเฉเจนเจพเจ‚ เจฆเฉ‡ เจชเฉŒเจก เจธเฉเจฃเจฆเฉ‡ เจนเจจ) เจฌเจฆเจฒเจฆเฉ‡ เจนเจจ, เจคเจพเจ‚ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ…เฉฑเจชเจกเฉ‡เจŸ เจ•เจฐเจจเจพ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค

เจธเจฐเจตเจฟเจธ เจฎเฉˆเจธเจผ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจจเจตเฉ€เจ‚ เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐเจฒ เจชเจนเฉเฉฐเจš (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจนเฉ‡เจ เจพเจ‚ Istio เจฌเจพเจฐเฉ‡ เจฆเฉ‡เจ–เฉ‹ - เจฒเจ—เจญเจ— เจ…เจจเฉเจตเจพเจฆเฅค) เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธ เจธเจฎเฉฑเจธเจฟเจ† เจจเจพเจฒ เจจเจœเจฟเฉฑเจ เจฃ เจฒเจˆ เจธเจนเจพเจ‡เจ• เจนเฉˆ.

เจ•เฉ€ เจ‡เจจเจ—เฉเจฐเฉ‡เจธ เจ…เจคเฉ‡ เจˆเจ—เฉเจฐเฉ‡เจธ เจฆเฉ‹เจตเจพเจ‚ เจจเฉ‚เฉฐ เจฐเจœเจฟเจธเจŸเจฐ เจ•เจฐเจจเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆ?

เจ›เฉ‹เจŸเจพ เจœเจตเจพเจฌ เจนเจพเจ‚ เจนเฉˆ, เจชเฉŒเจก เจ เจจเฉ‚เฉฐ เจชเฉŒเจก เจฌเฉ€ เจจเจพเจฒ เจธเฉฐเจšเจพเจฐ เจ•เจฐเจจ เจฒเจˆ, เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ†เจŠเจŸเจ—เฉ‹เจ‡เฉฐเจ— เจ•เจจเฉˆเจ•เจธเจผเจจ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฑเจคเฉ€ เจœเจพเจฃเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆ (เจ‡เจธเจฆเฉ‡ เจฒเจˆ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจˆเจ—เฉเจฐเฉ‡เจธ เจจเฉ€เจคเฉ€ เจจเฉ‚เฉฐ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ), เจ…เจคเฉ‡ เจชเฉŒเจก เจฌเฉ€ เจ‡เฉฑเจ• เจ†เจ‰เจฃ เจตเจพเจฒเฉ‡ เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ ( เจ‡เจธเจฆเฉ‡ เจฒเจˆ, เจ‡เจธเจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจชเฉเจฐเจตเฉ‡เจธเจผ เจจเฉ€เจคเฉ€ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉˆเฅค เจจเฉ€เจคเฉ€)เฅค

เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ…เจญเจฟเจ†เจธ เจตเจฟเฉฑเจš, เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจœเจพเจ‚ เจฆเฉ‹เจตเฉ‡เจ‚ เจฆเจฟเจธเจผเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจ•เจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเฉ‡เจฃ เจฒเจˆ เจกเจฟเจซเฉŒเจฒเจŸ เจจเฉ€เจคเฉ€ 'เจคเฉ‡ เจญเจฐเฉ‹เจธเจพ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจœเฉ‡ เจ•เฉเจ เจชเฉ‹เจก-เจธเจฐเฉ‹เจค เจ‡เฉฑเจ• เจœเจพเจ‚ เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง เจฆเฉเจ†เจฐเจพ เจšเฉเจฃเจฟเจ† เจœเจพเจตเฉ‡เจ—เจพ เจเจกเจฐเฉˆเจธ-เจธเจฟเจ†เจธเจคเจฆเจพเจจ, เจ‡เจธ 'เจคเฉ‡ เจฒเจ—เจพเจˆเจ†เจ‚ เจ—เจˆเจ†เจ‚ เจชเจพเจฌเฉฐเจฆเฉ€เจ†เจ‚ เจ‰เจจเฉเจนเจพเจ‚ เจฆเฉ‡ เจฎเจจ-เจฎเฉเจŸเจพเจ… เจคเฉ‹เจ‚ เจคเฉˆเจ… เจนเฉ‹เจฃเจ—เฉ€เจ†เจ‚เฅค เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจชเฉŒเจก เจจเจพเจฒ เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเฉ‡เจฃ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉ‹เจเจ—เฉ€ -เจชเจคเจพ เจ•เจฐเจจ เจตเจพเจฒเฉ‡ เจจเฉ‚เฉฐ. เจœเฉ‡เจ•เจฐ เจ‡เฉฑเจ• เจชเฉŒเจก เจจเฉ‚เฉฐ เจ•เจฟเจธเฉ‡ เจจเฉ€เจคเฉ€ เจฆเฉเจ†เจฐเจพ เจจเจนเฉ€เจ‚ เจšเฉเจฃเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจธเจฆเฉ‡ เจ†เจŠเจŸเจ—เฉ‹เจ‡เฉฐเจ— (เจเจ—เจฐเฉˆเจธ) เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ†เจ—เจฟเจ† เจฆเจฟเฉฑเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

เจ‡เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚, เจชเฉŒเจก เจฆเฉ€ เจ•เจฟเจธเจฎเจค เจนเฉˆเจชเจคเจพ, เจ‡เฉฑเจ• เจœเจพเจ‚ เจตเฉฑเจง เจฆเฉเจ†เจฐเจพ เจšเฉเจฃเจฟเจ† เจ—เจฟเจ† เจชเฉเจฐเจตเฉ‡เจธเจผ-เจธเจฟเจ†เจธเจคเจฆเจพเจจ, เจ‰เจนเจจเจพเจ‚ เจฆเฉ‡ เจตเจฟเจ›เฉ‹เฉœเฉ‡ เจฆเฉเจ†เจฐเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ‡ เจœเจพเจฃเจ—เฉ‡เฅค เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจธเจฐเฉ‹เจค เจชเฉŒเจก เจคเฉ‹เจ‚ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเฉ‡เจฃเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆ. เจœเฉ‡เจ•เจฐ เจ‡เฉฑเจ• เจชเฉŒเจก เจ•เจฟเจธเฉ‡ เจจเฉ€เจคเฉ€ เจฆเฉเจ†เจฐเจพ เจจเจนเฉ€เจ‚ เจšเฉเจฃเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจธเจฆเฉ‡ เจฒเจˆ เจธเจพเจฐเฉ‡ เจชเฉเจฐเจตเฉ‡เจธเจผ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ†เจ—เจฟเจ† เจฆเจฟเฉฑเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

เจนเฉ‡เจ เจพเจ‚ เจธเจŸเฉ‡เจŸเจซเฉเจฒ เจœเจพเจ‚ เจธเจŸเฉ‡เจŸเจฒเฉˆเฉฑเจธ เจฆเฉ‡เจ–เฉ‹เฅค

เจฒเจพเจ—

Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจฒเฉŒเจ— เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ€เจ†เจ‚เฅค เจ‡เจธ เจจเจพเจฒ เจ‡เจน เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจ•เจฐเจจเจพ เจฎเฉเจธเจผเจ•เจฒ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉ€ เจ•เฉ‹เจˆ เจจเฉ€เจคเฉ€ เจ‰เจฆเฉ‡เจธเจผ เจ…เจจเฉเจธเจพเจฐ เจ•เฉฐเจฎ เจ•เจฐ เจฐเจนเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจตเจฟเจธเจผเจฒเฉ‡เจธเจผเจฃ เจจเฉ‚เฉฐ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจชเฉ‡เจšเฉ€เจฆเจพ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค

เจฌเจพเจนเจฐเฉ€ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฒเจˆ เจ†เจตเจพเจœเจพเจˆ เจฆเจพ เจจเจฟเจฏเฉฐเจคเจฐเจฃ

Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเจพเจนเจฐเจฒเฉ‡ เจญเจพเจ—เจพเจ‚ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจฏเฉ‹เจ— เจกเฉ‹เจฎเฉ‡เจจ เจจเจพเจฎ (DNS) เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจจเจนเฉ€เจ‚ เจฆเจฟเฉฐเจฆเฉ€เจ†เจ‚เฅค เจ‡เจน เจคเฉฑเจฅ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจ…เจธเฉเจตเจฟเจงเจพ เจตเฉฑเจฒ เจ–เฉœเจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจฌเจพเจนเจฐเฉ€ เจฎเฉฐเจœเจผเจฟเจฒเจพเจ‚ เจคเฉฑเจ• เจธเฉ€เจฎเจค เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจœเจฟเจจเฉเจนเจพเจ‚ เจฆเจพ เจ•เฉ‹เจˆ เจธเจฅเจฟเจฐ IP เจชเจคเจพ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเจพ (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ aws.com)เฅค

เจจเฉ€เจคเฉ€ เจœเจพเจ‚เจš

เจซเจพเจ‡เจฐเจตเจพเจฒ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจšเฉ‡เจคเจพเจตเจจเฉ€ เจฆเฉ‡เจฃเจ—เฉ‡ เจœเจพเจ‚ เจ—เจฒเจค เจจเฉ€เจคเฉ€ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจ‡เจจเจ•เจพเจฐ เจตเฉ€ เจ•เจฐเจจเจ—เฉ‡เฅค เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ•เฉเจ เจคเจธเจฆเฉ€เจ• เจตเฉ€ เจ•เจฐเจฆเจพ เจนเฉˆเฅค kubectl เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ• เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจธเฉˆเจŸ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, Kubernetes เจ˜เฉ‹เจธเจผเจฃเจพ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‡เจน เจ—เจฒเจค เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจ‡เจจเจ•เจพเจฐ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจนเฉ‹เจฐ เจฎเจพเจฎเจฒเจฟเจ†เจ‚ เจตเจฟเฉฑเจš, เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจชเจพเจฒเจฟเจธเฉ€ เจฒเจตเฉ‡เจ—เจพ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ—เฉเฉฐเจฎ เจนเฉ‹เจ เจตเฉ‡เจฐเจตเจฟเจ†เจ‚ เจจเจพเจฒ เจญเจฐ เจฆเฉ‡เจตเฉ‡เจ—เจพเฅค เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฎเจพเจ‚เจก เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจฆเฉ‡เจ–เจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ:

kubernetes get networkpolicy <policy-name> -o yaml

เจ‡เจน เจ—เฉฑเจฒ เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เฉ‹ เจ•เจฟ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจชเฉเจฐเจฎเจพเจฃเจฟเจ•เจคเจพ เจชเฉเจฐเจฃเจพเจฒเฉ€ เจ…เจขเฉเฉฑเจ•เจตเฉ€เจ‚ เจจเจนเฉ€เจ‚ เจนเฉˆ เจ…เจคเฉ‡ เจ•เฉเจ เจ•เจฟเจธเจฎ เจฆเฉ€เจ†เจ‚ เจคเจฐเฉเฉฑเจŸเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ–เฉเฉฐเจ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

เจเจ—เจœเจผเฉ€เจ•เจฟเจŠเจธเจผเจจ

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ–เฉเจฆ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ, เจชเจฐ เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• API เจ—เฉ‡เจŸเจตเฉ‡ เจนเฉˆ เจœเฉ‹ เจ•เฉฐเจŸเฉ‡เจจเจฐ เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ (CNI) เจจเจพเจฎเจ• เจ‡เฉฑเจ• เจ…เฉฐเจกเจฐเจฒเจพเจˆเฉฐเจ— เจธเจฟเจธเจŸเจฎ เจจเฉ‚เฉฐ เจ•เฉฐเจŸเจฐเฉ‹เจฒ เจฆเจพ เจฌเฉ‹เจ เจธเฉŒเจ‚เจชเจฆเจพ เจนเฉˆเฅค เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ•เจฒเฉฑเจธเจŸเจฐ 'เจคเฉ‡ เจ‰เจšเจฟเจค CNI เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเฉˆเฉฑเจŸ เจ•เจฐเจจเจพ เจซเจพเจ‡เจฐเจตเจพเจฒ เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจซเจพเจ‡เจฐเจตเจพเจฒเจพเจ‚ 'เจคเฉ‡ เจธเจฅเจพเจชเจค เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจจเฉ€เจคเฉ€เจ†เจ‚ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ‡ เจธเจฎเจพเจจ เจนเฉˆเฅค เจ‡เจน เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจฃเจพ เจคเฉเจนเจพเจกเฉ‡ 'เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ•เจฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจ‡เฉฑเจ• เจตเจงเฉ€เจ† CNI เจนเฉˆ เจœเจพเจ‚, Kubernetes เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎเจพเจ‚ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, เจ•เจฒเจพเจ‰เจก เจตเจฟเฉฑเจš เจนเฉ‹เจธเจŸ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ (เจคเฉเจธเฉ€เจ‚ เจชเฉเจฐเจฆเจพเจคเจพเจตเจพเจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจฆเฉ‡เจ– เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ‡เฉฑเจฅเฉ‡ - เจฒเจ—เจญเจ— เจŸเฉเจฐเจพเจ‚เจธ.), เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจ“ เจœเฉ‹ เจคเฉเจนเจพเจกเฉ‡ เจฒเจˆ CNI เจธเฉˆเฉฑเจŸ เจ•เจฐเจจเจ—เฉ€เจ†เจ‚เฅค

เจจเฉ‹เจŸ เจ•เจฐเฉ‹ เจ•เจฟ เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจขเฉเจ•เจตเฉ‡เจ‚ เจธเจนเจพเจ‡เจ• CNI เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจธเฉˆเจŸ เจ•เจฐเจฆเฉ‡ เจนเฉ‹ เจคเจพเจ‚ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจšเฉ‡เจคเจพเจตเจจเฉ€ เจจเจนเฉ€เจ‚ เจฆเฉ‡เจตเฉ‡เจ—เจพเฅค

เจฐเจพเจœเจฏเฉ‹เจ— เจœเจพเจ‚ เจฐเจพเจœ เจฐเจนเจฟเจค?

เจธเจพเจฐเฉ‡ Kubernetes CNIs เจœเจฟเจจเฉเจนเจพเจ‚ เจฆเจพ เจฎเฉˆเจ‚ เจธเจพเจนเจฎเจฃเจพ เจ•เฉ€เจคเจพ เจนเฉˆ, เจ‰เจน เจฐเจพเจœเจชเฉ‚เจฐเจจ เจนเจจ (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจฒเฉ€เจจเจ•เจธ เจ•เฉฐเจŸเจฐเฉˆเจ• เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ)เฅค เจ‡เจน เจชเฉ‹เจก เจจเฉ‚เฉฐ เจ‡เจธ เจจเฉ‚เฉฐ เจฎเฉเฉœ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจธเจผเฉเจฐเฉ‚ เจ•เฉ€เจคเฉ‡ TCP เจ•เฉเจจเฉˆเจ•เจธเจผเจจ 'เจคเฉ‡ เจœเจตเจพเจฌ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจฎเฉˆเจ‚ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจธเจŸเฉˆเจ‚เจกเจฐเจก เจคเฉ‹เจ‚ เจœเจพเจฃเฉ‚ เจจเจนเฉ€เจ‚ เจนเจพเจ‚ เจœเฉ‹ เจธเจŸเฉ‡เจŸเจฎเฉˆเจ‚เจŸเจฒเจคเจพ เจฆเฉ€ เจ—เจฐเฉฐเจŸเฉ€ เจฆเฉ‡เจตเฉ‡เจ—เจพเฅค

เจเจกเจตเจพเจ‚เจธเจก เจธเฉเจฐเฉฑเจ–เจฟเจ† เจจเฉ€เจคเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจจ

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจธเฉเจฐเฉฑเจ–เจฟเจ† เจจเฉ€เจคเฉ€ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจตเจฟเฉฑเจš เจธเฉเจงเจพเจฐ เจ•เจฐเจจ เจฆเฉ‡ เจ‡เฉฑเจฅเฉ‡ เจ•เฉเจ เจคเจฐเฉ€เจ•เฉ‡ เจนเจจ:

  1. เจธเจฐเจตเจฟเจธ เจฎเฉˆเจธเจผ เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐเจฒ เจชเฉˆเจŸเจฐเจจ เจธเฉ‡เจตเจพ เจชเฉฑเจงเจฐ 'เจคเฉ‡ เจตเจฟเจธเจคเฉเจฐเจฟเจค เจŸเฉˆเจฒเฉ€เจฎเฉˆเจŸเจฐเฉ€ เจ…เจคเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจจ เจฒเจˆ เจธเจพเจˆเจกเจ•เจพเจฐ เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• เจ‰เจฆเจพเจนเจฐเจฃ เจตเจœเฉ‹เจ‚ เจ…เจธเฉ€เจ‚ เจฒเฉˆ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจ†เจˆเจธเจŸเฉ€เจ“.
  2. เจ•เฉเจ CNI เจตเจฟเจ•เจฐเฉ‡เจคเจพเจตเจพเจ‚ เจจเฉ‡ Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจคเฉ‹เจ‚ เจชเจฐเฉ‡ เจœเจพเจฃ เจฒเจˆ เจ†เจชเจฃเฉ‡ เจธเจพเจงเจจเจพเจ‚ เจจเฉ‚เฉฐ เจตเจงเจพเจ‡เจ† เจนเฉˆเฅค
  3. เจŸเฉ‚เจซเจฟเจจ เจ“เจฐเจ•เจพ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจฆเจฟเฉฑเจ– เจ…เจคเฉ‡ เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

Tufin Orca เจชเฉˆเจ•เฉ‡เจœ Kubernetes เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจฆเจพ เจนเฉˆ (เจ…เจคเฉ‡ เจ‰เจชเจฐเฉ‹เจ•เจค เจธเจ•เฉเจฐเฉ€เจจเจธเจผเฉŒเจŸเจธ เจฆเจพ เจธเจฐเฉ‹เจค เจนเฉˆ)เฅค

เจตเจพเจงเฉ‚ เจœเจพเจฃเจ•เจพเจฐเฉ€

เจธเจฟเฉฑเจŸเจพ

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€เจ†เจ‚ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจตเฉฐเจกเจฃ เจฒเจˆ เจŸเฉ‚เจฒเจœเจผ เจฆเจพ เจ‡เฉฑเจ• เจตเจงเฉ€เจ† เจธเฉˆเฉฑเจŸ เจชเฉ‡เจธเจผ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ, เจชเจฐ เจ‰เจน เจ…เจจเฉเจญเจตเฉ€ เจจเจนเฉ€เจ‚ เจนเจจ เจ…เจคเฉ‡ เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจธเฉ‚เจ–เจฎเจคเจพเจตเจพเจ‚ เจนเจจเฅค เจ‡เจธ เจ—เฉเฉฐเจเจฒเจคเจพ เจฆเฉ‡ เจ•เจพเจฐเจจ, เจฎเฉ‡เจฐเจพ เจฎเฉฐเจจเจฃเจพ เจนเฉˆ เจ•เจฟ เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจฎเฉŒเจœเฉ‚เจฆเจพ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ€เจคเฉ€เจ†เจ‚ เจฌเฉฑเจ— เจนเจจเฅค เจ‡เจธ เจธเจฎเฉฑเจธเจฟเจ† เจฆเฉ‡ เจธเฉฐเจญเจพเจตเฉ€ เจนเฉฑเจฒเจพเจ‚ เจตเจฟเฉฑเจš เจจเฉ€เจคเฉ€ เจชเจฐเจฟเจญเจพเจธเจผเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจธเจตเฉˆเจšเจพเจฒเจค เจ•เจฐเจจเจพ เจœเจพเจ‚ เจนเฉ‹เจฐ เจตเจฟเจญเจพเจœเจจ เจธเจพเจงเจจเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ เจธเจผเจพเจฎเจฒ เจนเฉˆเฅค

เจฎเฉˆเจจเฉ‚เฉฐ เจ‰เจฎเฉ€เจฆ เจนเฉˆ เจ•เจฟ เจ‡เจน เจ—เจพเจˆเจก เจ•เฉเจ เจธเจตเจพเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจจ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจจ เจตเจฟเฉฑเจš เจฎเจฆเจฆ เจ•เจฐเฉ‡เจ—เฉ€ เจœเจฟเจจเฉเจนเจพเจ‚ เจฆเจพ เจคเฉเจธเฉ€เจ‚ เจธเจพเจนเจฎเจฃเจพ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจ…เจจเฉเจตเจพเจฆเจ• เจคเฉ‹เจ‚ เจชเฉ€.เจเจธ

เจธเจพเจกเฉ‡ เจฌเจฒเฉŒเจ— 'เจคเฉ‡ เจตเฉ€ เจชเฉœเฉเจนเฉ‹:

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹