์ต๊ทผ libcloud๋ฅผ ์จ๋ณผ ์ผ์ด ์์๋ค. ๋ง์ด ์จ๋ณด์ง๋ ์์์ง๋ง ์ฌ๋ฌ๋ชจ๋ก ์ข์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ผ๋ ์๊ฐ์ด ๋ค์ด ์๊ฐํด๋ณธ๋ค.
Libcloud๋ boto์ ๋น์ทํ ๊ธฐ๋ฅ์ ๊ณต์ ํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ธ๋ฐ, boto๊ฐ Amazon Web Services API์ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ผ๋ฉด, libcloud๋ AWS ์ธ์๋ Microsoft Azure, Google Cloud Compute ๋ฑ ๋ค์ํ ์
์ฒด์ ์๋น์ค๋ ํจ๊ป ์ง์ํ๋ค๋ ์ ์ด ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ด๋ผ๊ณ ํ ์ ์๋ค. ์ด์ฐจํผ ๊ฐ ์
์ฒด๋ง๋ค ๋์๋๋ ๊ฐ์ ์ฉ๋์ ์๋น์ค๊ฐ ์๋๋ฐ, ํฌ๊ฒ EC2 ๊ฐ์ ๊ฐ์ํ ์ธ์คํด์ค ์๋น์ค (๊ทธ์ผ๋ง๋ก ํด๋ผ์ฐ๋์ primitive๋ผ๊ณ ํ ์ ์๋โฆ), EBS์ ๊ฐ์ด ๊ฑฐ๊ธฐ์ ์ธ ๋ธ๋ก ์คํ ๋ฆฌ์ง ์๋น์ค, S3์ ๊ฐ์ ์ค๋ธ์ ํธ ์คํ ๋ฆฌ์ง ์๋น์ค, ELB ๊ฐ์ ๋ก๋ ๋ฐธ๋ฐ์ ์๋น์ค, Route 53 ๊ฐ์ DNS ์๋น์ค ๋ฑ์ด๋ค.
๊ทธ๋์ ๊ฐ๋ น libcloud๋ฅผ ์ด์ฉํด์ EC2 ์ธ์คํด์ค๋ฅผ ์๋ก ๋ง๋ค๊ณ , ๋ง๋ค์๋ ์ธ์คํด์ค๋ฅผ ์ญ์ ํ๊ณ , S3์ ์ด๋ฏธ์ง๋ฅผ ์ฌ๋ฆฌ๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ง๊ณ ๋์, ๋งจ ์์ชฝ์์ ๋๋ผ์ด๋ฒ ์ข
๋ฅ๋ง AWS์์ ๋ค๋ฅธ ์
์ฒด๋ก ๋ฐ๊พธ๋ฉด ๊ทธ๋๋ก ๋์๊ฐ๋ค. (์ค์ ๋ก๋ ๊ฐ ํ๋ก๋ฐ์ด๋๋ง๋ค ํ์ฅํ๋ ๊ธฐ๋ฅ์ด ์กด์ฌํ๋๋ฐ, ๋ค์ด๋ฐ ์ปจ๋ฒค์
์ ๋ฐ๋ผ ๊ทธ๋ฐ ํจ์๋ ์ธ์๋ช
์ ์์ ex_๊ฐ ๋ถ๋๋ค.)
Libcloud๋ ํ์ฌ 25 ์ข
๋ฅ ์ด์์ ๋๋ผ์ด๋ฒ๋ฅผ ์ ๊ณตํ๊ณ ์๊ณ , ์ด ์์๋ ์ฌ์ง์ด KT ucloud๊น์ง ํฌํจ๋์ด ์๋ค. ๊ฐ๋๋ช
์จ๊ฐ ๋๋ผ์ด๋ฒ ์ฝ๋๋ฅผ ๊ธฐ์ฌํ๋ค๊ณ ํ๋ค. ๋๋ ์์ผ๋ก๋ ์ธ ์ผ์ด ์๊ฒ ์ง๋งโฆ ์ ๋ต์ ์ผ๋ก ๋์ด ์์ ๋ ucloud๋ฅผ ์ฐ๋ค๊ฐ ์ฌ์
์ด ๋ฒ์ฐฝํ์ฌ ๋์ ๋ง์ด ๋ฒ๋ฉด AWS ๋ฑ์ผ๋ก ์ฎ๊ธธ ๋ ์ ์ฉํ๊ฒ ์ธ ์ ์์ ๊ฒ์ด๋ค. ใ
ใ
ใ
์ด ์ธ์๋ boto๋ณด๋ค libcloud๊ฐ ๋ ๋์ ์ ์ด ๋ง๋ค.
API๊ฐ boto๋ณด๋ค ๋ ๊น๋ํ๊ณ ์ฐ๊ธฐ ์ฝ๊ฒ ๋์ด ์๋ค. ์ฌ๋ฌ ํด๋ผ์ฐ๋ ์๋น์ค๋ฅผ ์ค๊ฐ ์ผ์ด ์์ด, ๊ทธ๋ฅ AWS๋ง ์ด๋ค๊ณ ํด๋ boto์ ๋์์ผ๋ก์ ๋์์ง ์๋ค.
Python 2์์๋ง ๋์๊ฐ๋ boto์ ๋ฌ๋ฆฌ Python 3์์๋ ์์ฃผ ์ ๋์๊ฐ๋ค.
๋๋ฏธ ๋๋ผ์ด๋ฒ๋ฅผ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ ๋จ์ ํ
์คํธ ์ง๊ธฐ๊ฐ ํจ์ฌ ์ฝ๋ค. boto๋ฅผ ์ฐ๋ฉด mock์ ๋ง๋ค๊ฑฐ๋, ์์ libcloud๊ฐ ํด์ฃผ๋ ๊ทธ๋ฐ ๋ ์ด์ด๋ง์ ๋ด ์ ํ๋ฆฌ์ผ์ด์
์ฝ๋์์ ๋ง๋ค์ด์ผ ํ๋๋ฐ ์ด๋ฌ๋ค๊ฐ ํ๊ณ ์ ํ๋ ๋ฌธ์ ์ ์ง์ค์ ๋ชปํ๊ฒ ๋๋ค.
๋ฌผ๋ก ์์ง boto๋ฅผ ์จ์ผ๋ง ํ๋ ์ด์ ๋ ์๋ค. ๊ฐ๋ น SQS ๊ฐ์ด AWS์์ ์ ๊ณตํ์ง๋ง ๋ค๋ฅธ ์
์ฒด๋ค์์๋ ์ผ๋ฐ์ ์ผ๋ก ์ ๊ณตํ์ง ์๋ ์ข
๋ฅ์ ์ ํ๊ตฐ์ libcloud๋ก ์ปค๋ฒ๊ฐ ์๋๋ค. ๊ทธ๋ฐ ๊ฒ๋ค์ boto๋ฅผ ์ด์ฉํด์ ์ฐ๊ณ ์์๋ค๋ฉด ๋น์ฅ libcloud๋ฅผ ์ฐ๊ธฐ์๋ ๊ธฐ๋ฅ์ด ๋ถ์กฑํ ๊ฒ์ด๋ค.