เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

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

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

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

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

เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ‡เจนเจจเจพเจ‚ เจชเจฒเฉฑเจ—เจ‡เจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจธเจญ เจคเฉ‹เจ‚ เจ†เจฎ เจนเจจ เจซเจผเจฒเฉˆเจจเจพเจฒ โ€” เจนเจฐเฉ‡เจ• เจจเฉ‹เจก 'เจคเฉ‡ เจฌเฉเจฐเจฟเจœ เจตเจงเจพ เจ•เฉ‡, เจ‡เจธ เจจเฉ‚เฉฐ เจธเจฌเจจเฉˆเฉฑเจŸ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจ•เฉ‡ เจธเจพเจฐเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจกเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจชเฉ‚เจฐเจพ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ•เจจเฉˆเจ•เจŸเฉ€เจตเจฟเจŸเฉ€ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจธเฉฐเจชเฉ‚เจฐเจจ เจ…เจคเฉ‡ เจ…เจจเจฟเจฏเฉฐเจคเฉเจฐเจฟเจค เจชเจนเฉเฉฐเจšเจฏเฉ‹เจ—เจคเจพ เจนเจฎเฉ‡เจธเจผเจพ เจฒเจพเจญเจฆเจพเจ‡เจ• เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจ•เจฟเจธเฉ‡ เจ•เจฟเจธเจฎ เจฆเฉ€ เจ˜เฉฑเจŸเฉ‹-เจ˜เฉฑเจŸ เจ…เจฒเฉฑเจ—เจคเจพ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจจ เจฒเจˆ, เจซเจพเจ‡เจฐเจตเจพเจฒ เจฆเฉ€ เจธเฉฐเจฐเจšเจจเจพ เจตเจฟเฉฑเจš เจฆเจ–เจฒ เจฆเฉ‡เจฃเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆเฅค เจ†เจฎ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš, เจ‡เจน เจ‰เจธเฉ‡ CNI เจฆเฉ‡ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจ…เจงเฉ€เจจ เจฐเฉฑเจ–เจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจœเจฟเจธ เจ•เจพเจฐเจจ iptables เจตเจฟเฉฑเจš เจ•เจฟเจธเฉ‡ เจตเฉ€ เจคเฉ€เจœเฉ€-เจงเจฟเจฐ เจฆเฉ‡ เจฆเจ–เจฒ เจฆเฉ€ เจ—เจฒเจค เจตเจฟเจ†เจ–เจฟเจ† เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆ เจœเจพเจ‚ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ…เจฃเจกเจฟเฉฑเจ  เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

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

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
  podSelector:
    matchLabels:
      role: 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

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

เจ‡เจน เจคเจฐเจ•เจชเฉ‚เจฐเจจ เจนเฉˆ เจ•เจฟ เจ‡เฉฑเจฅเฉ‡ 2 เจ•เจฟเจธเจฎเจพเจ‚ เจฆเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจนเจจ: เจชเฉŒเจก เจตเจฟเฉฑเจš เจฆเจพเจ–เจฒ เจนเฉ‹เจฃเจพ (เจ‡เจจเจ—เฉเจฐเฉ‡เจธ) เจ…เจคเฉ‡ เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจœเจพเจฃเจพ (เจเจ—เจฐเฉˆเจธ)เฅค

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

เจ…เจธเจฒ เจตเจฟเฉฑเจš, เจฐเจพเจœเจจเฉ€เจคเฉ€ เจจเฉ‚เฉฐ เจ…เฉฐเจฆเฉ‹เจฒเจจ เจฆเฉ€ เจฆเจฟเจธเจผเจพ เจฆเฉ‡ เจ…เจงเจพเจฐ เจคเฉ‡ เจ‡เจนเจจเจพเจ‚ 2 เจธเจผเฉเจฐเฉ‡เจฃเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจตเฉฐเจกเจฟเจ† เจ—เจฟเจ† เจนเฉˆเฅค

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

