S3マウントツールのObjectiveFSを試してみた

S3のマウントにみなさん何を使っていますか? s3fs?goofys?使い勝手はいかがでしょう? 今回は、商用ですがObjectiveFS(https://objectivefs.com/)というS3のマウントツールの紹介をしたいと思います。 環境 OS:AmazonLinux 手順 ライセンス取得 14日間のト…

AWS SDKでAuthFailure【cloudpack 大阪 BLOG】

発生した障害 boto(python)で定期的にS3にファイルをアップロードしているスクリプトが突然エラーとなり実行できなくなる問題に遭遇しました。 エラーログを確認すると「403 Forbidden」が発生していました。 調査したこと 何らかの原因で使用しているアクセ…

AutoScalingでEC2のDetach/StandByができない場合の対処法【cloudpack 大阪 BLOG】

AWS

はじめに AutoScalingを設定していて手動で設定を変更していると、たまに台数がずれるなどして最低台数の制限に引っかかりAutoScalingGroupからEC2をDetachやStandByにできない場合があります。スケーリングポリシーに基づいてインスタンスの増減が実施され…

起動後のEC2にIAM Roleを付与する【cloudpack 大阪 BLOG】

AWS

待望の機能追加があったので実際にやってみました。 これまで起動後のec2インスタンスにはiam-roleが付与できなくて不便な思いをしてきましたがやっと開放されそうです現時点ではawscliからのみしかできません。 またawscliの更新が必要になりますので気をつ…

rsyslogで中継サーバ経由してログ送信を行う【cloudpack 大阪 BLOG】

以下のような構成でrsyslogを使用してログをログ収集サーバへ集約させる要件がありました。 検証で動作確認を実施してみたので、備忘録としてやり方を残しておきたいと思います。 やりたいこと webサーバの/var/log/messagesをログ中継サーバを経由させてロ…

Terraformで[Error reading config for xxxx : Invalid dot index found:]エラー【cloudpack 大阪 BLOG】

最近Terraformを触っていて少し躓いたので備忘録として残しておこうと思います。 現象としては、mapping定義にドットで参照しようとしてエラーが発生しました variable "vpc_subnet_cidr" { default = { public-a = "10.1.10.0/24" public-c = "10.1.20.0/24…

Json形式からYaml形式に変換するWebサービスを作った【cloudpack 大阪 BLOG】

タイトルのとおりなんですが、json形式をyaml形式に変換するWebサービスを作りました。 きっかけは、CloudFormationがyaml対応したのでyaml形式で書き初めたのですが、AWSのユーザーガイドにjson形式しか記載されていなかったので、手軽に変換できるようにWe…

AWS Certificate Managerでサブドメインを発行する時に承認メール送信先を変更する【cloudpack 大阪 BLOG】

AWS

AWS Certificate Managerで証明書を発行する際のドメイン認証については、現在、メール承認のみとなっています。 例えばexample.comのサブドメインでSSL証明書を発行した場合で、ドメイン管理者が管理者のメールアドレスを公開していないと、デフォルトで以…

AWS Lambda(Python)を手っ取り早く高速化する方法【cloudpack 大阪 BLOG】

aws lambdaでは、CPUの使用時間に対し100ミリ秒単位で課金されるため、処理を高速化できるとその分料金も下がります。今回は簡単にLambda(Python)を高速化する方法を紹介します。 方法 処理系をJITコンパイル機能を持つPyPyに変更します。 これだけです。特…

pythonのimaplibでメールのAND/OR検索【cloudpack 大阪 BLOG】

pythonでimaplibを使ってGmailを取得しようとして対象メールの検索をしてみたのですが、AND検索やOR検索でうまく検索できずに少しハマりましたので備忘録として残しておきます。 事前設定 まずは対象のGmailアカウントで以下を参考にアプリパスワードを取得…

NewRelicでEC2をモニタリング【cloudpack 大阪 BLOG】

AWS

NewRelicでEC2にWordPressをセットアップしてモニタリングしてみました。リソース状況が視覚的によく分かるので、パフォーマンス分析に使いやすいです。また、単にCPU使用率だけでなくプロセスごとのCPU使用率・メモリの推移やアプリケーションのレスポンス…

EC2の鍵を入れ替える手順【cloudpack 大阪 BLOG】

AWS

別のアカウントからAMIを共有して起動した際に、OSによっては公開鍵をうまく変更できていないことがあるので、公開鍵を入れ替える方法についての備忘録 手順概要 EC2からrootボリュームをデタッチ 別のEC2にrootボリュームをアタッチ rootボリュームをマウン…

AWS Lambdaの簡易コマンド(lambda-controller)を作ってみた【cloudpack 大阪 BLOG】

やりたかったこと 外部ライブラリを使ってlambdaを開発しているとローカル環境で開発してアップロードしてAWSコンソールから実行という手間がすごく面倒だったので、開発時の簡単な実行確認については、ローカル環境のコマンドラインで全て完結できないかと…

Route53にドメインをコマンドラインで登録する【cloudpack 大阪 BLOG】

Route53にドメインを大量に登録する必要があったので、cliでのやり方を調べてみるとインプットにjsonファイルが必要なことがわかりました。ちょっと面倒だったので別の方法を探してみるとcli53というツールを見つけました。使い勝手はかなりいい感じだったの…

AWS LambdaでGmail APIの呼び出し 第2回【cloudpack 大阪 BLOG】

前回でGmailAPIにアクセスする準備は整いましたので、引き続きLambdaでアクセスしてみたいと思います。 2.Lambdaの設定 ① Lambda用プロジェクトの作成 プロジェクトのディレクトリを作成します。また、GmailAPIにアクセス用のライブラリなども利用するためvi…

AWS LambdaでGmail APIの呼び出し 第1回【cloudpack 大阪 BLOG】

AWS LambdaからGmailAPIを呼び出したいと思い方法を調べてみました。当初はGmailAPIにアクセスするためのQuickstartが用意されていたため簡単にできるかと思っていました。が、サンプルがOAuth認証のみとなっていました。OAuthではプログラム実行時に手動で…

AWS IOTでDynamoDBへ登録する【cloudpack 大阪 BLOG】

仕事でAWS IOTを使って簡単なデモを作成しました。センサーから送信されたデータは、IOTからDynamoDBへ直接連携できる機能が用意されていたため、DynamoDBへ登録することにしました。今回はその手順を残しておきます。 手順(概要) 1.テーブル作成 2. AWS …

VimでPythonのコード補完設定【cloudpack 大阪 BLOG】

最近はAWSのLambdaなどの開発でPythonを使うことが増えてきましたが、まだまだ慣れていないこともあり、ちょっとしたコードを書くにも関数名がわからないので都度ネットで調べないといけないのがすごくストレスでした。開発環境としてはLinux上のVimで開発し…

chrootの設定でハマった話【cloudpack 大阪 BLOG】

chrootの設定でかなりハマったので、今回はその内容をまとめたいと思います。 実現したいこと sftp_userの接続時のホームディレクトリを「/home/sftp_user/home_dir」に制限したい。 意図は、bash_profile、bash_history、.sshなどをsftp接続ユーザーに見せ…

貝塚 泉南 2015.11.29

場所 :貝塚 天候 :雲 釣行時間:5:30 - 09:00 釣果 :なし 場所 :泉南 天候 :雲 釣行時間:15:00 - 17:00 釣果 :エソ 2匹 一日に2回出撃してきました。 朝は貝塚に行きました。とりあえず開始はタチウオ狙いで明るくなることに青物狙いにチェンジしま…

EC2インスタンスにRaspberry Piで電源スイッチを付けてみた【cloudpack 大阪 BLOG】

久しぶりにRaspberryPiを触ってみて思いついたので早速作ってみました。以前はLチカやったところで終わっていましたが、Pythonを少し覚えたので何かAPIと連携させてみようと考えていました。最近、EC2インスタンスを触ることが多くなりましたが、サーバの電…

泉南  2015.11.08

天候 :雨 釣行時間:16:30 - 18:30 釣果 :アジ 7匹 メバル 3匹 ウミタナゴ 多数 タチウオ 3匹 泉南の方でイワシとタチウオが釣れてるという情報があったので行ってきました。あいにく雨が強くしばらく様子見でしたが、何とか16時半くらいからサビキを始め…

貝塚 2015.11.03

天候 :曇 釣行時間:15:00 - 17:00 釣果 :エソ 3匹 そろそろアジのシーズンも終わりかと思い、久しぶりにサビキ釣りの準備をして昼過ぎに出かけました。思ったより人が多く駐車場はほぼ一杯で釣り場所もあまりありませんでした。アジやイワシが釣れている…

boto3(AWS SDK for Python)でCloudWatchからメトリクスを取得する【cloudpack 大阪 BLOG】

boto3を使ってCloudWatchからメトリクスを取得する必要が出てきたので勉強がてら簡単なサンプルを作ってみました。 環境 サーバ:CentOS6.6 Python:2.6.6 boto3:1.2.1 boto3(AWS SDK for Python)のインストール AWSのリソースにアクセスするためのSDKをイ…

Laravel5でphp-imapからgmailにアクセス【cloudpack 大阪 BLOG】

PHPからgmailを取得したいと思い、方法を調査していたところphp-imapを使って取得できることがわかりました。が、結構ハマってしまいました。 今回はLaravel5を使ってgmailから固定条件で検索したメールの件名を一覧で表示させるサンプルアプリを作成してみ…

.ssh/configの便利な設定【cloudpack 大阪 BLOG】

管理するサーバ台数が増えてくるとSSHでの接続が手間になりconfigに設定を書くことも多くなると思います。 また、扱うサーバ台数が増えてくるとそもそもconfigに記載したかどうかすらも分からなくなってきます。そこで今回は、「.ssh/config」を利用するとき…

貝塚 2015.09.20

天候 :曇 釣行時間:04:00 - 07:00釣果 :サゴシ 1匹、エソ 1匹 朝の4時過ぎに釣座を確保し釣り開始。タチウオシーズンなのでこの時間でもかなり人が多いですね。かなり肌寒い状況です。まずはワインドでタチウオ狙い。今年はどうでしょうか?若干、風と…

Cloud9でLaravel5の環境構築【cloudpack 大阪 BLOG】

前回はCloud9の初期設定までしたもののPHPについては、Ruby on Railsのようにワンボタンでの環境構築が準備されていなかったので、CakePHPかLaravelのどちらにするか迷った末に軽量FWと言われているLaravel5を導入することにしました。 プロジェクト作成 Wor…

大磯サーフ 2015.09.16

天候 :小雨釣行時間:16:00 - 18:00釣果 :なし 今年は雨が多いですね。天気予報の曇を信じて出発したものの大磯駅に到着してすぐに雨が降り出しました。家を出る時に降ってくれてれば諦めめもつきましたが。せっかくなので釣具店で簡易カッパを購入し、最…

Cloud9でお手軽開発【cloudpack 大阪 BLOG】

最近何かをちょっと試したり作ったりするのに開発環境を構築するのがすごく面倒に感じてきました。環境構築自体はすごくいい勉強になるのですが、脱線することも多くなるので手軽に環境構築したいと思いCloud9を試してみることにしました Cloud9とはWebブラ…