Kush's Wiki
Kubernetes
#
Cloud Native
Docker
のようなアプリケーション
コンテナ
のオーケストレーションを行うオープンソースのプラットフォーム
CNCF
graduated project
Loading...
Fetching description...
Secrets Store CSI Driver
Kubernetesコミュニティによってメンテナンスされているドライバ Container Storage Interface(CSI)のAPIを実装しており、様々なクラウドベンダーのSMSにアクセスできる
Helmfile
#Infrastructure as Code #DevOps #GitOps Helmfileは、Helmチャートをデプロイするための宣言的な仕様を提供するツールです。複数のHelmリリースを効率的に管理することができます。 概要 Helmfileを使用することで、Kubernetes環境における複数のHelmチャートのデプロイメントを、YAMLファイルで宣言的に管理できます。これにより、環境ごとの設定の違いを明確にし、再現性の高いデプロイメントを実現します。 主な機能 複数のHelmリリースを一つのファイルで管理 環境ごとの値のオーバーライド リリース間の依存関係の定義 デプロイの差分確認(diff機能) https://helmfile.readthedocs.io/en/latest/
KYAML
Kubernetes 1.34からアルファ版公開されたKubernetes向けのYAMLフォーマット
Istio/
AuthorizationPolicy
#Authorization Istioにおいてアプリケーション(L7)認可の役割を担うリソース KubernetesのCRDによって用意されており、Network policyに比べ柔軟でHTTP特有の設定が可能 Istio / Authorization Policy
Istio/
Telemetory
#Observability Kubernetes/Istio環境のサービスメッシュ内において、テレメトリーが生成される方法を定義するCRD 例としてOpenTelemetryのOpenTelemetry Collectorによるプロバイダを指定することができる https://istio.io/latest/docs/reference/config/telemetry/
Cilium
#Network #Cloud Native #Observability #Security https://cilium.io/ eBPF技術を活用したクラウドネイティブなネットワーキングソフトウェア KubernetesのCNIとしてネットワークの接続、保護、監視を提供する ユースケースとして以下のような例がある L4 ロードバランシング https://cilium.io/use-cases/load-balancer/ kube-proxy https://cilium.io/use-cases/kube-proxy/ サービスメッシュ https://cilium.io/use-cases/service-mesh/ Gateway API https://cilium.io/use-cases/gateway-api/ Ingress https://cilium.io/use-cases/ingress/
Dapr
GitOps
Weaveworks社によって提唱された、#Cloud Nativeの文脈においてgitを用いた設定管理を行うような#Continuous Delivery手法 対象は主にKubernetesとなる
Kubernetes Icons Set
#Documentation Kubernetesの各リソース等のアイコンを公開しているリポジトリ 様々なダイアグラムサービスのデータセットに利用されている https://github.com/kubernetes/community/tree/master/icons
Container Storage Interface
CSI コンテナオーケストラレーション(主にKubernetes)でのコンテナ化されたワークロードから任意のストレージシステムを使用可能にするための仕様とその実体であるProtocol Buffers(gRPC通信前提)定義を提供する container-storage-interface/spec
Google Cloud/
GKE
Google Cloud/
Gateway
#Cloud Native Google CloudのGKE上でGateway APIを適用する 外部Gatewayをデプロイする時は、GatewayClassに gke-l7-global-external-managed を指定した上で、Certificate Managerのような手段でセキュリティを担保する Kubernetes APIの NamedAddress に静的IPアドレスを指定することができる 方法 Gateway のデプロイ | Google Kubernetes Engine (GKE) | Google Cloud
Datadog Agent
#Observability Datadogへホストのログを送信するソフトウェア。 各ホストの環境別にいくつかのインストール手段が用意されている 例としてKubernetesへのインストール方法は以下 Kubernetes に Datadog Agent をインストールする https://docs.datadoghq.com/ja/agent/?tab=Linux
Istio
KEDA
Argo Rollouts
Knative Serving
Knativeにおいて、KubernetesのCRDによって4種類のリソースを定義しアプリケーションの提供を行う Serviceの別APIのようなサービスディスカバリパターン Scale to zeroや自動スケーリングによるリソース効率の最適化が主な目的 https://github.com/knative/specs/blob/main/specs/serving/overview.md
Dapr Agents
#Cloud Native Kubernetes NativeなDaprプロジェクト上でLLMを利用した会話型エージェントを開発できる DaprのワークフローによるメッセージングベースのAIエージェント連携も可能 https://dapr.github.io/dapr-agents/
OpenTelemetry/
OpenTelemetryCollector
#Observability #OpenTelemetry Kubernetes上にCollectorを構築するためのCRD/Operator https://github.com/open-telemetry/opentelemetry-operator?tab=readme-ov-file
Important Components for Kubernetes
#Observability OpenTelemetry CollectorをKubernetes上で構築するコンポーネント群の説明 Prometeus Receiverの例ではDaemonSet(agent)またはDeployment(gateway)を用いた実装のサンプルコードが置かれている https://opentelemetry.io/docs/platforms/kubernetes/collector/components/
kube-proxy
Kubernetes/
リソース
RESTfulなKubernetes APIでリソースとして扱われるオブジェクト
Kubernetes/
Pod
Kubernetes/
コンテナライフサイクルフック
Kubernetes上のコンテナのライフサイクルとして開始時(ENTRYPOINT)と終了時にフックを命令できる機能 コンテナライフサイクルフック | Kubernetes
Kubernetes/
ユーザ
Kubernetesにおけるサブジェクト(主体)の一つ
Kubernetes/
Controller
Kubernetesクラスタ内でDeploymentによってシングルトンに起動され、リソースへ観察、分析、アクションを行うような役割 コントローラの監視対象となるのは以下 Label Annotation ConfigMap Controllers | Kubernetes
Kubernetes/
DNS
#Network #DNS Kubernetesにおいて、PodとServiceをスケジューリングし、Service名によってURIを解決できる https://kubernetes.io/ja/docs/concepts/services-networking/dns-pod-service/
Kubernetes/
Immutable Configuration
Kubernetesの設定管理において、設定ファイルを隠蔽する専用のコンテナを用意し、Initコンテナと emptyDir を組み合わせることでアプリケーションコンテナに設定ファイルをロードさせるパターン ConfigMapと異なり、設定ファイルのコンテナイメージバージョン管理によってイミュータブルに扱うことができる
Helm
Ambassador Edge Stack
Kustomize
#Infrastructure as Code Kubernetesの設定ファイルをYAMLで記述する際、 kustomization.yaml によってリソース定義の集約等を行うことができるツール 環境ごとに共通化できる設定(base)、環境ごとの差分設定(overlays)を扱い、設定ファイルの記述を最低限にする 利用パターン Deployment等に指定するイメージを最新のバージョンで置きかえるようなケース > kustomize edit set image $BEFORE_IMAGE_NAME=$AFTER_IMAGE_NAME Kustomize - Kubernetes native configuration management
etcd
Beyond the Twelve-Factor App
#Software Design #Cloud Native The Twelve-Factor Appを現代のクラウドネイティブ環境向けに拡張した方法論。Kevin Hoffmanによって著され、オリジナルの12要因を15要因に拡張している。 追加された3つの新要因 2. API First - サービス設計において、実装前にAPIインターフェースを定義し契約駆動開発を促進 #API Architecture 14. Telemetry - メトリクス、ログ、トレースの収集を通じた包括的な監視機能 #Observability 15. Authentication and Authorization - 認証・認可をアプリケーション設計の第一級の関心事として組み込む Authentication Authorization 既存要因の改訂 Kubernetes ConfigMap/Secretsなどコンテナ時代の設定管理や、Infrastructure as Code(IaC)による環境構築など、現代的なベストプラクティスを反映した注釈が追加されている。 https://www.vmware.com/docs/ebook-beyond-the-12-factor-app
クラウドネイティブで実現する マイクロサービス開発・運用 実践ガイド
Trivy
#Security #Cloud Native #Continuous Integration コンテナイメージ、Kubernetes、IaC、リポジトリを対象とした包括的な脆弱性・設定ミス・シークレットスキャナー Aqua Securityによって開発されたオープンソースツール 主な機能: 脆弱性スキャン - コンテナイメージ、ファイルシステム、gitリポジトリ IaC設定ミス検出 - Dockerfile、Kubernetesマニフェスト、Terraformなど シークレット検出 - APIキー、パスワード等の機密情報 SBOM生成 - ソフトウェア部品表の作成と検出 ライセンススキャン DevSecOpsのシフトレフトセキュリティを実現し、CI/#Continuous Deliveryパイプラインに統合可能 SASTツールの一種として静的解析を実行する https://trivy.dev/ https://github.com/aquasecurity/trivy
Argo
Amazon/
EKS
Elastic Kubernetes Service #Cloud Native AWSクラウド上でKubernetesを実行するマネージドサービス、Kubernetes準拠であるため既存のKubernetesアプリケーションと互換性がある Kubernetes Serviceでのロードバランシングに加え、Elastic Load Balancingの使用をサポートしている What is Amazon EKS? - Amazon EKS
Node affinity
Kubernetesのkube-schedulerにおいて、必須ルールと推奨ルールを設定しNodesへの割り当てを決定させる Assigning Pods to Nodes | Kubernetes
サービスメッシュ
#Network #Observability #Security #API Architecture マイクロサービスで行われるようなサービス間通信をルーティング、監視、保護する機能を提供する Kubernetesにおいてはクラスタ単位でサービスメッシュを構築する サービスメッシュはクラスタ内の全てのサービス間通信を制御するコントロールプレーンとコントロールプレーンで指定された作業が実行されるデータプレーン(サービス)の2つの基本要素を持つ。
kube-scheduler
Argo CD
Knative Eventing
Knativeにおいて、KubernetesのCRDによってイベント駆動アーキテクチャを実現するコンポーネント イベントはCloudEvents仕様に準拠し、標準のHTTP POSTリクエストで送受信される https://knative.dev/docs/eventing/
Kubernetesパターン 第2版
Platform Engineeringの2つの「IDP」~Internal Developer Platformとは?
#Platform Engineering Internal Developer Platform Kubernetes RBAC Internal Developer Portal https://codezine.jp/article/detail/19376
CloudNativePG
#Cloud Native #Data Engineering Kubernetes上でPostgreSQLクラスタのライフサイクルを管理するOperator プライマリ/スタンバイ構成によるストリーミングレプリケーションで高可用性を実現 外部HAツール(Patroni等)に依存せずKubernetes APIと直接統合 CNCF sandbox project https://cloudnative-pg.io/