Twitter Facebook github

Category “Tech”

スクリーンショットの保存先を変更する

Macのスクリーンキャプチャ、便利でいいですよね。
でもデフォルトの設定ではデスクトップに保存されてしまうのがいただけなくて、自分で設定できないものかと悩んでいました。

備忘録的なエントリです。

簡単にできる

結論から言うと簡単にできます。コマンドひとつ叩くだけです。

Read More »

Amazon WorkSpacesを使ってみる

今回は仮想デスクトップコンピューティングサービスのAmazon WorkSpacesをレポします。

早速使ってみる

マネジメントコンソールからWorkSpacesをクリックします。

はじめてワークスペースを作る場合、見慣れたこの画面が表示されます。

早速 “Get Started Now” から進んでいきましょう。

Read More »

AWS認定デベロッパーになりました

やったー!AWS認定デベロッパー取ってきました!SysOpsより嬉しい!

先々週の認定ソリューションアーキテクト、先週の認定SysOpsアドミニストレータに続いて、今週は認定デベロッパーになりました。

この記事では本試験について詳しく書いていこうと思います。

Read More »

VagrantでEC2をプロバイダとして使う

Vagrantは基本的にVirtualBoxみたいな仮想化ソフトウェアをローカルにインストールして使っている人が多いと思いますが、この仮想化ソフトウェアのことをプロバイダと呼びます。Vagrant AWS Providorプラグインを使うことにより、AWS EC2をプロバイダとして使うことができます。

結構あちこちで解説されているネタでもあるので備忘録的なsomethingとして軽く流します。
なお、AWSについての知識も少なからず必要になるので、事前にVPCとEC2を触って知識をつけてから試すことをおすすめします。

環境

以下の環境が既にインストール済み
– Mac OS X El Capitan 10.11.3
– Vagrant 1.7.4

Read More »

AWS認定SysOpsアドミニストレーターになりました

先週はソリューションアーキテクトになったのですが、目標としてた試験をクリアしてしまうと更に高みを狙いたくなってしまうもの。他のAWS認定資格も集めたくなって、挑戦してみました。

Read More »

AWS認定ソリューションアーキテクトになりました

アソシエイトレベルの方でプロフェッショナルではないです!

じゃんっ

2年くらい前にこの存在は知っていて、ずっと憧れてた資格の一つでした!早速レポします!

Read More »

SixのエラーでAWS CLIをMacにインストールできない

めっちゃハマったのでメモ。環境は Mac El Capitan (10.11.3) 。

周りの人はすんなりインストールできてたりするので、どうしてこうなったのか原因が分からないのだが、うまく抜け出せたので書き留めておきたい。

AWS CLIをMacにインストールしようとした

Macなら初めからpythonが入ってるから2コマンドでいける……らしい。

普通ならこれだけでインストールできる。

1行目でpythonパッケージマネージャーのpipを入れて、2行目でawscliをインストール。

これがエラーなく完了すればいいけど、手元の環境ではなぜか2行目でコケてしまった。

Operation not permitted

こうなった。

よく見るとDeprecatedなSixっていうパッケージをアンインストールしようとしてエラーになってるぽくて、
手動で sudo pip uninstall six ってやっても同じエラーが出てしまう。

解決策

うまくいった!

ちなみにSixっていうのはpython2系と3系の差異を埋めてくれるユーティリティライブラリみたいなものらしい。やっぱり自分で入れた覚えはなくてちょっと謎。

ELBに証明書を登録できない時はAWS CLIを試す

AWS ELBに証明書を登録しようとしたときにエラーになったので、その回避策をメモ。

AWS ELBではHTTPSで行われた通信をELBデコードして、バックエンドのサーバーとはHTTPで通信することができます。
こうしておくと証明書更新などで複数台のEC2を直接手を入れることなく、またウェブサーバー側のSSL通信に関わるオーバーヘッドも無くなるため、AWS内で構築する場合には採用することが多いかと思います。

この構成を取る場合、証明書、証明書の秘密鍵をELBにアップロードする必要があります。

Read More »

RDS上のMySQLでKILLは使えない

軽い内容だけど備忘録として。

要はRDSのMySQLでは、プロセスを殺すためのKILLが使えないよーっておはなし。

KILLできない

例えばSleepプロセスを、root以外の管理ユーザーから殺したいと思ってKILLコマンドを許可する SUPER 権限をそのユーザーに与えたかったのだけど、それができない。

今の設定がどうなってるか確認してみると、そもそもroot(※インスタンス起動時に登録したマスターユーザー)にSUPER権限が与えられていない。

試しに他のユーザーのプロセスをKILLしてみる

 
やっぱりダメぽい…。

どうするか

AWS公式のドキュメントでこんなのを見つけた。

mysql.rds_kill – Amazon Relational Database Service

どうやらKILLが使えない代替策で mysql.rds_kill を使えってことらしい。

うまくいった。
これを一般ユーザーで使えるようにするためには、一般的なストアドプロシージャの許可と同じようにする。

補足

上表のユーザーリストで rdsadmin となっているのはAWSがRDSインスタンスの監視に使うユーザーであり、私たちはログインできない。
推測になるが、これらRDS管理系のシステム仕様上SUPER権限はユーザーに与えられていないのだろう。そういった類の特権処理について、AWS側の制約により実行できないものは別途ストアドプロシージャが提供されていて、これを介して使うことができるようだ。

それらのストアドプロシージャーはこのRDSのリファレンスページに纏められている。

所感

シェルからKILLを流し込むスクリプトなど、他の環境で使っていたものを流用するときは十分注意したいです。こういった制約とその代替策がいかにもAWSらしいような、そんな気がします。

CloudWatchのアラームをSlackに通知する

以前から挑戦したかったAWSの課題のひとつを解決してみようと思います。

AWS EC2やRDSなどのステータスを監視してアラームを上げてくれる、大変便利なCloudWatchですが、管理コンソール以外からアラームを確認する方法としては、SNSトピックに通知した後に自分でSNS連携のアプリケーションを作るなどして対応する必要がありました。

今回はこのアラームを、Slackの任意のチャンネルにポストすることをゴールにしてみます。

Read More »