Kubernetes とは?
Kubernetes (K8s) is a high-availability rapid deployment and container orchestration framework that allows you to easily manage and automate your deployments in one place. Because it makes heavy use of containers, your applications stay up-to-date with no downtime and always have safe and reliable access to the dependencies they require. Learn more on the official Kubernetes website
機能の仕組み
Kubernetes はコンテナー化されたアプリの管理を自動化します。コンテナーおよび基盤となるインフラストラクチャを管理し、スケーリング、ロールアウト、ロールバックなどを自動化する、一元的なコントロール プレーンを提供します。このプラットフォームは基盤となるインフラストラクチャを抽象化し、コンテナーとアプリを管理する統合的な方法を提供するため、開発者にとってはアプリの大規模な構築、デプロイ、実行が容易になります。
Kubernetes を使用する理由
Kubernetes は、次のような多くのメリットをもたらす強力なプラットフォームです。
アジリティの向上
簡素化された管理
デプロイの自動化
コンテナーの自動運用
セキュリティ強化
アップグレードとロールバックの加速
スケーラビリティと回復力の向上
さらに、シンプルな YAML ファイルを使用してインフラストラクチャをコードとして管理できるため、不必要なリソースの消費を減らすことができます。
アトラシアンが Kubernetes と連携する仕組み
ヘルム チャートで Kubernetes を管理する
製品のデプロイに役立つように、Data Center Helm チャートが作成されています。これは、お客様のビジネス固有のニーズに合わせて設定できるカスタマイズ可能なテンプレートです。独自のハードウェアで実行するか、クラウド プロバイダーのインフラストラクチャで実行するかを選択することもできます。これにより、最新のインフラストラクチャを使用しながら、データを管理し、コンプライアンス ニーズを満たすことができます。Helm チャートには独自のライフサイクルがあるため、アップデートには特定の機能が含まれて、自動的にアップグレードされます。
Helm charts provide the essential building blocks needed to deploy Atlassian Data Center products (Jira, Confluence, Bitbucket, Bamboo, and Crowd) in Kubernetes clusters and give you the capability to integrate with your operation and automation tools. Learn more about Helm charts
Docker イメージを使用して俊敏性を向上させる
To speed up development, you can take advantage of Data Center’s hardened Docker container images. Using our Docker container images as part of your Data Center deployment allows you to cut significant time by streamlining and automating workflows.
必要な構成を定義したら、デプロイ ライフサイクルの各段階でコマンド ラインから環境の正確なレプリカを即座にデプロイできます。これにより、重要性の高い作業を継続的に前進させるために必要な俊敏性と、時間の経過とともに進化する組織の開発戦略に柔軟に対応できます。
Kubernetes のデプロイ アーキテクチャを学習する
The Kubernetes cluster can be a managed environment, such as Amazon EKS, Azure Kubernetes Service, Google Kubernetes Engine, or a custom on-premise system. We strongly recommend you set up user management, central logging storage, a backup strategy, and monitoring just as you would for a Data Center installation running on your own hardware.
Helm チャートを使用して Data Center アプリを Kubernetes クラスターにデプロイする場合のアーキテクチャ概要を下記に示します。
製品のデプロイには、次の Kubernetes エンティティが必要です。
Ingress と Ingress コントローラー (ing) — Ingress はトラフィック ルーティングのルールを定義して、リクエストが送信される Kubernetes クラスター内の場所を示します。Ingress コントローラーは、これらのルールの履行を担当するコンポーネントです。
Service (svc) — Pod 一式に単一のアドレスを提供して、アプリ ノード間のロード バランシングを有効にします。
Pod — 1 つ以上のコンテナーのグループです。共有ストレージとネットワーク リソースに加えて、コンテナーの実行方法の仕様を備えています。Pod は、Kubernetes で作成して管理できる、デプロイ可能な最小のコンピューティング単位です。
StatefulSets (sts) — 永続状態を必要とする Pod 一式のデプロイと拡張を管理します。
PersistentVolume (pv) — 永続データを格納するホスト マシン上の「物理」ボリュームです。
PersistentVolumeClaim (pvc)—1 つの pod (場合によっては複数の pod) で使用される永続ボリューム (PV) を保有します。
StorageClass (sc) — 管理者が提供するストレージの「クラス」を記述する方法を提供します。
Kubernetes クラスターに Data Center アプリをインストールする
Helm チャートを使用して Data Center アプリケーションを Kubernetes クラスターにインストールして操作するには、次の手順に従います。
Follow the requirements and set up your environment according to the Prerequisites guide.
Perform the installation steps described in the Installation guide.
Learn how to upgrade applications, scale your cluster, and update resources using the Operation guide.