AKSやVMで複数マネージドIDに紐付けるとIdentity not foundとなり認証できなくなる件

結論 事象 事象の深掘り 原因を調査 Addon設定前 Addon設定後 最後に 参考URL 結論 複数のマネージドIDを紐付けている時には、認証時にどのマネージドIDを利用するか指定する必要があります。 こう書くと当たり前の話ですが・・ハマりました。 以下の例ではA…

Kubernetes KEDAのログレベルを変更する

KEDAは常時起動でポーリングしQueue等をチェックしているので、結構なログの量になります。 現時点でログのレベルは debug, info, error の3つが設定可能で、デフォルトはinfoとなっています。 https://github.com/kedacore/keda#keda-operator-logging この…

Azure PipelinesでAKSプライベートクラスタにデプロイを行う

AKSはAPIサーバーへの通信をプライベートに限定するプライベートクラスタを構築することが可能です。 ただしDevOpsでCI/CD組もうとすると通常のAKSクラスタだと簡単に統合できたところが、プライベートクラスタだと上手くいきません。(API叩けないので当然で…

WSLで777となったファイルやディレクトリをchmodでumaskの値に一括変更

小ネタです。 経緯 何も設定していないWSL上で普通のLinuxみたいに開発していたらパーミッションが 777 になってしまいます。 これを避ける設定として以下のような設定があります。 wsl.conf を設定して、 $ cat <<EOF | sudo tee -a /etc/wsl.conf [automount] options = "metadata" EOF WSLを再起動。 > wsl --shutdown PC交換後にこれを忘れてい</eof>…

kustomizeのvarsを使って環境毎の変数をKubernetesの定義に埋め込んでみる

KubernetesのYAMLを環境毎のに分ける時にkubectlに標準で入っているkustomizeを使ってるのですが、サンプルなどに書かれている patchesStrategicMerge では以下のようなYAML内の値に変数を埋め込めないな。と考えていました。 kustomizeのリポジトリを見てい…

Azure Kubernetes ServiceのPod上でkubectlコマンドをマネージドID認証して実行

AKSでもマネージドIDが使えるようになったことで、KubernetesのPodから定期ジョブなどでkubectlを実行したい時にAzure CLIで認証できるようになりました。 前提 コンテナイメージをビルド ENTRYPOINTのスクリプト イメージのビルド ACRにイメージをビルド Ku…

Azureリソースのマネージド ID(旧MSI)の権限をCURLでREST APIを実行して検証する

最近、AKSも対応したマネージド ID(旧MSI)です。これで認証情報をローカルに持たなくてもAPIが叩けるようになりました。 docs.microsoft.com 権限の検証はAzure CLIやSDKでも検証できますが、ここでは手っ取り早くcurlで検証する方法を記載します。 仮想マシ…

エンジニアのリモートワーク・在宅勤務における腰痛対策の例

東京に出るまで片道2時間以上かかるところに住んでいることもあり、コロナ禍に関係無く、ここ1年半くらいリモートワーク中心のワークスタイルでやってきています。 リモートワークメインになって立って歩くことが激減しました。そこでダメージが溜まるのが腰…

TerraformでAzure DevOpsをプロビジョニングする

タイトルの通り、Terraform使ってAzure DevOpsをプロビジョニングする方法です。 前提 組織登録 Personal Access Tokenの取得 Terraform定義準備 Terraformの定義の準備 Azure DevOps Providerのインストール Terraformの実行 スキーマの確認 前提 組織登録 …

KEDAを使ってServiceBus Queueに合わせてKubernetesジョブをスケールする

KEDAは「Kubernetes-based Event-Driven Autoscaling」の略で、イベントをトリガーとしてKubernetesのデプロイを管理することを目的としたCRD(Custom Resource Definitio)で、イベントを使ってpodを0~nにスケールイン・アウトできる機能です。 KEDA is a Ku…

Azure Kubernetes ServiceのPodからManaged identities(旧MSI)認証でKey Vaultの情報を取得する

Key Vaultに保存した情報をAKS上のPodから取得するような要件は良くあると思います。でもKey Vaultへの認証をどうしたものかと思っていました。Service Principal使えば良いのですが、AKSでもMSIを使えたら良いなと思い調べていたところ、以下の情報がドキュ…

Azure Kubernetes Serviceデプロイしたらvirtual-nodeが機能しなかったので対応メモ

virtual-nodeアドオンは、Azure Container InstancesをAKS(Azure Kubernetes Service)の仮想ノードとして利用できる便利な機能です。 azure.microsoft.com Azureのウィザードで作成している分には問題無く動いていたのですが、環境構築をTerraform化した際に…

Google Cloud Certified Professional Cloud DevOps Engineerを取得してきました

Google Cloud Certified Professional Cloud DevOps Engineerを取得してきました。 試験情報 試験内容 ここは勉強しておいた方が良い これでGCP 6冠 試験情報 試験時間 2時間 問題数 50問 言語 英語 模擬試験も、申し込みも英語は英語用のリンクからの方が辿…

「しくみがわかるKubernetes~Azureで動かしながら学ぶコンセプトと実践知識」を読んだ

今度、Kubernetes使うので、復習としてこちらの書籍読みました。 しくみがわかるKubernetes Azureで動かしながら学ぶコンセプトと実践知識作者:阿佐 志保,真壁 徹発売日: 2019/01/23メディア: 単行本(ソフトカバー) 構成 目次は以下でした。 第1部 導入編 …

MinikubeでACR(Azure Container Registry)を使う

MinikubeからACRにアップロードしたコンテナイメージを利用する方法です。 変数設定 ACRの準備 Service Principalの作成と認証情報取得 Minikubeに認証情報の登録 その他 認証情報を更新する Dockerでログインしてみる 設定の確認 参考URL 変数設定 Azureに…