เจ•เจฟเจธเฉ‡ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจฒเฉ‡เจฌเจฒ เจฆเฉเจ†เจฐเจพ เจธเฉฐเจฏเฉเจ•เจค เจšเฉ‹เจฃเจ•เจพเจฐเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเฉ€เจฎเจค เจธเฉฐเจ–เจฟเจ† เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจตเฉฑเจ–-เจตเฉฑเจ– เจญเจฟเฉฐเจจเจคเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš "เจธเจญ เจ•เฉเจ/เจนเจฐ เจ•เจฟเจธเฉ‡ เจจเฉ‚เฉฐ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเจ“/เจฎเฉฐเจจเฉ‹" เจตเจฐเจ—เฉ‡ เจจเจฟเจฏเจฎ เจฒเจฟเจ–เจฃเจพ เจธเฉฐเจญเจต เจนเฉˆเฅค เจ‡เจธ เจ‰เจฆเฉ‡เจธเจผ เจฒเจˆ, เจซเจพเจฐเจฎ เจฆเฉ‡ เจจเจฟเจฐเจฎเจพเจฃ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ:

  podSelector: {}
  ingress: []
  policyTypes:
  - Ingress

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

  podSelector: {}
  ingress:
  - {}
  policyTypes:
  - Ingress

เจ‡เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚ เจ†เจŠเจŸเจ—เฉ‹เจ‡เฉฐเจ— เจฒเจˆ:

  podSelector: {}
  policyTypes:
  - Egress

- เจ‡เจธ เจจเฉ‚เฉฐ เจฌเฉฐเจฆ เจ•เจฐเจจ เจฒเจˆ. เจ…เจคเฉ‡ เจ‡เฉฑเจฅเฉ‡ เจ•เฉ€ เจธเจผเจพเจฎเจฒ เจ•เจฐเจจเจพ เจนเฉˆ:

  podSelector: {}
  egress:
  - {}
  policyTypes:
  - Egress

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

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจจเฉ‚เฉฐ เจœเจพเจฃเจจเจพ: เจฅเจฟเจŠเจฐเฉ€

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

K8s โ€œเจฌเจพเจ•เจธเจกโ€ เจนเฉฑเจฒ เจ…เจคเฉ‡ เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจคเฉ‹เจ‚ API เจธเฉˆเฉฑเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจจเจพเจฒ เจ•เจฟเจนเฉœเฉ‡ เจฎเฉŒเจ•เฉ‡ เจชเฉเจฐเจฆเจพเจจ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ?

เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ€เจคเฉ€ เจตเจฟเฉฑเจš เจ•เฉ€ เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆ:

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

เจ‡เฉฑเจฅเฉ‡ เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจ‡เจนเจจเจพเจ‚ เจซเฉฐเจ•เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจตเจงเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ:

  • เจชเจพเจฒเจฟเจธเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจตเจธเจคเฉ‚ 'เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ: เจชเฉŒเจก, เจ•เฉฐเจŸเฉ‡เจจเจฐ, เจตเจฐเจšเฉเจ…เจฒ เจฎเจธเจผเฉ€เจจ เจœเจพเจ‚ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ;
  • เจจเจฟเจฏเจฎเจพเจ‚ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจ–เจพเจธ เจ•เจพเจฐเจตเจพเจˆ เจธเจผเจพเจฎเจฒ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆ (เจฎเจจเจพเจนเฉ€, เจ‡เจœเจพเจœเจผเจค, เจฒเจพเจ—เจฟเฉฐเจ—);
  • เจจเจฟเจฏเจฎเจพเจ‚ เจฆเจพ เจŸเฉ€เจšเจพ เจœเจพเจ‚ เจธเจฐเฉ‹เจค เจ‡เฉฑเจ• เจชเฉ‹เจฐเจŸ, เจชเฉ‹เจฐเจŸเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเฉ€เจฎเจพ, เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ, HTTP เจœเจพเจ‚ ICMP เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚, IP เจœเจพเจ‚ เจธเจฌเจจเฉˆเฉฑเจŸ (4เจตเฉ€เจ‚ เจœเจพเจ‚ 6เจตเฉ€เจ‚ เจชเฉ€เฉœเฉเจนเฉ€), เจ•เฉ‹เจˆ เจตเฉ€ เจšเฉ‹เจฃเจ•เจพเจฐ (เจจเฉ‹เจก, เจฎเฉ‡เจœเจผเจฌเจพเจจ, เจตเจพเจคเจพเจตเจฐเจฃ) เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ;
  • เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจคเฉเจธเฉ€เจ‚ DNAT เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ เจ…เจคเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจซเจพเจฐเจตเจฐเจกเจฟเฉฐเจ— เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ‡ เจฒเฉฐเจ˜เจฃ เจจเฉ‚เฉฐ เจจเจฟเจฏเจฎเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš GitHub 'เจคเฉ‡ เจชเจนเจฟเจฒเฉ€ เจ•เจฎเจฟเจŸ เจœเฉเจฒเจพเจˆ 2016 เจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจธเจพเจฒ เจฌเจพเจ…เจฆ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจจเฉ‡ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจจเฉˆเจŸเจตเจฐเจ• เจ•เจจเฉˆเจ•เจŸเฉ€เจตเจฟเจŸเฉ€ เจจเฉ‚เฉฐ เจธเฉฐเจ—เจ เจฟเจค เจ•เจฐเจจ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฎเฉ‹เจนเจฐเฉ€ เจธเจฅเจฟเจคเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ€ - เจ‡เจธเจฆเจพ เจธเจฌเฉ‚เจค เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจธเจฐเจตเฉ‡เจ–เจฃ เจฆเฉ‡ เจจเจคเฉ€เจœเจฟเจ†เจ‚ เจฆเฉเจ†เจฐเจพ, เจฆ เจจเจฟเจŠ เจธเจŸเฉˆเจ• เจฆเฉเจ†เจฐเจพ เจ†เจฏเฉ‹เจœเจฟเจค:

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

