SUSE Linux Enterprise๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ALP ํ”Œ๋žซํผ์˜ ์„ธ ๋ฒˆ์งธ ํ”„๋กœํ† ํƒ€์ž…

SUSE๋Š” ALP "Piz Bernina"(Adaptable Linux Platform)์˜ ์„ธ ๋ฒˆ์งธ ํ”„๋กœํ† ํƒ€์ž…์„ ๋ฐœํ‘œํ–ˆ์œผ๋ฉฐ, SUSE Linux Enterprise ๋ฐฐํฌํŒ ๊ฐœ๋ฐœ์˜ ์—ฐ์†์œผ๋กœ ์ž๋ฆฌ ์žก์•˜์Šต๋‹ˆ๋‹ค. ALP์˜ ์ฃผ์š” ์ฐจ์ด์ ์€ ๋ฐฐํฌํŒ์˜ ํ•ต์‹ฌ ๊ธฐ๋ฐ˜์„ ํ•˜๋“œ์›จ์–ด ์œ„์—์„œ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ œ๊ฑฐ๋œ "ํ˜ธ์ŠคํŠธ OS"์™€ ์ปจํ…Œ์ด๋„ˆ ๋ฐ ๊ฐ€์ƒ ๋จธ์‹ ์—์„œ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ง€์› ๊ณ„์ธต์˜ ๋‘ ๋ถ€๋ถ„์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ALP๋Š” ์ดˆ๊ธฐ์— ๊ฐœ๋ฐฉํ˜• ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ๋˜์—ˆ์œผ๋ฉฐ ์ค‘๊ฐ„ ๋นŒ๋“œ ๋ฐ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์ด ๊ณต๊ฐœ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ธ ๋ฒˆ์งธ ํ”„๋กœํ† ํƒ€์ž…์—๋Š” ๋‘ ๊ฐœ์˜ ๊ฐœ๋ณ„ ๋ถ„๊ธฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ํ˜„์žฌ ํ˜•ํƒœ์—์„œ๋Š” ์ฑ„์šฐ๊ธฐ ์ธก๋ฉด์—์„œ ๋น„์Šทํ•˜์ง€๋งŒ ์•ž์œผ๋กœ๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์‘์šฉ ๋ถ„์•ผ๋กœ ๋ฐœ์ „ํ•˜๊ณ  ์ œ๊ณต๋˜๋Š” ์„œ๋น„์Šค๊ฐ€ ๋‹ค๋ฅผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ์„œ๋ฒ„ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘” Bedrock ๋ถ„๊ธฐ์™€ ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ(ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ) ๊ตฌ์ถ• ๋ฐ ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ์‹คํ–‰์„ ์œ„ํ•ด ์„ค๊ณ„๋œ Micro ๋ถ„๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ค€๋น„๋œ ์–ด์…ˆ๋ธ”๋ฆฌ๋Š” x86_64 ์•„ํ‚คํ…์ฒ˜(Bedrock, Micro)์šฉ์œผ๋กœ ์ค€๋น„๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ Aarch64, PPC64le ๋ฐ s390x ์•„ํ‚คํ…์ฒ˜์šฉ ๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ(Bedrock, Micro)๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ALP์˜ ์•„ํ‚คํ…์ฒ˜๋Š” ์žฅ๋น„๋ฅผ ์ง€์›ํ•˜๊ณ  ์ œ์–ดํ•˜๋Š” โ€‹โ€‹๋ฐ ํ•„์š”ํ•œ ์ตœ์†Œํ•œ์˜ ํ™˜๊ฒฝ์ธ "ํ˜ธ์ŠคํŠธ OS"์˜ ๊ฐœ๋ฐœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋ฐ ์‚ฌ์šฉ์ž ๊ณต๊ฐ„ ๊ตฌ์„ฑ ์š”์†Œ๋Š” ํ˜ผํ•ฉ ํ™˜๊ฒฝ์ด ์•„๋‹ˆ๋ผ ๋ณ„๋„์˜ ์ปจํ…Œ์ด๋„ˆ ๋˜๋Š” "ํ˜ธ์ŠคํŠธ OS" ์œ„์—์„œ ์‹คํ–‰๋˜๊ณ  ์„œ๋กœ ๊ฒฉ๋ฆฌ๋œ ๊ฐ€์ƒ ๋จธ์‹ ์—์„œ ์‹คํ–‰๋˜๋„๋ก ์ œ์•ˆ๋ฉ๋‹ˆ๋‹ค. ์ด ์กฐ์ง์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋Š” ํ•˜์œ„ ์ˆ˜์ค€ ์‹œ์Šคํ…œ ํ™˜๊ฒฝ ๋ฐ ํ•˜๋“œ์›จ์–ด์—์„œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋ฐ ์ถ”์ƒ ์›Œํฌํ”Œ๋กœ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

