■目的
インターネットから隔離された環境に存在するサーバに対して、awscliをインストールしたい。
■補足
事前に作業は下記参照。
■余談
NATゲートウェイを使って外と通信した方が簡単/早いけど、そういう環境も許されていないようなところもあると思うので・・・
■補足
事前に作業は下記参照。
■余談
NATゲートウェイを使って外と通信した方が簡単/早いけど、そういう環境も許されていないようなところもあると思うので・・・
RHEL7.6(ami-00b95502a4d51a07e)
■作業前のawscli情報
# aws --version
-bash: aws: コマンドが見つかりません ※インストールしてないので当たり前・・・
■作業前のPython3情報
# python3 --version
Python 3.7.3
# python --version
Python 2.7.5
■手順
0.以下を実施
1.ローカルPCから下記URLにアクセスし、awscliのZIPファイル(awscli-bundle.zip)を取得
https://s3.amazonaws.com/aws-cli/awscli-bundle.zip
2.下記RPMファイルを取得し保存しておく。
※RPMファイルはRHNから取得可能なため、そこから入手。
・unzip-6.0-20.el7.x86_64.rpm
3.対象サーバに上記手順2のファイルを転送(SCP/FTP等。手段問わず。)
ここでは転送先ディレクトリを以下のようにした。https://s3.amazonaws.com/aws-cli/awscli-bundle.zip
2.下記RPMファイルを取得し保存しておく。
※RPMファイルはRHNから取得可能なため、そこから入手。
・unzip-6.0-20.el7.x86_64.rpm
3.対象サーバに上記手順2のファイルを転送(SCP/FTP等。手段問わず。)
awscli-bundle.zip → /root/ に格納
unzipのRPM → /var/tmp/unzip/ に格納
4.対象サーバにログインし、rootユーザにスイッチ
5.以下コマンドを実行し、unzipをインストール
# cd /var/tmp/unzip;pwd
# rpm -Uvh unzip-6.0-20.el7.x86_64.rpm
6.以下コマンドを実行し、awscliをインストール
# cd;pwd
# ls awscli-bundle.zip
# unzip awscli-bundle.zip
# cd awscli-bundle;pwd
# ./install -i /usr/local/aws -b /usr/local/bin/aws
→ 「You can now run: /usr/local/bin/aws --version」と表示されればOK
■./install のオプションについて
上記コマンド実行結果は以下の通り。
# ls -l /usr/local/bin/aws
lrwxrwxrwx 1 root root 22 12月 6 12:00 /usr/local/bin/aws -> /usr/local/aws/bin/aws
-i インストール先
-b シンボリックリンク作成 ※/usr/local/bin/aws にアクセスすると、/usr/local/aws/bin/aws にアクセスすることになる。
-bオプションには、既にパスが通っているところを指定したほうが今後扱いやすい。
# aws --version
aws-cli/1.16.298 Python/2.7.5 Linux/3.10.0-957.5.1.el7.x86_64 botocore/1.13.34
■まとめ
上記の通り、awscliのバージョンは最新になったが、Python2系を使い続けている。。。
awscliオフラインインストール時にPython3系を使うことができていない。。。