Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ここから始めるDevOps 実行インフラ編

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

ここから始めるDevOps 実行インフラ編

DevOpsを始めるにあたって実行インフラの観点から学ぶべきポイントを紹介します。

Avatar for とことんDevOps

とことんDevOps

March 16, 2023
Tweet

More Decks by とことんDevOps

Other Decks in Technology

Transcript

  1. 発表者について • ⽥中 智明 • VTJ 技術部所属 • おしごと •

    DevOps案件 • Terraformのコード • 技術ブログ執筆 • かんたんDevOpsの仕組み作り • Software Design 3⽉号の特 集記事に執筆しました! 2
  2. 環境を構築、保守するためのIaC • IaCはInfrastructure as Codeの略 • インフラの構成をコード化し、IaCツールを使って構築 • 構築⼿順はコード化されているため構築⼿順書を削減 •

    ⼈間の⼿を介さないことでヒューマンエラーの削減 • 何度でも同じ環境を構築できるため冪等性を担保 • 構築はコードを実⾏するだけでよくなり俗⼈化の排除 4
  3. コードを実⾏するためのIaCツール 8 • Ansible • AWS CloudFormation • Terraform •

    Chef • Puppet • etc… 選択肢が豊富でどれを選んだらいいかわからない…
  4. 命令型 11 • メリット • ⼿作業と同じ「⼿順」として宣⾔するので、学習コストは低い • 汎⽤的なプログラミング⾔語で宣⾔できることが多く、学習コストが • デメリット

    • ⼿順を積み重ねた結果、あるべき状態になっていくので、⼿順の意図 が読みづらい • 実⾏した結果を宣⾔しているわけではないので、冪等性を担保しいづ らい
  5. 宣⾔型 14 • メリット • ⼿順を気にする必要がない • あるべき状態を宣⾔するだけなので、どういう状態のものができあ がってくるか、コードから読み取りやすい •

    常にあるべき状態に維持されるので、冪等性を担保できる • デメリット • ツール独⾃の⾔語で宣⾔していくので学習コストが⾼い • ツールのバージョンによって書き⽅が違ったりするので、気軽にアッ プデートできない
  6. 仮想マシン 18 Windows アプリ Linux アプリ macOS アプリ 物理サーバー ハイパーバイザー

    ・OSを問わず起動可能 ・完全なOSが起動するので、⽴ち上がりに時間がかかる ・1つのVMにつき、アプリケーション+OS分のリソースが消費される VM VM VM
  7. コンテナ 19 ランタイム ライブラリ アプリ ランタイム ライブラリ アプリ ランタイム ライブラリ

    アプリ 物理サーバー ホストOS ・コンテナ間でカーネルを共有、起動が⾼速 ・プロセスとファイルシステムを分離して別のシステムのように⾒せている ・1アプリにつき、アプリ分のリソースしか消費しない、OSは起動していない コンテナランタイム カーネル コンテナ コンテナ コンテナ
  8. K8sのメリット・デメリット • メリット • 複雑化したコンテナの運⽤・保守をK8sに任せられる • アプリケーションの無停⽌デプロイ、障害の⾃動復旧など • 複数のサーバー間でいい感じにコンテナを配置してくる •

    リソースを効率的に使⽤してくれる • Azure, AWS, GCPにマネージドサービスがあって始めやすい • デメリット • 定期的なアップデート、サポートは1年、運⽤コスト • Kubernetesを操作するための学習コスト • 必要なサーバー台数が多い 24
  9. ⽇本仮想化技術株式会社 概要 • 社名:⽇本仮想化技術株式会社 • 英語名:VirtualTech Japan Inc. • 設⽴:2006年12⽉

    • 資本⾦:3,000万円 • 本社:東京都渋⾕区渋⾕1-8-1 • 取締役:宮原 徹(代表取締役社⻑兼CEO)、伊藤 宏通(取締役CTO) • スタッフ:11名(うち、8名が仮想化技術専⾨エンジニアです) • URL:http://VirtualTech.jp/ • 仮想化技術に関する研究および開発 • 仮想化技術に関する各種調査 • 仮想化技術に関連したソフトウェアの開発 • 仮想化技術を導⼊したシステムの構築 • OpenStackの導⼊⽀援・新規機能開発 26 ベンダーニュートラルな 独⽴系仮想化技術の エキスパート集団 会社概要
  10. OpenStackへの取り組み • 通信事業社でのOpenStack基盤の検討⽀援および構築・運⽤ • NTTドコモ (2011年から技術評価を⽀援、商⽤利⽤に向けた検討・構 築・運⽤を実施) • NTT⻄⽇本 (商⽤利⽤に向けた評価・検討の⽀援、プロジェクトマ

    ネージメント⽀援) • ⼤⼿通信事業社 (NFV基盤についての検証・評価⽀援) • ベアメタルOpenStackの開発 • 仮想環境と物理環境をOpenStackで⼀括管理 • 単⼀のイメージで仮想マシンと物理マシンの双⽅を起動可能 • 2013年4⽉リリースのGrizzlyで本体にマージ 27 会社概要
  11. OpenStack Summitでの発表実績 28 2014/11 OpenStack Summit Paris We spoke the

    knowledge and tips when building and operating OpenStack Cloud on 100 Physical Servers. (Neutron HA, VXLAN performance,,,) 会社概要 2015/10 OpenStack Summit Tokyo We (NTT West, Canonical and VTJ) spoke ”Requirements for Providing Telecom Services on OpenStack-based Infrastructure”.
  12. 29