ローカル環境(kind)でingressを試す

はじめに kind (kubernetes in docker)でIngressを作成したい場合、ingress controllerを使う必要があります。 しかし、ドキュメント通りに実行してもM1 macなどのApple シリコンでは動きません。 理由は hashicorp/http-echo が arm64に対応していないから…

忙しい人向け: docker composeでnginxを立てる

ディレクトリ構造 $ tree . ├── README.md ├── conf.d │ └── default.conf └── docker-compose.yaml docker-compose.yaml version: '3.9' services: app: image: nginx:1.23-alpine ports: - "8080:80" volumes: - "./conf.d:/etc/nginx/conf.d" conf.d/defa…

go言語のライブラリ、samber/loのGroupByが便利!

はじめに go言語で実装をしていると、特定の条件に従ってスライスを複数のスライスに分割したい、というケースに遭遇します。 イメージとしてはこんな感じです。 sliceA, sliceB := SplitSlice(slice) 素直に実装するならば、関数内部で条件分岐して対応して…

Professional Cloud Architect 合格しました

GCP

はじめに 2021年9月に転職してから半年(2022年3月)が経過し、Professional Cloud Architectを受験しに行きました Associateに合格したときは以下にあります ktbbrk.hatenablog.com 対策 主に試験対策として使った教材は以下の2つです。 問題集はテスト1つあ…

golang genericsでswitch-caseをする

はじめに Go言語では1.18でgenericsの機能が入ってくるので勉強していたのですが引数に型パラメータがあった場合どのようにswitchするのか気になったので備忘録を残します 引数の型が interface{}のとき proposalに書いてるswitch文を見てみるとcaseの部分で…

Grafana 8のアラートはprovisioningできないのか?

はじめに Grafanaでalertの設定 (Notification policies, Contact points)をしたいときダッシュボードのjsonファイルのように通知先の設定もyamlなどで定義したいと考えると思います 同じく悩んでいる人がいることが以下のリンクから確認できます Provisioni…

TweetDeckにリストからtweetを検索する方法

ケース 複数アカウントから特定のtweetのみ検索したい、でもリツイートは表示したくない 手順 まずはじめに検索の対象にしたいアカウントのリストを作成します。作成の仕方は以下のリンクを参考にしてください help.twitter.com 作成が終わり、リストを表示…

GCP Associate Cloud Engineerに合格しました

はじめに 2021年9月に転職してからGCPを業務で使用することになりました。 筆者の技術レベル アプリ開発でAWSを1年ほど触っていた (資格は持っていない) GCPは2021年12月に受けた時点で経験3ヶ月 kubernetesはkindやminikubeで触ったことがあるレベル 対策 …

Argo CD NotificationsでSlackに通知をしてみる

はじめに 対象 目標 前提 前準備 Argo CDを立ち上げる guestbookのApplicationを作成する Slackでappを作成する Secretを作成する ConfigMapを作成する kustomization.yamlを編集する ディレクトリの確認 argocd-notificationのインストールと一緒にkustomiz…

kind + Kustomization + Argo CDのローカル環境を作成する

はじめに 対象 目標 前提 前準備 kindでclusterを作成する contextを確認する ディレクトリを作成する Argo CDをインストール namespaceの追加 kustomization yamlの追加 ディレクトリ確認 applyを実行してArgo CDをインストールする リソースの確認 Argo CD…

golang + ElasticSearch(docker)を触ってみる

はじめに 対象 環境 コンテナを立ち上げる Infoを取得してみる データをpostしてみる データを取得してみる まとめ はじめに 検索機能をelastic searchを使って実装したいけど、何ができるかわからないし、どうやって実装して良いのかもわからなかったので g…

aws ecs & Fargateでhelloを表示する

はじめに 対象者 前提条件 1, コンテナイメージを用意しよう 使用するファイル イメージのビルド ローカル環境でコンテナを実行する 2, ECR (Elastic Container Registry)にイメージをpushする 3, ECSでクラスターを作成しよう 4, タスクを定義しよう 4, タ…

aws-cdkをupdateしようとするとversionが上がらず、なぜかnpmが消える

現象 npmを再インストール 原因 解決策 現象 aws-cdkのバージョンを1.71.0から1.93.0に上げようとコマンドを入力しても何も起こりませんでした しかもなぜかnpmが消えるという現象に・・ ~ $ cdk --version 1.71.0 (build 953bc25) ~ $ npm update -g aws-cd…

aws-cdk(Typescript) error :Argument of type 'xx' is not assignable to parameter of type 'IConstruct'. Types of property 'node' are incompatible.

はじめに 環境 原因 確認 方法1: 方法2: 解決方法 まとめ はじめに そこのあなた! もしかして、aws-cdkで型はあっているのに下のエラーメッセージが出てきてお困りではありませんか? Type 'import("/<ディレクトリまでのパス>/node_modules/@aws-cdk/aws-i…

aws-cdk(typescript)のテストで RangeError: Maximum call stack size exceededが出た

現象 cdkコマンドでコードを自動生成した後に以下のようなサンプルのテストコードがついてきます import { expect as expectCDK, matchTemplate, MatchStyle, } from "@aws-cdk/assert"; import * as cdk from "@aws-cdk/core"; import * as multiAz from ".…

aws-cdk(typescript)でVPCを作成してみよう

はじめに 環境 環境構築 ローカルにインストールでは動かない?? credentialを設定しよう appを作成しよう VPCを作成しよう VPCのみ作成したい subnetを追加しよう まとめ はじめに 今回は aws-cdkを使用してVPCを作成していきたいと思います nodejsが入って…

NoSQL Workbenchとdynamodb-localでローカル開発環境を構築する

はじめに 本記事について 環境 対象 環境構築 aws cliのインストール dynamodbコンテナを立ち上げる aws cliからdynamoテーブルを作成する NoSQL Workbenchをダウンロード NoSQL Workbenchを起動する テーブルを削除する amazon/aws-cliとamazon/dynamo-loca…