K8s เจฆเฉ‡ เจจเจพเจฒ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจตเฉฑเจกเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจนเฉฑเจฒ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจเจฎเจพเจœเจผเจพเจจ เจˆ.เจ•เฉ‡.เจเจธ, Azure AKS, Google GKE เจ…เจคเฉ‡ เจนเฉ‹เจฐเจพเจ‚ เจจเฉ‡ เจ‡เจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจฒเจˆ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เจฐเจจเฉ€ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจฆเจฟเฉฑเจคเฉ€เฅค

เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจฒเจˆ, เจ‡เฉฑเจฅเฉ‡ เจธเจญ เจ•เฉเจ เจตเจงเฉ€เจ† เจนเฉˆ. เจ†เจชเจฃเฉ‡ เจ‰เจคเจชเจพเจฆ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจจ เจตเจฟเฉฑเจš, เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจตเจฟเจ•เจพเจธ เจŸเฉ€เจฎ เจจเฉ‡ เจ–เจ—เฉ‹เจฒ-เจตเจฟเจ—เจฟเจ†เจจเจ• เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจฆเจพ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจ•เฉ€เจคเจพ, 50000 เจญเฉŒเจคเจฟเจ• เจจเฉ‹เจกเจพเจ‚ 'เจคเฉ‡ 500 เจคเฉ‹เจ‚ เจตเฉฑเจง เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจจเฉ‚เฉฐ 20 เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจชเฉเจฐเจคเฉ€ เจธเจ•เจฟเฉฐเจŸ เจฆเฉ€ เจฐเจšเจจเจพ เจฆเจฐ เจจเจพเจฒ เจšเจฒเจพเจ‡เจ†เฅค เจธเจ•เฉ‡เจฒเจฟเฉฐเจ— เจจเจพเจฒ เจ•เฉ‹เจˆ เจธเจฎเฉฑเจธเจฟเจ† เจจเจนเฉ€เจ‚ เจชเจ›เจพเจฃเฉ€ เจ—เจˆเฅค เจ…เจœเจฟเจนเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจเจฒเจพเจจ เจ•เฉ€เจคเฉ‡ เจ—เจ เจธเจจ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจชเจนเจฟเจฒเฉ‡ เจธเฉฐเจธเจ•เจฐเจฃ เจฆเฉ€ เจ˜เฉ‹เจธเจผเจฃเจพ 'เจคเฉ‡. เจฅเฉเจฐเฉเจชเฉเฉฑเจŸ เจ…เจคเฉ‡ เจธเจฐเฉ‹เจคเจพเจ‚ เจฆเฉ€ เจ–เจชเจค 'เจคเฉ‡ เจ•เฉ‡เจ‚เจฆเฉเจฐเจฟเจค เจธเฉเจคเฉฐเจคเจฐ เจ…เจงเจฟเจเจจ เจ‡เจน เจตเฉ€ เจชเฉเจธเจผเจŸเฉ€ เจ•เจฐเจฆเฉ‡ เจนเจจ เจ•เจฟ เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจฆเฉ€ เจ•เจพเจฐเจ—เฉเจœเจผเจพเจฐเฉ€ เจซเจฒเฉˆเจจเจฒ เจฆเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจนเฉ€ เจšเฉฐเจ—เฉ€ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ:

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฌเจนเฉเจค เจคเฉ‡เจœเจผเฉ€ เจจเจพเจฒ เจตเจฟเจ•เจพเจธ เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆ, เจ‡เจน K8s, OpenShift, OpenStack, เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจชเฉเจฐเจธเจฟเฉฑเจง เจนเฉฑเจฒเจพเจ‚ เจตเจฟเฉฑเจš เจ•เฉฐเจฎ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ•เจฒเฉฑเจธเจŸเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚ เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ เจธเฉฐเจญเจต เจนเฉˆ. เจ•เจฟเฉฑเจ•, เจธเฉ‡เจตเจพ เจœเจพเจฒ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจฆเฉ‡ เจจเจฟเจฐเจฎเจพเจฃ เจฆเฉ‡ เจนเจตเจพเจฒเฉ‡ เจนเจจ (เจ‡เฉฑเจฅเฉ‡ เจ‡เฉฑเจ• เจ‰เจฆเจพเจนเจฐเจจ เจนเฉˆ Istio เจฆเฉ‡ เจจเจพเจฒ เจœเฉ‹เฉœ เจ•เฉ‡ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ).

เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจจเจพเจฒ เจ…เจญเจฟเจ†เจธ เจ•เจฐเฉ‹

เจตเจจเฉ€เจฒเจพ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ‡ เจ†เจฎ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, CNI เจธเจฅเจพเจชเจค เจ•เจฐเจจเจพ เจซเจพเจˆเจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฒเจˆ เจนเฉ‡เจ เจพเจ‚ เจ†เจ‰เจ‚เจฆเจพ เจนเฉˆ calico.yaml, เจ…เจงเจฟเจ•เจพเจฐเจค เจตเฉˆเฉฑเจฌเจธเจพเจˆเจŸ เจคเฉ‹เจ‚ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เฉ€เจคเจพ, เจตเจฐเจค เจ•เฉ‡ kubectl apply -f.

เจ‡เฉฑเจ• เจจเจฟเจฏเจฎ เจฆเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡, เจชเจฒเฉฑเจ—เจ‡เจจ เจฆเจพ เจฎเฉŒเจœเฉ‚เจฆเจพ เจธเฉฐเจธเจ•เจฐเจฃ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฆเฉ‡ เจจเจตเฉ€เจจเจคเจฎ 2-3 เจธเฉฐเจธเจ•เจฐเจฃเจพเจ‚ เจฆเฉ‡ เจ…เจจเฉเจ•เฉ‚เจฒ เจนเฉˆ: เจชเฉเจฐเจพเจฃเฉ‡ เจธเฉฐเจธเจ•เจฐเจฃเจพเจ‚ เจตเจฟเฉฑเจš เจ“เจชเจฐเฉ‡เจธเจผเจจ เจฆเฉ€ เจœเจพเจ‚เจš เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ€ เจ—เจฐเฉฐเจŸเฉ€ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจกเจฟเจตเฉˆเจฒเจชเจฐเจพเจ‚ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ, เจ•เฉˆเจฒเฉ€เจ•เฉ‹ iptables เจœเจพเจ‚ IPVS เจฆเฉ‡ เจธเจฟเจ–เจฐ 'เจคเฉ‡, CentOS 3.10, Ubuntu 7 เจœเจพเจ‚ Debian 16 'เจคเฉ‡ เจšเฉฑเจฒ เจฐเจนเฉ‡ 8 เจคเฉ‹เจ‚ เจ‰เฉฑเจชเจฐ เจฒเฉ€เจจเจ•เจธ เจ•เจฐเจจเจฒ 'เจคเฉ‡ เจšเฉฑเจฒเจฆเจพ เจนเฉˆเฅค