MicroOS ํ”„๋กœ์ ํŠธ์˜ ๊ฐœ๋ฐœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” SLE Micro ์ œํ’ˆ์€ "ํ˜ธ์ŠคํŠธ OS"์˜ ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ค‘์•™ ์ง‘์ค‘์‹ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด Salt(์‚ฌ์ „ ์„ค์น˜) ๋ฐ Ansible(์„ ํƒ ์‚ฌํ•ญ) ๊ตฌ์„ฑ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. Podman ๋ฐ K3s(Kubernetes) ํˆดํ‚ท์€ ๊ฒฉ๋ฆฌ๋œ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์‹œ์Šคํ…œ ๊ตฌ์„ฑ ์š”์†Œ์—๋Š” yast2, podman, k3s, ์กฐ์ข…์„, GDM(GNOME Display Manager) ๋ฐ KVM์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ ํ™˜๊ฒฝ์˜ ๊ธฐ๋Šฅ ์ค‘ TPM์— ํ‚ค๋ฅผ ์ €์žฅํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ๊ป˜ ๋””์Šคํฌ ์•”ํ˜ธํ™”(FDE, ์ „์ฒด ๋””์Šคํฌ ์•”ํ˜ธํ™”)์˜ ๊ธฐ๋ณธ ์‚ฌ์šฉ์ด ์–ธ๊ธ‰๋ฉ๋‹ˆ๋‹ค. ๋ฃจํŠธ ํŒŒํ‹ฐ์…˜์€ ์ฝ๊ธฐ ์ „์šฉ ๋ชจ๋“œ๋กœ ๋งˆ์šดํŠธ๋˜๋ฉฐ ์ž‘๋™ ์ค‘์— ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ™˜๊ฒฝ์€ ์›์ž ์—…๋ฐ์ดํŠธ ์„ค์น˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. Fedora ๋ฐ Ubuntu์—์„œ ์‚ฌ์šฉ๋˜๋Š” ostree ๋ฐ ์Šค๋ƒ… ๊ธฐ๋ฐ˜ ์›์ž ์—…๋ฐ์ดํŠธ์™€ ๋‹ฌ๋ฆฌ ALP๋Š” ๋ณ„๋„์˜ ์›์ž ์ด๋ฏธ์ง€๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ์ถ”๊ฐ€ ์ „๋‹ฌ ์ธํ”„๋ผ๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๋Œ€์‹  Btrfs ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ์ผ๋ฐ˜ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž ๋ฐ ์Šค๋ƒ…์ƒท ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ ์ž๋™ ์„ค์น˜๋ฅผ ์œ„ํ•œ ๊ตฌ์„ฑ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“œ๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค(์˜ˆ: ์ค‘์š”ํ•œ ์ทจ์•ฝ์ ์— ๋Œ€ํ•œ ์ˆ˜์ • ์‚ฌํ•ญ๋งŒ ์ž๋™ ์„ค์น˜ํ•˜๋„๋ก ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ์ˆ˜๋™ ์—…๋ฐ์ดํŠธ ์„ค์น˜ ํ™•์ธ์œผ๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ์Œ). ๋ผ์ด๋ธŒ ํŒจ์น˜๋Š” ์ž‘์—…์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ ์ผ์‹œ ์ค‘๋‹จํ•˜์ง€ ์•Š๊ณ  Linux ์ปค๋„์„ ์—…๋ฐ์ดํŠธํ•˜๋„๋ก ์ง€์›๋ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์˜ ์ƒ์กด์„ฑ(์ž๊ฐ€ ์น˜์œ )์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด Btrfs ์Šค๋ƒ…์ƒท์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งˆ์ง€๋ง‰ ์•ˆ์ • ์ƒํƒœ๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค(์—…๋ฐ์ดํŠธ๋ฅผ ์ ์šฉํ•˜๊ฑฐ๋‚˜ ์„ค์ •์„ ๋ณ€๊ฒฝํ•œ ํ›„ ์ด์ƒ์ด ๊ฐ์ง€๋˜๋Š” ๊ฒฝ์šฐ ์‹œ์Šคํ…œ์ด ์ž๋™์œผ๋กœ ์ด์ „ ์ƒํƒœ๋กœ ์ „ํ™˜๋จ).

