SlideShare a Scribd company logo
1 of 25
Download to read offline
CentOSにPyhtonを
インストールしてみよう
       2 0 1 2 / 1 0 / 0 6
 坪 内   由 孝 ( A _ W i l h e l m )
自己紹介
名前:
 坪内 由孝

Twitter:
 A_Wilhelm

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

趣味
軍事全般(最近は中部圏の航空祭巡ってます)
バイク(最近乗ってない…)
写真(レンズ欲しい…)
自己紹介
お仕事:
 大手製造業のIT子会社で遊んで働いてます。
 いろんなサーバーの構築・運用
 (最近は仮想化とかZABBIXとか)

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

Python歴
 1年ちょっと(素人にうぶ毛が生えた程度です)
 細々としたスクリプトに使ってます。(=あまり使わない)
 シェルスクリプトよりも可読性が高いので引継やすい。
1. CentOS に Python をインストールしてみよう
1. CentOS に Python をインストールしてみよう



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

 なぜインストールされているか
   yum が Python を使ってるから
1. CentOS に Python をインストールしてみよう




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


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

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

 注意点
   2.6系を消すとyumが動かなくなる
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
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


     ね、簡単でしょ?
1. CentOS に Python をインストールしてみよう




 Python2.6 が使いたい場合
   python26 で起動
2. インフラエンジニア?的 Python の使い方
2. インフラエンジニア?的 Python の使い方

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

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

ネットワーク機器の Config 変更後、自動的に
Config をバックアップ(telnetlib)

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

syslog 管理用のWebアプリ(mod_wsgi使用)
3. モジュールを使ってみよう
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 対応なので
  楽をしたい人は使うといいよ!
4. サーバー管理に便利?なモジュール紹介
4. サーバー管理に便利?なモジュール紹介


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


 ESXi とかストレージのシャットダウンに
 よく使ってます。
4. サーバー管理に便利?なモジュール紹介


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

 VMware環境の監視に使ってます。
 運用にも使えそうですが勉強不足…
4. サーバー管理に便利?なモジュール紹介

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

 本格的には使った事はないですが、
 ちょこっとMySQL触るくらいなら十分
4. サーバー管理に便利?なモジュール紹介




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

 ネットワーク機器の管理に使ってます。
 (configの保存とか情報の採取とか)
5. mod_wsgi をインストールしてみよう
5. mod_wsgi をインストールしてみよう



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

なんでいるの?
 Django とか Web2py には簡易Webサーバー
 がありますが本番運用には耐えれないので…
 mod_wsgi 単体でもWebページを作れます。
5. mod_wsgi をインストールしてみよう




インストール方法
 easy_install では入りません(´・ω・`)
 もちろんRPMもありません(´・ω・`)
 =コンパイルインストールです。
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

ね、簡単でしょ?
5. mod_wsgi をインストールしてみよう

Apache の設定(参考までに)
# cat /etc/httpd/conf.d/wsgi.conf
LoadModule wsgi_module modules/mod_wsgi.so
WSGIPythonHome /usr/local
alias /wsgi/static /var/www/cgi-bin/wsgi/static
WSGIScriptAlias /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 に追記が必要です。
  (もちろん各フレームワークを展開してですが。)
おわり

More Related Content

What's hot

XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)tokuhy
 
LinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみようLinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみようMasataka Tsukamoto
 
210911 これから始める電子工作とMicroPython
210911 これから始める電子工作とMicroPython210911 これから始める電子工作とMicroPython
210911 これから始める電子工作とMicroPythonTakuya Nishimoto
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1Kotaro Noyama
 
Slide osc2013tokyo spring
Slide osc2013tokyo springSlide osc2013tokyo spring
Slide osc2013tokyo springTakuma Nakajima
 
PHPerがRaspberry piとRubyでゴニョゴニョした話
PHPerがRaspberry piとRubyでゴニョゴニョした話PHPerがRaspberry piとRubyでゴニョゴニョした話
PHPerがRaspberry piとRubyでゴニョゴニョした話Toru Tamura
 
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2Etsuji Nakai
 
野良ビルドから見たGentoo
野良ビルドから見たGentoo野良ビルドから見たGentoo
野良ビルドから見たGentooNaohiro Aota
 
Osc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 jOsc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 jAkira Yoshiyama
 
YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化
YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化
YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化Fuminobu Takeyama
 