เจตเจพเจคเจพเจตเจฐเจฃ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจ‡เจ•เฉฑเจฒเจคเจพ

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

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš 2 เจตเฉˆเจฌ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจคเจพเจ‡เจจเจพเจค เจนเจจ: Node.js เจ…เจคเฉ‡ PHP เจตเจฟเฉฑเจš, เจœเจฟเจจเฉเจนเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ‡เฉฑเจ• Redis เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค PHP เจคเฉ‹เจ‚ Redis เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจจเฉ‚เฉฐ เจฐเฉ‹เจ•เจฃ เจฒเจˆ, Node.js เจจเจพเจฒ เจ•เจจเฉˆเจ•เจŸเฉ€เจตเจฟเจŸเฉ€ เจ•เจพเจ‡เจฎ เจฐเฉฑเจ–เจฆเฉ‡ เจนเฉ‹เจ, เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจจเฉ€เจคเฉ€ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเฉ‹:

kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
  name: allow-redis-nodejs
spec:
  podSelector:
    matchLabels:
      service: redis
  ingress:
  - from:
    - podSelector:
        matchLabels:
          service: nodejs
    ports:
    - protocol: TCP
      port: 6379

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

เจ‰เจฆเจพเจนเจฐเจจ เจตเจฐเจคเจฆเจพ เจนเฉˆ apiVersion เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฌเจพเจ•เจธ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจนเฉˆ, เจชเจฐ เจ•เฉเจ เจตเฉ€ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจจเจนเฉ€เจ‚ เจฐเฉ‹เจ•เจฆเจพ เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจกเจฟเจฒเฉ€เจตเจฐเฉ€ เจคเฉ‹เจ‚ เจ‰เจธเฉ‡ เจจเจพเจฎ เจฆเจพ เจธเจฐเฉ‹เจค. เจ‰เฉฑเจฅเฉ‡ เจธเฉฐเจŸเฉˆเจ•เจธ เจตเจงเฉ‡เจฐเฉ‡ เจตเจฟเจธเจคเฉเจฐเจฟเจค เจนเฉˆ, เจ‡เจธ เจฒเจˆ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‰เจชเจฐเฉ‹เจ•เจค เจ•เฉ‡เจธ เจฒเจˆ เจจเจฟเจฏเจฎ เจจเฉ‚เฉฐ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฆเฉเจฌเจพเจฐเจพ เจฒเจฟเจ–เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€:

apiVersion: crd.projectcalico.org/v1
kind: NetworkPolicy
metadata:
  name: allow-redis-nodejs
spec:
  selector: service == 'redis'
  ingress:
  - action: Allow
    protocol: TCP
    source:
      selector: service == 'nodejs'
    destination:
      ports:
      - 6379

เจฐเฉˆเจ—เฉ‚เจฒเจฐ NetworkPolicy API เจฆเฉเจ†เจฐเจพ เจธเจพเจฐเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเฉ‡เจฃ เจœเจพเจ‚ เจ…เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจจ เจฒเจˆ เจ‰เจชเจฐเฉ‹เจ•เจค-เจฆเฉฑเจธเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจฐเจšเจจเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจฌเจฐเฉˆเจ•เจŸเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจ•เฉฐเจธเจŸเฉเจฐเจ•เจŸ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ เจœเจฟเจจเฉเจนเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฎเจเจฃเจพ เจ…เจคเฉ‡ เจฏเจพเจฆ เจฐเฉฑเจ–เจฃเจพ เจฎเฉเจธเจผเจ•เจฒ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, เจซเจพเจ‡เจฐเจตเจพเจฒ เจจเจฟเจฏเจฎ เจฆเฉ‡ เจคเจฐเจ• เจจเฉ‚เฉฐ เจ‰เจฒเจŸ เจ•เจฐเจจ เจฒเจˆ, เจธเจฟเจฐเจซ เจฌเจฆเจฒเฉ‹ action: Allow 'เจคเฉ‡ action: Deny.

เจตเจพเจคเจพเจตเจฐเจฃ เจฆเฉเจ†เจฐเจพ เจ…เจฒเฉฑเจ—เจคเจพ

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

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

