about - nakahararuu/cenote-cvt GitHub Wiki

Cenoteについて

業務で開発・保守しているアプリケーションをクラウドネイティブ化するための資材を開発するプロジェクトです。下記を主な目的とします。

  • クラウドネイティブアーキテクチャへの理解を深める
  • レガシーなアプリケーションをproduction readyなクラウドネイティブアプリケーションへ移行する現実的な手段を提案する
  • クラウドネイティブなアプリケーションを構築するための再利用可能な資材をチームに提供する

前提条件・成約

現在の組織の置かれる状況から

  • コストは妥協可能
  • production readyで大掛かりな検証無しですぐ投入可能でなければならない
  • AWSに明るいアプリケーションエンジニア数人のみで運用可能でなければならない
    • 可能な限りマネージドサービスに頼る

CenoteCVTについて

CVTとよばれるアプリケーションをクラウドネイティブ化するリポジトリです。

アプリケーション特性:

  • DBを持たないシンプルなJavaアプリケーション
  • サービスにとって単一障害点になるため可用性、即応性が重要
  • アプリケーションログにビジネス上重要な情報を出力しておりログの分析、加工容易性が重要

期待される非機能要求(必須):

  • 柔軟なスケーリング
  • アプリケーションメトリクスの収集
  • インフラのメトリクス収集
  • アプリケーションの死活監視
  • アプリケーションログ収集・可視化基盤
  • アクセスログ収集・可視化基盤

期待される非機能要求(オプショナル):

  • 分散トレーシング
  • カナリアリリース
  • CI/CDパイプライン

2020/08/17追記: 上記の要求はAWS copilotとこちらのPRで実現できると思われる。しばらくはこれらのドキュメントに目を通すことに専念する。