cent osにpyhtonをインストールしてみよう

25
CentOSにPyhtonを インストールしてみよう 2012/10/06 坪内 由孝 (A_Wilhelm)

Upload: yoshitaka-tsubouchi

Post on 14-Jul-2015

3.921 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Cent osにpyhtonをインストールしてみよう

CentOSにPyhtonをインストールしてみよう

2 0 1 2 / 1 0 / 0 6坪 内 由 孝 ( A _ W i l h e l m )

Page 2: Cent osにpyhtonをインストールしてみよう

自己紹介名前: 坪内 由孝

Twitter: A_Wilhelm

blog: http://www.zumwalt.info/blog

趣味 軍事全般(最近は中部圏の航空祭巡ってます)

バイク(最近乗ってない…)

写真(レンズ欲しい…)

Page 3: Cent osにpyhtonをインストールしてみよう

自己紹介お仕事: 大手製造業のIT子会社で遊んで働いてます。 いろんなサーバーの構築・運用 (最近は仮想化とかZABBIXとか)

→ 所謂インフラエンジニア?

Python歴 1年ちょっと(素人にうぶ毛が生えた程度です) 細々としたスクリプトに使ってます。(=あまり使わない)

シェルスクリプトよりも可読性が高いので引継やすい。

Page 4: Cent osにpyhtonをインストールしてみよう

1. CentOS に Python をインストールしてみよう

Page 5: Cent osにpyhtonをインストールしてみよう

1. CentOS に Python をインストールしてみよう

CentOS 6.3 base インストール(minimam だとNG)で Pyhton2.6.6 が使える!便利!素敵!

なぜインストールされているか yum が Python を使ってるから

Page 6: Cent osにpyhtonをインストールしてみよう

1. CentOS に Python をインストールしてみよう

で終わりだと寂しいので Python2.7.3 を CentOS6.3 に インストールしてみましょう!

Page 7: Cent osにpyhtonをインストールしてみよう

1. CentOS に Python をインストールしてみよう

yumでインストール yumで提供されているもの以外は無い = Python 2.6.6 までしかない

2.7系3系のインストール方法 コンパイルインストールしかない…

注意点 2.6系を消すとyumが動かなくなる

Page 8: Cent osにpyhtonをインストールしてみよう

1. CentOS に Python をインストールしてみよう

インストール手順 # yum install zlib zlib-devel tk-devel ¥ > tcl-devel sqlite-devel ¥ > ncurses-devel gdbm-devel ¥ > readline-devel bzip2-devel db4-devel ¥ > gcc libjpeg-devel make

# mkdir /usr/local/src/python2.7.3 # cd /usr/local/src/python2.7.3 # wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2

Page 9: Cent osにpyhtonをインストールしてみよう

1. CentOS に Python をインストールしてみよう

インストール方法(続き)

# tar xvjf Python-2.7.3.tar.bz2 # cd Python-2.7.3 # ./configure CFLAGS=-fPIC --enable-shared # make make時に足りないと言われるもの _ssl bsddb185 dl imageop sunaudiodev

# make install # cat /etc/ld.so.conf.d/python2.7.conf /usr/local/lib # ldconfig # python -V Python 2.7.3

ね、簡単でしょ?

Page 10: Cent osにpyhtonをインストールしてみよう

1. CentOS に Python をインストールしてみよう

Python2.6 が使いたい場合 python26 で起動

Page 11: Cent osにpyhtonをインストールしてみよう

2. インフラエンジニア?的 Python の使い方

Page 12: Cent osにpyhtonをインストールしてみよう

2. インフラエンジニア?的 Python の使い方

vSphere(pysphere)、ストレージのシャットダウン(paramiko)

大量のネットワーク機器からarpテーブルを取得(telnetlib)

ネットワーク機器の Config 変更後、自動的に

Config をバックアップ(telnetlib)

IPアドレス管理用のWebアプリ(Django使用)

syslog 管理用のWebアプリ(mod_wsgi使用)

Page 13: Cent osにpyhtonをインストールしてみよう

3. モジュールを使ってみよう

Page 14: Cent osにpyhtonをインストールしてみよう

3. モジュールをインストールしてみよう

