์ปจํ
์ด๋๋ Linux ์ด์ ์ฒด์ ์ฌ์ฉ์ ๊ณต๊ฐ์ ๊ฒฝ๋ ๋ฒ์ ์
๋๋ค. ์ค์ ๋ก๋ ์ต์ํ์ ๊ณต๊ฐ์
๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ ์ฌ์ ํ ๋ณธ๊ฒฉ์ ์ธ ์ด์ ์ฒด์ ์ด๋ฏ๋ก ์ด ์ปจํ
์ด๋ ์์ฒด์ ํ์ง์ ๋ณธ๊ฒฉ์ ์ธ ์ด์ ์ฒด์ ๋งํผ ์ค์ํฉ๋๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ค๋ซ๋์ ์ ์์ ํด์์ต๋๋ค.
ํ์ง๋ง ์ด์ ๋ชจ๋ ๊ฒ์ด ๋ฐ๋์์ด์
Red Hat UBI(Universal Base Image) ์ถ์๋ฅผ ํตํด ์ด์ ์๋ธ์คํฌ๋ฆฝ์
์ฌ๋ถ์ ๊ด๊ณ์์ด ๊ณต์ Red Hat ์ปจํ
์ด๋ ์ด๋ฏธ์ง์์ ๊ธฐ๋ํ๋ ์์ ์ฑ, ๋ณด์, ์ฑ๋ฅ์ ์ป์ ์ ์์ต๋๋ค. ์ด๋ UBI์์ ์ปจํ
์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ตฌ์ถํ๊ณ ์ด๋ฅผ ์ํ๋ ์ปจํ
์ด๋ ๋ ์ง์คํธ๋ฆฌ์ ๋ฐฐ์นํ๊ณ ์ ์ธ๊ณ์ ๊ณต์ ํ ์ ์์์ ์๋ฏธํฉ๋๋ค. Red Hat Universal Base Image๋ฅผ ์ฌ์ฉํ๋ฉด ์ํ๋ ๋ชจ๋ ํ๊ฒฝ์์ ์ปจํ
์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ตฌ์ถ, ๊ณต์ , ํ์
ํ ์ ์์ต๋๋ค.
UBI๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฑฐ์ ๋ชจ๋ ์ธํ๋ผ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒ์ํ๊ณ ์คํํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ Red Hat OpenShift ๋ฐ Red Hat Enterprise Linux์ ๊ฐ์ Red Hat ํ๋ซํผ์์ ์คํํ๋ฉด ์ถ๊ฐ ํํ(๋ ๋ง์ ๊ณจ๋!)์ ์ป์ ์ ์์ต๋๋ค. UBI์ ๋ํด ๋ ์์ธํ ์ค๋ช ํ๊ธฐ ์ ์ RHEL ๊ตฌ๋ ์ด ํ์ํ ์ด์ ์ ๋ํ ๊ฐ๋จํ FAQ๋ฅผ ์ ๊ณตํ๊ฒ ์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด RHEL/OpenShift ํ๋ซํผ์์ UBI ์ด๋ฏธ์ง๋ฅผ ์คํํ๋ฉด ์ด๋ป๊ฒ ๋ ๊น์?
์ด์ ๋ง์ผํ ์ ๋ง์กฑํ์ผ๋ UBI์ ๋ํด ์ข ๋ ์์ธํ ์ด์ผ๊ธฐํด ๋ณด๊ฒ ์ต๋๋ค.
UBI๋ฅผ ์ฌ์ฉํ๋ ์ด์
UBI๊ฐ ๊ทํ์๊ฒ ๋์์ด ๋ ๊ฒ์ด๋ผ๋ ์ฌ์ค์ ์ด๋ป๊ฒ ์๊ฐํด์ผ ํ ๊น์?
- ๋์ ๊ฐ๋ฐ์ ์ด๋ค ํ๊ฒฝ์์๋ ๋ฐฐํฌ ๋ฐ ์คํํ ์ ์๋ ์ปจํ ์ด๋ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๊ณ ์ถ์ต๋๋ค.
- ๋ด ํ ์ด์ ์ํฐํ๋ผ์ด์ฆ๊ธ ๋ผ์ดํ์ฌ์ดํด๋ก ์ง์๋๋ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ํจ
- ๋์ ๊ฑด์ถ๊ฐ ์ ์ํ๊ณ ์ถ๋ค
์ฟ ๋ฒ๋คํฐ์ค ์คํผ๋ ์ดํฐ ๋ด ๊ณ ๊ฐ/์ต์ข ์ฌ์ฉ์์๊ฒ - ๋์ ๊ณ ๊ฐ ์ ์ฒด Red Hat ํ๊ฒฝ์ ๋ํ ์ํฐํ๋ผ์ด์ฆ๊ธ ์ง์์ผ๋ก ์ธํด ํฐ ์ถฉ๊ฒฉ์ ๋ฐ๊ณ ์ถ์ง ์์ต๋๋ค.
- ๋์ ์ง์ญ ์ฌํ ๋ง ๊ทธ๋๋ก ์ด๋์๋ ์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ณต์ , ์คํ, ๊ฒ์ํ๊ณ ์ถ์ดํจ
์๋๋ฆฌ์ค ์ค ํ๋๋ผ๋ ์ ํฉํ๋ค๋ฉด ๋ฐ๋์ UBI๋ฅผ ์ดํด๋ด์ผ ํฉ๋๋ค.
๋จ์ํ ๊ธฐ๋ณธ ์ด๋ฏธ์ง ๊ทธ ์ด์
UBI๋ ๋ณธ๊ฒฉ์ ์ธ OS๋ณด๋ค ์์ง๋ง UBI์๋ ์ธ ๊ฐ์ง ์ค์ํ ์ฌํญ์ด ์์ต๋๋ค.
- ์ธ ๊ฐ์ง ๊ธฐ๋ณธ ์ด๋ฏธ์ง ์ธํธ(ubi, ubi-minimal, ubi-init)
- ๋ค์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(nodejs, ruby, python, php, perl ๋ฑ)๋ฅผ ์ํด ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ง ๋ฐํ์ ํ๊ฒฝ์ ๊ฐ์ถ ์ด๋ฏธ์ง
- ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ์ข ์์ฑ์ ๊ฐ๋ YUM ์ ์ฅ์์ ๊ด๋ จ ํจํค์ง ์ธํธ
UBI๋ ์ปจํ ์ด๋์์ ๊ฐ๋ฐ ๋ฐ ์ ๊ณต๋๋ ํด๋ผ์ฐ๋ ๋ค์ดํฐ๋ธ ๋ฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ก์ต๋๋ค. UBI์ ๋ชจ๋ ์ฝํ ์ธ ๋ RHEL์ ํ์ ์งํฉ์ ๋๋ค. UBI์ ๋ชจ๋ ํจํค์ง๋ RHEL ์ฑ๋์ ํตํด ์ ๊ณต๋๋ฉฐ OpenShift ๋ฐ RHEL๊ณผ ๊ฐ์ Red Hat ์ง์ ํ๋ซํผ์์ ์คํ๋ ๋ RHEL๊ณผ ์ ์ฌํ๊ฒ ์ง์๋ฉ๋๋ค.
์ปจํ ์ด๋์ ๋ํ ๊ณ ํ์ง ์ง์์ ๋ณด์ฅํ๋ ค๋ฉด ์์ง๋์ด, ๋ณด์ ์ ๋ฌธ๊ฐ ๋ฐ ๊ธฐํ ์ถ๊ฐ ๋ฆฌ์์ค์ ๋ง์ ๋ ธ๋ ฅ์ด ํ์ํฉ๋๋ค. ์ด๋ฅผ ์ํด์๋ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ํ ์คํธํ๋ ๊ฒ๋ฟ๋ง ์๋๋ผ ์ง์๋๋ ํธ์คํธ์์์ ๋์์ ๋ถ์ํ๋ ๊ฒ๋ ํ์ํฉ๋๋ค.
์ ๊ทธ๋ ์ด๋ ๋ถ๋ด์ ๋๊ธฐ ์ํด Red Hat์ ์๋ฅผ ๋ค์ด UBI 7์ด RHEL 8 ํธ์คํธ์์ ์คํ๋๊ณ UBI 8์ด RHEL 7 ํธ์คํธ์์ ์คํ๋ ์ ์๋๋ก ์ ๊ทน์ ์ผ๋ก ๊ฐ๋ฐ ๋ฐ ์ง์ํ๊ณ ์์ต๋๋ค. ํ๋ก์ธ์ค ์ค์ ํ์ํ๋ค๋ ์ ์ ์ผ๋์ ๋์ธ์. ์๋ฅผ ๋ค์ด ์ปจํ ์ด๋ ์ด๋ฏธ์ง๋ ์ฌ์ฉ๋ ํธ์คํธ์ ํ๋ซํผ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๋ค. ์ด์ ์ด ๋ชจ๋ ๊ฒ์ ๋ ๊ฐ์ ๋ ๋ฆฝ์ ์ธ ํ๋ก์ ํธ๋ก ๋๋ ์ ์์ต๋๋ค.
์ธ ๊ฐ์ง ๊ธฐ๋ณธ ์ด๋ฏธ์ง
์ต์ โ ๋ชจ๋ ์ข ์์ฑ์ด ์๋ ์ ํ๋ฆฌ์ผ์ด์ (Python, Node.js, .NET ๋ฑ)์ ์ํด ์ค๊ณ๋์์ต๋๋ค.
- ์ฌ์ ์ค์น๋ ์ต์ ์ฝํ ์ธ ์ธํธ
- suid ์คํ ํ์ผ ์์
- ์ต์ํ์ ํจํค์ง ๊ด๋ฆฌ์ ๋๊ตฌ(์ค์น, ์ ๋ฐ์ดํธ ๋ฐ ์ ๊ฑฐ)
ํ๋ซํผ โ RHEL์์ ์คํ๋๋ ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ฉ
- OpenSSL ํตํฉ ์ํธํ ์คํ
- ์ ์ฒด YUM ์คํ
- ์ ์ฉํ ๊ธฐ๋ณธ OS ์ ํธ๋ฆฌํฐ ํฌํจ(tar, gzip, vi ๋ฑ)
๋ค์ค ์๋น์ค โ ํ๋์ ์ปจํ ์ด๋์์ ์ฌ๋ฌ ์๋น์ค๋ฅผ ์ฝ๊ฒ ์คํํ ์ ์์ต๋๋ค.
- ์์ ์ systemd๋ฅผ ์คํํ๋๋ก ๊ตฌ์ฑ๋จ
- ๊ตฌ์ถ ๋จ๊ณ์์ ์๋น์ค๋ฅผ ํ์ฑํํ๋ ๊ธฐ๋ฅ
๋ฏธ๋ฆฌ ๋ง๋ค์ด์ง ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ๋ฐํ์ ํ๊ฒฝ์ ๊ฐ์ถ ์ปจํ ์ด๋ ์ด๋ฏธ์ง
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ์ง์์ ์ค์นํ ์ ์๋ ๊ธฐ๋ณธ ์ด๋ฏธ์ง ์ธ์๋ UBI์๋ ๋ค์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๋ํด ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ง ๋ฐํ์ ํ๊ฒฝ์ด ํฌํจ๋ ์ฌ์ ๊ตฌ์ถ๋ ์ด๋ฏธ์ง๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ๋ง์ ๊ฐ๋ฐ์๋ ๊ฐ๋จํ ์ด๋ฏธ์ง๋ฅผ ์ก๊ณ ๊ฐ๋ฐ ์ค์ธ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ ์์ํ ์ ์์ต๋๋ค.
UBI ์ถ์์ ํจ๊ป Red Hat์ RHEL 7 ๋ฐ RHEL 8 ๊ธฐ๋ฐ์ ๋ ๊ฐ์ง ์ด๋ฏธ์ง ์ธํธ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ค์ ๊ฐ๊ฐ Red Hat Software Collections(RHEL 7) ๋ฐ Application Streams(RHEL 8)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ต๋๋ค. ์ด๋ฌํ ๋ฐํ์์ ์ต์ ์ํ๋ก ์ ์ง๋๋ฉฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฐ๊ฐ ์ต๋ XNUMX๊ฐ์ ์ ๋ฐ์ดํธ๋ฅผ ์์ ํ๋ฏ๋ก ํญ์ ๊ฐ์ฅ ์์ ์ ์ธ ์ต์ ๋ฒ์ ์ ์คํํ ์ ์์ต๋๋ค.
UBI 7 ์ปจํ ์ด๋ ์ด๋ฏธ์ง ๋ชฉ๋ก์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
UBI 8์ ์ปจํ ์ด๋ ์ด๋ฏธ์ง ๋ชฉ๋ก์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ด๋ จ ํจํค์ง
๊ธฐ์ฑ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์ ๋ง ๋งค์ฐ ํธ๋ฆฌํฉ๋๋ค. Red Hat์ ์ด๋ฅผ ์ต์ ์ํ๋ก ์ ์งํ๊ณ RHEL์ ์ ๋ฒ์ ์ด ์ถ์๋ ๋๋ฟ๋ง ์๋๋ผ ์
๋ฐ์ดํธ ์ ์ฑ
์ ๋ฐ๋ผ ์ค์ํ CVE ์
๋ฐ์ดํธ๊ฐ ์ ๊ณต๋ ๋ ์
๋ฐ์ดํธํฉ๋๋ค.
๊ทธ๋ฌ๋ ๋๋ก๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ๋ ๊ฐ์๊ธฐ ์ถ๊ฐ ํจํค์ง๊ฐ ํ์ํ ์๋ ์์ต๋๋ค. ๋๋ ๋๋ก๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ํ๋๋ก ํ๊ธฐ ์ํด ํ๋ ๋๋ ๋ค๋ฅธ ํจํค์ง๋ฅผ ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ UBI ์ด๋ฏธ์ง์๋ yum์ ํตํด ์ฌ์ฉํ ์ ์๊ณ ๋น ๋ฅด๊ณ ๊ฐ์ฉ์ฑ์ด ๋์ ์ฝํ ์ธ ์ ๋ฌ ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐํฌ๋๋ RPM ์ธํธ๊ฐ ํจ๊ป ์ ๊ณต๋ฉ๋๋ค(ํจํค์ง๊ฐ ์์ต๋๋ค!). ์ค์ํ ๋ฆด๋ฆฌ์ค ์์ ์ CI/CD์์ yum ์ ๋ฐ์ดํธ๋ฅผ ์คํํ๋ฉด ์ ๋๋ก ์๋ํ ๊ฒ์ด๋ผ๊ณ ํ์ ํ ์ ์์ต๋๋ค.
RHEL์ ๊ธฐ์ด์ ๋๋ค
์ฐ๋ฆฌ๋ RHEL์ด ๋ชจ๋ ๊ฒ์ ๊ธฐ์ด๋ผ๋ ์ ์ ๋ฐ๋ณตํด์ ๋ฐ๋ณตํฉ๋๋ค. Red Hat์ ์ด๋ ํ์ด ๊ธฐ๋ณธ ์ด๋ฏธ์ง ์์ฑ ์์ ์ ๋ด๋นํ๋์ง ์๊ณ ๊ณ์ญ๋๊น? ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- glibc ๋ฐ OpenSSL๊ณผ ๊ฐ์ ํต์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ Python ๋ฐ Ruby์ ๊ฐ์ ์ธ์ด ๋ฐํ์์ด ์ปจํ ์ด๋์์ ์ฌ์ฉ๋ ๋ ์ผ๊ด๋ ์ฑ๋ฅ์ ์ ๊ณตํ๊ณ ์ํฌ๋ก๋๋ฅผ ์์ ์ ์ผ๋ก ์คํํ๋๋ก ๋ณด์ฅํ๋ ์์ง๋์ด๋ง ํ์ ๋๋ค.
- ์ ํ ๋ณด์ํ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ์ธ์ด ํ๊ฒฝ์ ์ค๋ฅ ๋ฐ ๋ณด์ ๋ฌธ์ ๋ฅผ ์ ์์ ์์ ํ๋ ์ผ์ ๋ด๋นํ๋ฉฐ, ์์
ํจ์จ์ฑ์ ํน์ ์ง์๋ฅผ ์ฌ์ฉํ์ฌ ํ๊ฐ๋ฉ๋๋ค.
์ปจํ ์ด๋ ์ํ ์ง์ ๋ฑ๊ธ . - ์ ํ ๊ด๋ฆฌ์์ ์์ง๋์ด๋ก ๊ตฌ์ฑ๋ ํ์ ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ ๊ธด ์ ํ ์๋ช ์ฃผ๊ธฐ๋ฅผ ๋ณด์ฅํ๋ ๋ฐ ์ ๋ ํ์ฌ ํฌ์์ ๋ํ ํ์ ์ ์ค๋๋ค.
Red Hat Enterprise Linux๋ ์ปจํ ์ด๋๋ฅผ ์ํ ๋ฐ์ด๋ ํธ์คํธ์ ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค์ง๋ง, ๋ง์ ๊ฐ๋ฐ์๋ ๋ค์ํ ํ์์ผ๋ก ์์คํ ์ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ์ ๋์ด ํ๊ฐํฉ๋๋ค. ๊ทธ ์ค ์ผ๋ถ๋ Linux ์์คํ ์์ ์ง์๋๋ ์ฌ์ฉ ์ฌ๋ก์ ์ํ์ง ์์ ์ ์์ต๋๋ค. ์ด๊ฒ์ด ๋ณดํธ์ ์ธ UBI ์ด๋ฏธ์ง๊ฐ ๊ตฌ์ถ๋๋ ๊ณณ์ ๋๋ค.
์ง๊ธ ์ด ๋จ๊ณ์์๋ ๊ฐ๋จํ ์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ ์์ํ๊ธฐ ์ํ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฐพ๊ณ ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์๋๋ฉด ์ด๋ฏธ ๋ฏธ๋์ ๋ ๊ฐ๊น์์ง๊ณ OpenShift์์ ์คํ๋๋ Operator๋ฅผ ๊ตฌ์ถํ๊ณ ์ธ์ฆํ์ฌ ์ปจํ ์ด๋ ์์ง์์ ์คํ๋๋ ๋ ๋ฆฝํ ์ปจํ ์ด๋์์ ํด๋ผ์ฐ๋ ๋ค์ดํฐ๋ธ ๊ธฐ๋ก์ผ๋ก ์ ํํ๊ณ ์์ต๋๊น? ์ด์จ๋ UBI๋ ์ด์ ๋ํ ํ๋ฅญํ ๊ธฐ๋ฐ์ ์ ๊ณตํ ๊ฒ์ ๋๋ค.
์ปจํ
์ด๋์๋ ์๋ก์ด ํจํค์ง ํ์์ ๊ฒฝ๋ ๋ฒ์ ์ด์ ์ฒด์ ์ฌ์ฉ์ ๊ณต๊ฐ์ด ํฌํจ๋์ด ์์ต๋๋ค. UBI ์ด๋ฏธ์ง ์ถ์๋ ์ปจํ
์ด๋ํ๋ ๊ฐ๋ฐ์ ์ํ ์๋ก์ด ์
๊ณ ํ์ค์ ์ค์ ํ์ฌ ๋ชจ๋ ์ฌ์ฉ์, ๋
๋ฆฝ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋ฐ ์คํ ์์ค ์ปค๋ฎค๋ํฐ๊ฐ ์ํฐํ๋ผ์ด์ฆ๊ธ ์ปจํ
์ด๋๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ํด์ค๋๋ค. ํนํ ์ํํธ์จ์ด ๊ฐ๋ฐ์๋ ๋ค์์ ํฌํจํ์ฌ ์ปจํ
์ด๋ํ๋ ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ํด ์
์ฆ๋ ๋จ์ผ ๊ธฐ๋ฐ์ ์ฌ์ฉํ์ฌ ์ ํ์ ํ์คํํ ์ ์์ต๋๋ค.
์ด๋ฏธ์ง ์์ ์ ์์ํ๋ ๋ฐฉ๋ฒ
๊ฐ๋จํ ๋งํด์ ๋งค์ฐ ๊ฐ๋จํฉ๋๋ค. Podman์ RHEL๋ฟ๋ง ์๋๋ผ Fedora, CentOS ๋ฐ ๊ธฐํ ์ฌ๋ฌ Linux ๋ฐฐํฌํ์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฌ๋ฌ๋ถ์ด ํด์ผ ํ ์ผ์ ๋ค์ ์ ์ฅ์ ์ค ํ๋์์ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ๋ ๊ฒ๋ฟ์ ๋๋ค.
UBI 8์ ๊ฒฝ์ฐ:
podman pull registry.access.redhat.com/ubi8/ubi
podman pull registry.access.redhat.com/ubi8/ubi-minimal
podman pull registry.access.redhat.com/ubi8/ubi-init
UBI 7์ ๊ฒฝ์ฐ:
podman pull registry.access.redhat.com/ubi7/ubi
podman pull registry.access.redhat.com/ubi7/ubi-minimal
podman pull registry.access.redhat.com/ubi7/ubi-init
์, ์ ์ฒด Universal Base ์ด๋ฏธ์ง ๊ฐ์ด๋๋ฅผ ํ์ธํ์ธ์.
์ถ์ฒ : habr.com