Skip to content

Blog

go-setlock で多重起動を防止する

setlock を golang に移植した go-setlock を使うと「同じプログラムを連続実行する際、前回分の実行が完了していない場合は次分を実行しない」という制御が可能です。今回は Amazon Linux 上に go-setlock をセットアップするところから使い方までをメモしておきます。

httpie でリクエストヘッダも表示する

ロードバランサーのテスト等を実施する際に『リクエスト&レスポンスの両ヘッダを表示しない(ボディは不要)』というケースがあります。httpie でリクエストとレスポンスの両ヘッダを表示するには「--verbose」オプションを指定します。

F5 BIG-IP で iRule LX を有効化する

BIG-IP(TMOS)の 12.x 系をインストールしても、デフォルト状態では iRule LX 関連のメニューが表示されませんでした。iRule LX を有効化し、メニューに表示させる手順をメモしておきます。Lab Edition(仮想版)で試しました。

Amazon Linux に 2.4 系の Apahce と mod_ssl をインストールする

Amazon Linux で Apache をインストールする際、yum install httpd すると Apache 2.2 系がインストールされてしまいます。2.4 系の Apache + mod_ssl をインストールする場合は以下のようにします。

1
sudo yum install -y httpd24 mod24_ssl

mod_ssl についてはチュートリアル: Amazon Linux で SSL/TLS を使用できるように Apache ウェブサーバーを設定するにも記載されています。

Amazon Linux のインスタンス作成時に cloud-init でタイムゾーンを指定する

AWS 上に cloud-init 対応ディストリビューションのインスタンスを作成するのであれば、起動時にパラメータを指定することで初期設定を実施することが出来ます。インスタンス起動後に Chef や Ansible で設定しても良いですが、cloud-init でシンプルに設定してしまうのも簡易でお勧めです。今回は Amazon Linux のインスタンス時にタイムゾーンを指定してみます。

特定の S3 Bucket にしかアクセス出来ない IAM Role を作る

例えば EC2 インスタンスからバックアップを S3 に保存する為に AmazonS3FullAccess の Policy を付与すると、不必要な Bucket までフルアクセス出来てしまいます。操作ミス等があっても、意図しない Bucket には影響を与えないようにする為には『指定した Bucket にしかアクセスさせない Policy』を作成することで対応可能です。