Help us understand the problem. What is going on with this article?

Aws cli ebcliでエラー、動かない時にはまずpipパッケージのバージョンを確認しよう

なんだかんだ1年以上運用したので
定期的にどんな作業が発生するかというのが溜まってきたのでまとめてみます。

環境周りのコマンドを実行する作業になるので
不安がある場合は仮想環境のコピーを作成するのをお勧めします。

私の個人的な経験ではほとんどが依存関係のバージョンが食い違っているというものが大半でしたので
バージョンアップのメンテナンス内容をメインに書きます。

これから導入を考えている方に
こんな作業が発生するんだとか
こんなスキルセットが必要になるんだとか
参考になれば嬉しいです。

※ここに書いてあることが全てではないのでその点はご注意を

定期的に必要となるお手入れ

コマンドラインツールもそれぞれバージョンアップをしてくれています。
ゆえに突然エラーが出てくるということもしばしば

そんな時はまずは現状確認しましょう。
※pipを使っていることが前提です

piplisto.shell
pip list -o

続きましてpip自身のアップグレード

upgrade.pip
pip install --upgrade pip

awscliのアップグレード

awscliupgrade.shell
pip install awscli --upgrade --user

参考URL
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/installing.html

eb cliのアップグレード

ebcliupgrade.shell
pip install awsebcli --upgrade --user

botocoreのアップグレード

aws cliもアップグレードが同時に必要のような状態の場合

piplist.shell
$ pip list -o
Package          Version   Latest     Type 

awscli           1.16.97   1.16.99    wheel
botocore         1.12.87   1.12.89    wheel

以下のコマンドでbotocoreとaws cliの両方がアップデートされた

awscliup.shell

pip install awscli --upgrade --user


その他pip管理のプラグインアップデート

pipでプラグインを個別にアップデートしないといけない場合もある。

pipupdate.sh
sudo pip install プラグイン名 -U

#以下tabulateというpipパッケージをアップデートする場合
sudo pip install tabulate -U

再インストール

運用している中で何度かawscli,ebコマンド自体を再インストールしたら
治ったということがありましたのでそれも書いてみます。

aws cliの再インストール

pythonモジュールのpipが入っていれば以下でアンインストールできます。

uninstallaws.sh
$ pip uninstall awscli

ebコマンドの再インストール

ebコマンドのアンインストール

uninstallaws.sh
$ pip uninstall awscli

再度インストール

installeb.sh
pip install awsebcli --upgrade --user

エラーが表示されたら

ebコマンドのデバッグ

debug.sh
Eb deploy --debug

pipパッケージのダウングレード

稀に以下のようなエラーが表示されることがあります。

error.sh
ERROR: awscli 1.16.253 has requirement botocore==1.12.243, but you'll have botocore 1.12.253 which is incompatible.
ERROR: awscli 1.16.253 has requirement rsa<=3.5.0,>=3.1.2, but you'll have rsa 4.0 which is incompatible.

これはawscliが使っているパッケージのバージョンがあっていませんよ〜というもので
バージョンをあげる場合は前述のコマンドでいけますが
バージョンを下げろという場合もあります。
ダウングレードということになりますが
コマンド的にはバージョンを指定してインストールという形でダウングレードできます。

downgrade.sh
pip install botocore==1.12.243

linuxの時間がずれた時もエラーが出ます。

当方の環境としてCentOS7の仮想環境に置いている状態で
定期的にLinuxの時間がずれるという現象があり
ebコマンドが動かなくなる時があります。
私の環境では以下の方法で解決しています。
>>CentOS7の時間がずれる

SwuBHj8aKGqBKHet
webデザインやってきました。現在はwordpress、AWS周りを触ることが多いです。docker、python(Django)、react、vueなどをインプット中です。前向きな人たちと繋がり、共に成長したい。修正依頼歓迎&感謝します。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした