์˜คํผ๋ ˆ์ดํ„ฐ(operator) ํŒจํ„ด

์˜คํผ๋ ˆ์ดํ„ฐ(Operator)๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ํ•ด๋‹น ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ์†Œํ”„ํŠธ์›จ์–ด ์ต์Šคํ…์…˜์ด๋‹ค. ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์›์น™, ํŠนํžˆ ์ปจํŠธ๋กค ๋ฃจํ”„๋ฅผ ๋”ฐ๋ฅธ๋‹ค.

๋™๊ธฐ ๋ถ€์—ฌ

์˜คํผ๋ ˆ์ดํ„ฐ ํŒจํ„ด ์€ ์„œ๋น„์Šค ๋˜๋Š” ์„œ๋น„์Šค ์…‹์„ ๊ด€๋ฆฌํ•˜๋Š” ์šด์˜์ž์˜ ์ฃผ์š” ๋ชฉํ‘œ๋ฅผ ํฌ์ฐฉํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค. ํŠน์ • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์„œ๋น„์Šค๋ฅผ ๋Œ๋ณด๋Š” ์šด์˜์ž๋Š” ์‹œ์Šคํ…œ์˜ ์ž‘๋™ ๋ฐฉ์‹, ๋ฐฐํฌ ๋ฐฉ๋ฒ• ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋Œ€์ฒ˜ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๊นŠ์ด ์•Œ๊ณ  ์žˆ๋‹ค.

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์—์„œ ์›Œํฌ๋กœ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์€ ์ข…์ข… ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์ž๋™ํ™”๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•œ๋‹ค. ์˜คํผ๋ ˆ์ดํ„ฐ ํŒจํ„ด์€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์ž์ฒด๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ ์ด์ƒ์˜ ์ž‘์—…์„ ์ž๋™ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํฌ์ฐฉํ•œ๋‹ค.

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ์˜คํผ๋ ˆ์ดํ„ฐ

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋Š” ์ž๋™ํ™”๋ฅผ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ์ค‘์ถ”๋ฅผ ํ†ตํ•ด ๋งŽ์€ ๋นŒํŠธ์ธ ์ž๋™ํ™” ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›Œํฌ๋กœ๋“œ ๋ฐฐํฌ ๋ฐ ์‹คํ–‰์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๊ณ , ๋˜ํ•œ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ์‹์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ์˜คํผ๋ ˆ์ดํ„ฐ ํŒจํ„ด ๊ฐœ๋…์„ ํ†ตํ•ด ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์ฝ”๋“œ ์ž์ฒด๋ฅผ ์ˆ˜์ •ํ•˜์ง€ ์•Š๊ณ ๋„ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ํ•˜๋‚˜ ์ด์ƒ์˜ ์‚ฌ์šฉ์ž ์ •์˜ ๋ฆฌ์†Œ์Šค(custom resource)์— ์—ฐ๊ฒฐํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋™์ž‘์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๋ฆฌ์†Œ์Šค์˜ ์ปจํŠธ๋กค๋Ÿฌ ์—ญํ• ์„ ํ•˜๋Š” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค API์˜ ํด๋ผ์ด์–ธํŠธ๋‹ค.

์˜คํผ๋ ˆ์ดํ„ฐ ์˜ˆ์‹œ

์˜คํผ๋ ˆ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ์‚ฌํ•ญ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • ์ฃผ๋ฌธํ˜• ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ
  • ํ•ด๋‹น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ƒํƒœ๋ฅผ ๋ฐฑ์—…ํ•˜๊ณ  ๋ณต์›
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋˜๋Š” ์ถ”๊ฐ€ ๊ตฌ์„ฑ ์„ค์ •๊ณผ ๊ฐ™์€ ๊ด€๋ จ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋”ฐ๋ฅธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฝ”๋“œ ์—…๊ทธ๋ ˆ์ด๋“œ ์ฒ˜๋ฆฌ
  • ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค API๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์„œ๋น„์Šค๋ฅผ ๊ฒŒ์‹œํ•˜์—ฌ ๊ฒ€์ƒ‰์„ ์ง€์›
  • ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ „์ฒด ๋˜๋Š” ์ผ๋ถ€์—์„œ ์žฅ์• ๋ฅผ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜์—ฌ ๊ฐ€์šฉ์„ฑ ํ…Œ์ŠคํŠธ
  • ๋‚ด๋ถ€ ๋ฉค๋ฒ„ ์„ ์ถœ ์ ˆ์ฐจ์—†์ด ๋ถ„์‚ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฆฌ๋”๋ฅผ ์„ ํƒ