Infrastructure as CodeでReNom環境構築入門
Infrastructure as CodeでReNom環境構築入門Infrastructure as CodeでReNom環境構築入門
Infrastructure as CodeでReNom環境構築入門ReNom User Group
 
20151114 jawsug
20151114 jawsug20151114 jawsug
20151114 jawsug司 知花
 
関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側Gosuke Miyashita
 
Python twitterとtkinterのことはじめ
Python twitterとtkinterのことはじめPython twitterとtkinterのことはじめ
Python twitterとtkinterのことはじめYukitaka Uchikoshi
 
2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LT2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LTNaoto Gohko
 
P2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiP2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiKota Abe
 

What's hot (20)

171116 nishimoto-mruby
171116 nishimoto-mruby171116 nishimoto-mruby
171116 nishimoto-mruby
 
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
 
LinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみようLinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみよう
 
210911 これから始める電子工作とMicroPython
210911 これから始める電子工作とMicroPython210911 これから始める電子工作とMicroPython
210911 これから始める電子工作とMicroPython
 
systemdを始めよう
systemdを始めようsystemdを始めよう
systemdを始めよう
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
 
Slide osc2013tokyo spring
Slide osc2013tokyo springSlide osc2013tokyo spring
Slide osc2013tokyo spring
 
Pythonでゲーム作る
Pythonでゲーム作るPythonでゲーム作る
Pythonでゲーム作る
 
PHPerがRaspberry piとRubyでゴニョゴニョした話
PHPerがRaspberry piとRubyでゴニョゴニョした話PHPerがRaspberry piとRubyでゴニョゴニョした話
PHPerがRaspberry piとRubyでゴニョゴニョした話
 
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo2
 
野良ビルドから見たGentoo
野良ビルドから見たGentoo野良ビルドから見たGentoo
野良ビルドから見たGentoo
 
Osc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 jOsc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 j
 
YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化
YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化
YaST を使って Linux をらくらく設定―Btrfs を活用したファイルサーバー構築 & OS インストールの自動化
 
Infrastructure as CodeでReNom環境構築入門
Infrastructure as CodeでReNom環境構築入門Infrastructure as CodeでReNom環境構築入門
Infrastructure as CodeでReNom環境構築入門
 
20151114 jawsug
20151114 jawsug20151114 jawsug
20151114 jawsug
 
関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側
 
Python twitterとtkinterのことはじめ
Python twitterとtkinterのことはじめPython twitterとtkinterのことはじめ
Python twitterとtkinterのことはじめ
 
Systemd入門
Systemd入門Systemd入門
Systemd入門
 
2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LT2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LT
 
P2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiP2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabi
 

Similar to Cent osにpyhtonをインストールしてみよう

PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングPyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングRansui Iso
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Masahito Zembutsu
 
Ansible quickstart
Ansible quickstartAnsible quickstart
Ansible quickstartHideki Saito
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1Kotaro Noyama
 
サーバ構築自動化 On aws sqaleの場合
サーバ構築自動化 On aws   sqaleの場合サーバ構築自動化 On aws   sqaleの場合
サーバ構築自動化 On aws sqaleの場合Ryo Kuroda
 
hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorockyuzorock
 
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラインフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラsusumu tanaka
 
Osc10do linux nextstep
Osc10do linux nextstepOsc10do linux nextstep
Osc10do linux nextstepsmokey monkey
 
今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集Wataru NOGUCHI
 
「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of PythonTakanori Suzuki
 
リモート先へログインする時環境あるある
リモート先へログインする時環境あるあるリモート先へログインする時環境あるある
リモート先へログインする時環境あるあるRyota Sakamoto
 
超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows Serverにインストール超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows ServerにインストールShin Tanigawa
 
2006-04-22 CLR/H #14 .NET and open source
2006-04-22 CLR/H #14 .NET and open source2006-04-22 CLR/H #14 .NET and open source
2006-04-22 CLR/H #14 .NET and open sourceYoshiyuki Nakamura
 
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書くLinuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書くTetsuyuki Kobayashi
 
コンテナホスティングサービス「jaisting」開発に至るまで
コンテナホスティングサービス「jaisting」開発に至るまでコンテナホスティングサービス「jaisting」開発に至るまで
コンテナホスティングサービス「jaisting」開発に至るまでTatsuya Yagi
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefnpsg
 
Kibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKensuke Maeda
 

Similar to Cent osにpyhtonをインストールしてみよう (20)

PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングPyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミング
 
