AWS CLIハンズオンのための環境構築手順(Amazon Linux版)です。
適宜更新していきます。
前提条件
-
[JAWS-UG CLI] 総合案内: http://qiita.com/tcsh/items/14c3278f69ab073afe0f を確認して、必要な手順を終えていること。
-
EC2インスタンスに対してec2-userでSSHログインできること。
- 参考: インスタンスの作成 (Public): http://qiita.com/tcsh/items/ae8f1f0d706237327c5a
1. AWS CLIのバージョン確認&補完設定
1.1. バージョン確認
aws --version
aws-cli/1.7.36 Python/2.7.9 Linux/3.14.35-28.38.amzn1.x86_64
参考: AWS CLIのアップデート
AWS CLIはバージョンアップが頻繁に行なわれるので、更新方法は覚えておきましょう。
sudo pip install -U awscli
参考: AWS CLIのデグレード
1.3.16に戻す例:
sudo pip install awscli==1.3.16
1.2. 自動補完の設定
complete -C aws_completer aws
2. bashの設定
参考: コマンドプロンプトの設定
コマンドプロンプトが、戻り値が0のときは緑でTrueという文字列が表示され、戻り値が0以外のときは赤でFalseという文字列が表示されます。
PS1="\`
if [ \$? = 0 ]; then
echo \[\e[36m\]
else
echo \[\e[31m\]
fi
\`[\u@\h]\[\e[0m\]\n\$ "
サンプル: ハンズオン用推奨設定ファイル (~/.bashrc-handson-cli)
complete -C aws_completer aws
PS1="\`
if [ \$? = 0 ]; then
echo \[\e[36m\]
else
echo \[\e[31m\]
fi
\`[\u@\h]\[\e[0m\]\n\$ "
ハンズオン開始前に、上記の設定ファイルを読み込みます。
. ~/.bashrc-handson-cli
3. jsonlintのインストール
JSON Lintをインストールするために、npmコマンドを導入しておく必要があります。
ここではnodebrewを使います。
3.1. nodebrewインストール
curl -L git.io/nodebrew | perl - setup
Fetching nodebrew...
Installed nodebrew in $HOME/.nodebrew
========================================
Export a path to nodebrew:
export PATH=$HOME/.nodebrew/current/bin:$PATH
========================================
3.2. .bashrc
~/.bashrcにPATHを追記します。
echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bashrc
which nodebrew
~/.nodebrew/current/bin/nodebrew
3.3. nodeのバイナリをインストール
nodeをバイナリでインストールします。(v6.10.0の例)
nodebrew install-binary latest
nodebrew use latest
node -v
v9.6.0
自動的にnpmもインストールされているはずです。
which npm
~/.nodebrew/current/bin/npm
npm -v
5.6.0
3.4. jsonlintインストール
jsonlintをインストールします。
npm install jsonlint -g
-gを付けないとインストールに失敗するようです。
which jsonlint
~/.nodebrew/current/bin/jsonlint
3.5. jsonlintコマンドのテスト
正常サンプル
echo '{"key":"value"}' | jsonlint
{
"key": "value"
}
異常サンプル
echo '{"key"}' | jsonlint
[Error: Parse error on line 1:
{"key"}
------^
Expecting ':', got '}']
4. Route53作業用オプション
whoisコマンドの導入 (Amazon Linux)
Amazon Linuxの場合、標準でwhoisコマンドがはいっていないので、ここでは日本語対応(らしい)jwhoisをインストールします。
(jwhoisは、.mlなどのマイナーなドメインのWhoisDBは、手動でWhoisホストを指定しないとダメなようです...)
sudo yum install jwhois -y
which whois
/usr/bin/whois
OSXやFreeBSDでは、whoisコマンドは標準で利用可能です。
5. CloudFormation作業用オプション
CloudFormationでYAMLを利用するときに必要となります。
(pipのインストール手順を追加予定)
5.1. yamllintのインストール
sudo /usr/local/bin/pip install yamllint
5.2. yamllintの確認
which yamllint
/usr/local/bin/yamllint
yamllint -v
yamllint 1.10.0
5.3. yamllintの設定
mkdir -p ~/.config/yamllint/
YAMLドキュメントの最初に'---'が無くても警告が出ないようにします。
cat << EOF > ~/.config/yamllint/config
rules:
document-start:
present: false
EOF