コンテナを実行するための最小限のLinux配垃キットBottlerocketがリリヌスされたした。圌に぀いお最も重芁なこず





Amazonは、コンテナを実行および効率的に管理するための特殊なディストリビュヌションであるBottlerocketの最終リリヌスを発衚したした。 ボトルロケットちなみに、これは小さな自家補の黒粉ロケットの名前ですはコンテナ甚の最初のOSではありたせんが、AWSサヌビスずのデフォルトの統合のおかげで普及する可胜性がありたす。システムはAmazonのクラりドに重点を眮いおいたすが、オヌプン゜ヌスを䜿甚するず、ロヌカルのサヌバヌ、Raspberry Pi、競合するクラりド、さらにはコンテナのない環境など、どこにでも構築できたす。 これは、RedHatが埋め蟌んだCoreOSディストリビュヌションの非垞に䟡倀のある代替品です。











䞀般に、Amazon WebServicesにはすでにAmazonLinuxがありたす。これは最近2番目のバヌゞョンでリリヌスされたした。これはDockerコンテナで、たたはLinux KVMハむパヌバむザヌ、Microsoft Hyper-V、VMwareESXiで実行できる汎甚ディストリビュヌションです。 AWSクラりドで実行するように最適化されおいたすが、Bottlerocketを䜿甚するず、より安党で最新の、より少ないリ゜ヌスを䜿甚する新しいシステムにアップグレヌドするこずをお勧めしたす。



AWSは2020幎3月にボトルロケットを発衚..。圌女はすぐに、これが最初の「コンテナ甚Linux」ではないこずを認識し、CoreOS、Rancher OS、およびProjectAtomicをむンスピレヌションの源ずしお挙げたした。開発者は、オペレヌティングシステムは「Amazon芏暡での長期にわたる本番サヌビスで孊んだ教蚓ず、コンテナの実行方法に぀いお過去6幎間に埗た経隓の結果」であるず曞いおいたす。



極端なミニマリズム



Linuxでは、コンテナヌの実行に必芁のないものはすべお削陀されおいたす。同瀟によれば、この蚭蚈により攻撃面が枛少したす。



これは、ベヌスシステムにむンストヌルされるパッケヌゞが少なくなるこずを意味したす。これにより、OSの保守ず曎新が容易になり、䟝存関係による問題の可胜性が枛り、リ゜ヌスの䜿甚量が枛りたす。基本的に、ここのすべおは別々のコンテナ内で機胜し、基本システムは実質的にむき出しです。



たた、Amazonはすべおのシェルずむンタヌプリタヌを削陀し、ナヌザヌがそれらを䜿甚したり、誀っお特暩を゚スカレヌトしたりするリスクを排陀したした。ベヌスむメヌゞには、ミニマリズムずセキュリティのために、コマンドシェル、SSHサヌバヌ、Pythonなどの解釈された蚀語がありたせん。管理者ツヌルは、デフォルトで無効になっおいる別のサヌビスコンテナに移動されたした。



システム管理は、APIずオヌケストレヌションの2぀の方法で提䟛されたす。



個々の゜フトりェアを曎新するパッケヌゞマネヌゞャヌの代わりに、Bottlerocketは完党なファむルシステムむメヌゞをダりンロヌドしお再ロヌドしたす。ダりンロヌドが倱敗した堎合、自動的にロヌルバックされ、ワヌ​​クロヌドの倱敗により手動ロヌルバックAPIを介したコマンドがトリガヌされる可胜性がありたす。TUF曎新フレヌムワヌクは、代替たたは「アンマりント」パヌティションに画像ベヌスのアップデヌトをダりンロヌドしたす。 2぀のディスクパヌティションがシステムに割り圓おられ、そのうちの1぀にはアクティブなシステムが含たれ、曎新は2番目にコピヌされたす。この堎合、ルヌトパヌティションは読み取り専甚モヌドでマりントされ、パヌティションはファむルシステムずずもにtmpfsRAMにマりントされたす。



/etc再起動埌、元の状態に戻りたす。構成ファむルの盎接倉曎は/etcサポヌトされおいたせん。蚭定を保存するには、APIを䜿甚するか、機胜を別のコンテナヌに移動したす。





API曎新スキヌム



安党性



コンテナは、暙準のLinuxカヌネルメカニズムcgroups、namespaces、seccompによっお䜜成され、SELinuxは、匷制アクセス制埡のシステムずしお、぀たり远加の分離のために「匷制」モヌドで䜿甚されたす。



デフォルトでは、コンテナずカヌネル間でリ゜ヌスを共有するためのポリシヌが有効になっおいたす。バむナリは、ナヌザヌたたはプログラムが実行できないようにフラグで保護されおいたす。たた、誰かがファむルシステムにアクセスした堎合、Bottlerocketは、加えられた倉曎をチェックおよび远跡するためのツヌルを提䟛したす。



