2021-01-01から1年間の記事一覧
Alcide sKanを試してみたメモ。 https://github.com/alcideio/skan 導入 バイナリをダウンロードしてパスの通ったディレクトリに置く。 実行 適当なマニフェストを作る。 k create deploy nginx --image=nginx --dry-run=client -o yaml > nginx.yaml 検査を…
kubesecを試したメモ。kubesecというとSecretのマニフェストを暗号化するshyiko/kubesecのほうが有名な気もするが、controlplaneio/kubesecのほう。 https://github.com/controlplaneio/kubesec 導入 導入は以下の方法で可能。 コンテナイメージ バイナリ ア…
kubeauditを試してみたメモ。 https://github.com/Shopify/kubeaudit 導入 brew install kubeaudit 実行方法 3つのモードがある。 マニフェストモード ローカルモード クラスターモード マニフェストモード 適当なマニフェストを作る。 k create deploy ngin…
以下のブログを試したメモ。 (6/28にSecretとのSyncまでやり直して更新) https://aws.amazon.com/jp/blogs/security/how-to-use-aws-secrets-configuration-provider-with-kubernetes-secrets-store-csi-driver/ https://aws.amazon.com/jp/blogs/news/how…
EKSでランタイムデフォルトのseccompプロファイルが使用できるかを確認する。 https://aws.github.io/aws-eks-best-practices/security/docs/runtime/ Dockerのデフォルトで適用されるプロファイルは以下に記載がある。 https://docs.docker.com/engine/secu…
以下ブログを翻訳しようとしたが、SPIFFEが全然わからなかったので、SPIFFEのチュートリアルを試したメモ。 https://aws.amazon.com/jp/blogs/containers/using-mtls-with-spiffe-spire-in-app-mesh-on-eks/ 参考リンク Quickstart for Kubernetes 注目のSPI…
Cloud9からAurora MySQLやAurora PostgreSQLに接続してバージョンを確認したメモ。 MySQL mysqlクライアントはインストール済み。 接続する。SSL が必要な時は、--ssl を付与する。 ENDPOINT=<エンドポイント> mysql -h ${ENDPOINT} -P 3306 -u admin -p バ…
EKSでKubeFedを試してみたメモ。 コンポーネント バージョン Kubernetesバージョン 1.18.9 プラットフォームバージョン eks.3 kubefedctl 0.6.1 kubefed 0.6.1 kubefedチャート 0.6.1 参考リンク https://github.com/kubernetes-sigs/kubefed/tree/master/ch…
このAWSソリューション実装を理解するために、先ずそもそもKubeFedのクイックスタートを試してみたメモ。 https://github.com/kubernetes-sigs/kubefed クイックスタート リポジトリをクローンする。 git clone https://github.com/kubernetes-sigs/kubefed.…
以下のセッションを見ていたら自分の記憶とちょっと違ったので確認したメモ。 ケース別に考えるPod間通信制御の話 具体的には以下の点。 ALBからのIngress接続を許可するため、VPCのIPブロックを許可すると、Podが全部接続可能になってしまう(PodはVPC CNI…
VSCodeのKubernetes拡張やLensでEKSに接続しようとしたとき、コンテキストを選択してもAWSプロファイルが適切でないと接続できないので、どうしたらいいのか調べたメモ。 .kube/configのuserフィールドにあるトークンを取得するコマンドに環境変数としてプロ…
以下のAWSブログにしたがってEKSでFalcoを試したメモ。 Implementing Runtime security in Amazon EKS using CNCF Falco もう一つFalcoに関するAWSブログがあるが、内容がちょっと古い。 Securing Amazon EKS Using Lambda and Falco コンポーネント バージ…
よく ECS タスクが上手く起動しなくてハマるので、ハマったポイントをメモしておく。 コンテナのポートを間違えていてヘルスチェックに失敗している ALB からのヘルスチェックがセキュリティグループにブロックされている AmazonECSTaskExecutionRolePolicy …
ひさしぶりにCDKを使おうとして環境の更新方法を忘れてたのでメモ。 Node.js Node.jsはnodenvを使って導入している。 CDKの要件はNode.js 10.3.0以上で最新のLTSバージョンが推奨。 Getting started with the AWS CDK - AWS Cloud Development Kit (AWS CDK)…
Kyvernoを試してみたメモ。AWSブログにしたがって試す。 参考リンク https://kyverno.io/ Easy as one-two-three policy management with Kyverno on Amazon EKS Kyvernoのインストール クラスターを作成する。 eksctl create cluster -f cluster.yaml マニ…
QoS ClassとPriorityClassの違いがわからなくなったので、調べたメモ。 QoS ClassとPriorityClassは2つの独立した無関係の機能。 QoS Classはノードのリソースが不足した際にEviction ManagerがPodをEvictionする際に使われる。PriorityClassはSchedulerがス…
ワーカーノードのロールにAmazonSSMManagedInstanceCoreを付与する。 マネージド型ノードグループの起動テンプレートでユーザーデータに以下を書く。 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content…
Ciliumの理解が進まないので、Getting StartedをKindでやってみたメモ。 Getting Started Using Kind クラスターの作成 kind-config.yamlを作成する。 kind: Cluster apiVersion: kind.x-k8s.io/v1alpha4 nodes: - role: control-plane - role: worker - rol…
以下のjsonにフィールドを追加したかったのでやり方のメモ。 { "cniVersion": "0.3.1", "name": "aws-cni", "plugins": [ { "name": "aws-cni", "type": "aws-cni", "vethPrefix": "eni" }, { "type": "portmap", "capabilities": { "portMappings": true },…
EKSでCiliumをネットワークポリシーエンジンとして使う方法を試してみる。CNIとしてCiliumを使う方法と、ネットワークポリシーエンジンとしてだけ使う方法があるが、後者。 https://docs.cilium.io/en/v1.9/gettingstarted/k8s-install-eks/ https://docs.ci…
EKSでCNIとしてCalico等を使うと、AdmissionWebhookが上手く動かないので、Istioのオートインジェクションが使えないらしいので確認する。 また、VPC CNI Pluign + Calicoなら大丈夫かを確認する。 https://github.com/istio/istio/issues/16434 クラスター…
Lambdaのコンテナイメージサポートを確認しつつ、実行ユーザーを確認したメモ。 参考リンク AWS Lambda の新機能 – コンテナイメージのサポート イメージの作成 イメージを作成する。RIC導入済みのベースイメージは以下のリンクに記載がある。Pythonのイメー…
Seccompに入門したメモ。 SeccompはDockerではデフォルトで有効でDocker用の制限されたプロファイルがある。Kubernetesではデフォルトでは有効ではなく、指定する必要がある。ランタイムのデフォルトを参照することは可能。 参考リンク Restrict a Container…
AppArmorに入門したメモ。 AppArmorが使えるLinuxディストリビューションではDockerではデフォルトで有効で、Docker用の制限されたプロファイルがある。Kubernetesではデフォルトでは有効ではなく、指定する必要がある。ランタイムのデフォルトを参照するこ…
kubeadmクラスターでauditログを有効化するメモ。 参考リンク https://kubernetes.io/docs/tasks/debug-application-cluster/audit/ https://github.com/killer-sh/cks-course-environment/tree/master/course-content/runtime-security/auditing 手順 ディ…
CKSコースで、コンテナをイミュータブルにするための強制方法の一つとして、starupProbeを使ってbashを取り除く方法が紹介されていたのでメモ。 そもそもstartupProbeを知らなかったが、1.18でベータ、1.20でGAしている。livenessProbe、readinessProbeに続…
Falcoを試したメモ。 参考リンク https://falco.org/docs/ https://v1-16.docs.kubernetes.io/docs/tasks/debug-application-cluster/falco/ インストール DaemonSetとしてインストールすることもできるが、ここではスタンドアローンでインストールする。 ht…
straceの使い方と/procディレクトリに関するメモ。 straceはプロセスが読ぶシステムコールをトレースするユーティリティ。内部的にはptraceというシステムコールを使っている。 コマンドを引数で渡す。 root@cks-master:~# strace ls execve("/bin/ls", ["ls…
ImagePolicyWebhookを有効にする手順を確認したメモ。実装はないので動かない。手順の確認のみ。 参考リンク https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#imagepolicywebhook https://github.com/killer-sh/cks-course…
プライベートレジストリのイメージを実行する手順を確認したメモ。 PublicなDockerHubに置いてあるsotoiwa540/flask-sampleをpullしてきてECRにpushする。 docker pull sotoiwa540/flask-sample:latest aws ecr create-repository --repository-name flask-s…