ユニバーサルJavaScriptサーバーNitroをAWS Lambdaにデプロイする
2022-04-19にハイブリッドVueフレームワークのNuxt3がRCバージョンになりました。 https://nuxt.com/blog/nuxt3-rc Nuxt3はVue3やTypeScript、Vite対応等の様々な改良・機能追加がありますが、大きな変更の1つにNitroエンジンの搭載があります。 Nitro Nitro自体はNuxtに依存するものではなく、Node.js上で動作する軽量・高速JavaScriptサーバーです...
記事を読むSecrets Store CSI DriverでKubernetesのシークレット情報を管理する
以前に以下の記事で、Kubernetes上のアプリケーションのシークレット情報を暗号化してGit管理する方法をご紹介しました。 SealedSecretsでKubernetesコンテナのシークレット情報をGit管理する ここでは、KubernetesのSecretオブジェクトを暗号化されたSealedSecretオブジェクトに変換することで、シークレット情報を安全にGit管理しました。 ただし、より厳格な組織だと、専用の暗号化ストレージにシークレット情報を完全に分離する必要があったりします...
記事を読むVue3コンポーネントをnpmモジュールとしてAWS CodeArtifactにデプロイする
Vue.jsのようなコンポーネントフレームワークを使ってある程度の規模の開発を進めていくと、作成するコンポーネントは膨大になってきます。 その結果、似たようなコンポーネントが乱立し、メンテナンスが難しい状況に陥るのはよくあることです。 この課題に対する有力な解決策は、再利用可能なコンポーネントをnpmモジュールとしてプライベートnpmレジストリに登録することです...
記事を読むOpenID Connect でパスワードレス認証を使う
庄司です。 「WebAuthn でパスワードの無い世界へ」に続く「Envoy Proxy による HTTPS Proxy」の記事でプライベートネット内にパスワードレス認証ができる環境構築の方法を説明しました。この記事では、OpenID Connect の Code Flow を使ってパスワードレス認証を説明します。 サービスの概要 # 題材は宇宙船の冬眠ポッド (hibernation pod) です...
記事を読むWebAuthn でパスワードの無い世界へ
庄司です。 複数のサービスにアクセスするための異なるパスワードを記憶しておくことは困難で、結果としてパスワードを使いまわすといったセキュリティリスクの高い行動パターンをとりがちです。 最近のスマートフォンやPCでは指紋認証や顔認証のような生体情報を用いた認証が可能になっています。このようなデバイスを活用してより安全性の高い認証の仕様として、FIDO2 (WebAuthn) があります...
記事を読むAmazon ECRのライフサイクルポリシーで開発環境向けのイメージのみ削除する
つい先日、EKSを利用している社内システムで、とあるPodが起動できない障害がありました。 単純な原因でしたが、恥ずかしながらECRのライフサイクルポリシーに関して理解できていなかったので、ここでは自戒の念を込めて投稿します。 原因 - ライフサイクルポリシー # 問題のPodの状態を探ってみると、PodからコンテナイメージのPullに失敗しているようでした。 さらに失敗原因を調べてるみると、コンテナレジストリ(ECR)に対象のイメージが存在していませんでした...
記事を読むTelepresence - EKSのワークロードをローカル環境でデバッグする
クラウド環境で動作しているアプリケーションのデバッグはどうしていますか? ローカル環境であれば、ローカルプロセスで起動したアプリに対してお気に入りのIDEで簡単にデバッグできますが、クラウド環境の場合はそうはいきません。 デバッグ用のコードを埋め込んでデプロイして、原因が分かったらコードを修正して、再びデプロイして。。...
記事を読むADFSとCognito Userpoolsの連携
庄司です。 ブラウザなどの UI からアクセスするマイクロサービスでは JWT 認証 (OpenID Connect 等) を利用することが一般的です。AWS を利用している場合には、Amazon Cognito user pools (Cognito Userpools) で JWT の発行が可能です。 Cognito Userpools を利用する場合には、システムにアクセスするユーザーをこのサービスに登録する必要があります...
記事を読む分散トレーシング(OpenTelemetry / AWS X-Ray)
前回はOpenTelemetryとJaegerを使って、エンドツーエンドでトレース情報を収集・可視化をしました。 ここで利用したJaegerは分散トレーシングに特化したOSSプロダクトで高機能ではありますが、実際に運用する場合は、その構成を慎重に検討する必要があります。 例えば、以下の対応が必須で必要となるでしょう...
記事を読むServerless Framework Composeで複数サービスをまとめて管理する
2022/04/20にServerless Frameworkの新機能Serverless Framework Composeがアナウンスされました。 Introducing multi-service deployments via Serverless Framework Compose 名前からも想像できるようにDocker Composeのように、Serverless Framework Composeは関数のオーケストレーションをするものです...
記事を読む