ssh-copy-idで公開鍵を登録

たまにしか使わないのでメモです。
sshで公開キーをターゲットホストに登録する際にssh-copy-idコマンドを使えば一発です。


$ssh-copy-id -o StrictHostKeyChecking=no -i $HOME/.ssh/id_rsa.pub [ターゲットホスト名|IPアドレス]

ターゲットホストは「ユーザ名@ホスト名|IPアドレス」と書くこともできます。

ssh-agentでパスフレーズを省略

ssh-agentを使ってSSH接続時にパスワード(パスフレーズ)を省略する方法に関するメモ。

ssh-agentの起動


$eval `ssh-agent`

秘密鍵ssh-agentに登録


$cd $HOME
$ssh-add ~/.ssh/id_rsa

登録したキーを確認する


$ssh-add -l

ssh-agentの停止


$eval `ssh-agent -k`

ssh-agentはログアウトしてもプロセスが残るので停止させたい場合は必ず停止コマンドを実行するか~/.bash_logoutに下記コードを記述する。


ssh-agent -k

CentOS7にAnsibleをインストール

Chefは一時期興味があって調べてたけど最近はAnsibleが気になる。

とりあえずCentOS7にansibleとsshpassをインストールした時のコマンドを記録。
yumでインストールするにはEPELレポジトリを先に追加する必要があるみたい。


$sudo yum install -y epel-release.noarch
$sudo yum install -y sshpass
$sudo yum install -y ansible

Pyhton2.6か2.7があればいいらしいのでCentOS6でもインストール可能だと思います。

Hadoop-2.6.4をスタンドアローンモードで動作させてみる

かなり久しぶりの投稿です。いい加減2系を利用しようと重い腰を上げ少しずつ検証中。とりあえずメモ程度に記録します。(といってもほぼ昔の1系の記事からのパクリです。)

対象バージョンはhadoop-2.6.4 JavaはJDK1.8を利用。JAVA_HOMEは/usr/local/java8とします。

その他各種パラメータは以下の通り。

ユーザホーム /home/hadoop/local
インストール ${HOME}/local
hadoop.tmp.dir ${HOME}/local/opt/hadoop2
HADOOP_PID_DIR ${HOME}/local/var/run/hadoop2

Hadoopのインストール


cd $HOME/local
tar -zxvf hadoop-2.6.4.tar.gz
ln -s hadoop-2.6.4/ hadoop2

その後各種ディレクトリの作成。


cd $HOME/local
mkdir -p opt/hadoop2
mkdir -p var/run/hadoop2

スタンドアロンモードの時にpidファイル格納用のディレクトリは不要かも?

下記ディレクトリに移動して設定ファイルの修正を行います。


cd $HOME/local/hadoop2/etc/hadoop

core-site.xml

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/local/opt/hadoop2</value>
        <description>A base for other temporary directories.</description>
    </property>
</configuration>

mapred-site.xml
mapred-site.xml.tmeplateをmapred-site.xmlという名前でコピーもしくはリネームして下記を追加。

<configuration>
    <property>
        <name>mapred.job.tracker</name>
        <value>local</value>
    </property>
</configuration>

hadoop-env.sh


export JAVA_HOME=/usr/local/java8
export HADOOP_PID_DIR=/home/hadoop/local/var/run/hadoop2

動作確認


cd /home/hadoop/local/opt/hadoop2
mkdir -p input/grep_example
cd ${HOME}/loca/hadoop2
cp ./etc/hadoop/*.xml $HOME/local/opt/hadoop2/input/grep_example/
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep \
/home/hadoop/local/opt/hadoop2/input/grep_example \
/home/hadoop/local/opt/hadoop2/output/grep_example 'dfs[a-z.]+'
cat /home/hadoop/local/opt/hadoop2/output/grep_example/*

正常終了すると最後のcatコマンドでgrep処理の結果が出力される。

Redisインストールメモ

Redisをインストールした際のメモ。

redisのインストール


tar -zxvf redis-2.8.17.tar.gz
cd redis-2.8.17
make
make install

※このままインストールすると/usr/local/binにRedisの実行ファイルがインストールされてしまうため、別のディレクトリにインストールしたい場合はredis-2.8.17/src配下のMakefileのPREFIX?を修正してからmake、make installを実行すること。

redisの起動


cd $REDIS_HOME/bin
redis-server path_to/redis.conf

ruby-2.1.0をCentOS6にインストール

ruby-2.1.0をCentOS6にソースからインストールした際のメモです。

まずRubyをソースからビルドするために必要そうな以下のライブラリをインストールします。(いらないのもあると思います。)


gcc-c++, zlib-devel, autoconf, automake, libtool, bison, readline-devel, curl-devel, libxslt-devel, libxml2-devel, libffi-devel, openssl-devel, httpd-devel, ncurses-devel, tk-devel, bzip2, sqlite, sqlite-devel

環境によってはすでにインストール済みのライブラリもあると思うので必要なもののみインストールすればOKです。


yum -y install libffi-devel openssl-devel httpd-devel ncurses-devel tk-devel ...

次に、libyaml-develが必要ですが、標準のYumレポジトリに存在しないためEPELレポジトリよりインストールします。(EPELレポジトリの設定は割愛します。)


yum --enablerepo=epel -y install libyaml-devel

後はrubyを以下の手順でインストールします。


#tar -zxvf ruby-2.1.0.tar.gz
#cd ruby-2.1.0
#./configure
#make
#make install
#ruby -v
#gem -v

インストール先を、たとえば「/usr/loca/ruby-2.1.0」等に変更する場合は以下のようにしてください。


./configure --prefix=/usr/local/ruby-2.1.0

なお、上記のようにインストール先を変更した場合は適切にPATHを設定してください。

インストールしたファイルなどの詳細を確認する場合は、以下のファイルを参照してください。


cd ruby-2.1.0
less .installed.list