What is an Ansible?
What is an Ansible?What is an Ansible?
What is an Ansible?
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
Ansible quickstart
Ansible quickstartAnsible quickstart
Ansible quickstart
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
 
サーバ構築自動化 On aws sqaleの場合
サーバ構築自動化 On aws   sqaleの場合サーバ構築自動化 On aws   sqaleの場合
サーバ構築自動化 On aws sqaleの場合
 
Pykonjp2014
Pykonjp2014Pykonjp2014
Pykonjp2014
 
hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorock
 
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラインフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
 
Osc10do linux nextstep
Osc10do linux nextstepOsc10do linux nextstep
Osc10do linux nextstep
 
今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集
 
「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python
 
リモート先へログインする時環境あるある
リモート先へログインする時環境あるあるリモート先へログインする時環境あるある
リモート先へログインする時環境あるある
 
超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows Serverにインストール超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows Serverにインストール
 
2006-04-22 CLR/H #14 .NET and open source
2006-04-22 CLR/H #14 .NET and open source2006-04-22 CLR/H #14 .NET and open source
2006-04-22 CLR/H #14 .NET and open source
 
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書くLinuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書く
 
コンテナホスティングサービス「jaisting」開発に至るまで
コンテナホスティングサービス「jaisting」開発に至るまでコンテナホスティングサービス「jaisting」開発に至るまで
コンテナホスティングサービス「jaisting」開発に至るまで
 
Puppet入門
Puppet入門Puppet入門
Puppet入門
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
Kibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKibanaでsysstatを可視化する
Kibanaでsysstatを可視化する
 

More from 2bo 2bo

PyScriptの紹介
PyScriptの紹介PyScriptの紹介
PyScriptの紹介2bo 2bo
 
結婚式のエンドロールを「Pythonで」当日作った話
結婚式のエンドロールを「Pythonで」当日作った話結婚式のエンドロールを「Pythonで」当日作った話
結婚式のエンドロールを「Pythonで」当日作った話2bo 2bo
 
あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.1あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.12bo 2bo
 
Pyenvで幸せになろう.py
Pyenvで幸せになろう.pyPyenvで幸せになろう.py
Pyenvで幸せになろう.py2bo 2bo
 
Python東海の紹介.py
Python東海の紹介.pyPython東海の紹介.py
Python東海の紹介.py2bo 2bo
 
Pythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみるPythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみる2bo 2bo
 
自宅仮想マシンをConohaに移行してみた
自宅仮想マシンをConohaに移行してみた自宅仮想マシンをConohaに移行してみた
自宅仮想マシンをConohaに移行してみた2bo 2bo
 
Pillowの使い方
Pillowの使い方Pillowの使い方
Pillowの使い方2bo 2bo
 
PEP8を読んでみよう
PEP8を読んでみようPEP8を読んでみよう
PEP8を読んでみよう2bo 2bo
 
Raspberry p ionzabbixproxy
Raspberry p ionzabbixproxyRaspberry p ionzabbixproxy
Raspberry p ionzabbixproxy2bo 2bo
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む2bo 2bo
 
Raspberry piの紹介
Raspberry piの紹介Raspberry piの紹介
Raspberry piの紹介2bo 2bo
 

More from 2bo 2bo (12)

PyScriptの紹介
PyScriptの紹介PyScriptの紹介
PyScriptの紹介
 
結婚式のエンドロールを「Pythonで」当日作った話
結婚式のエンドロールを「Pythonで」当日作った話結婚式のエンドロールを「Pythonで」当日作った話
結婚式のエンドロールを「Pythonで」当日作った話
 
あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.1あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.1
 
Pyenvで幸せになろう.py
Pyenvで幸せになろう.pyPyenvで幸せになろう.py
Pyenvで幸せになろう.py
 
Python東海の紹介.py
Python東海の紹介.pyPython東海の紹介.py
Python東海の紹介.py
 
Pythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみるPythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみる
 
自宅仮想マシンをConohaに移行してみた
自宅仮想マシンをConohaに移行してみた自宅仮想マシンをConohaに移行してみた
自宅仮想マシンをConohaに移行してみた
 
Pillowの使い方
Pillowの使い方Pillowの使い方
Pillowの使い方
 
PEP8を読んでみよう
PEP8を読んでみようPEP8を読んでみよう
PEP8を読んでみよう
 
Raspberry p ionzabbixproxy
Raspberry p ionzabbixproxyRaspberry p ionzabbixproxy
Raspberry p ionzabbixproxy
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
 