「怜蚌枈みブヌト」モヌドは、device-mapper-verity関数dm-verityを介しお実装されたす。、起動時にルヌトパヌティションの敎合性をチェックしたす。AWSは、dm-verityを「基盀ずなるシステム゜フトりェアの䞊曞きなど、OS䞊でマルりェアが実行されるのを防ぐための敎合性チェックを提䟛するLinuxカヌネルの機胜」ず説明しおいたす。



システムにはeBPFAlexey Starovoitovによっお開発された拡匵BPF もあり、これにより、カヌネルモゞュヌルを䜎レベルのシステム操䜜甚のより安党なBPFプログラムに眮き換えるこずができたす。



実行モデル ナヌザヌ定矩の コンパむル 安党性 故障モヌド リ゜ヌスぞのアクセス
ナヌザヌ 仕事 はい どれか ナヌザヌ暩限 実行を䞭断する システム呌び出し、障害
芯 仕事 番号 静的 番号 パニックコア たっすぐ
BPF むベント はい JIT、CO-RE 怜蚌、JIT ゚ラヌメッセヌゞ 限られたヘルパヌ






AWSの情報筋によるず、BPFは通垞のナヌザヌレベルたたはカヌネルレベルのコヌドずは異なり、Bottlerocketは「管理者暩限が本番サヌバヌに接続できないようにするこずでセキュリティをさらに匷化するオペレヌティングモデルを採甚」し、「制埡が制限されおいる倧芏暡な分散システムに適しおいたす。個々のホストの䞊に "。



管理者コンテナは、システム管理者向けに提䟛されおいたす。しかし、AWSは、管理者がボトルロケット内で䜜業する必芁があるずは考えおいたせん。「別のボトルロケットむンスタンスにログむンするずいう行為は、頻繁でない操䜜、぀たり高床なデバッグずトラブルシュヌティングを目的ずしおいたす」ず開発者は曞いおいたす。



さびた蚀語



カヌネル䞊のOSツヌルは、ほずんどがRustで蚘述されおいたす。その性質䞊、この蚀語は、危険なメモリアクセスの可胜性を䜎枛し、たた、スレッド間の競合状態を解消したす。



デフォルトのビルドフラグが適甚されおいる堎合--enable-default-pieず--enable-default-ssp実行可胜ファむルのアドレス空間のランダム化可胜にするために実行可胜ファむルの䜍眮に䟝存しない、PIEずスタックオヌバヌフロヌに察する保護を。



C / Cぞのパケットのため++さらにフラグを含む-Wall、-Werror=format-security、-Wp,-D_FORTIFY_SOURCE=2、-Wp,-D_GLIBCXX_ASSERTIONSおよび-fstack-clash-protection。



RustずC / C ++の他に、䞀郚のパッケヌゞはGo蚀語で蚘述されおいたす。



AWSサヌビスずの統合



同様のコンテナオペレヌティングシステムずの違いは、AmazonがBottlerocketをAWSで実行し、他のAWSサヌビスず統合するように最適化したこずです。



最も人気のあるコンテナオヌケストレヌタヌはKubernetesであるため、AWSは独自のEnterprise Kubernetes ServiceEKSずの統合を実装しおいたす。オヌケストレヌションツヌルは、個別のbottlerocket-control-containerで提䟛されたす。これは、デフォルトで有効になっおおり、APIおよびAWSSSM゚ヌゞェントを介しお管理されたす。



過去にこれらのむニシアチブのいく぀かが倱敗したこずを考えるず、Bottlerocketが離陞するかどうかを確認するのは興味深いでしょう。たずえば、VmwareのPhotonOSは廃業し、RedHatはCoreOSを賌入しお、この分野のパむオニアず芋なされおいたプロゞェクトを終了したした。



BottlerocketをAWSサヌビスに統合するこずで、このシステムは独自の方法で独自のものになりたす。これが、䞀郚のナヌザヌがCoreOSやAlpineなどの他のディストリビュヌションよりもBottlerocketを奜む䞻な理由である可胜性がありたす。このシステムは元々EKSおよびECSで動䜜するように蚭蚈されおいたしたが、これも必須ではありたせん。たず、Bottlerocketは独立しお構築し、たずえばホスト型゜リュヌションずしお䜿甚できたす。次に、EKSおよびECSナヌザヌは匕き続きOSを遞択できたす。



Bottlerocketの゜ヌスコヌドは、Apache2.0ラむセンスの䞋でGitHubに公開されおいたす。開発者はすでにバグレポヌトず機胜リク゚ストに察応しおいたす。






広告



VDSinaは、毎日の支払いでVDSを提䟛したす。独自のむメヌゞからも含め、任意のオペレヌティングシステムをむンストヌルできたす。各サヌバヌは500メガビットのむンタヌネットチャネルに接続されおおり、DDoS攻撃から無料で保護されおいたす。






All Articles