์ด ํ”Œ๋žซํผ์€ ๋‹ค์ค‘ ๋ฒ„์ „ ์†Œํ”„ํŠธ์›จ์–ด ์Šคํƒ์„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ฒ„์ „์˜ ๋„๊ตฌ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋™์‹œ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ˜ธํ™˜๋˜์ง€ ์•Š๋Š” ์ข…์†์„ฑ์„ ๋ถ„๋ฆฌํ•˜์—ฌ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฒ„์ „์˜ Python, Java ๋ฐ Node.js์— ์˜์กดํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์ข…์†์„ฑ์€ BCI(๊ธฐ๋ณธ ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€) ์„ธํŠธ์˜ ํ˜•ํƒœ๋กœ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ๋‹ค๋ฅธ ํ™˜๊ฒฝ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๊ณ  ์†Œํ”„ํŠธ์›จ์–ด ์Šคํƒ์„ ์ƒ์„ฑ, ์—…๋ฐ์ดํŠธ ๋ฐ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์น˜์—๋Š” D-Installer ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ์‚ฌ์šฉ๋˜๋ฉฐ, ์—ฌ๊ธฐ์„œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋Š” YaST์˜ ๋‚ด๋ถ€ ๊ตฌ์„ฑ ์š”์†Œ์™€ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์œผ๋ฉฐ ์›น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ์„ค์น˜๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํ”„๋ŸฐํŠธ์—”๋“œ๋ฅผ ํฌํ•จํ•˜์—ฌ ๋‹ค์–‘ํ•œ ํ”„๋ŸฐํŠธ์—”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ„๋„์˜ ์ปจํ…Œ์ด๋„ˆ์—์„œ YaST ํด๋ผ์ด์–ธํŠธ(๋ถ€ํŠธ๋กœ๋”, iSCSIClient, Kdump, ๋ฐฉํ™”๋ฒฝ ๋“ฑ)๋ฅผ ์‹คํ–‰ํ•˜๋„๋ก ์ง€์›๋ฉ๋‹ˆ๋‹ค.

์„ธ ๋ฒˆ์งธ ALP ํ”„๋กœํ† ํƒ€์ž…์˜ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • ๊ธฐ๋ฐ€ ์ปดํ“จํŒ…์„ ์œ„ํ•œ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ(Trusted Execution Environment)์„ ์ œ๊ณตํ•˜์—ฌ ๊ฒฉ๋ฆฌ, ์•”ํ˜ธํ™” ๋ฐ ๊ฐ€์ƒ ๋จธ์‹ ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‹คํ–‰ ์ค‘์ธ ์ž‘์—…์˜ ๋ฌด๊ฒฐ์„ฑ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ•˜๋“œ์›จ์–ด ๋ฐ ๋Ÿฐํƒ€์ž„ ์ฆ๋ช…์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ๊ธฐ๋ฐ€ ๊ฐ€์ƒ ๋จธ์‹ (CVM, Confidential Virtual Machine) ์ง€์› ๊ธฐ๋ฐ˜.
  • NeuVector ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ์ง€์›์„ ํ†ตํ•ฉํ•˜์—ฌ ์ปจํ…Œ์ด๋„ˆ์˜ ๋ณด์•ˆ์„ ํ™•์ธํ•˜๊ณ  ์ทจ์•ฝํ•œ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์กด์žฌ๋ฅผ ํ™•์ธํ•˜๋ฉฐ ์•…์˜์ ์ธ ํ™œ๋™์„ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  • x390_86 ๋ฐ aarch64 ์™ธ์— s64x ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ์ฒ˜์Œ ๋ถ€ํŒ…ํ•˜๋Š” ๋™์•ˆ ์•”ํ˜ธ๋ฅผ ์ž…๋ ฅํ•  ํ•„์š” ์—†์ด TPMv2์˜ ํ‚ค ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ ๋‹จ๊ณ„์—์„œ ์ „์ฒด ๋””์Šคํฌ ์•”ํ˜ธํ™”(FDE, ์ „์ฒด ๋””์Šคํฌ ์•”ํ˜ธํ™”)๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ธฐ๋Šฅ. ์ผ๋ฐ˜ ํŒŒํ‹ฐ์…˜๊ณผ LVM(Logical Volume Manager) ํŒŒํ‹ฐ์…˜์˜ ์•”ํ˜ธํ™”๋ฅผ ๋™๋“ฑํ•˜๊ฒŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€