Raspberry piの紹介
Raspberry piの紹介Raspberry piの紹介
Raspberry piの紹介
 

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

  • 1. CentOSにPyhtonを インストールしてみよう 2 0 1 2 / 1 0 / 0 6 坪 内 由 孝 ( A _ W i l h e l m )
  • 2. 自己紹介 名前: 坪内 由孝 Twitter: A_Wilhelm blog: http://www.zumwalt.info/blog 趣味 軍事全般(最近は中部圏の航空祭巡ってます) バイク(最近乗ってない…) 写真(レンズ欲しい…)
  • 3. 自己紹介 お仕事: 大手製造業のIT子会社で遊んで働いてます。 いろんなサーバーの構築・運用 (最近は仮想化とかZABBIXとか) → 所謂インフラエンジニア? Python歴 1年ちょっと(素人にうぶ毛が生えた程度です) 細々としたスクリプトに使ってます。(=あまり使わない) シェルスクリプトよりも可読性が高いので引継やすい。
  • 4. 1. CentOS に Python をインストールしてみよう
  • 5. 1. CentOS に Python をインストールしてみよう CentOS 6.3 base インストール(minimam だとNG)で Pyhton2.6.6 が使える!便利!素敵! なぜインストールされているか yum が Python を使ってるから
  • 6. 1. CentOS に Python をインストールしてみよう で終わりだと寂しいので Python2.7.3 を CentOS6.3 に インストールしてみましょう!
  • 7. 1. CentOS に Python をインストールしてみよう yumでインストール yumで提供されているもの以外は無い = Python 2.6.6 までしかない 2.7系3系のインストール方法 コンパイルインストールしかない… 注意点 2.6系を消すとyumが動かなくなる
  • 8. 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
  • 9. 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 ね、簡単でしょ?
  • 10. 1. CentOS に Python をインストールしてみよう Python2.6 が使いたい場合 python26 で起動
  • 12. 2. インフラエンジニア?的 Python の使い方 vSphere(pysphere)、ストレージのシャットダウン (paramiko) 大量のネットワーク機器からarpテーブルを取得 (telnetlib) ネットワーク機器の Config 変更後、自動的に Config をバックアップ(telnetlib) IPアドレス管理用のWebアプリ(Django使用) syslog 管理用のWebアプリ(mod_wsgi使用)
  • 14. 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 対応なので 楽をしたい人は使うといいよ!
  • 16. 4. サーバー管理に便利?なモジュール紹介 pramiko ssh 接続モジュール 公開 認証とパスワード認証に対応 pycryptが必要 easy_innstall でインストール可能 ESXi とかストレージのシャットダウンに よく使ってます。
  • 17. 4. サーバー管理に便利?なモジュール紹介 pysphere VMware ESXi APIモジュール vSphere環境の管理とかできます。 simple-json が必要 → easy_install でインストール可能 easy_install でインストール可能 VMware環境の監視に使ってます。 運用にも使えそうですが勉強不足…
  • 18. 4. サーバー管理に便利?なモジュール紹介 MySQLdb(mysql-python) MySQL 接続モジュール MySQL を触りたい時に使います。 easy_install でインストール可能 ※ 確認時(2012/10/1)は何故か404エラー… → easy_install mysql-python → import MySQLdb 本格的には使った事はないですが、 ちょこっとMySQL触るくらいなら十分
  • 19. 4. サーバー管理に便利?なモジュール紹介 telnetlib Telnet接続モジュール 標準モジュールです。 ネットワーク機器の管理に使ってます。 (configの保存とか情報の採取とか)
  • 21. 5. mod_wsgi をインストールしてみよう mod_wsgiて何? Python を Apacheで動かすためのモジュール なんでいるの? Django とか Web2py には簡易Webサーバー がありますが本番運用には耐えれないので… mod_wsgi 単体でもWebページを作れます。
  • 22. 5. mod_wsgi をインストールしてみよう インストール方法 easy_install では入りません(´・ω・`) もちろんRPMもありません(´・ω・`) =コンパイルインストールです。
  • 23. 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 ね、簡単でしょ?
  • 24. 5. mod_wsgi をインストールしてみよう Apache の設定(参考までに) # cat /etc/httpd/conf.d/wsgi.conf LoadModule wsgi_module modules/mod_wsgi.so WSGIPythonHome /usr/local alias /wsgi/static /var/www/cgi-bin/wsgi/static WSGIScriptAlias /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 に追記が必要です。 (もちろん各フレームワークを展開してですが。)