μ€μ΅ νκ²½ ꡬμ±
<aside>
ππ» μ€μ΅ νκ²½μ K8S v1.23.4 , λ
Έλ OS(Ubuntu 20.04.3) , CNI(Calico v3.21.4, Direct mode) , IPTABLES proxy mode , Istio v1.13.2(Envoy v1.21.2)
</aside>
# λ°°ν¬
curl -O <https://raw.githubusercontent.com/gasida/KANS/main/8/Vagrantfile>
vagrant up
vagrant status
vagrant ssh k8s-m
- Istio Operator Install - λ§ν¬
- Istio μ μ ν
μ€νΈλ₯Ό μν λ³μ μ§μ
- μ€μ΅μ μν νκ²½ μ€μ λ° λ°°ν¬ : nginx-app λ‘ ν₯νλ ν΅μ μ κ²½μ° peer κ° mtls λκΈ°
0. μκ°
κΈ λͺ©μ : Istio λ₯Ό ν΅ν μΈλ°μ΄λ/μμλ°μ΄λ ν΅μ μ μμΈν μμ보μ
- Istio λ μ΅λν κ°λ¨νκ² κ΅¬μ±(Istio Gateway/VirtualService)μ νμκ³ , μ€μλκ° λ¨μ΄μ§κ±°λ λΆνμν μ€λͺ
μ μ μΈνμμ΅λλ€.
- μ€μ΅ κ΅¬μ± νκ²½μ vagrant λ‘ 4λμ Linux μ k8s(master, 2xnode) μ calico cni, istio 1.21 λ‘ κ΅¬μ±νμμ΅λλ€.
Istio ν΅μ : νΈμ€νΈμ tcp/ip μ iptables κ³Ό νλ λ΄μ iptables μ envoy λ₯Ό κ²½μ
- λ¬λ¦¬κΈ°μ λΉμ νμλ©΄, Istio κ° μμ κ²½μ°λ₯Ό μ΄λμ₯ νλ°ν΄λΌλ©΄, istio μ¬μ© μ λλ΅ μ΄λμ₯ μΈλ°ν΄λΌκ³ λ³Ό μ μμ΅λλ€.
- Istio μ¬μ© μ μ₯μ λ μμ§λ§, μμ κ²½μ° λλΉ **λΉμ©(μ§μ° μΆκ°, νλ‘μΈμ± μΆκ°, 볡μ‘ν ꡬ쑰 λ±)**μ΄ μΆκ°λ©λλ€. β μλ 3λ² κΈ Sidecarless mode μ°Έκ³ !
https://cilium.io/blog/2021/12/01/cilium-service-mesh-beta
- μλλ 'νλ β μΈν°λ·' μ κ·Ό μ νΈλν½ κ²½λ‘ μμ μ
λλ€
https://isovalent.com/blog/post/2021-12-08-ebpf-servicemesh
μΈλΆ ν΄λΌμ΄μΈνΈ PCμμ K8S νλ(μΉμλ²)λ‘ μ μ κ³Όμ
1.1 ν΄λΌμ΄μΈνΈ(μμ²) β νλ(μΈμ
)
νΈλν½ νλ¦
- μΈλΆ ν΄λΌμ΄μΈνΈ PCμμ k8s ν΄λ¬μ€ν° λ΄λΆμ μΉ μλ² νλλ‘ μΈμ
μ νΈλν½ νλ¦μ
λλ€.
- κΈ°μ‘΄ ν¨ν· λ΄μ© μ€ λ³κ²½ μ (κ΅΅μ)κ³Ό λ³κ²½ ν(λΉ¨κ° μ)μΌλ‘ νννμμ΅λλ€.
νλ λ΄ IPTables μ μ© νλ¦
: μλ (1) ~ (8) κΉμ§μ κ³Όμ μ λ¨Όμ μ€λͺ
ν©λλ€.
https://jimmysong.io/en/blog/sidecar-injection-iptables-and-traffic-routing/
μΆμ²λ§ν¬
: Life of a Packet in ISTIO Part 1 - λ§ν¬