Amazon MSK(Managed Streaming for Apache Kafka)
Last updated
Last updated
Amazon MSK (Managed Streaming for Apache Kafka) ๋ Apache Kafka๋ฅผ ์ฌ์ฉํ์ฌ ์คํธ๋ฆฌ๋ฐ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํ๊ณ ์คํํ ์ ์๋ ์์ ๊ด๋ฆฌํ ์๋น์ค์ ๋๋ค. Apache Kafka๋ ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๊ธฐ ์ํ ์คํ ์์ค ํ๋ซํผ์ ๋๋ค. Amazon MSK๋ฅผ ํตํด ๋ค์ดํฐ๋ธ Apache Kafka API๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ๋ ์ดํฌ๋ฅผ ์ฑ์ฐ๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ณ๊ฒฝ ์ฌํญ์ ์คํธ๋ฆฌ๋ฐ ๋ฐฉ์์ผ๋ก ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ, ๊ธฐ๊ณ ํ์ต ๋ฐ ๋ถ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง์ํ ์ ์์ต๋๋ค.
๋ํ Amazon MSK๋ ํด๋ฌ์คํฐ ์์ฑ, ์ ๋ฐ์ดํธ ๋ฐ ์ญ์ ๋ฑ์ ํ์ํ ์ ์ด ์์ญ ์์ ์ ์ ๊ณตํฉ๋๋ค. ๋ฐ๋ผ์ ๋ฐ์ดํฐ ์์ฑ ๋ฐ ์๋น์ ๊ฐ์ Apache Kafka ๋ฐ์ดํฐ ์์ญ ์์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ํ๋ก๋์ ์์ ์ค์ ํ๊ณ ๊ท๋ชจ๋ฅผ ์กฐ์ ํ๊ณ ๊ด๋ฆฌํ๋ ๊ฒ์ ๊น๋ค๋ก์ด ์์ ์ ๋๋ค. ํผ์์ Apache Kafka๋ฅผ ์คํํ๋ ๊ฒฝ์ฐ ์๋ฒ ํ๋ก๋น์ ๋, Apache Kafka ์๋ ๊ตฌ์ฑ, ์คํจํ ๊ฒฝ์ฐ ์๋ฒ ๊ต์ฒด, ์๋ฒ ํจ์น ๋ฐ ์ ๊ทธ๋ ์ด๋ ์ค์ผ์คํธ๋ ์ด์ , ๊ณ ๊ฐ์ฉ์ฑ์ ์ํ ํด๋ฌ์คํฐ ์ค๊ณ, ๋ฐ์ดํฐ๊ฐ ์ง์์ ์ผ๋ก ์ ์ฅ๋์์ผ๋ฉฐ ์์ ํ์ง ํ์ธ, ๋ชจ๋ํฐ๋ง ๋ฐ ๊ฒฝ๋ณด ์ค์ , ๋ถํ ๋ณ๊ฒฝ์ ์ง์ํ๊ธฐ ์ํ ํฌ๊ธฐ ์กฐ์ ์ด๋ฒคํธ์ ์ ์คํ ๊ณํ ๋ฑ์ ๋ชจ๋ ์ง์ ์ํํด์ผ ํฉ๋๋ค. Amazon MSK๋ฅผ ์ฌ์ฉํ๋ฉด Apache Kafka ์ธํ๋ผ ๊ด๋ฆฌ์ ๋ํ ์ ๋ฌธ์ฑ์ด ์์ด๋ Apache Kafka์์ ํธ๋ฆฌํ๊ฒ ํ๋ก๋์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๊ณ ์คํํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ์ธํ๋ผ ๊ด๋ฆฌ ์๊ฐ์ ์ค์ด๊ณ , ๋ ๋ง์ ์๊ฐ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ํ์ฉํ ์ ์์ต๋๋ค.
Amazon MSK ์ฝ์์์ ๋ช ๋ฒ๋ง ํด๋ฆญํ๋ฉด Apache Kafka์ ๋ฐฐํฌ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์ค์ ๊ณผ ๊ตฌ์ฑ์ผ๋ก ๊ณ ๊ฐ์ฉ์ฑ Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. Amazon MSK๋ Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ์๋์ผ๋ก ํ๋ก๋น์ ๋ํ๊ณ ์คํํฉ๋๋ค. Amazon MSK๋ ํด๋ฌ์คํฐ ์ํ๋ฅผ ์ง์์ ์ผ๋ก ๋ชจ๋ํฐ๋งํ๊ณ , ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ ์ค์ง ์์ด ๋น์ ์์ ์ธ ๋ ธ๋๋ฅผ ์๋์ผ๋ก ๊ต์ฒดํฉ๋๋ค. ๋ํ Amazon MSK๋ ๋ฏธ์ฌ์ฉ ๋ฐ์ดํฐ๋ฅผ ์ํธํํ์ฌ Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ์์ ํ๊ฒ ์ ์งํฉ๋๋ค.
Amazon MSK๋ Apache Kafka๋ฅผ ์๋์ผ๋ก ์คํํ๊ณ ๊ด๋ฆฌํฉ๋๋ค. ๋ฐ๋ผ์ ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ์ง ์๊ณ ๋ ์์ฝ๊ฒ ๊ธฐ์กด Apache Kafka ์ ํ๋ฆฌ์ผ์ด์ ์ AWS๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ์ฌ ์คํํ ์ ์์ต๋๋ค. Amazon MSK๋ฅผ ์ฌ์ฉํ๋ฉด ์คํ ์์ค ํธํ์ฑ์ ์ ์งํ๊ณ , MirrorMaker, Apache Flink ๋ฐ Prometheus์ ๊ฐ์ ์น์ํ ์ฌ์ฉ์ ์ง์ ๋ฐ ์ปค๋ฎค๋ํฐ ๊ตฌ์ถ ๋๊ตฌ๋ฅผ ๊ณ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Amazon MSK๋ฅผ ์ฌ์ฉํ๋ฉด Apache Kafka ํ๊ฒฝ ๊ด๋ฆฌ์ ์ด์ ์ค๋ฒํค๋์ ๋ํ ๊ฑฑ์ ์์ด ์คํธ๋ฆฌ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ ์ง์คํ ์ ์์ต๋๋ค. Amazon MSK์์ ์๋์ผ๋ก Apache Kafka ํด๋ฌ์คํฐ์ Apache ZooKeeper ๋ ธ๋์ ํ๋ก๋น์ ๋, ๊ตฌ์ฑ ๋ฐ ์ ์ง๋ฅผ ๊ด๋ฆฌํฉ๋๋ค. ๋ํ Amazon MSK๋ AWS ์ฝ์์ ์ฃผ์ Apache Kafka ์ฑ๋ฅ ์งํ๋ฅผ ํ์ํฉ๋๋ค.
Apache Flink๋ ์คํธ๋ฆฌ๋ฐ ๋ฐ์ดํฐ์ ์ํ ์ ์ฅ ๊ณ์ฐ์ ์ํ ๊ฐ๋ ฅํ ์คํ ์์ค ์คํธ๋ฆผ ์ฒ๋ฆฌ ํ๋ ์์ํฌ์ ๋๋ค. SQL, Java ๋๋ Scala๋ก ์์ฑ๋ ์์ ๊ด๋ฆฌํ Apache Flink ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ์ฌ Amazon MSK ๋ด์์ ๋ฐ์ดํฐ ์คํธ๋ฆผ์ ์ฒ๋ฆฌํ๋๋ก ํ๋ ฅ์ ์ผ๋ก ํ์ฅํ ์ ์์ต๋๋ค.
Amazon MSK๋ Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ์์ฑํ๊ณ AWS ๋ฆฌ์ ๋ด์์ ๋ค์ค AZ ๋ณต์ ๋ฅผ ์ ๊ณตํฉ๋๋ค. Amazon MSK๋ ํด๋ฌ์คํฐ ์ํ๋ฅผ ์ง์์ ์ผ๋ก ๋ชจ๋ํฐ๋งํ๊ณ , ๊ตฌ์ฑ ์์๊ฐ ์คํจํ ๊ฒฝ์ฐ ์๋์ผ๋ก ๋์ฒดํฉ๋๋ค.
Amazon MSK๋ VPC ๋คํธ์ํฌ ๊ฒฉ๋ฆฌ, ์ปจํธ๋กค ํ๋ ์ธ API ๊ถํ ๋ถ์ฌ๋ฅผ ์ํ AWS IAM, ์ ์ฅ ๋ฐ์ดํฐ ์ํธํ, ์ ์ก ๋ฐ์ดํฐ TLS ์ํธํ, TLS ๊ธฐ๋ฐ ์ธ์ฆ์ ์ธ์ฆ, AWS Secrets Manager๋ฅผ ํตํด ๋ณดํธ๋๋ SASL/SCRAM ์ธ์ฆ, ๋ฐ์ดํฐ ํ๋ ์ธ ๊ถํ ๋ถ์ฌ๋ฅผ ์ํ Apache Kafka ACL(์ก์ธ์ค ์ ์ด ๋ชฉ๋ก) ์ง์์ ๋น๋กฏํ์ฌ Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ์ํ ๋ค์ํ ์์ค์ ๋ณด์์ ์ ๊ณตํฉ๋๋ค.
๋ค์ ๋ค์ด์ด๊ทธ๋จ์ Amazon MSK์ ์๋ ๋ฐฉ์์ ๋ํ ๊ฐ์์ ๋๋ค.
๋ค์ด์ด๊ทธ๋จ์ ๋ค์ ๊ตฌ์ฑ ์์ ๊ฐ์ ์ํธ ์์ฉ์ ๋ณด์ฌ ์ค๋๋ค.
Broker ๋ ธ๋โ Amazon MSK ํด๋ฌ์คํฐ๋ฅผ ์์ฑํ ๋ Amazon MSK๊ฐ ๊ฐ ๊ฐ์ฉ ์์ญ์ ์์ฑํ ๋ธ๋ก์ปค ๋ ธ๋ ์๋ฅผ ์ง์ ํฉ๋๋ค. ์ด ๋ค์ด์ด๊ทธ๋จ์ ํ์๋ ์์ ํด๋ฌ์คํฐ์๋ ๊ฐ์ฉ ์์ญ๋น ํ๋์ ๋ธ๋ก์ปค๊ฐ ์์ต๋๋ค. ๊ฐ ๊ฐ์ฉ ์์ญ์๋ ๊ณ ์ ํ virtual private cloud(VPC) ์๋ธ๋ท์ด ์์ต๋๋ค.
ZooKeeper ๋ ธ๋โ Amazon MSK๋ Apache ZooKeeper ๋ ธ๋๋ ๋ง๋ญ๋๋ค. Apache ZooKeeper๋ ์์ ์ฑ์ด ๋ฐ์ด๋ ๋ถ์ฐ ์กฐ์ ์ ์ง์ํ๋ ์คํ ์์ค ์๋ฒ์ ๋๋ค.
Producer, Consumer ๋ฐ Topic ์ ์์โ Amazon MSK๋ฅผ ์ฌ์ฉํ๋ฉด Apache Kafka ๋ฐ์ดํฐ ์์ญ ์์ ์ ์ฌ์ฉํ์ฌ Topic์ ๋ง๋ค๊ณ , ๋ฐ์ดํฐ๋ฅผ ์์ฐํ๊ณ ์๋นํ ์ ์์ต๋๋ค.
Cluster ์์ - ๋ค์์ ์ํํ ์ ์์ต๋๋ค.AWS Management Console,AWS Command Line Interface(AWS CLI) ๋๋ SDK์ API๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ด ์์ญ ์์ ์ ์ํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด Amazon MSK ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ค๊ฑฐ๋ ์ญ์ ํ๊ณ , ๊ณ์ ์ ๋ชจ๋ ํด๋ฌ์คํฐ๋ฅผ ๋์ดํ๊ณ , ํด๋ฌ์คํฐ์ ์์ฑ์ ๋ณด๊ณ , ํด๋ฌ์คํฐ์ ๋ธ๋ก์ปค ์์ ์ ํ์ ์ ๋ฐ์ดํธํ ์ ์์ต๋๋ค.
Amazon MSK๋ ํด๋ฌ์คํฐ์ ๋ํ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๊ฒฐํจ ์๋๋ฆฌ์ค๋ฅผ ๊ฐ์งํ๊ณ ์๋์ผ๋ก ๋ณต๊ตฌํ๋ฏ๋ก ์์ฐ์์ ์๋น์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ต์ํ์ ์ํฅ์ ๋ฐ์ผ๋ฉด์ ์ฐ๊ธฐ ๋ฐ ์ฝ๊ธฐ ์์ ์ ๊ณ์ํ ์ ์์ต๋๋ค. Amazon MSK๊ฐ ๋ธ๋ก์ปค ๊ฒฐํจ์ ๊ฐ์งํ๋ฉด ํด๋น ๊ฒฐํจ์ ์ํํ๊ฑฐ๋ ๋น์ ์์ ๋๋ ์ฐ๊ฒฐํ ์ ์๋ ๋ธ๋ก์ปค๋ฅผ ์ ๋ธ๋ก์ปค๋ก ๋ฐ๊ฟ๋๋ค. ๋ํ ๊ฐ๋ฅํ ๊ฒฝ์ฐ ์ด์ ๋ธ๋ก์ปค์ ์คํ ๋ฆฌ์ง๋ฅผ ์ฌ์ฌ์ฉํ์ฌ Apache Kafka๊ฐ ๋ณต์ ํด์ผ ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ค์ ๋๋ค. ๊ฐ์ฉ์ฑ์ ๋ฏธ์น๋ ์ํฅ์ Amazon MSK๊ฐ ๊ฐ์ง ๋ฐ ๋ณต๊ตฌ๋ฅผ ์๋ฃํ๋ ๋ฐ ํ์ํ ์๊ฐ์ผ๋ก ์ ํ๋ฉ๋๋ค. ๋ณต๊ตฌ ํ ์์ฐ์์ ์๋น์ ์ฑ์ ๊ฒฐํจ ์ด์ ์ ์ฌ์ฉํ ๊ฒ๊ณผ ๋์ผํ ๋ธ๋ก์ปค IP ์ฃผ์์ ๊ณ์ ํต์ ํ ์ ์์ต๋๋ค.
๋ค์ดํฐ๋ธ Apache Kafka๋ฅผ ํตํด ์คํ
Amazon MSK๋ ๋ค์ดํฐ๋ธ ๋ฒ์ ์ Apache Kafka ๋ฐฐํฌ๋ฅผ ์ง์ํฉ๋๋ค. ๋ฐ๋ผ์ Apache Kafka์ฉ์ผ๋ก ๊ตฌ์ถ๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ๋๊ตฌ๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋ ๋ณ๊ฒฝ ์์ด Amazon MSK์์ ์ฆ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ฐ์ํ๋ ๋ฒ์ ๊ฐ์ฉ์ฑ
Amazon MSK๋ ์ผ๋ฐ์ ์ผ๋ก Apache Kafka์ ์ต์ ๋ฒ์ ์ ๊ณต๊ฐ๋ ๋ ์ง๋ก๋ถํฐ 7์ผ ๋ด์ ์ ๊ณตํฉ๋๋ค.
์ํ ํ ๋ฒ์ ์ ๊ทธ๋ ์ด๋
Amazon MSK ํด๋ฌ์คํฐ์ Apache Kafka ๋ฒ์ ์ ๋ช ๋ฒ์ ํด๋ฆญ๋ง์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ์ฌ ์๋ก์ด Apache Kafka ๋ฒ์ ์ ์ ๊ณต๋๋ ๊ธฐ๋ฅ ๋ฐ ๋ฒ๊ทธ ์์ ์ ํ์ฉํ ์๊ธฐ๋ฅผ ๊ฒฐ์ ํ ์ ์์ต๋๋ค. Amazon MSK๋ ์คํ ์ค์ธ ํด๋ฌ์คํฐ์ ๋ฒ์ ์ ๊ทธ๋ ์ด๋ ๋ฐฐํฌ๋ฅผ ์๋ํํ์ฌ ๋ชจ๋ฒ ์ฌ๋ก์ ๋ฐ๋ผ ๊ณ ๊ฐ์ ํด๋ผ์ด์ธํธ I/O ๊ฐ์ฉ์ฑ์ ์ ์งํฉ๋๋ค.
์์ ๊ด๋ฆฌํ
์ฝ์์์ ํด๋ฆญ ๋ช ๋ฒ์ผ๋ก Apache Kafka์ ๋ฐฐํฌ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ํ๋ ์์ ๊ด๋ฆฌํ Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ๊ฐ๋ฐํ ์ ์์ต๋๋ค. ์ฌ์ฉ์ ์ง์ ๊ตฌ์ฑ์ ํ์ฉํ์ฌ ์์ฒด ํด๋ฌ์คํฐ๋ฅผ ๊ฐ๋ฐํ ์๋ ์์ต๋๋ค. ์ฌ์ฉ์๊ฐ ์ํ๋ ๊ตฌ์ฑ์ ์์ฑํ๋ฉด Amazon MSK์์๋ ์ฌ์ฉ์ Apache Kafka ํด๋ฌ์คํฐ ๋ฐ Apache ZooKeeper ๋ ธ๋์ ์์ ์ ์๋์ผ๋ก ํ๋ก๋น์ ๋ํ๊ณ , ๊ตฌ์ฑํ๊ณ , ๊ด๋ฆฌํฉ๋๋ค.
Apache ZooKeeper ํฌํจ
Apache Kafka๋ฅผ ์คํํ๊ณ ํด๋ฌ์คํฐ ์์ ์ ์กฐ์จํ๋ฉฐ ํด๋ฌ์คํฐ์ ์ํธ ์์ฉํ๋ ๋ฆฌ์์ค์ ์ํ๋ฅผ ์ ์งํ๋ ค๋ฉด Apache ZooKeeper๊ฐ ํ์ํฉ๋๋ค. Amazon MSK๋ ์ฌ์ฉ์๋ฅผ ๋์ ํ์ฌ Apache ZooKeeper ๋ ธ๋๋ฅผ ๊ด๋ฆฌํฉ๋๋ค. ๊ฐ Amazon MSK ํด๋ฌ์คํฐ์๋ Apache Kafka ํด๋ฌ์คํฐ๋ฅผ ์ํ ์ ์ ํ ์์ Apache ZooKeeper ๋ ธ๋๊ฐ ๋ฌด๋ฃ๋ก ํฌํจ๋์ด ์์ต๋๋ค.
๊ณ ๊ฐ์ฉ์ฑ์ด ๊ธฐ๋ณธ๊ฐ
๋ชจ๋ ํด๋ฌ์คํฐ๊ฐ ์ฌ๋ฌ ๊ฐ์ฉ ์์ญ(AZ 3๊ฐ๊ฐ ๊ธฐ๋ณธ๊ฐ)์ ํ๋ก๋น์ ๋๋๊ณ Amazon MSK์ ์๋น์ค ์์ค ๊ณ์ฝ์ผ๋ก ์ง์๋๋ฉฐ ํด๋ฌ์คํฐ ์ธํ๋ผ ๋ฐ Apache Kafka ์ํํธ์จ์ด ๋ด์ ๋ฌธ์ ๋ฅผ ํ์งํ๊ณ ๋์ํ๋ ์๋ํ๋ ์์คํ ์ผ๋ก ์ง์๋ฉ๋๋ค. ๊ตฌ์ฑ ์์ ์ฅ์ ๊ฐ ๋ฐ์ํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ ์ค๋จ ์๊ฐ ์์ด Amazon MSK๊ฐ ์๋์ผ๋ก ๊ตฌ์ฑ ์์๋ฅผ ๊ต์ฒดํฉ๋๋ค. Amazon MSK๋ Apache ZooKeeper ๋ ธ๋์ ๊ฐ์ฉ์ฑ์ ๊ด๋ฆฌํ๋ฏ๋ก ์ฌ์ฉ์๊ฐ ๋ ธ๋๋ฅผ ์์, ์ค์ง ๋๋ ์ง์ ์ก์ธ์คํ ํ์๊ฐ ์์ต๋๋ค. ๋ํ Amazon MSK๋ ํ์์ ๋ฐ๋ผ ์ํํธ์จ์ด ํจ์น๋ฅผ ์๋์ผ๋ก ๋ฐฐํฌํ์ฌ ํด๋ฌ์คํฐ๋ฅผ ์ต์ ์ํ๋ก ์ ์งํ๊ณ ์ํํ ์คํ์ ๋ณด์ฅํฉ๋๋ค.
๋ฐ์ดํฐ ๋ณต์
Amazon MSK๋ ๊ณ ๊ฐ์ฉ์ฑ์ ์ํด ๋ค์ค AZ ๋ณต์ ๋ฅผ ํ์ฉํฉ๋๋ค. ๋ฐ์ดํฐ ๋ณต์ ๋ ์ถ๊ฐ ๋น์ฉ ์์ด ์ ๊ณต๋ฉ๋๋ค.
๋น๊ณต๊ฐ ์ฐ๊ฒฐ
Apache Kafka๋ Amazon MSK๊ฐ ๊ด๋ฆฌํ๋ Amazon VPC์์ ์คํ๋ฉ๋๋ค. ํด๋ฌ์คํฐ๋ ์ฌ์ฉ์๊ฐ ์ง์ ํ ๊ตฌ์ฑ์ ๋ฐ๋ผ Amazon VPC, ์๋ธ๋ท ๋ฐ ๋ณด์ ๊ทธ๋ฃน์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋คํธ์ํฌ ๊ตฌ์ฑ์ ์๋ฒฝํ๊ฒ ํต์ ํ ์ ์์ผ๋ฉฐ, VPC์ IP ์ฃผ์๋ ENI(ํ๋ ฅ์ ๋คํธ์ํฌ ์ธํฐํ์ด์ค)๋ฅผ ํตํด Amazon MSK ๋ฆฌ์์ค๋ก ์ฐ๊ฒฐ๋ฉ๋๋ค.
์ธ๋ถํ๋ ์ก์ธ์ค ์ ์ด
IAM ์ก์ธ์ค ์ ์ด๋ ๋ฌด๋ฃ ๋ณด์ ์ต์ ์ด๋ฉฐ, IAM ์ญํ ๋๋ ์ฌ์ฉ์ ์ ์ฑ ์ ์ฌ์ฉํ์ฌ ์ก์ธ์ค๋ฅผ ์ ์ดํ๋ ํด๋ฌ์คํฐ ์ธ์ฆ ๋ฐ Apache Kafka API ์ธ์ฆ์ ๋จ์ํํฉ๋๋ค. IAM ์ก์ธ์ค ์ ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๊ณ ๊ฐ์ Apache Kafka์ ๋ํ ํด๋ผ์ด์ธํธ ์ธ์ฆ ๋ฐ ์น์ธ์ ์ ์ดํ๊ธฐ ์ํด ๋ ์ด์ ์ผํ์ฑ ์ก์ธ์ค ๊ด๋ฆฌ ์์คํ ์ ๊ตฌ์ถํ์ฌ ์คํํ ํ์๊ฐ ์์ผ๋ฉฐ ํด๋ฌ์คํฐ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ต์ํ์ ๊ถํ์ ์ฌ์ฉํ์ฌ ๋ณดํธ๋ฉ๋๋ค. SASL/SCRAM ๋๋ ์ํธ TLS ์ธ์ฆ์ Apache Kafka ์ก์ธ์ค ์ ์ด ๋ชฉ๋ก(ACL)๊ณผ ํจ๊ป ์ฌ์ฉํ์ฌ ํด๋ผ์ด์ธํธ ์ก์ธ์ค๋ฅผ ์ ์ดํ ์๋ ์์ต๋๋ค.
์ํธํ
Amazon MSK๋ ํน์ ๊ตฌ์ฑ ๋๋ ์๋ ํํฐ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ ์ฅ ์ค ๋ฐ์ดํฐ๋ฅผ ์ํธํํฉ๋๋ค. ๋ชจ๋ ์ ์ฅ ์ค ๋ฐ์ดํฐ๋ ๊ธฐ๋ณธ์ ์ผ๋ก AWS Key Management Service(KMS) CMK(๊ณ ๊ฐ ๋ง์คํฐ ํค)๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ๊ณ ์ ํ CMK๋ฅผ ์ฌ์ฉํ์ฌ ์ํธํ๋ ์ ์์ต๋๋ค. Amazon MSK๋ ๋ธ๋ก์ปค์ ํด๋ผ์ด์ธํธ ์ฌ์ด, ๊ทธ๋ฆฌ๊ณ ํด๋ฌ์คํฐ์์ ๋ธ๋ก์ปค์ ํด๋ผ์ด์ธํธ ์ฌ์ด์์ TLS๋ฅผ ํตํ ์ ์ก ๋ฐ์ดํฐ๋ ์ํธํํฉ๋๋ค.
Amazon MSK๋ฅผ ํตํด ์ผ์ผ 2.50 USD ๋ฏธ๋ง์ ์๊ธ์ผ๋ก ์์ํ ์ ์์ต๋๋ค. ๊ณ ๊ฐ์ ์ผ๋ฐ์ ์ผ๋ก ๋ชจ๋ ๋น์ฉ์ ํฌํจํ์ฌ ์์ง๋ GB๋น 0.05 USD ๋ฐ 0.07 USD๋ฅผ ์ง๋ถํฉ๋๋ค. ์ด๋ ๋ค๋ฅธ ๊ด๋ฆฌํ ๊ณต๊ธ์ ์๊ธ์ 1/13์ ํด๋นํฉ๋๋ค. ํ์ฌ ์๊ธ์ ํ์ธํ๋ ค๋ฉด Amazon MSK ์๊ธ ํ์ด์ง๋ก ์ด๋ํ๊ณ Amazon MSK ํด๋ฌ์คํฐ์ ํฌ๊ธฐ๋ฅผ ์ ์ ํ๊ฒ ์กฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๋ ค๋ฉด Amazon MSK ๋ชจ๋ฒ ์ฌ๋ก ํ์ด์ง๋ก ์ด๋ํ์ธ์.
Amazon MSK์์ ์ ๊ณต๋๋ AWS ํตํฉ์ ๋ฒ์์ ๊น์ด๋ฅผ ๋ฐ๋ผ์ฌ ์ ์๋ ๊ณต๊ธ์๋ ์์ต๋๋ค. ์ด๋ฌํ ํตํฉ์๋ ๋ค์์ด ํฌํจ๋ฉ๋๋ค.
Apache Kafka ๋ฐ ์๋น์ค ์์ค API ์ก์ธ์ค ์ ์ด๋ฅผ ์ํ AWS IAM
์์ ๊ด๋ฆฌํ Apache Flink ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ์ฌ Apache Kafka ๋ด์ ์คํธ๋ฆฌ๋ฐ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ Amazon Kinesis Data Analytics
์คํค๋ง๋ฅผ ์ค์์์ ์ ์ดํ๊ณ ๋ณ๊ฒฝํ๋ AWS Glue ์คํค๋ง ๋ ์ง์คํธ๋ฆฌ
IoT ์ด๋ฒคํธ๋ฅผ MSK๋ก ์คํธ๋ฆฌ๋ฐํ๋ AWS IoT
๋ณ๊ฒฝ ๋ฐ์ดํฐ ์บก์ฒ ๋ฐ ๋ถ์์ ์ํ AWS DMS
ํ๋ผ์ด๋น ํด๋ผ์ด์ธํธ ์ฐ๊ฒฐ ๋ฐ ๋คํธ์ํฌ ๊ฒฉ๋ฆฌ๋ฅผ ์ํ AWS VPC
์ ํด ์ ์ํธํ๋ฅผ ์ํ AWS KMS
์ํธ TLS ํด๋ผ์ด์ธํธ ์ธ์ฆ์ ์ํ AWS Certificate Manager ํ๋ผ์ด๋น CA
SASL/SCRAM ๋ณด์ ์ ๋ณด์ ์์ ํ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ๋ฅผ ์ํ AWS Secrets Manager
Amazon MSK๋ฅผ ์ฝ๋๋ก ๋ฐฐํฌํ๋ AWS CloudFormation
ํด๋ฌ์คํฐ, ๋ธ๋ก์ปค, ์ฃผ์ , ์๋น์ ๋ฐ ํํฐ์ ์์ค ์งํ๋ฅผ ์ํ Amazon CloudWatch
๋ธ๋ก์ปค ๊ท๋ชจ ์กฐ์
Apache Kafka ๋ธ๋ก์ปค์ ํฌ๊ธฐ ๋๋ ํจ๋ฐ๋ฆฌ๋ฅผ ๋ณ๊ฒฝํ์ฌ ๊ฐ๋ ์ค๋จ ์์ด ๋ช ๋ถ ์์ Amazon ํด๋ฌ์คํฐ ๊ท๋ชจ๋ฅผ ์กฐ์ ํ ์ ์์ต๋๋ค. ๋ธ๋ก์ปค ํฌ๊ธฐ ๋๋ ํจ๋ฐ๋ฆฌ๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ Amazon MSK ํด๋ฌ์คํฐ ๊ท๋ชจ๋ฅผ ์กฐ์ ํ ๋ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์ํฌ๋ก๋์ ๋ณํ์ ๋ง์ถฐ MSK ํด๋ฌ์คํฐ์ ์ปดํจํ ์ฉ๋์ ์ ์ฐํ๊ฒ ์กฐ์ ํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด ๋ฐฉ๋ฒ์ Apache Kafka ๊ฐ์ฉ์ฑ์ ์ํฅ์ ์ค ์ ์๋ ํํฐ์ ์ฌํ ๋น์ด ํ์ํ์ง ์๋ค๋ ์ ์์ ์ ํธ๋ฉ๋๋ค. ์ฝ์ ๋๋ ๋ช ๋ น์ค ์ธํฐํ์ด์ค(CLI)๋ฅผ ์ฌ์ฉํ์ฌ ํด๋ฌ์คํฐ๋น ์ต๋ 100๊ฐ์ ๋ธ๋ก์ปค๊น์ง ํด๋ฌ์คํฐ ํฌ๊ธฐ๋ฅผ ํ์ฅํ ์๋ ์์ต๋๋ค. ํด๋ฌ์คํฐ๋น 16๊ฐ ์ด์์ ๋ธ๋ก์ปค ๋๋ ๊ณ์ ๋น 31๊ฐ ์ด์์ ๋ธ๋ก์ปค๊ฐ ํ์ํ ๊ฒฝ์ฐ ํ๋ ์ฆ๊ฐ ์์ฒญ์ ์ ์ถํ์ธ์.
์๋ ํํฐ์ ๊ด๋ฆฌ
Amazon MSK๋ ํํฐ์ ํ ๋น์ ์๋์ผ๋ก ๊ด๋ฆฌํ๋ Apache Kafka์ฉ ์คํ ์์ค ๋๊ตฌ์ธ Cruise Control๊ณผ ํตํฉ๋ฉ๋๋ค.
์คํ ๋ฆฌ์ง ๊ท๋ชจ ์๋ ์กฐ์
AWS Management Console์ด๋ AWS CLI๋ฅผ ์ฌ์ฉํ์ฌ ์คํ ๋ฆฌ์ง ์๊ตฌ ์ฌํญ์ด ๋ณ๊ฒฝ๋๋ฉด ๊ทธ์ ๋ง๊ฒ ๋ธ๋ก์ปค๋ณ๋ก ํ๋ก๋น์ ๋๋๋ ์คํ ๋ฆฌ์ง ์ฉ๋์ ๋งค๋๋ฝ๊ฒ ํ์ฅํ ์ ์์ต๋๋ค. ๋๋, Auto Scaling ์ ์ฑ ์ ๋ง๋ค์ด ์คํธ๋ฆฌ๋ฐ ์๊ตฌ ์ฌํญ์ ๋ง๊ฒ ์คํ ๋ฆฌ์ง๋ฅผ ์๋ ํ์ฅํ ์ ์์ต๋๋ค.
Amazon MSK๋ ๊ธฐ๋ณธ์ ์ผ๋ก Apache Kafka์ ๋ํ ๋ชจ๋ฒ ์ฌ๋ก ํด๋ฌ์คํฐ ๊ตฌ์ฑ์ ๋ฐฐํฌํ๊ณ , ๋ชจ๋ ๋์ ๋ฐ ์ฃผ์ ์์ค ๊ตฌ์ฑ์ ์ง์ํ๋ ๋์์ 30๊ฐ ์ด์์ ์๋ก ๋ค๋ฅธ ํด๋ฌ์คํฐ ๊ตฌ์ฑ์ ํ๋ํ ์ ์๋ ๊ธฐ๋ฅ์ ๊ณ ๊ฐ์๊ฒ ์ ๊ณตํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ์ค๋ช ์์์ ์ฌ์ฉ์ ์ง์ MSK ๊ตฌ์ฑ์ ์ฐธ์กฐํ์ธ์.
๊ธฐ๋ณธ CloudWatch ์งํ
Amazon CloudWatch๋ฅผ ์ฌ์ฉํ์ฌ ์ค์ํ ํด๋ฌ์คํฐ, ๋ธ๋ก์ปค, ์ฃผ์ , ์๋น์ ๋ฐ ํํฐ์ ์์ค ์งํ๋ฅผ ์๊ฐํํ๊ณ ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค.
JMX ๋ฐ Node ์งํ๋ฅผ Prometheus ์๋ฒ๋ก ๋ด๋ณด๋ด๊ธฐ
Prometheus์ ์คํ ๋ชจ๋ํฐ๋ง์ ์ฌ์ฉํ๋ฉด Datadog, Lenses, New Relic, Sumo logic ๋๋ Prometheus ์๋ฒ์ ๊ฐ์ ์๋ฃจ์ ์ ์ฌ์ฉํ์ฌ Amazon MSK๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ ๊ธฐ์กด ๋ชจ๋ํฐ๋ง ๋์๋ณด๋๋ฅผ Amazon MSK๋ก ์์ฝ๊ฒ ๋ง์ด๊ทธ๋ ์ด์ ํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ ์ค๋ช ์์์ Prometheus๋ฅผ ์ฌ์ฉํ ์คํ ๋ชจ๋ํฐ๋ง์ ์ฐธ์กฐํ์ธ์.