BFT名古屋 TECH BLOG

日々の業務で得た知識を所属するエンジニアたちがアウトプットしていきます。

自動化

【Ansible】「No inventory was parsed, only implicit localhost is available」を解決する!

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 気づけばもう3月下旬。名古屋の桜も満開です! さて、今回はAnsibleで発生したエラー「No inventory was parsed, only implicit localhost is available」の対応につい…

【Rspec・Serverspec】「NoMethodError: private method `select' called for nil:NilClass」を解決する!

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 Windowsの作業PCで開発を進めて早一カ月。開発の環境はLinuxでWindowsのとあるフォルダをマウントし、その中の開発資材をGit管理しています。 全体の構成は以下の図の…

【VSCode・docker】VSCodeからのrakeコマンド実行で「LoadError: cannot load such file -- rspec/core/rake_task」が発生する

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 DockerfileでAnsibleとServerspecを実行できるイメージを作成しました。しかしVSCodeからコンテナに接続して「rake -T」コマンドを実行するとエラーが発しました。 今…

【Asnible・Serverspec】Ansible_specを利用して構築と単体テストを一緒に行おう!

はじめに こんにちは! 自動化大好き、株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 Ansibleで自動構築をしていると、テストで画面キャプチャを取得したり、ログを眺めたりするのが少しもったいなく感じます。構築と一緒に設定値確認や一…

【GCP・VSCode・WSL2・docker・Sourcetree】Windows PC上で快適に開発する環境を作る!(2/2)

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 さて前回から引き続き、Windows PC上で開発環境を作っていきます。 今回の構成のゴールを再度確認しましょう。パッケージやソフトウェアはインストールしたので、今回…

【GCP・VSCode・WSL2・docker・Sourcetree】Windows PC上で快適に開発する環境を作る!(1/2)

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 いつの間にか2023年もひとつきが終わり、二月に突入しました。 AnsibleのPlaybookをローカルのWindows PCで開発し、GCP上で実行するために以下の構成を作ることにしま…

【GCP】GCPインスタンスの自動起動・自動停止を実装する方法

こんにちは! BFT名古屋支店の佐野です。 早速ですが、今回はGCPのお話。 これまではAWSの諸々についてお話する機会が多かったですが、GCPを利用するケースも挙がってきたこともあり、そちらについても今後触れていこうと思います。 その第1回目として、Comp…

【GitHub・Lambda関数URL】GitHubでのpushをトリガーにAWSでコードをデプロイする!(2/2)

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 このブログでは「GithubへのpushをトリガーとしてAWS側でCI/CDを実行する」を2回に分けて解説しています(実際はCDだけ。CIは後で実装予定)。 前回の記事はこちらです…

【GitHub・Lambda関数URL】GitHubでのpushをトリガーにAWSでコードをデプロイする!(1/2)

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 なかなか進められなかったCI/CDがようやく形になりました…! このブログではGithub更新イベントをトリガーとしてラズパイにコマンド実行(Systems ManagerのRun Comman…

【Github・Lambda関数URLs】「401 Invalid Signature」でAWS側へ連携できないを解決する!

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 2022年8月にAmazon EventBridgeがWebhookを介したGithub, Stripe, Twilioとの統合に対応しました。 Webhook を使用した GitHub、Stripe、Twilio からのイベント受信に …

【GitLab・GitHub】GitLabにpushされたらGitHubのリポジトリにも反映させる!(ミラーリング)

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 AWSではCI/CDやWebhookのトリガーとしてGitLabよりもGitHubの方を先に対応します。最近GitHubでpushされたことをトリガーにLambdaのWebhookをキックする仕組みを実装す…

【AWS・Slack・ワークフロー】障害対応にSlackのワークフローを使ってみた!

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 今まで名古屋支店ではGoogle Chatを情報共有の場として使っていたのですが、最近全社でSlackを使うようになり日々もっといい使い方はないかと試行錯誤をしています。 A…

【AWS・Systems Manager】SSMエージェントを自動更新しよう!

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 混雑状況を見える化するサービス「こんどる?」では各店舗にRaspberry Pi(以後、ラズパイ)を置いています。そのラズパイにUSB接続したWebカメラとGPIOピンに付けたCO…

【AWS・Systems Manager・オートメーション】承認後にEC2インスタンスを起動するワークフローを実行してみよう!

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 最近Systems Managerの素晴らしさに改めて気づかされています。運用の自動化ってここまで進んでいるんだなぁと驚きを隠せないのですが、「誰かの承認後に○○する」とい…

【AWS・Systems Manager・オートメーション】Systems Managerのオートメーションを使ってEC2インスタンスをサクっと作ろう!

はじめに こんにちは! 株式会社BFT名古屋支店・インフラ女子(?)のやまぐちです。 AWSリソースを自動で作成するとなるとまず検討されるのがAWS CloudFormationです。しかし最初の頃は「難しそう…」とか「どんな問題が潜んでいるかわからない…」など不…

【AWS】Aurora DBクラスターの自動起動・自動停止を実装する方法

2022/12/21 最新の情報に更新しました。また一部の文章を修正・更新しています。 こんにちは! BFT名古屋支店の佐野です。 前回の記事ではEC2インスタンスを自動起動および自動停止させる方法についてお送りしましたが、今回はAmazon Auroraで構築したDBクラ…

【AWS】EC2の自動起動・自動停止を実装する方法

2022/12/10 最新の情報に更新しました。また一部の文章を修正・更新しています。 こんにちは! BFT名古屋支店の佐野です。 今回はEC2インスタンスが一定時刻に起動、停止する仕組み作りについてのお話です。 EC2インスタンスは起動している間だけ料金が発生…

【Linux】【sed】ファイルの特定の複数行を抽出&置換する

こんにちは! 最近寒くなったので夕飯がお鍋になりがちな猫です。 はじめに 抽出や置換を行いたいときに便利なsedコマンドですが、正規表現や変数の使い方でハマってしまうこともしばしば‥‥。 先日も数時間使ってしまったので、備忘録を書きたいと思います。…

【Ansible・git】SSHでリモートレポジトリに接続してcloneする

はじめに こんにちは! BFT名古屋支店・インフラ女子(?)のやまぐちです。 ここ二年くらいAnsibleやCloudFormationなどの自動化が大好きです。もっといいやり方があるとしてもとりあえず自分の思い描いたように動くと本当に嬉しいですよね! 今回はラズ…

【Ansible・Raspberry Pi・AWS】ラズパイ4にSSMエージェントを導入する

はじめに こんにちは! BFT名古屋支店・インフラ女子(?)のやまぐちです。 今回はIoTデバイスを遠隔操作したい!という一心でラズパイ4(64bit)にSSMエージェントを導入した方法を記載したいと思います。 ラズパイ4にSSMエージェントを入れる 実は20…

【AWS・CloudFormation】CloudFormationで請求アラートをサクッと作ってみた

はじめに こんにちは! CloudFormationが大好き!BFT名古屋支店・インフラ女子(?)のやまぐちです。 どこかのタイミングでCloudFormationを触ってやろうと機会をうかがっていたのですが 思いもよらぬ場面でやってきました。 今回はCloudWatch Alarmを使…

【Ansible Tower】インストールしてみた

はじめに こんにちは! 最近自炊にはまっている、BFT名古屋支店 いけちゃんまんです。 Ansible Towerの勉強が一区切りついたので、アウトプットとして学んだことをまとめたいと思います。 記事の流れとしては、以下の3本構成となっています。 1.Ansible Towe…

template Moduleを使ってhostsファイルを設定してみた

はじめに こんにちは! 最近しゃぶしゃぶが食べた過ぎる、BFT名古屋支店の池上(いけちゃんまん)です。 最近Ansibleについて学んでいてそろそろアウトプットしなきゃと思ったのでこの記事を書き始めました。 今回はtemplate Moduleを使ってhostsファイルを設…

【Ansible・WSL2・VSCode】知ってて当たり前?ローカルPCでのAnsible開発をMicrosoft純正ツールで!

はじめに こんにちは! BFT名古屋支店・インフラ女子(?)のやまぐちです。 資格取得の勉強や自宅での学習にLinux環境を使いたい!と思っても、VMware Playerを入れて、CentOSのISOをダウンロードして、OS入れてパッケージ更新していろいろ設定して…と使…

【Ansible】Varsセクションで使う3つのディレクティブの違い

こんにちは! BFT名古屋支店の、佐野です。 今回は以前の記事にて触れた、Varsセクションで使用するディレクティブについて詳しくお送りいたします。 はじめに まずVarsセクションについては、以前の記事を参照して頂けたらと思いますので、ここでは詳しい解…

【Ansible】AnsibleTowerでできること

こんにちは! BFT名古屋支店の、佐野です。 今回はAnsibleの機能拡張ソフトウェアである“AnsibleTower”に関する記事です。 以前に書いた記事にて、Ansibleの機能拡張ソフトウェアであるAnsible TowerとAWX projectの違いについてを取り扱いました。 ですが、…

【Ansible】Playbookを順次実行するRoleの利用方法

こんにちは! BFT名古屋支店の、佐野です。 前回に続いて、今回もAnsible関連の記事です。 AnsibleはPlaybookに管理対象で行なう処理を記述し、Playbookを実行する事によりその処理が管理対象で実施されるわけですが、例えば管理対象に対して一連の流れとし…