goodbyegangsterのブログ

備忘録的な

SORACOM funnelを利用して、AWS Kinesis Firehoseと連携する

SORACOM funnelを利用して、AWSのKinesis Firehoseと連携した時のメモです。 SORACOM funnelとは SORACOM funnelとは、 Funnelは、デバイスからのデータを特定のクラウドサービスに直接転送するアダプターです。 クラウドサービス上のリソースを指定するだけ…

SORACOMのSIMをスマートフォンで利用する

SORACOMのSIMカードをスマートフォンに挿すことで、スマートフォンがSORACOMネットワークに接続することができます。そのスマートフォンとPCをテザリングすることで、PCもSORACOMネットワークに参加することができ、SORACOMサービスの疎通テストが簡単にでき…

State Managerを利用してみる

State Managerとは、AWS System Managerで用意されている機能の1つとなります。マニュアルの記載によると、 以下のリストは、ステートマネージャー で実行できるタスクの種類を示しています。 ・起動時に特定のソフトウェアを使用してインスタンスをブート…

soracom-cliをWindowsのwslにインストールする

SORACOMのAPIを呼び出すコマンドラインツール soracom-cli を、WindowsのWSL(Ubuntu)にインストールします。 soracom-cli 環境情報 Windows10 wsl(Ubuntu18.04) SORACOM API client v0.4.7 インストール 各アーキテクチャ向けのバイナリファイルがgithubに公…

CloudFormationでネストされたスタックをつくる

CloudFormationのネスト機能を利用してみます。イメージは下記の公式資料より。 ネストされたスタックの操作 ユースケース ネスト機能を利用するユースケースは、以下の2パターンがあります。 単一のCloudFormationスタックでは、テンプレートが長大となっ…

wslにsqlplusをインストールする方法

wslのUbuntuに、Oracleのsqlplusをインストールします。以下のブログを参考に実施しており、自分の今まで知らなかった点を追記しています。 WSLのUbuntuにsqlplus(Oracle client)を入れる 環境情報 Windows10 (1809 17763.557) wsl(Ubuntu 18.04) sqlplus 19…

AWS Batchの概念を理解する

AWS Batchを触ってみたメモです。今回の内容はAWS Batchの概念を理解するため、単純に1つのジョブを実行してみた内容となっています。 AWS Batchとは AWS Batchについてざっくりと説明すると、作成したコンテナイメージを、AWS側にて管理されたECS Contaner …

AWS IoT Coreについて

AWS IoT Coreを触ってみたので、そのまとめです。 下記がAWSのIoTサービスの全体像です(Blackbeltより)。 AWS が提供する IoT ソリューションと ITS における活用 from Amazon Web Services Japan www.slideshare.net IoT Coreで持っている機能の一覧となり…

On-DemandとSpot Instanceを併用したAutoScalingについて

去年のReInventで発表された下記の機能について。AutoScalingを構成するEC2のインスタンス購入オプションを、On-DemandとSpotで併用できる機能となります。今まで知らなかったので、調べたことまとめ。 AWS公式ブログの紹介。 複数のインスタンスタイプをサ…

AWS Patch Managerの備忘録

Systems Manager内の機能の1つである Patch Manager についての備忘録。 Patch Managerは、EC2やオンプレのOSのパッチを、SSM Agent経由でUpdateしてくれるサービスです。現時点でサポートされているOSは下記より。随時更新されています。 サポートされるオ…

CloudFormation StackSetsに触ったメモ

触る機会があったのでメモ。CloudFormation StackSetsとは、 AWS CloudFormation StackSets は、複数のアカウントおよびリージョンのスタックを 1 度のオペレーションで、作成、更新、削除できるようにすることで、スタックの機能を拡張します。管理者アカウ…

PCのデスクトップ動作をGIFファイルにする方法

文章を書くよりGIFファイルで操作方法を説明したい(文章書くのだるい)、ということが偶にあるわけで、その際のメモ。 環境 Windows10(10.0.17763 N/A ビルド 17763) ScreeToGif 2.18 ScreenToGifのインストール それなりの評判で、最近もUpdateされているツ…

AWS Service Catalogに関するメモ

AWS Service Catalog について調べたので、その時のメモ書きです。Blackbeltはこちら。 AWS Black Belt - AWS Service Catalog Service Catalogとは 公式サイトで謳われていること。 AWS Service Catalog では、AWS での使用が承認された IT サービスのカタ…

Minikubeを触ってKubernetesの概念を知る

Minikubeとは、 Minikube is a tool that makes it easy to run Kubernetes locally. Minikube runs a single-node Kubernetes cluster inside a VM on your laptop for users looking to try out Kubernetes or develop with it day-to-day. Running Kubern…

Linuxの踏み台サーバ経由で、WindowsサーバにAnsibleを実行する方法

AWSではよくある下記にような構成で、Ansibleを実行する方法。playbookを実行するところがPCで、操作対象となるサーバがAWS上のWindows、sshポートフォワーディングして接続します。 ローカルフォワーディングの設定 利用する ssh_config に、踏み台サーバの…

