新しくクラウドサービスを学ぶ時Infrastructure as Codeから始めてる話

背景 クラウドサービスのキャッチアップにおける課題 サービス間連携が多い 新機能追加のスピードが速い すぐ忘れる 勉強時にインフラコードを書くようにしてみた 以前のステップ 現在のステップ Infrastructure as Codeについて 使っているツール メリット …

Amazon ECSをInternal ALB公開する基本構成のCloudformation

ECSにデプロイしたWEBサービスを内部ALBで公開するためのベースとなるCloudformationを作りました。 構成概要 パラメータ ソースコード 使い方 Cfn補足説明 ALB ECS Role ECS Cluster ECS Task さいごに 構成概要 実際は要件次第で色々付け加えると思うので…

Ansibleからsetup_air.shを実行してRaspberry PiとSORACOM Airを設定する

SORACOMでSIMカードとUSBドングルを購入して、さあRaspberry Piで設定となった時にドライバとかどうしようとなるのですが、SORACOMから設定スクリプトの setup_air.sh というものが提供されています。 dev.soracom.io 基本はこのスクリプトを実行すればSIMの…

AZ-220 Microsoft Azure IoT Developerに合格してきました

動機 勉強方法 Azure IoT関連サービスへの 所感 最後に久々のオンライン試験について 午前中に合格してきました。点数もまあ及第点かなと思います。 動機 実際の仕事ではAWS IoTやGreengrassを利用しているのですが、設計アプローチに幅を持たせたいと思い、…

M5StickC Plusを使ってRS485でModbus RTU通信してみる

IoT

M5StickC Plusを手に入れたので少し動かしてみました。 www.switch-science.com はじめに 開発環境を整える IDEの準備 M5StickC Plusの開発環境準備 Modbus-RTU通信準備 RS485通信用のHatの購入 Modbus通信に利用するライブラリを導入 コード 動かしてみる …

2020年の仕事で使った技術を振り返る

2020年の仕事を振り返ってみようと思います。 書いて見返してみると、本当に技術のことばかりですね。仕事と言うより、技術好きのただの趣味みたいな感じなのでしょうがないか。 はじめに 今年仕事で使った技術 AWS Azure GCP Other 全てのプロジェクトにIaC…

AWS Lambdaのコンテナイメージ上のkubectlコマンド実行してEKSを管理してみる

Lambdaのコンテナイメージからkubectlを実行してEKSを操作してみます。AWS Lambda runtime API 辺りが少し面倒ですが、総じてとても便利です。 なじみの人が多いだろうシェルスクリプトで実装していきます。 はじめに 最初に読んでおくべきもの 実装 Lambda…

SORACOM Napterで複数SIMからSSH先を選択して接続できるスクリプト作った

この記事はBeeX Advent Calendar 2020の12/15の記事です。 SORACOM NapterはオンデマンドでデバイスへのテンポラリかつセキュアなSSH接続を開けるサービスで、コロナ禍で現場に行くのが難しくなった中、自分の中でますます活躍の場が増えてるサービスです。 …

Falcoとaws-for-fluent-bitを使ってCloudWatchにEKSノード上の危険なシステムコール情報を収集する(Proxy環境)

この記事はBeeX Advent Calendar 2020の12/12の記事です。 EKSのデータプレーンをどう選ぶか考えたとき、個人的にはFargateを積極的に使いたいところですが、まだ制限も多くて要件にフィットしない場合もあります。 そんな時に選択肢として挙がるManaged Nod…

Amazon EKSのPrivate ClusterでContainer Insightsを動かす(インターネット接続不可環境)

この記事はBeeX Advent Calendar 2020の12/4の記事です。 直接インターネット接続不可の環境に構築したEKSのPrivate ClusterでContainer Insightsを動かそうとしたら、ハマりどころが多かったので残しておきます。 前提 方針 Container Insights設定事前作業…

Amazon EKSのService Accountをawscliやkubectl使ったスクリプトで作成する

この記事はBeeX Advent Calendar 2020の12/3の記事です。 Service Accountの仕組みを理解するために、Step By Stepでスクリプト化してみました。 スクリプト 使ってみる 名前空間の作成 スクリプトの実行 ServiceAccountの確認 やっていることを少し解説 1.O…

EKSにOPA GatekeeperをHelmでインストールしてポリシー強制をしてみる

OPA Gatekeeperとは 作業環境 インストール 必須Labelを強制する ポリシーテンプレートの作成(ラベル強制) 制約の作成・適用(ラベル強制) ポリシー違反のテスト ポリシー違反のテスト(正常系) 掃除 Container Registryを強制する ポリシーテンプレート…

EKSでaws-load-balancer-controller使ってInternalのALB Ingress Controllerを作成する

PrivateSubnetに構築したEKSにInternalのALBをIngress Controllerとして構築する作業のメモです。 参考URL PrivateSubnetへのタグ付け EC2ロール作成 CRDの登録 Helmでaws-load-balancer-controllerをインストール テストサーバーのデプロイ 掃除 参考URL 最…

AWS IoT SQLでINT等の整数で渡されたBIT FLAGの値を取り出す

課題 対応 課題 AWS IoTに飛んできていたINT等の整数データが実はビットのフラグが並んだものだった場合、AWS IoT SQL使うとフラグに直して後続に渡すことも可能です。 対応 例えば my_data という項目に8ビットフラグの整数が渡されてきた場合、以下の関数…

DataflowのWriteToBigQueryでRuntimeValueProviderで渡した日付のパーティション分割テーブルを作る

DataflowでRuntimeValueProviderで渡した値を使って、BigQueryのパーティション分割テーブルを作成しようとしたら、WriteToBigQueryでハマったので書いておきます。 課題 対策 参考URL 課題 日付のパーティション分割テーブル自体をWriteToBigQueryで作成す…