fbpx

[和訳] Docker EEのためのチェックリスト: 本番環境準備編 #docker

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。

本稿は エンタープライズ企業向けDocker運用チェックリスト にて紹介した THE ENTERPRISE IT CHECKLIST FOR DOCKER OPERATIONS の和訳です。

  • バージョン:17.06
  • ソース: https://github.com/nicolaka/checklist
  • docker run -t nicolaka/checklist:17.06

☑ インフラストラクチャ

  • クラスタのサイジングおよびゾーニング
  • サポートと互換性 (OS, Docker Engine, UCP, DTR)
  • 十分なリソース (マネージャノードとワーカーノード)
    • マネージャノード: メモリ 16GB, 4 vCPU, 1Gbps 以上, ディスク 32GB 以上
    • ワーカーノード(最小): メモリ 4GB, 2 vCPU, 100Mbps以上, ディスク 8GB
  • リソース:

☑ オーケストレーション管理

☑ イメージの配布

☑ セキュリティ

☑ ネットワーク

  • アプリケーションに、正しいネットワーキングドライバを割り当てる
  • 適切な公開モードを選択する(Ingressかホストモードか)
  • 適切なロードバランシングモードを選択する(クライアント側ならDNSラウンドロビン、サーバ側ならVIP)
  • ネットワークレイテンシは100ms未満とする
  • L3セグメントをまたぐアプリにはオーバーレイ (1つのアプリに対して1つのオーバーレイネットワーク)
  • 内蔵の暗号化オーバーレイ機能の活用 (アプリ間通信の暗号化)
  • アプリケーションのサブネットサイズを慎重に選ぶ
  • Dockerでオーバーレイネットワークを利用するために、サブネットが重複しないよう設計する
  • リソース:

☑ ストレージ

  • 本番環境用に設定されたDocker Engineストレージバックエンド
  • 複製でき安全なDTRストレージバックエンド
  • アプリケーションデータを複製するためには、Docker社が認定し、テスト済みのアプリケーションデータストレージプラグインを利用する

☑ ロギングとモニタリング

  • Docker Engine用の中央集権的ロギングおよびアプリケーションコンテナログ
  • 積極的なトラブルシューティングのためのローカルロギング
  • ホストレベルおよびコンテナレベルのリソースモニタリング
  • DTRイメージのバックエンドストレージのモニタリング
  • Docker Engineのストレージのモニタリング
  • 内蔵のアプリケーションヘルスチェック機能の利用
  • リソース:

☑ インテグレーション

  • UCPとDTRは十分に統合できている (SSO、DCTなど)
  • CI/CD ツール (Jenkins、Bamboo、CircleCIなど)
  • 開発ツール (devマシン、IDEsなど)
  • 自動構築ツール (Puppet、Chef、Ansible、Salt)
  • リソースプロビジョニングシステム (Terraformなど)
  • 管理システムの変更
  • 内部/外部DNSまたは、そのほかのサービスディスカバリおよび登録システム
  • マネジメントプレーンおよび各アプリケーションのためのロードバランシング (L4/L7)
  • インシデントおよびチケット管理システム (ServiceNowなど)

☑ ディザスタリカバリ

☑ テスト

  • マルチプラットフォームイメージのプルおよびDTRへのプッシュ
  • ユーザが各リソースへの適切なアクセス権限を有していることの確認
  • アプリケーションリソース制限が期待どおりに機能することの確認
  • CLIおよびUIからのエンド・トゥ・エンドでスタックのデプロイメント
  • ローリングアップグレードを使用して新しい設定、イメージおよびネットワークのアプリケーションアップグレード
新規CTA