コンテナで複数プロセスを起動させる

1コンテナ上で、nginxとfluentdを動かした話。 どうして複数プロセスを起動してはいけないの runitについて phusion/baseimage について phusion/baseimage とは Dockerfile構成 コンテナ起動 どうして複数プロセスを起動してはいけないの Dockerコンテナで…

PostgreSQLのFILLFACTORとHOTについて

調べたことまとめ。 FILLFACTORとは FILLFACTOR とは、ページにテーブルやインデックスを格納する際、敢えて空き領域を作成していく仕組みとなります。公式ページの説明です。 テーブルの場合。 テーブルのフィルファクタ(fillfactor)は10から100までの間の…

dockerfileのlinterを使う

dockerfileのlinterである hadolint を利用してみます。 hadolint 環境情報 windows 10 Pro インストール scoopのインストール windowsユーザは、 scoop を利用してインストールする手順が紹介されています。 scoop とは、様々なモジュールをコマンドライン…

テスト用のplaybookで利用できるモジュールたち

Ansibleでテスト用のplaybookを書く時の、一般的な使い方をまとめておきます。 環境情報 wait_forモジュール port生死の確認 ファイル内文字列の確認 assertモジュール コマンド実行結果を確認 failモジュール webサイトのページ確認 参考:テスト用playbook…

PostgreSQLの、テーブル・インデックスのメンテナンスについて

テーブルやインデックスで必要となるメンテナンス処理についての備忘。 調べた結論だけまとめておくと、下記といった感じでした。 auto vacuumを有効にしておく(デフォルトで有効) かつ、適当な頻度でauto vacuumされていることを、定期的に確認する index…

playbookのテストで利用できるオプションやlinterについて

Ansibleで書いたplaybookのテストを実行できる方法をまとめています。 環境情報 シンタックスチェック playbookのdry run(チェックモード) チェックモードの問題点1:依存関係のあるタスクでの利用 チェックモードの問題点2:チェックモードをスキップす…

PostgreSQLでテスト用データを作る方法

検証用として利用できるデータベース、レコードを作成する方法を、先人たちの知恵を元に記載していきます。 環境情報 サンプルデータベースの作成 レコードを作成する serialな整数の生成 randomな整数の生成 randomな文字列の生成 randomな長い文字列の生成…

Ansible Vaultで機密情報を管理する方法

AnsibleのPlaybookで、パスワード等の機密情報を記載したい場合があります。テンプレートファイルを見れば、パスワードが丸わかりとなってしまうため、これを暗号化して利用する方法が用意されており、それが Ansible Vault となります。 公式ドキュメントは…

pg_hba.confの書き方

PostgreSQLの、 pg_hba.conf についてまとめていきます。 クライアント認証はデータベースクラスタのデータディレクトリ内の、伝統的にpg_hba.confという名前の設定ファイルで管理されています (HBAとは、host-based authentication: ホストベース認証の略…

Ansibleのcommandモジュールで冪等性を担保する

Ansibleにてモジュールの用意されていない操作を実行する場合、OS上でコマンドを実行してくれるモジュールが用意されています。 command や shell がそれにあたります。 Ansible - command Ansible - shell しかしながら、公式では可能な限り command モジュ…

PostgreSQLでDBを作成する

テーブル空間を作って、そこに新規データベースを作成する手順です。 環境情報 CentOS 7.6 PostgreSQL 10.7 テーブル空間の作成 そもそもテーブル空間とは、 PostgreSQLのテーブル空間により、データベース管理者はデータベースオブジェクトを表すファイルを…

Ansibleで試しにRoleを作ってみた

Ansibleによりnginxを設定してみます。 ansible-garaxyにあるRoleを引っ張ってくる方が早いのでしょうが、Ansibleの勉強も兼ねて、自分でRoleを作ってみます。 環境情報 cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) ansible --version an…

PostgreSQLのインストール

PostgreSQLインストール時の設定メモです。 公式の参考サイト 環境情報 CentOS Linux release 7.6.1810 (Core) PostgreSQL 10.7 PostgreSQLの初期設定 必要パッケージのインストール yum用リポジトリのインストール。 $ sudo yum -y install https://downloa…

nginxでReverse Proxyを設定する

nginxのリバプロ設定方法をメモしておきます。 環境情報 nginx version: nginx/1.15.12 参考情報 公式のAdmin Manual upstreamコンテキストを作成 Module ngx_http_upstream_module server ディレクティブで、バックエンドのサーバを指定 複数指定する場合は…

nginxにLet's Encryptの証明書を入れる

Let's Encryptを利用することで、nginxにTLS証明書を設定する手順を確認します。作成する証明書は、ワイルドカード証明書となります。 環境情報 Amazon Linux2 nginx/1.15.12 Python 2.7.14 certbot 0.31.0 試してみる Let's Encryptの証明書を取得するのに…