เจชเฉเจฐเฉ‹เจฎเฉ€เจฅเฉ€เจ…เจธ, เจ‡เฉฑเจ• เจจเจฟเจฏเจฎ เจฆเฉ‡ เจคเฉŒเจฐ เจคเฉ‡, เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ‡ เจธเฉ‡เจตเจพ เจตเจพเจคเจพเจตเจฐเจฃ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ - เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš เจ‡เจน เจ‡เฉฑเจ• เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจนเฉ‹เจตเฉ‡เจ—เจพ:

apiVersion: v1
kind: Namespace
metadata:
  labels:
    module: prometheus
  name: kube-prometheus

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

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-metrics-prom
spec:
  podSelector: {}
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          module: prometheus
    ports:
    - protocol: TCP
      port: 9100

เจ…เจคเฉ‡ เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจจเฉ€เจคเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจธเฉฐเจŸเฉˆเจ•เจธ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจนเฉ‹เจตเฉ‡เจ—เจพ:

apiVersion: crd.projectcalico.org/v1
kind: NetworkPolicy
metadata:
  name: allow-metrics-prom
spec:
  ingress:
  - action: Allow
    protocol: TCP
    source:
      namespaceSelector: module == 'prometheus'
    destination:
      ports:
      - 9100

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

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

เจตเจพเจงเฉ‚ เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจตเจธเจคเฉ‚เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ

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

apiVersion: crd.projectcalico.org/v1
kind: GlobalNetworkPolicy
metadata:
  name: block-icmp
spec:
  order: 200
  selector: all()
  types:
  - Ingress
  - Egress
  ingress:
  - action: Deny
    protocol: ICMP
  egress:
  - action: Deny
    protocol: ICMP

เจ‰เจชเจฐเฉ‹เจ•เจค เจ•เฉ‡เจธ เจตเจฟเฉฑเจš, เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจกเจพเจ‚ เจฒเจˆ ICMP เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจคเฉฑเจ• "เจชเจนเฉเฉฐเจšเจฃเจพ" เจ…เจœเฉ‡ เจตเฉ€ เจธเฉฐเจญเจต เจนเฉˆเฅค เจ…เจคเฉ‡ เจ‡เจธ เจฎเฉเฉฑเจฆเฉ‡ เจจเฉ‚เฉฐ เจขเฉฐเจ— เจจเจพเจฒ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ GlobalNetworkPolicy, เจ•เจฟเจธเฉ‡ เจ‡เจ•เจพเจˆ 'เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ HostEndpoint:

apiVersion: crd.projectcalico.org/v1
kind: GlobalNetworkPolicy
metadata:
  name: deny-icmp-kube-02
spec:
  selector: "role == 'k8s-node'"
  order: 0
  ingress:
  - action: Allow
    protocol: ICMP
  egress:
  - action: Allow
    protocol: ICMP
---
apiVersion: crd.projectcalico.org/v1
kind: HostEndpoint
metadata:
  name: kube-02-eth0
  labels:
    role: k8s-node
spec:
  interfaceName: eth0
  node: kube-02
  expectedIPs: ["192.168.2.2"]

VPN เจ•เฉ‡เจธ

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

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจฒเจˆ เจ•เฉˆเจฒเฉ€เจ•เฉ‹: เจœเจพเจฃ-เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเจพ เจœเจฟเจนเจพ เจ…เจจเฉเจญเจต

เจ—เฉเจฐเจพเจนเจ• เจธเจŸเฉˆเจ‚เจกเจฐเจก UDP เจชเฉ‹เจฐเจŸ 1194 เจฆเฉเจ†เจฐเจพ VPN เจจเจพเจฒ เจœเฉเฉœเจฆเฉ‡ เจนเจจ เจ…เจคเฉ‡, เจœเจฆเฉ‹เจ‚ เจ•เจจเฉˆเจ•เจŸ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ, เจคเจพเจ‚ เจชเฉŒเจก เจ…เจคเฉ‡ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฆเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจฌเจจเฉˆเฉฑเจŸ เจฒเจˆ เจฐเฉ‚เจŸ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเฉ‡ เจนเจจเฅค เจชเฉ‚เจฐเฉ‡ เจธเจฌเจจเฉˆเฉฑเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉเจธเจผ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจคเจพเจ‚ เจœเฉ‹ เจฐเฉ€เจธเจŸเจพเจฐเจŸ เจ…เจคเฉ‡ เจเจกเจฐเฉˆเฉฑเจธ เจชเจฐเจฟเจตเจฐเจคเจจ เจฆเฉŒเจฐเจพเจจ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจจเจพ เจ—เฉเจ†เจ‡เจ† เจœเจพเจตเฉ‡เฅค

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

