AWS CLIをproxy環境下でも利用するには? ~AWS CLIのメリットも解説~

この記事でわかること
AWSとは?
AWSとは、Amazon Web Servicesの略で、Amazonがリリースしているクラウドコンピューティングサービスです。
クラウドコンピューティングの分野では世界でも圧倒的なシェアを誇っており、他社の追随を許しません。サービスはクラウドの分野において幅広く、広告・Webマーケティング業界、金融業界、製造業界など多種多様な業界の方が利用しています。
例えばAWSを利用すれば、銀行のシステムをより低コストかつ急激に変化する顧客ニーズに合わせて変化させていけるようなインフラ基盤にしたい場合に、オンプレミス環境と比べるとハードウェア代は掛からず、比較的インフラ環境もすぐに最新化することが可能です。
CLIはコマンドラインインターフェイスの略称
CLIとは、コマンドラインインターフェイスの略称で、画面に向かってコマンドを打ってコンピューターを操作するユーザーインターフェイスです。
CLIはGUIとよく対比させられます。GUIはグラフィカルユーザーインターフェースで、普段多くの方が利用されています。GUIでは視覚的にコンピューターを操作できるのに対し、CLIは文字のみでコンピューターを操作します。
例えばWindowsのコマンドプロンプトを例にとると、コマンドを打ち込む画面で
1
|
ipconfig
|
と打ち込むとマシンのIP情報の一覧が表示されます。
AWSにはCLI操作が可能になるサービスがある
AWSでは、CLIで操作が可能になるサービスを提供しています。
ダウンロードすることで、最小限の設定でコマンドラインからAWSの沢山存在するサービスを操作することが可能です。
例えば、test.txtというファイルを複数アップロードしたい場合にCLIであれば
1
2
3
|
$ aws s3 cp myfolder s3://mybucket/myfolder --recursive
upload: myfolder/file1.txt to s3://mybucket/myfolder/test.txt
upload: myfolder/subfolder/file1.txt to s3://mybucket/myfolder/subfolder/test.txt
|
こちらのようなコマンドを一度打てば複数のフォルダにアップロードが開始されます。
AWS CLIのメリット
では具体的なAWS CLIを利用するメリットは何なのでしょうか。
AWS CLIのメリットについて、作業の自動化とCLIにしかできない操作がある点について紹介します。
作業の自動化及び効率化ができる
AWS CLIを利用すれば、GUIで行なっていた操作の自動化を図れます。
GUIでの操作は基本的に人が行いますが、人が行うということはミスも増えます。その点CLIはプログラムが作業するのでプログラムにミスがなければミスは起こりません。またプログラムが自動的に作業するため、作業の効率化にもつながります。
例えば、セキュリティグループを作成したい場合、GUIではhttps://console.aws.amazon.com/ec2/を開いてから6つの手順を経る必要がありますが、コマンドであれば
1
2
3
4
5
|
aws ec2 authorize-security-group-ingress \
--group-name sample-sg-group \
--protocol tcp \
--port 22 \
--cidr "0.0.0.0/0"
|
をコマンドラインで打つだけで完了します。
CLIにしかできない操作ができる
AWS CLIを使用することにより、AWS上のリソース間を連携した管理や設定するオリジナルサービスやツールを作成できます。
AWS CLIではプログラムによる作業の自動化ができるので、AWS上のサービスを自動で連携させることも可能です。
例えば、DynamoDBのデータを自動でAmazon S3にコピーされるような仕組みもAWS CLIを利用すれば可能になります。
proxyとは?
proxyとは、インターネットに接続する際に、その中継地点に存在し代理アクセスを行っているサーバーを指します。
proxyを通してインターネットに通信することにより、ログの取得が容易になることや、よりセキュアな環境でインターネットを使用できます。
例えば、コンピューターウイルスに絶対に晒されてはいけない機密情報が多く存在する社内ネットワークにproxyを構築することで、proxy上でウイルスチェックをすれば社内ネットワークにコンピューターウイルスを持ち込まないようにすることが可能です。
proxyサーバーを使用してAWSにアクセスする方法
proxyサーバーを使用している環境でAWS CLIを使用してAWSへアクセスするには設定が必要になります。
設定方法について、使用する方法、認証する方法、そして例外的な除外設定について説明します。
HTTP proxyの使用
proxyサーバーがある環境でAWSに接続するには、その環境内にDNSサーバーがあればドメイン名で、もし無ければproxyサーバーのIPアドレスとポート番号で環境変数を設定します。
OSによりコマンドは異なります。
例えばDNSサーバーが存在する環境で、Windowsであれば、
1
2
|
C:\> setx HTTP_PROXY http://(proxyサーバーパス):(proxyサーバポート)
C:\> setx HTTPS_PROXY http://(proxyサーバーパス):(proxyサーバポート)
|
こちらのコマンドで設定し、LinuxとmacOSの場合は
1
2
|
$ export HTTP_PROXY=http://(proxyサーバーパス):(proxyサーバポート)
$ export HTTPS_PROXY=http://(proxyサーバーパス):(proxyサーバポート)
|
こちらのコマンドで設定します。
proxyの認証
proxyの認証にはHTTP Basic認証が使えます。
例えばWindowsをご使用でHTTP Basic 認証のユーザー名がuser、パスワードがpasswordの場合、
1
2
|
C:\> setx HTTP_PROXY http://user:password@(proxyサーバーパス):(proxyサーバポート)
C:\> setx HTTPS_PROXY http://user:password@(proxyサーバーパス):(proxyサーバポート)
|
LinuxやmacOSの場合は、
1
2
|
$ export HTTP_PROXY=http://user:password@(proxyサーバーパス):(proxyサーバポート)
$ export HTTPS_PROXY=http://user:password@(proxyサーバーパス):(proxyサーバポート)
|
こちらのコマンドでproxyの認証ができます。
proxyの除外設定
アタッチされたIAMロールで起動したAmazonEC2インスタンスにプロキシを設定する場合、除外設定をする必要があります。
その場合は、
1
|
NO_PROXY
|
の環境変数を169.254.169.254に設定します。169.254.169.254はインスタンスメタデータを取得するためにアクセスが必要です。
例えば、Windowsの場合は
1
|
C:\> setx NO_PROXY 169.254.169.254
|
LinuxやmacOSの場合は
1
|
$ export NO_PROXY=169.254.169.254
|
で除外設定が可能です。
proxy環境下でもAWS CLIは問題なく使用できます
proxyサーバーがある環境でも、設定すればAWS CLIは問題なく使用できます。
また、AWS CLIは効率的かつ統合的にAWSのサービスを管理できるので、仕事の効率化に向いているサービスです。
システム面からの仕事の効率化という課題を負っている社内SEの方、ぜひAWS CLIをマスターして利用してみましょう。
Search キーワード検索
Popular 人気の記事
-
AWS EBSとは?8つの特徴とEBSボリュームについても解説
公開: 更新: -
AWSのT2とT3の違いとは?用途に合った選択をしよう!
公開: 更新:
reccomended おすすめ記事
-
AWSエンジニアの将来性は?年収と必要なスキル6つをご紹介!
公開: 更新:
Categories 連載一覧
Tags タグ一覧
Jobs 新着案件
-
通信キャリア向け基盤構築/東京都渋谷区/【WEB面談可/インフラ業界経験者/AWSソリューションアーキテクト/AWS経験者活躍中】/在宅ワーク
月給65万~65万円東京都渋谷区(神泉駅) -
各種対応/東京都新宿区/【WEB面談可/インフラ業界経験者/AWSソリューションアーキテクト/AWS経験者活躍中】/テレワーク
月給60万~60万円東京都新宿区(高田馬場駅) -
要件定義、構築/東京都千代田区/【WEB面談可/インフラ業界経験者/AWSソリューションアーキテクト/AWS経験者活躍中】/テレワーク
月給60万~60万円東京都千代田区(飯田橋駅) -
運用構築/東京都千代田区/【WEB面談可/インフラ業界経験者/AWSソリューションアーキテクト/AWS経験者活躍中】/テレワーク
月給56万~56万円東京都千代田区(飯田橋駅) -
監視システムの保守、更改/東京都千代田区/【WEB面談可/インフラ業界経験者/AWSソリューションアーキテクト/AWS経験者活躍中】/テレワーク
月給55万~55万円東京都千代田区(神保町駅) -
各種対応/東京都千代田区/【WEB面談可/インフラ業界経験者/AWSソリューションアーキテクト/AWS経験者活躍中】
月給60万~60万円東京都千代田区(虎ノ門駅)