手動インストール 1. 利用したいモジュールをダウンロード 2. python setup.py install (詳細は各モジュールのreadome見てね)

3. import モジュール名

自動インストール 1. easy_install をインストール (http://peak.telecommunity.com/dist/ez_setup.py) 2. easy_install モジュール名 3. import モジュール名

→ 大体のモジュールはeasy_install 対応なので 楽をしたい人は使うといいよ!

Page 15: Cent osにpyhtonをインストールしてみよう

4. サーバー管理に便利?なモジュール紹介

Page 16: Cent osにpyhtonをインストールしてみよう

4. サーバー管理に便利?なモジュール紹介

pramiko ssh 接続モジュール 公開鍵認証とパスワード認証に対応 pycryptが必要 easy_innstall でインストール可能

ESXi とかストレージのシャットダウンに よく使ってます。

Page 17: Cent osにpyhtonをインストールしてみよう

4. サーバー管理に便利?なモジュール紹介

pysphere VMware ESXi APIモジュール vSphere環境の管理とかできます。 simple-json が必要 → easy_install でインストール可能 easy_install でインストール可能

VMware環境の監視に使ってます。 運用にも使えそうですが勉強不足…

Page 18: Cent osにpyhtonをインストールしてみよう

4. サーバー管理に便利?なモジュール紹介

MySQLdb(mysql-python) MySQL 接続モジュール MySQL を触りたい時に使います。 easy_install でインストール可能 ※ 確認時(2012/10/1)は何故か404エラー…

→ easy_install mysql-python → import MySQLdb

本格的には使った事はないですが、 ちょこっとMySQL触るくらいなら十分

Page 19: Cent osにpyhtonをインストールしてみよう

4. サーバー管理に便利?なモジュール紹介

telnetlib Telnet接続モジュール 標準モジュールです。

ネットワーク機器の管理に使ってます。 (configの保存とか情報の採取とか)

Page 20: Cent osにpyhtonをインストールしてみよう

5. mod_wsgi をインストールしてみよう

Page 21: Cent osにpyhtonをインストールしてみよう

5. mod_wsgi をインストールしてみよう

mod_wsgiて何? Python を Apacheで動かすためのモジュール

なんでいるの? Django とか Web2py には簡易Webサーバー がありますが本番運用には耐えれないので…

mod_wsgi 単体でもWebページを作れます。

Page 22: Cent osにpyhtonをインストールしてみよう

5. mod_wsgi をインストールしてみよう

インストール方法 easy_install では入りません(´・ω・`)

もちろんRPMもありません(´・ω・`)

=コンパイルインストールです。

Page 23: Cent osにpyhtonをインストールしてみよう

5. mod_wsgi をインストールしてみよう

インストール手順※最新Verは3.4でしたが手順は3.3で記してあります。# yum install httpd-devel mod_ssl# mkdir /usr/local/src/modwsgi# cd /usr/local/src/modwsgi# wget http://modwsgi.googlecode.com/files/mod_wsgi-3.3.tar.gz# tar zxvf mod_wsgi-3.3.tar.gz # cd mod_wsgi-3.3# which python /usr/local/bin/python上記の結果を反映して 「--with-python」を指定する# ./configure CFLAGS=-fPIC --with-python=/usr/local/bin/python# make# make install

ね、簡単でしょ?

Page 24: Cent osにpyhtonをインストールしてみよう

5. mod_wsgi をインストールしてみよう

Apache の設定(参考までに)

# cat /etc/httpd/conf.d/wsgi.confLoadModule wsgi_module modules/mod_wsgi.soWSGIPythonHome /usr/localalias /wsgi/static /var/www/cgi-bin/wsgi/staticWSGIScriptAlias /wsgi /var/www/cgi-bin/wsgi/WSGIPythonPath /var/www/html/cgi-bin/wsgi/<Directory /var/www/cgi-bin/wsgi> WSGIApplicationGroup %{GLOBAL} Order allow,deny Allow from all</Directory>上記Config を作成後、Apacheを再起動

Django や Web2py を使う場合 Apache のConfig に追記が必要です。 (もちろん各フレームワークを展開してですが。)

Page 25: Cent osにpyhtonをインストールしてみよう

おわり