เจธเฉฐเจญเจพเจตเฉ€ เจนเฉฑเจฒเจพเจ‚ เจฆเฉ€ เจ–เฉ‹เจœ เจฆเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚, เจนเฉ‡เจ  เจฒเจฟเจ–เจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจšเฉเจฃเจฟเจ† เจ—เจฟเจ† เจธเฉ€:

  1. VPN เจตเจพเจฒเฉ‡ เจชเฉ‹เจกเจธ เจชเฉเจฐเจคเฉ€ เจจเฉ‹เจก เจตเจฟเฉฑเจš เจจเจฟเจฏเจค เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจ hostNetwork, เจฏเจพเจจเฉ€ เจ…เจธเจฒ IP เจคเฉฑเจ•เฅค
  2. เจธเฉ‡เจตเจพ เจฆเฉเจ†เจฐเจพ เจฌเจพเจนเจฐ เจคเจพเจ‡เจจเจพเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ ClusterIP. เจ‡เฉฑเจ• เจชเฉ‹เจฐเจŸ เจญเฉŒเจคเจฟเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจจเฉ‹เจก 'เจคเฉ‡ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจฎเจพเจฎเฉ‚เจฒเฉ€ เจฐเจฟเจœเจผเจฐเจตเฉ‡เจธเจผเจจเจพเจ‚ (เจ‡เฉฑเจ• เจ…เจธเจฒเฉ€ IP เจชเจคเฉ‡ เจฆเฉ€ เจธเจผเจฐเจคเฉ€เจ† เจฎเฉŒเจœเฉ‚เจฆเจ—เฉ€) เจฆเฉ‡ เจจเจพเจฒ เจฌเจพเจนเจฐเฉ‹เจ‚ เจชเจนเฉเฉฐเจšเจฏเฉ‹เจ— เจนเฉˆเฅค
  3. เจจเฉ‹เจก เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจเจพ เจœเจฟเจธ 'เจคเฉ‡ เจชเฉŒเจก เจ—เฉเจฒเจพเจฌ เจนเฉˆ เจธเจพเจกเฉ€ เจ•เจนเจพเจฃเฉ€ เจฆเฉ‡ เจฆเจพเจ‡เจฐเฉ‡ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจนเฉˆ. เจฎเฉˆเจ‚ เจฌเฉฑเจธ เจ‡เจน เจ•เจนเจพเจ‚เจ—เจพ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจจเฉ‹เจก เจตเจฟเฉฑเจš เจธเฉ‡เจตเจพ เจจเฉ‚เฉฐ เจ•เฉฑเจธ เจ•เฉ‡ "เจจเฉ‡เจฒ" เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจœเจพเจ‚ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเฉ€ เจธเจพเจˆเจกเจ•เจพเจฐ เจธเฉ‡เจตเจพ เจฒเจฟเจ– เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจœเฉ‹ VPN เจธเฉ‡เจตเจพ เจฆเฉ‡ เจฎเฉŒเจœเฉ‚เจฆเจพ IP เจชเจคเฉ‡ เจฆเฉ€ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจ•เจฐเฉ‡เจ—เฉ€ เจ…เจคเฉ‡ เจ—เจพเจนเจ•เจพเจ‚ เจจเจพเจฒ เจฐเจœเจฟเจธเจŸเจฐเจก DNS เจฐเจฟเจ•เจพเจฐเจกเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจชเจพเจฆเจฟเจค เจ•เจฐเฉ‡เจ—เฉ€ - เจœเจฟเจธ เจ•เฉ‹เจฒ เจตเฉ€ เจ•เจพเจซเจผเฉ€ เจ•เจฒเจชเจจเจพ เจนเฉˆ.

