PaaSTA は、コンテナーと Kubernetes を使用してサービスを構築、デプロイ、実行するための高可用性の分散システムです。
PaaSTA は 2016 年から Yelp で運用サービスを実行しています。当初は Apache Mesos 上で実行するように設計されましたが、その後 Kubernetes を使用するように更新されました。時間の経過とともに、PaaSTA が提供する機能が増加しましたが、主要な設計は変わりません。
PaaSTA は、チームが実行する必要があるサービスを宣言的に記述し、それらのサービスが安全かつ効率的に、チームが保守しやすい方法でデプロイされることを保証することを目的としています。 PaaSTA は、Kubernetes YAML ファイルを管理するのではなく、サービスを記述するための簡素化されたスキーマを提供します。また、Kubernetes の構成に加えて、監視、ロギング、コスト管理などを提供する他のインフラストラクチャ ツールも構成できます。
PaaSTA を特別なものにする背後にある意見をもっと知りたいですか? PaaSTA 原則を確認してください。
注: PaaSTA は、いくつかの独自のツールを使用する独自のプラットフォームです。完全に機能する前に、かなりの量のインフラストラクチャを導入する必要があります。
このようなコンポーネントで構成された PaaS を使用する利点の 1 つは、コンポーネントを他の目的に再利用できることです。たとえば、Yelp では Sensu は PaaSTA だけでなく、あらゆる種類の監視に使用できます。また、Kubernetes を使用して、Jolt や Cassandra などの他のより複雑なワークロードを実行します。 SmartStack と Envoy を大幅にカスタマイズしたバージョンである当社のサービス メッシュにより、Yelp の多くのシステムが PaaSTA サービスと通信したり、相互に通信したりできるようになります。
一方で、多くのコンポーネントが必要になるということは、PaaSTA が効果的に動作する前に多くのインフラストラクチャをセットアップする必要があることを意味します。現実的には、PaaSTA を Yelp の外部で実行することは賢明ではありません。なぜなら、上記の統合に加えて、私たちは複製する必要がある他のツールにエンコードされた強力な意見も持っているからです。それにもかかわらず、私たちが PaaSTA をオープンにコーディングするのは、私たちのアプローチを共有することが有益であると考え、そのコードが少なくとも他の人が同様の問題を理解したり解決したりするのに役立つことを願っているからです。
上記の直接統合に加えて、PaaSTA は他のコンポーネントにも依存して、PaaSTA ユーザーに他の機能を提供し、Yelp でのコンピューティング能力を管理します。
PaaSTA を展開する方法については、入門ドキュメントを参照してください。このリファレンスは、PaaSTA がどのように機能するかを理解するのに役立つことを目的としていますが、運用環境で PaaSTA を使用することはお勧めしません。
VS Code で PaaSTA をデバッグするには、PaaSTA の内部 wiki ページ「PaaSTA のデバッグ (VS Code)」を参照してください。
「ドキュメントを読む」でドキュメントを読んでください。
PaaSTA は、Apache License バージョン 2.0 に基づいてライセンスされています: http://www.apache.org/licenses/LICENSE-2.0
誰もが、Github リポジトリをフォークしてプル リクエストを作成するか、イシューをオープンして、PaaSTA に貢献することをお勧めします。