15 Şubat 2016 Pazartesi

10 Şubat 2016 Çarşamba

13 Ocak 2016 Çarşamba

Phyton Modül Oluşturma ve Kullanımı

Pyhtonda yazmış olduğumuz bir programı yada modulu kullanabilmek için modulun kodunun bulunduğu dizini pyhtonun path'ide eklemek lazım.


Phytonun bir modulu ararken baktığı klasörleri görebilmek ve kendi modulumuzu eklemek için:

>>> import sys
>>> sys.path
>>> sys.path.append(r'/home/kullanici/benimModulum')

ikinci bir yöntem ise Phtyto'nun bakmış olduğu dizinlerden birine yazdığımız modulu eklemektir. En yaygın olanı site-packages dizinidir. Bu dizine yazdığımız modulu eklediğimizde herhangi bir program içerisinden çağırabiliriz.

sys.path de bulunan dizinlerden moduller yüklenirken dizinlerin tanımlanma sırası gözönünde bulundurulur. Ve modül ilk bulunduğunda arama işlemi sonlandırılır. Modullerin yüklenmesi sırasında herhangi bir öncelik verilmek isteniyorsa bu tanımlama yapılabilir. Örneğin kullanıcının kendi tanımladığı modullerin bulunduğu dizinin öncelikli olmasını istiyorsa:

>>> sys.path.insert(0, r'benimProjelerim/benimModulum')

Bir kez yüklediğimiz modülde değişiklik yapıp tekrar yüklemek istersek:

>>> import importlib
>>> importlib.reload(benimModulum)

27 Ağustos 2015 Perşembe

Ambari 2.1.0 Development Enviroment Setup - Ubuntu 14.04

~$ su
~$ yum install ntp -y
~$ service ntpd start
~$ service iptables stop
~$ /etc/init.d/iptables stop
~$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024k
~$ sudo mkswap /swapfile
~$ sudo swapon /swapfile
~$ echo "/swapfile       none    swap    sw      0       0" >> /etc/fstab
~$ apt-get install g++ -y
~$ apt-get install git -y
~$ apt-get install python-dev
~$ apt-get install python-setuptools
~$ wget http://nodejs.org/dist/v0.10.31/node-v0.10.31-linux-x64.tar.gz
~$ tar zxvf node-v0.10.31-linux-x64.tar.gz
~$ mv node-v0.10.31-linux-x64 /usr/share/node
~$ /usr/share/node/bin/npm install -g brunch@1.7.17
~$ wget --no-check-certificate http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg
~$ sh setuptools-0.6c11-py2.6.egg
~$ wget http://psg.mtu.edu/pub/apache/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz
~$ tar zxvf apache-maven-3.0.5-bin.tar.gz
~$ mv apache-maven-3.0.5 /usr/share/maven
~$ apt-get install openjdk-7-jdk -y
~$ echo 'PATH=$PATH:/usr/share/node/bin' > /etc/profile.d/node.sh
~$ chmod +x /etc/profile.d/node.sh
~$ echo 'PATH=$PATH:/usr/share/maven/bin' > /etc/profile.d/maven.sh
~$ chmod +x /etc/profile.d/maven.sh
~$ vi ~/.bashrc
    export PATH= /usr/share/maven/bin:$PATH
    export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.85.x86_64  
(it must be your java installation path) 
    export _JAVA_OPTIONS="-Xmx2048m -XX:MaxPermSize=512m -Djava.awt.headless=true"
~$ exit
~$ reboot
~$ git clone https://git-wip-us.apache.org/repos/asf/ambari.git
~$ cd ambari
~$ git clean -df 
~$ mvn versions:set -DnewVersion=2.1.0-SNAPSHOT
~$ pushd ambari-metrics
~$ mvn versions:set -DnewVersion=2.1.0-SNAPSHOT
~$ popd
~$ mvn -B clean install package jdeb:jdeb -DskipTests -Dpython.ver="python >= 2.6" -Preplaceurl -Preplaceurl -Drat.skip -Drat.ignoreErrors=true

Ambari 2.1.0 Development Enviroment Setup - Centos6

~$ su
~$ yum install ntp -y
~$ service ntpd start
~$ service iptables stop
~$ /etc/init.d/iptables stop
~$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024k
~$ sudo mkswap /swapfile
~$ sudo swapon /swapfile
~$ echo "/swapfile       none    swap    sw      0       0" >> /etc/fstab
~$ yum install git -y
~$ yum install rpm-build -y
~$ yum install gcc-c++ -y
~$ wget http://nodejs.org/dist/v0.10.31/node-v0.10.31-linux-x64.tar.gz
~$ tar zxvf node-v0.10.31-linux-x64.tar.gz
~$ mv node-v0.10.31-linux-x64 /usr/share/node
~$ /usr/share/node/bin/npm install -g brunch@1.7.17
~$ wget --no-check-certificate http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg
~$ sh setuptools-0.6c11-py2.6.egg
~$ wget http://psg.mtu.edu/pub/apache/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz
~$ tar zxvf apache-maven-3.0.5-bin.tar.gz
~$ mv apache-maven-3.0.5 /usr/share/maven
~$ yum install java-1.7.0-openjdk-devel -y
~$ echo 'pathmunge /usr/share/node/bin' > /etc/profile.d/node.sh
~$ chmod +x /etc/profile.d/node.sh
~$ echo 'pathmunge /usr/share/maven/bin' > /etc/profile.d/maven.sh
~$ chmod +x /etc/profile.d/maven.sh
~$ vi ~/.bashrc
    export PATH= /usr/share/maven/bin:$PATH
    export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.85.x86_64  
(it must be your java installation path)
    export _JAVA_OPTIONS="-Xmx2048m -XX:MaxPermSize=512m -Djava.awt.headless=true"
~$ exit
~$ reboot
~$ git clone https://git-wip-us.apache.org/repos/asf/ambari.git
~$ cd ambari
~$ git clean -df 
~$ mvn versions:set -DnewVersion=2.1.0-SNAPSHOT
~$ pushd ambari-metrics
~$ mvn versions:set -DnewVersion=2.1.0-SNAPSHOT
~$ popd
~$ mvn -B clean install package rpm:rpm -DskipTests -Dpython.ver="python >= 2.6" -Preplaceurl -Drat.skip -Drat.ignoreErrors=true



26 Ağustos 2015 Çarşamba

KVM SnapShot

Host: Ubuntu 14.04
VM : Centos6
  • create snapshot
    • ~$ virsh
    • ~$ snapshot-create-as ambariDev ssAmbariDev01
    • Domain snapshot ssAmbariDev01 created
  • list snapShots
    • ~$ virsh
    • ~$ snapshot-list ambariDev
    • Name Creation Time State
      ------------------------------------------------------------
      ssAmbariDev01 2015-08-26 14:15:07 +0300 running
  • Revert snapShot
    • ~$ virsh
    • ~$ snapshot-revert ambariDev ssAmbariDev01
  • Delete snapShot
    • ~$ virsh
    • ~$ snapshot-delete ambariDev ssAmbariDev01
Note: KVM does not support taking snapshots with raw format. You must convert row fortmat to qcov2 format

KVM - Ubuntu 14.04 - VirtManager - ImportError: No module named libvirt

ERROR:

Traceback (most recent call last): 
File "/usr/share/virt-manager/virt-manager.py", line 399, in <module> main() 
File "/usr/share/virt-manager/virt-manager.py", line 256, in main from virtManager import cli
File "/usr/share/virt-manager/virtManager/cli.py", line 29, in <module>
import libvirt ImportError: No module named libvirt

Solution:

sudo mv /usr/local/bin/python python-old #example name 
sudo ln -s /usr/bin/python /usr/local/bin/python