์˜คํผ๋ ˆ์ดํ„ฐ์˜ ๋ชจ์Šต์„ ๋” ์ž์„ธํ•˜๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ธ๊ฐ€? ์˜ˆ์‹œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  1. ํด๋Ÿฌ์Šคํ„ฐ์— ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” SampleDB๋ผ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๋ฆฌ์†Œ์Šค.
  2. ์˜คํผ๋ ˆ์ดํ„ฐ์˜ ์ปจํŠธ๋กค๋Ÿฌ ๋ถ€๋ถ„์ด ํฌํ•จ๋œ ํŒŒ๋“œ์˜ ์‹คํ–‰์„ ๋ณด์žฅํ•˜๋Š” ๋””ํ”Œ๋กœ์ด๋จผํŠธ.
  3. ์˜คํผ๋ ˆ์ดํ„ฐ ์ฝ”๋“œ์˜ ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€.
  4. ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ์„ ์ฟผ๋ฆฌํ•˜์—ฌ ์–ด๋–ค SampleDB ๋ฆฌ์†Œ์Šค๊ฐ€ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š”์ง€ ์•Œ์•„๋‚ด๋Š” ์ปจํŠธ๋กค๋Ÿฌ ์ฝ”๋“œ.
  5. ์˜คํผ๋ ˆ์ดํ„ฐ์˜ ํ•ต์‹ฌ์€ API ์„œ๋ฒ„์— ๊ตฌ์„ฑ๋œ ๋ฆฌ์†Œ์Šค์™€ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ์ผ์น˜์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค์ฃผ๋Š” ์ฝ”๋“œ์ด๋‹ค.
    • ์ƒˆ SampleDB๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ํผ์‹œ์Šคํ„ดํŠธ๋ณผ๋ฅจํด๋ ˆ์ž„์„ ์„ค์ •ํ•˜์—ฌ ๋‚ด๊ตฌ์„ฑ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ† ๋ฆฌ์ง€, SampleDB๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์Šคํ…Œ์ดํŠธํ’€์…‹ ๋ฐ ์ดˆ๊ธฐ ๊ตฌ์„ฑ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์žก์„ ์ œ๊ณตํ•œ๋‹ค.
    • SampleDB๋ฅผ ์‚ญ์ œํ•˜๋ฉด ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•œ ๋‹ค์Œ ์Šคํ…Œ์ดํŠธํ’€์…‹๊ณผ ๋ณผ๋ฅจ๋„ ์ œ๊ฑฐ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.
  6. ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ์ •๊ธฐ์ ์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐฑ์—…๋„ ๊ด€๋ฆฌํ•œ๋‹ค. ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ๊ฐ SampleDB ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์—ฐ๊ฒฐํ•˜๊ณ  ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํŒŒ๋“œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์‹œ๊ธฐ๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค. ์ด ํŒŒ๋“œ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ ์„ธ๋ถ€ ์ •๋ณด ๋ฐ ์ž๊ฒฉ ์ฆ๋ช…์ด ์žˆ๋Š” ์ปจํ”ผ๊ทธ๋งต ๋ฐ / ๋˜๋Š” ์‹œํฌ๋ฆฟ์— ์˜์กดํ•œ๋‹ค.
  7. ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ๊ด€๋ฆฌํ•˜๋Š” ๋ฆฌ์†Œ์Šค์— ๊ฒฌ๊ณ ํ•œ ์ž๋™ํ™”๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ถ”๊ฐ€ ์ง€์› ์ฝ”๋“œ๊ฐ€ ์žˆ๋‹ค. ์ด ์˜ˆ์ œ์—์„œ ์ฝ”๋“œ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ด์ „ ๋ฒ„์ „์„ ์‹คํ–‰ ์ค‘์ธ์ง€ ํ™•์ธํ•˜๊ณ , ์—…๊ทธ๋ ˆ์ด๋“œ๋œ ๊ฒฝ์šฐ ์ด๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ์žก ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

์˜คํผ๋ ˆ์ดํ„ฐ ๋ฐฐํฌ

์˜คํผ๋ ˆ์ดํ„ฐ๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ•์€ ์ปค์Šคํ…€ ๋ฆฌ์†Œ์Šค ๋ฐํ”ผ๋‹ˆ์…˜์˜ ์ •์˜ ๋ฐ ์—ฐ๊ด€๋œ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ํด๋Ÿฌ์Šคํ„ฐ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ ์™ธ๋ถ€์—์„œ ์‹คํ–‰๋œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๋””ํ”Œ๋กœ์ด๋จผํŠธ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜คํผ๋ ˆ์ดํ„ฐ ์‚ฌ์šฉ

์˜คํผ๋ ˆ์ดํ„ฐ๊ฐ€ ๋ฐฐํฌ๋˜๋ฉด ์˜คํผ๋ ˆ์ดํ„ฐ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฆฌ์†Œ์Šค์˜ ์ข…๋ฅ˜๋ฅผ ์ถ”๊ฐ€, ์ˆ˜์ • ๋˜๋Š” ์‚ญ์ œํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค. ์œ„์˜ ์˜ˆ์— ๋”ฐ๋ผ ์˜คํผ๋ ˆ์ดํ„ฐ ์ž์ฒด์— ๋Œ€ํ•œ ๋””ํ”Œ๋กœ์ด๋จผํŠธ๋ฅผ ์„ค์ •ํ•œ ํ›„ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

