Skip to content

DNET_CloudFoundry

nishi_74322014 edited this page Sep 11, 2026 · 1 revision

Cloud Foundry

概要

  • OpenShiftに1年先行してオープンソース化し、
    多数の開発者やパートナーを引き込むことができた。

  • オープンソースコミュニティーの運営に懸念がある(NIH症候群)

  • 互換性維持のために、合理的とは言い難いソフトウェアスタック、デプロイが大変。

  • Diego

    • アーキテクチャが大幅に変更された。
    • Docker image(Dockerではなく、Docker image)をサポート

経緯

  • 2011年4月12日:仮想化ソリューションのVMwareがオープンなPaaSとして提供を開始。

  • 2013年3月7日:EMC、GEとともに立ち上げたPivotal Softwareに取り組みを移管。

  • 2013年6月6日:V1のサービスを終了、V2の立ち上げ計画を発表

    • V1とV2のAPI互換性はない。
    • Herokuが開発したBuildpackを採用。
    • 各種コンポーネントがGo言語で書き換え。
    • WardenというLinuxコンテナで動かす。
  • 2014年2月24日:「Cloud Foundry Foundation」を設立して、Cloud Foundryを移管。

    • Dell EMC、IBM、SAP、Cisco、NTT、GE Digitalなど約65の企業が参加
    • 約2400人の開発者からコードにして5万1000行分のコミットがある。
    • プロジェクトは非営利団体Linux Foundationの支援を受けている。
  • 2014年3月13日:DEAを置き換え、Dockerなどに対応するDiegoの開発を開始

  • 2015年11月7日:Pivotal Cloud Foundry 1.6でDiegoを取り込み提供(V3?)

特徴

  • エンド・ユーザ (アプリ開発者) 向けにフォーカスしている。
  • Buildpackと言うものが、良しなにソースをイメージ化してくれる。

アーキテクチャ

機能・役割ごとに明確にコンポーネントが分けられているのが特徴。

  • 外部からのアクセスは全てRouterを経由して、適切なコンポーネントに分配される。
  • コンポーネント間はNATSと呼ばれるメッセージングシステムを経由して連携する。

配置

  • データベースなどはServicesノード上
  • アプリケーションはDEAノード上
    対応言語、フレームワークを追加する場合、DEAに対して変更を加える。

Diego

  • Kubernetesに似ているところ
    etcdを通して 疎結合に連携

    • スケジューラー(Master<=>Brain)
    • ランナー(Minion<=>Cell)
  • Kubernetesと違うところ

    • スケジューリングの仕組み
    • コンテナの仕組み (Docker<=>Garden)

Buildpack

良しなにソースをイメージ化してくれる。

  • Buildpackの実体は3つのスクリプト
  • PHP buildpackではpythonを使っているが、シェル・スクリプト 等でもOK
  • Buildpackのデプロイが基本だが、Docker imageのデプロイも可能。

compile

  • 言語の実行環境をセットアップするためのスクリプト
  • バイナリをダウンロードしてきて配置するスクリプトが多い

detect

  • Buildpackの実行条件を指定するスクリプト。

  • PHP Buildpackの場合、.phpスクリプトがあればOK。

    • OKならばexit 0
    • NGならばexit 1

    を返すという決まり。

release

メタデータとか入れるらしい

step by step的な

ファースト・ステップ

Cloud Foundryファースト・ステップ

セカンド・ステップ

Cloud Foundryセカンド・ステップ

参考(step by step)

IBM Cloud

Pivotal

Cloud Foundry Docs

https://docs.cloudfoundry.org

参考

アーキテクチャ(参考リンク)

Diego(参考リンク)

  • Cloud FoundryでDockerも.NETも。新しいDiegoの仕組み入門
    https://www.slideshare.net/jacopen/diego-45603123

  • Cloud FoundryがDocker互換のコンテナ管理システムDiegoを立ち上げ、DEAを廃棄へ | TechCrunch Japan
    (元 Wiki の URL は上記「Infostand海外ITトピックス」と同一で、記事名と一致しない)

Buildpacks

サイト

SlideShare

@IT

Think IT(シンクイット)

TechTargetジャパン クラウド

Publickey

移行メモ

  • 参考リンク「Cloud FoundryがDocker互換のコンテナ管理システムDiegoを立ち上げ、 DEAを廃棄へ | TechCrunch Japan」の URL が、同ページ内の別記事 (Impress クラウド Watch の Infostand 海外ITトピックス)と同一で 記事名と一致しないため、URL を掲載せずその旨を注記した。
  • 同名の見出し(「参考」「アーキテクチャ」「Diego」)が複数あり、 GitHub Wiki ではアンカが衝突するため、括弧で文脈を補って一意にした。
  • 本フェーズで新たに参照された「Cloud Foundryファースト・ステップ」 「Cloud Foundryセカンド・ステップ」を TODO.md に予約した。

Tags: 移行, Cloud Foundry, PaaS, Diego, Buildpack, Warden, Pivotal, Open PaaS

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally