いまさら centos6 + cloud n ObjectStorage

ハマりポイントが多すぎる(笑)

とりあえずpyenv のインストールから

 

■ざっくり足りなさそうなモジュールをyumで入れる。

# yum -y install gcc bzip2 bzip2-devel openssl openssl-devel readline readline-devel sqlite-devel tk-devel git

■ pyenvインストール

# cd /usr/local/
# git clone git://github.com/yyuu/pyenv.git ./pyenv

# mkdir -p ./pyenv/versions ./pyenv/shims
# cd pyenv/plugins/
# git clone git://github.com/yyuu/pyenv-virtualenv.git

■ pyenv 環境を profile.dに入れる

# echo 'export PYENV_ROOT="/usr/local/pyenv"' >> /etc/profile.d/pyenv.sh
# echo 'export PATH="${PYENV_ROOT}/shims:${PYENV_ROOT}/bin:${PATH}"' >> /etc/profile.d/pyenv.sh

■ 上記環境変数をsudoしても引き継がれるようにする。

# visudo

----- 編集 -----
#Defaults secure_path = /sbin:.........

Defaults env_keep += "PATH"
Defaults env_keep += "PYENV_ROOT"

■ 確認

# pyenv --version

curlがデフォルトでは古すぎるので入れる

# yum update -y nss curl libcurl

■ 2.7.9以降ならSNI対応。2.7.15が 2.7のfinal release

# pyenv install 2.7.15

# 10分くらいはかかる

 

■ ワーキングディレクトリを作って、そこでのpythonを設定
一般ユーザにもどる

$ mkdir py2715(なんでもよい)
$ cd py2715
$ sudo pyenv local 2.7.15

これでそこのフォルダでは 2.7.15が動く

■ 準備
最初の儀式

$ sudo pip install --upgrade pip

$ sudo pip install awscli

$ aws configure
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]:
Default output format [None]:

 

最初の二つにはCloudnポータルのAPIアクセスキー・秘密キー管理のページで見えるものを入れる
あとの二つは空白でOK

 

■ObjectStorageの古いシグネチャバージョン対応

 
$ vi ../.aws/credentials
最後に以下の二行を追加

s3 =
   signature_version = s3

 ■みてみる

$ aws s3 --endpoint-url "https://str.cloudn-service.com/" ls
2018-12-03 17:35:44 test-bucket

 見えました・・・