๐ก ํต์ฌ ์ธ์ฌ์ดํธ
SRE(์ฌ์ดํธ ์ ๋ขฐ์ฑ ๊ณตํ)์์ ์์คํ ์ ๊ฑด๊ฐ ์ํ๋ฅผ ์ธก์ ํ๊ณ ๊ด๋ฆฌํ๋ ํต์ฌ ๋ผ๋์ ๋๋ค.
**SLI(์งํ)**๋ "ํ์ฌ ์ฐ๋ฆฌ ์์คํ ์ ๊ฒฐ์ ์ฑ๊ณต๋ฅ ์ด ๋ช ํผ์ผํธ(%)์ธ๊ฐ?"๋ฅผ ์ฌ๋ ์ค์ ์ฒด์จ๊ณ ๋๊ธ์ด๋ฉฐ, **SLO(๋ชฉํ)**๋ "์ด ์ฒด์จ์ด 99.5% ์ด์์ ์ ์ง๋์ด์ผ ํ์๊ฐ ์ด ์ ์๋ค"๋ผ๊ณ ํ ๋ด๋ถ์ ์ผ๋ก ์ ํด๋์ ๋ชฉํ ์ ์ ์ฒด์จ์ ์ ๋๋ค.
โ . SLI (Service Level Indicator, ์๋น์ค ์์ค ์งํ)
"๊ทธ๋์ ์ฐ๋ฆฌ ์๋น์ค๊ฐ ์ผ๋ง๋ ์ ๋์๊ฐ๊ณ ์๋๋ฐ?"๋ฅผ ๊ฐ๊ด์ ์ผ๋ก ๋ํ๋ด๋ ํฉํธ(๋ฐ์ดํฐ)์ ๋๋ค.
- ์ ์: ์๋น์ค ์์ค์ ํ์ฌ ์ํ๋ฅผ ์ธก์ ํ๋ ์ ๋์ ์ธ ์ฒ๋์ ๋๋ค. ์ฃผ๋ก **(์ฑ๊ณตํ ์์ฒญ ์ / ์ ์ฒด ์์ฒญ ์) $\times 100$**์ ๋ฐฑ๋ถ์จ๋ก ๊ณ์ฐ๋ฉ๋๋ค.
- ์ข์ SLI์ ์:
- ๊ฐ์ฉ์ฑ (Availability): "์ด์ ํ๋ฃจ ์ข ์ผ ๋ค์ด์จ HTTP GET ์์ฒญ ์ค, 200 OK(์ฑ๊ณต)๋ฅผ ๋ฐํํ ๋น์จ" (๊ฒฐ๊ณผ: 99.99%).
- ์ง์ฐ ์๊ฐ (Latency): "DB ์กฐํ ์์ฒญ ์ค, 100ms(0.1์ด) ์ด๋ด์ ์ด๊ณ ์์ผ๋ก ์๋ต์ ๋ง์น ๋น์จ" (๊ฒฐ๊ณผ: 98%).
- ๋์ SLI์ ์: "์๋ฒ CPU ์ฌ์ฉ๋ 50%". (CPU๊ฐ 100%๋ฅผ ์น๋๋ผ๋ ๊ณ ๊ฐ ํ๋ฉด์ 1์ด ๋ง์ ๋ฌ๋ค๋ฉด ๊ณ ๊ฐ ์ ์ฅ์์ ํ๋ฅญํ ์๋น์ค์ ๋๋ค. SLI๋ ์ฒ ์ ํ ์ฌ์ฉ์๊ฐ ์ฒด๊ฐํ๋ ์งํ์ฌ์ผ ํฉ๋๋ค.)
โ ก. SLO (Service Level Objective, ์๋น์ค ์์ค ๋ชฉํ)
์ฒด์จ๊ณ(SLI)๋ฅผ ์์ผ๋ฉด ์ด ์ฒด์จ์ด ์ ์์ธ์ง ๋น์ ์์ธ์ง ํ๋จํ ํฉ๊ฒฉ ๊ธฐ์ค์ ์ด ํ์ํฉ๋๋ค.
- ์ ์: SLI๊ฐ "๋ฐ๋์ ๋๋ฌํด์ผ ํ๋ ๋ชฉํ ์์น"๋ฅผ ๋ช ์ํ ์ฌ๋ด ๋ด๋ถ ํฉ์์์ ๋๋ค.
- ์์: "์ฐ๋ฆฌ์ ๊ฒฐ์ ์๋ฒ๋ ๋ค์ ๋ฌ๊น์ง HTTP 200 OK ๋ฐํ ๋น์จ(SLI)์ด **99.9% ์ด์(SLO)**์ด ๋์ด์ผ ํ๋ค."
- ํน์ง: ์ด SLO๋ฅผ 100%์์ ๋บ ๋๋จธ์ง ๊ฐ(0.1%)์ด ๋ฐ๋ก ์ ์ฅ์์ ๋ฐฐ์ด **'์๋ฌ ์์ฐ(Error Budget)'**์ด ๋ฉ๋๋ค.
SLO ์ค์ ์ ์ฃผ์์
- ๋๋ฌด ๋๊ฒ ์ก์ผ๋ฉด(์: 99.999%): ์๋ฌ ์์ฐ์ด 1๋ฌ์ 5๋ถ๋ฐ์ ์ ๋์ด, ๊ฐ๋ฐํ์ด ์๋ก์ด ๋์ ์ ์ ํ ํ์ง ๋ชปํ๊ณ ๊ฒฝ์ง๋ฉ๋๋ค.
- ๋๋ฌด ๋ฎ๊ฒ ์ก์ผ๋ฉด(์: 95%): ๊ณ ๊ฐ๋ค์ด ๋งจ๋ ์๋ฌ ์ฐฝ์ ๋ณด๋ฉฐ ๋ถ๋ ธํ์ฌ ๊ฒฝ์์ฌ๋ก ๋ ๋ฉ๋๋ค.
- ๋ฐ๋ผ์ ๋น์ฆ๋์ค ๋ถ์์ฅ(PO)๊ณผ SRE ํ์ด ์น์ดํ๊ฒ ์ธ์ฐ๋ฉฐ ์ด ์ ๋ฌํ ๋ฐธ๋ฐ์ค๋ฅผ ์ก์์ผ ํฉ๋๋ค.
โ ข. SLA (Service Level Agreement)์์ ๋ช ํํ ๋น๊ต
SLI, SLO๊ฐ 'ํ์ฌ ๋ด๋ถ'์ ๋ชฉํ๋ผ๋ฉด, 103์ฅ์์ ๋ฐฐ์ธ SLA๋ **'๋ฐ๊นฅ ๊ณ ๊ฐ๊ณผ์ ๋ฒ์ ๊ณ์ฝ'**์ ๋๋ค.
- SLO (๋ด๋ถ ๋ชฉํ): "์ฐ๋ฆฐ 99.9%๋ฅผ ๋ชฉํ๋ก ๋ฌ๋ฆฌ์!" (๋ชป ์ง์ผ๋ ์ฐ๋ฆฌ๋ผ๋ฆฌ ์๋ฌ ์์ฐ ๊น๊ณ ์ผ๊ทผํ๋ฉด ๋จ).
- SLA (์ธ๋ถ ๊ณ์ฝ): "๊ณ ๊ฐ๋, ์ต์ 99.0%๋ ๋ฌด์กฐ๊ฑด ์ง์ผ๋๋ฆด๊ฒ์." (๋ง์ฝ 98.9%๋ก ๋จ์ด์ง๋ฉด ๊ณ ๊ฐ์๊ฒ ์์ฒญ๋ ์์ฝ๊ธ๊ณผ ํ๋ถ์ ํด์ค์ผ ํ๋ ๋ฒ์ ์ฒ๋ฒ์ ).
- ๋ฐ๋ผ์ SLA๋ ๋ฌด์กฐ๊ฑด SLO๋ณด๋ค ๋ฎ๊ณ ๋ณด์์ ์ผ๋ก ์ก์์ ์ฟ ์ ์ ๋์ด์ผ ํฉ๋๋ค.
๐ข ์น์ ์์ฝ ๋น์ : ๋ค์ด์ดํธ์ ๊ฑด๊ฐ ๊ฒ์ง์ ๋น์ ํด ๋ด ์๋ค.
- SLI (์งํ): ์ฒด์ค๊ณ์ ์ฌ๋ผ๊ฐ์ ๋์จ ๋ด ์ง์ง ๋ชธ๋ฌด๊ฒ ์์น '75kg'.
- SLO (๋ชฉํ): ์์ฌ์ ๋ด๊ฐ ์ฌ์ฌ๋ฆ๊น์ง ๋นผ๊ธฐ๋ก ๋ค์งํ ๋ชฉํ ์ฒด์ค '70kg ์ดํ' (์ด๊ฑธ ๋์ผ๋ฉด ๊ตถ์ด์ผ ํจ = ์๋ฌ ์์ฐ ์์ง).
- SLA (๊ณ์ฝ): ํฌ์ค์ฅ ๊ด์ฅ๋๊ณผ ๋งบ์ ๋ฒ์ ๊ณ์ฝ. "๋ง์ฝ 80kg์ ๋์ผ๋ฉด ์ ๊ฐ ๊ด์ฅ๋๊ป ๋ฒ๊ธ 100๋ง ์์ ๋ด๊ฒ ์ต๋๋ค."