More Related Content Similar to ざっくり始めるCloud Native開発 (20) More from YASUKAZU NAGATOMI (15) ざっくり始めるCloud Native開発9. Cloud Nativeって何?~ CNCFによるCloud Nativeの定義より~
Cloud Native技術は、Public Cloud、Private Cloud、Hybrid Cloud等の
近代的でダイナミックな環境において、スケーラブルなアプリケーション
を 構築 及び 実行する為 の能力を組織にもたらします。
このアプローチの代表例に、コンテナ、サービスメッシュ、
マイクロサービス、イミューダブルインフラストラクチャ、
および宣言型APIがあります。
これらの手法により、回復性、管理力、および可観測性のある疎結合シス
テムが実現します。 これらを堅牢な自動化と組み合わせる事で、
エンジニアはインパクトのある変更を最小限の労力で頻繁かつ予測通りに
行う事が出来ます。
18. どこから始めるか?
Cloud Native Trail Map を
参考に段階的に始めていくと良いです。
一足飛びでk8sなんて無理です。
ダメ。絶対。
ただし、オンプレでやらなければならない
場合は、最初の段階でコンテナレジストリ
が必要になります。
CNCFではHarborがありますが、
SUSEのPortusもオススメ。
また、どんなものがあるかは以下を参照
cf. Cloud Native プロダクト 1000本ノック
20. Twelve-Factor Appのおさらい
1. コードベース
バージョン管理されている1つのコードベースと複数のデプロイ
2. 依存関係
依存関係を明示的に宣言し分離する
3. 設定
設定を環境変数に格納する
4. バックエンドサービス
バックエンドサービスをアタッチされたリソースとして扱う
5. ビルド、リリース、実行
ビルド、リリース、実行の3つのステージを厳密に分離する
6. プロセス
アプリケーションを1つもしくは複数のステートレスなプロセスとし
て実行する
7. ポートバインディング
ポートバインディングを通してサービスを公開する
8. 並行性
プロセスモデルによってスケールアウトする
9. 廃棄容易性
高速な起動とグレースフルシャットダウンで堅牢性を最大化する
10. 開発/本番一致
開発、ステージング、本番環境をできるだけ一致させた状態を保つ
11. ログ
ログをイベントストリームとして扱う
12. 管理プロセス
管理タスクを1回限りのプロセスとして実行する
22. Designing Distributed Systems
• Single-Node Patterns
• The Sidecar Pattern
• Ambassadors
• Adapters
• Serving Patterns
• Replicated Load-Balanced Services
• Shared Services
• Scatter/Gather
• Functions and Event-Driven
Processing
• Ownership Election
• Batch Computational Patterns
• Work Queue Systems
• Event-Driven Batch Processing
• Coordinated Batch Processing
【宣伝】Cloud Native Kansai #02 でも紹介しています。
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
書籍で紹介されているパターンは以下
26. 資料:KubernetesやDocker
● Cloud Nativeの定義
● Cloud Native Trail Map
● CNCF Cloud Native Interactive Landscape
● Cloud Native プロダクト 1000本ノック
● CloudNative Days Fukuokaで、クラウドネイティブについて考え直してみた
● インフラエンジニアとしてのわたしの研究開発とこれから注目のコンテナ技術
● 今話題のいろいろなコンテナランタイムを比較してみた
● コンテナ技術入門 - 仮想化との違いを知り、要素技術を触って学ぼう
● Docker Compose 徹底解説
● やさしくわかる「Kubernetes基礎」/やさしくわかる「Docker基礎」
● 【翻訳】Operator の紹介:運用の知見をソフトウェアに入れる
● OperatorHub.io | The registry for Kubernetes Operators
● Weaveworks社のGitOpsに関する記事一覧
● GitOps — Operations by Pull Request – gavin.zhou – Medium
● Kubernetesで作るコンテナベースCI★CDの夕べ / ochacafe#1
● GitOpsでKubernetesのManifest管理
● GitOpsではじめるKubernetes CI/CD Pipeline
27. 資料:設計関連
● The Twelve-Factor App (日本語訳)
● Kubernetes、コンテナ技術を活用した開発アジリティー向上にインフラアーキテクトはどう貢献したのか
● 「Kubernetesで運用する」その前に Kubernetesを本番環境で利用する際のポイント
● Brendan Burns, David Oppenheimerらの論文:Design Patterns for Container-based Distributed Systems
○ その書籍:Designing Distributed Systems E-Book | Microsoft Azure
○ 実装のお試しリポジトリ:brendandburns/designing-distributed-systems-labs
○ その日本語訳版:分散システムデザインパターン ―コンテナを使ったスケーラブルなサービスの設計
● コンテナのデザインパターンを学べる論文「Design patterns for container-based distributed systems」を
読んだ - kakakakakku blog
● Web Developer も知っておきたい Kubernetes における Sidecar Pattern と Ambassador Pattern - Quipper
Product Team Blog
● I will tell you the passion of Kubernetes - Speaker Deck
● コンテナ・デザイン・パターンの論文要約 - Qiita
28. 資料:Rancher v1.6
• Rancher v1.6 Documentation
• Rancher 構築メモ - Qiita
• Latest Rancher 1.x topics - Rancher Forums
• Rancher プライベートカタログとCompose
• Rancher!オンプレ!DevOps! - Speaker Deck
• Rancherで構築するDPP(Data Processing Platform) - Speaker Deck
• Rancherのオーバーレイネットワークを使用する #docker #rancher - クリエーションライン株式会社
• rancherでコンテナベースのサーバ運用を始めた話 - Aqutras Members' Blog
• Rancher Support Lifecycle