เจฐเฉ‚เจŸเจฟเฉฐเจ— เจฆเฉ‡ เจฆเฉเจฐเจฟเจธเจผเจŸเฉ€เจ•เฉ‹เจฃ เจคเฉ‹เจ‚, เจ…เจธเฉ€เจ‚ VPN เจธเจฐเจตเจฐ เจฆเฉเจ†เจฐเจพ เจœเจพเจฐเฉ€ เจ•เฉ€เจคเฉ‡ IP เจชเจคเฉ‡ เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ• VPN เจ•เจฒเจพเจ‡เฉฐเจŸ เจฆเฉ€ เจตเจฟเจฒเฉฑเจ–เจฃ เจชเจ›เจพเจฃ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค เจนเฉ‡เจ เจพเจ‚ เจ…เจœเจฟเจนเฉ‡ เจ—เจพเจนเจ• เจฆเฉ€ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจจเฉ‚เฉฐ เจธเฉ€เจฎเจค เจ•เจฐเจจ เจฆเจพ เจ‡เฉฑเจ• เจฎเฉเฉฑเจขเจฒเจพ เจ‰เจฆเจพเจนเจฐเจจ เจนเฉˆ, เจ‰เฉฑเจชเจฐ เจฆเฉฑเจธเฉ‡ Redis 'เจคเฉ‡ เจฆเจฐเจธเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆ:

apiVersion: crd.projectcalico.org/v1
kind: HostEndpoint
metadata:
  name: vpnclient-eth0
  labels:
    role: vpnclient
    environment: production
spec:
  interfaceName: "*"
  node: kube-02
  expectedIPs: ["172.176.176.2"]
---
apiVersion: crd.projectcalico.org/v1
kind: GlobalNetworkPolicy
metadata:
  name: vpn-rules
spec:
  selector: "role == 'vpnclient'"
  order: 0
  applyOnForward: true
  preDNAT: true
  ingress:
  - action: Deny
    protocol: TCP
    destination:
      ports: [6379]
  - action: Allow
    protocol: UDP
    destination:
      ports: [53, 67]

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

เจจเจคเฉ€เจœเฉ‡

เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจ•เฉˆเจฒเฉ€เจ•เฉ‹ เจฆเฉ‡ เจ‰เฉฑเจจเจค API เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจคเฉเจธเฉ€เจ‚ เจ•เจฒเฉฑเจธเจŸเจฐ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจ…เจคเฉ‡ เจ†เจฒเฉ‡ เจฆเฉเจ†เจฒเฉ‡ เจฐเฉ‚เจŸเจฟเฉฐเจ— เจจเฉ‚เฉฐ เจฒเจšเจ•เจฆเจพเจฐ เจขเฉฐเจ— เจจเจพเจฒ เจธเฉฐเจฐเจšเจฟเจค เจ…เจคเฉ‡ เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฌเจฆเจฒ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡, เจ‡เจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจคเฉ‹เจช เจจเจพเจฒ เจšเจฟเฉœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ—เฉ‹เจฒเฉ€ เจฎเจพเจฐเจจ เจตเจฐเจ—เฉ€ เจฒเฉฑเจ— เจธเจ•เจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ BGP เจ…เจคเฉ‡ IP-IP เจธเฉเจฐเฉฐเจ—เจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• L3 เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจ‡เฉฑเจ• เจซเจฒเฉˆเจŸ เจจเฉˆเฉฑเจŸเจตเจฐเจ• 'เจคเฉ‡ เจ‡เฉฑเจ• เจธเจงเจพเจฐเจจ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจธเจฅเจพเจชเจจเจพ เจตเจฟเฉฑเจš เจญเจฟเจ†เจจเจ• เจฒเฉฑเจ—เจฆเจพ เจนเฉˆ... เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจจเจนเฉ€เจ‚ เจคเจพเจ‚ เจ‡เจน เจŸเฉ‚เจฒ เจ•เจพเจซเจผเฉ€ เจตเจฟเจนเจพเจฐเจ• เจ…เจคเฉ‡ เจ‰เจชเจฏเฉ‹เจ—เฉ€ เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ .

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

PS

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

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

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