タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。
この記事から得られる知識 この記事を読むと、以下を "完全に理解" できます✌️ ArgoCDのアーキテクチャを構成するコンポーネントの種類について ArgoCDがマニフェストを自動デプロイする仕組みについて この記事から得られる知識 01. はじめに 02. 概要 アーキテクチャ レイヤー コンポーネント 仕組み (1) repo-serverによるクローン取得 (2) application-controllerによるマニフェスト取得 (3) application-controllerによるCluster確認 (4) application-controllerによる処理結果保管 (5) argocd-serverによるキャッシュ取得 (6) 管理者のログイン (7) IDプロバイダーへの認証フェーズ委譲 (8) dex-serverによる認証リクエスト送信 (9) argocd-s
こんにちは😸 Necoの@dulltzです。 皆さんはマルチテナントでGitOpsするためにどのような構成をとっていますか? 我々はArgoCDを利用しています。 以前、@zoetroからArgoCDについての紹介がありました。 blog.cybozu.io 上の記事でもテナント*1に対しArgoCDを提供する方法に触れているのですが、 最近そこからもう一歩踏み込んで、テナントがApplicationを任意のタイミングで安全に作れるようにしました。これについて説明します。 なおNecoでは実装をOSSにしているので、記事内にソースコードへのリンクを適宜貼っておきます。気になる方はそちらも御覧ください。 前提知識 ArgoCD KubernetesでGitOpsを行うためのミドルウェアです。*2 この記事ではArgoCD v1.3.6を対象とします。 Application ArgoCDの
はじめに ArgoCDを構成するコンポーネントについて ArgoCDのログ量問題に直面した背景 ロギングライブラリが複数あることによる苦労 ログレベルを調整した結果 おわりに はじめに インフラストラクチャーグループの @mom0tomo です。普段はマッハバイトのクラウド移行に取り組んだり、コーポレートサイトのCSS/JSと格闘したりしています。最近、少しずつ転職会議のKubernetes運用にも関わるようになりました。 転職会議では、KubernetesクラスターへのCI/CDツールとしてArgoCDを利用しています。 made.livesense.co.jp ArgoCDにはGUIがあるためアプリケーション開発者も親しみやすいなど利点が多いのですが、デフォルトで出力されるログが多く、必要以上にログデータを生成してしまうと言う問題がありました。とくにDatadogのようなログ分析ツール
はじめに 本記事ではGitOps CDツールの一つであるArgoCDの概要と利用方法について紹介いたします。 ArgoCDとは ArgoCDはKubernetesクラスター向けのContinuous Deliveryを実現するツールです。ArgoCDでは、Kubernetesマニフェストファイルが格納されたGitHub / Helmリポジトリを監視し、リポジトリ上で変更が発生したらその差分を検出して、Kubernetesクラスターに反映します。 GitOpsとは ArgoCDは、いわゆるGitOpsを実現するツールとして注目されています。GitOpsとは、以下のような特徴を備えたContinuous Deliveryの手法です。 GitをSingle Source of Truth(信頼できる唯一の情報源)として扱い、バージョン管理や変更履歴、ピアレビュー、ロールバックなどを、kubect
今回はArgoCD CoreというArgoCDの新たなディストリビューションを動かしてみました。 ArgoCD Coreとは ArgoCD Coreを動かす 感想 参考リンク ArgoCD Coreとは ArgoCD Coreは ArgoCDの ver 2.1で導入された、ArgoCD distributionになります。ArgoCDはデフォルトだとSSO / RBAC / ユーザー管理などの機能を搭載しており、1つのArgoCDインスタンスを複数のチームが利用できる、マルチテナントをサポートしています。 一方でArgoCDを利用するユーザーの中には、マルチテナントをサポートする機能が不要であり、ArgoCDの提供するGitOps的な機能だけを使いたい人も大勢います。そういったユーザー向けに登場したのがArgoCD Coreです。 ArgoCD Coreでは、デフォルトのArgoCDディス
近年 Kubernetes の導入事例が増えたことにより、Kubernetes への継続的デリバリーの手段・ツールも様々なものがあります。 CircleCI のような CI/CD ツールを利用して Kubernetes へのデプロイまで一貫した CI/CD パイプラインを作ることも可能ですが、FluxCD そして今回紹介する ArgoCD など CD 専用の OSS ツールと組み合わせる事例も増えてきました。 これらの CD 専用ツールは GitOps を採用している点が共通点として挙げられます。 GitOps とは 2017年に Weaveworks 社がブログ内で紹介した CD の手法 です。 GitOps では、Git を用いて Kubernetes のリソース構成情報を宣言的に記述・管理します。 GitOps によるメリットは下記などが挙げられます。 生産性の向上 Git の操作(
こんにちは、SRE の @int128 です。 Quipper では日本やグローバル向けのサービスをそれぞれの Amazon EKS クラスタで提供しています。Service Level を保ちながらクラスタを運用していくには Cluster Autoscaler や Datadog Agent などのコンポーネントが必要不可欠になります。また、Developer Productivity を改善していくために内製ツールで GitHub や CI などのメトリクスをモニタリングする取り組みを進めています。Quipper ではこのようなシステム共通のコンポーネントを System Components と呼んでいます。 Service Level や Developer Productivity を継続的に改善していくには、コンポーネントの設定変更を素早く試したり、新しいコンポーネントを簡単
概要 freeeではAmazon Web Services (AWS) Elastic Kuerbentes Service (EKS) 上にほとんどのアプリケーションが載っており、EKSへのデプロイ基盤としてはOSSの ArgoCD を利用しています。 ArgoCDから各クラスタにデプロイを行うため、非常に中央集権的なアーキテクチャとなっています。そのため、ArgoCDのバージョンアップは安全かつ迅速に行う必要があります。 本記事では、ArgoCDのバージョンアップの際に行っている取り組みをいくつか紹介します。 かなりマニアックですが、イントロダクションとまとめだけでも読んでいただければ幸いです。 イントロダクション 2023/04からfreeeでPlatform Deliveryチームに所属している gussan です。 Platform DeliveryチームはCI/CD全般のPla
これはGitOps用ツールに ArgoCD と Flux2 のどちらを選ぶか考えるための調査資料です。 ArgoCD v1.7.8 と Flux2 v0.2.2 の比較をします。 Flux2についてはまだ使い込んでいないので、誤ったことを書いているかもしれません。何か変な記述を見つけたら教えて下さい。 背景 Flux(Flux2) と ArgoCD は GitOps を実践するためのソフトウェアです。 役割がかぶっているため、インフラ構築時には基本的にどちらか片方を選択することになります。 GitOps は Weaveworks の提唱した概念で、この会社は Flux の開発元です。 ArgoCD の開発元は Intuit です。 いずれも k8s ネイティブな OSS プロダクトとして作られています。 Flux2 はもともと GitOps toolkit (=gotk) という名前で開発
Helm has the ability to use a different, or even multiple "values.yaml" files to derive its parameters from… できること 複数のvaluesファイルを渡すArgoCDのApplicationのパラメータでvalueを上書きリリース名の変更helm.sh/hookをargocd hookにマッピングして処理パラメータ置換に環境変数を利用できるhelm使うにあたり困ることはなさそう。 実験helmでデプロイする場合比較のためにまずは普通にhelmでデプロイしてみる。stable/wordpress chartを使う。 $ helm install wordpress-helm stable/wordpress -n install-by-helm $ helm ls NAME NAM
やりたいこと 前回はArgoCDをインストールしたEKSクラスター内にArgoCD経由でアプリケーションをデプロイしました。 今回は、ArgoCDをインストールするクラスターと、アプリケーションをデプロイするクラスターを別にした構成を作ってみたいと思います。かつ、この2クラスターは別々のAWSアカウント上に置きます。 ついでに、新たに学んだことを色々盛り込んでいきます。 前提条件 kubectlのインストール Argo CD CLI のダウンロード - 前回の「Argo CD CLI のダウンロード」項を参照ください。 ArgoCDをインストールするEKSクラスターを作成 今回使用するAWSアカウントではAWS SSOでAdministratorAccess権限のロールが使えるので、aws configure ssoでそのロールのクレデンシャルでクラスターを作成します。 こんな感じのAWS
ArgoCDことはじめとして、Getting Startedをやってみたレポートです。ArgoCDをインストールし、インストールしたクラスター内にアプリケーションを作成します。 環境 macOS Catalina 10.15.7 (19H524) 前提条件 kubectlのインストール EKSクラスター作成 以下を使ってEKSクラスターを作成します。 コンテキストの作成を忘れずに。 % aws eks update-kubeconfig --name blue-with-module ArgoCD インストール % kubectl create namespace argocd namespace/argocd created % kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/st
この記事から得られる知識 この記事を読むと、以下を "完全に理解" できます✌️ Kubernetesのマルチテナントパターンの種類 マルチテナントパターンをArgoCDで実践する場合にオススメのパターン (★) ArgoCDのNamespacedスコープモードとClusterスコープモード ArgoCDのテナントが防いでくれる誤った操作の具体例 記事のざっくりした内容は、以下のスライドからキャッチアップできちゃいます! この記事から得られる知識 01. はじめに 02. なぜマルチテナントが必要なのか シングルテナントの場合 マルチテナントの場合 03. Kubernetesのマルチテナントパターン マルチテナントパターンの一覧 Clusters as-a-Service Control Planes as-a-Service Namespaces as-a-Service カスタムリソ
ArgoCD Image Updater とは ArgoCDによって管理されているkubernetesのワークロードのイメージを自動的に更新してくれるツール 新しいイメージの更新を自動的に検知して、kubernetesのワークロードに適応してくれる kubernetesのyamlをいちいち更新する必要なし ArgoCDによって管理さているのApplicationリソースに annotation を付与することで細かい設定を行う Kustomize、Helmによって構築されているApplicationに対してのみ利用可能 導入方法 詳しい導入方法は公式ドキュメントを参考にしてください。 ここでは僕の行った導入例を紹介します。 僕の環境では以下のような構成で管理しています KubernetesクラスタはGKE(v1.18) KubernetesのリソースはArgoCD(v2.0.0) + Ku
こんにちは、かたいなかです。 Kubernetes内のリソースを管理する際、Argo CDでのGitOpsは優れたGUIを備えていることなどから魅力的です。最近ではArgo CD Image Updaterというコンポーネントもあるため、Kubernetesでデプロイしたアプリケーションのイメージの更新まで自動で行えるようになっています。 今回はそんなArgo CD Image Updaterのv0.12.0から入った機能で、PRによるアプリケーションのイメージの更新が簡単に自動化できるようになっていたため、実際に動かして検証していきます。 目次 目次 Argo CD, Argo CD Image Updaterとは 個人的に使いづらかった点 新機能 実際にやってみた 検証した環境 Argo CDのインストール 書き込みブランチを指定する機能を試す GitHub Actionsと組み合わせ
しばらく業務で Docker/Kubernetes に触らせてもらってその中で CircleCI や Heml などの技術を学んできました。 そんな時次にぶつかった壁がArgo CDです。原因は圧倒的な日本語による解説記事の少なさです。 Qiita でも ArgoCD のタグをつけられている記事は執筆現在23 記事です。少ない。。 この記事では ArgoCDとは何のためのツールか ArgoCDの理解の上で避けて通れない GitOps とは何か と言うことを初心者なりにざっくりですがまとめていきます。 ツッコミや補足などあれば是非コメントかTwitterまでよろしくお願いします! ArgoCD って何なの? https://argoproj.github.io/argo-cd/ Argo CD follows the GitOps pattern of using Git repositor
今回はArgoCDでマルチテナント向けに利用できる Project という機能について整理しようと思います。 ここ最近のArgoCDのアップデートにもProjectに関するものが含まれていたので、そちらも試しています。 Projectとは Projectの基本的な使い方 ローカルユーザーの作成 Projectの作成 RBACの設定 アクセスのテスト Projectに関連する機能 Orphaned Resource Monitoring Global Project Project scoped Repositories & Clusters その他 Projectとは ArgoCDでは、Applicationというカスタムリソースの中にGitリポジトリやデプロイ先のクラスター・Namespaceなどの情報を設定します。Projectは、このApplicationを論理的にグループ分けするカ
Containers Cloud Native CI/CD with Tekton and ArgoCD on AWS Introduction With the ongoing popularity and adoption of container orchestrators such as Kubernetes, more and more cloud-native applications are built on top of it. Besides business applications, companies are migrating their infrastructure-related components such as CI/CD systems as well. But are those systems ready for such modern platf
こんにちは、スタディサプリ ENGLISH SRE グループの中田です。現在アルバイトとしてチームに所属しています。 タイトルの通りですが、この記事ではArgoCD Resource Hooksを用いたArgoCDのsync通知をslackで受け取る方法をご紹介します。 前回の木村の記事1)Amazon EKSでのArgoCDを使ったGitOps CDで詳しい紹介がなされていますが、現在スタディサプリ ENGLISHではArgoCDを用いたCDのフローを構築しています。 現状sync完了のSlack通知を用意しておらず、ArgoCDのダッシュボードを見に行く必要があり、syncが終わっているのかわからない、syncが失敗していてもすぐに気がつくことができないといった問題がありました。 方法 syncの終了やsyncの失敗はArgoCD Resource Hooksを用いて検知することができ
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く