kubectl get SampleDB                   # ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฐพ๊ธฐ

kubectl edit SampleDB/example-database # ์ผ๋ถ€ ์„ค์ •์„ ์ˆ˜๋™์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ

โ€ฆ์ด๊ฒƒ์œผ๋กœ ๋์ด๋‹ค! ์˜คํผ๋ ˆ์ดํ„ฐ๋Š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๊ณ  ๊ธฐ์กด ์„œ๋น„์Šค๋ฅผ ์–‘ํ˜ธํ•œ ์ƒํƒœ๋กœ ์œ ์ง€ํ•œ๋‹ค.

์ž์‹ ๋งŒ์˜ ์˜คํผ๋ ˆ์ดํ„ฐ ์ž‘์„ฑ

์—์ฝ”์‹œ์Šคํ…œ์— ์›ํ•˜๋Š” ๋™์ž‘์„ ๊ตฌํ˜„ํ•˜๋Š” ์˜คํผ๋ ˆ์ดํ„ฐ๊ฐ€ ์—†๋‹ค๋ฉด ์ง์ ‘ ์ฝ”๋”ฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๋˜ํ•œ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค API์˜ ํด๋ผ์ด์–ธํŠธ ์—ญํ• ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์–ธ์–ด / ๋Ÿฐํƒ€์ž„์„ ์‚ฌ์šฉํ•˜์—ฌ ์˜คํผ๋ ˆ์ดํ„ฐ(์ฆ‰, ์ปจํŠธ๋กค๋Ÿฌ)๋ฅผ ๊ตฌํ˜„ํ•œ๋‹ค.

๋‹ค์Œ์€ ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์˜คํผ๋ ˆ์ดํ„ฐ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๋„๊ตฌ๋“ค์ด๋‹ค.

๋‹ค์Œ ๋‚ด์šฉ

  • CNCF ์˜คํผ๋ ˆ์ดํ„ฐ ๋ฐฑ์„œ ์ฝ์–ด๋ณด๊ธฐ
  • ์‚ฌ์šฉ์ž ์ •์˜ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด ๋” ์•Œ์•„๋ณด๊ธฐ
  • OperatorHub.io์—์„œ ์œ ์Šค์ผ€์ด์Šค์— ๋งž๋Š” ์ด๋ฏธ ๋งŒ๋“ค์–ด์ง„ ์˜คํผ๋ ˆ์ดํ„ฐ ์ฐพ๊ธฐ
  • ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ž์‹ ์˜ ์˜คํผ๋ ˆ์ดํ„ฐ๋ฅผ ๊ฒŒ์‹œํ•˜๊ธฐ
  • ์˜คํผ๋ ˆ์ดํ„ฐ ํŒจํ„ด์„ ์†Œ๊ฐœํ•œ CoreOS ์›๋ณธ ๊ธ€ ์ฝ๊ธฐ (์ด ๋งํฌ๋Š” ์›๋ณธ ๊ธ€์— ๋Œ€ํ•œ ๋ณด๊ด€ ๋ฒ„์ „์ž„)
  • ์˜คํผ๋ ˆ์ดํ„ฐ ๊ตฌ์ถ•์„ ์œ„ํ•œ ๋ชจ๋ฒ” ์‚ฌ๋ก€์— ๋Œ€ํ•œ ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ(Google Cloud)์˜ ๊ธฐ์‚ฌ ์ฝ๊ธฐ

์ด ํŽ˜์ด์ง€๋Š” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๊ฐ€ ํ•„์š”๋กœ ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ์จ๋“œํŒŒํ‹ฐ ํ”„๋กœ์ ํŠธ ๋˜๋Š” ์ œํ’ˆ์— ๋Œ€ํ•ด ์–ธ๊ธ‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํ”„๋กœ์ ํŠธ ์ €์ž๋“ค์€ ์ด๋Ÿฌํ•œ ์จ๋“œํŒŒํ‹ฐ ํ”„๋กœ์ ํŠธ ๋˜๋Š” ์ œํ’ˆ์— ๋Œ€ํ•ด ์ฑ…์ž„์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. CNCF ์›น์‚ฌ์ดํŠธ ๊ฐ€์ด๋“œ๋ผ์ธ์—์„œ ๋” ์ž์„ธํ•œ ๋‚ด์šฉ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์จ๋“œํŒŒํ‹ฐ ๋งํฌ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ณ€๊ฒฝ์„ ์ œ์•ˆํ•˜๊ธฐ ์ „์—, ์ปจํ…์ธ  ๊ฐ€์ด๋“œ๋ฅผ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ตœ์ข… ์ˆ˜์ • July 21, 2025 at 10:12 PM PST: Update operator list: add Mast, fix broken links (a54b6bf6df)