2016年2月23日 星期二

Cassandra Config (3.3.0)

裝完 Cassandra 後試著做兩件事

1. 將 listen interface 由 localhost 改為其他 IP, 支援外部連線
2. 建帳號

兩者皆由修改  ~/cassandra/conf/cassandra.yaml 著手

1. Change IP
目前只是先試出來有兩個地方要改

#listen_address: localhost
listen_interface: [your interface] ex. eth1  

#rpc_address: localhost
rpc_address: [your ip] ex. 192.168.2.129

比較奇怪的是, 
看說明, 應該設 listen_address 就可以, 但直到改了 rpc_address 才真的 listen 在指定的 IP上
另外我目前 listen_address 要改用 listen_interface 才行. 否則執行 cassandra 會有error.
待有空再來研究

[另外試了 Cassandra 3.2.1  則是兩者都要設 ip address, 也是奇怪]

2. Create User

預設執行 cql 是不需要 username/password
但當要執行 create user 時, 會出現類似以下 error:

InvalidRequest: code=2200 [Invalid query] message="org.apache.cassandra.auth.CassandraRoleManager doesn't support PASSWORD"

同樣需要修改 config

#authenticator: AllowAllAuthenticator
authenticator: PasswordAuthenticator

#authorizer: AllowAllAuthorizer
authorizer: CassandraAuthorizer

這兩項改完可以預設帳號登入(cassandra/cassandra) 並 create user
ex.
~/cassandra/bin/cqlsh 192.168.2.129 -u cassandra -p cassandra
Connected to Test Cluster at 192.168.2.129:9042.
[cqlsh 5.0.1 | Cassandra 3.2.1 | CQL spec 3.4.0 | Native protocol v4]
Use HELP for help.
cassandra@cqlsh> create user test with password 'test' ;

參考資料:
http://stackoverflow.com/questions/31820914/in-cassandra-2-2-unable-to-create-role-containing-password


2016年2月5日 星期五

Install cassandra on ubuntu 14.04

1. 先安裝 Java JDK
目前的是 Java 8, Java 9 官方還不建議使用

$sudo add-apt-repository -y ppa:webupd8team/java
$sudo apt-get update
$sudo apt-get install oracle-java8-installer


2. 安裝 Cassandra
目前從官網看到的最新版是 3.2.1

下載
$ wget http://apache.stu.edu.tw/cassandra/3.2.1/apache-cassandra-3.2.1-bin.tar.gz
$ tar -xvzf apache-cassandra-1.2.4-bin.tar.gz
$ mv apache-cassandra-1.2.4 ~/cassandra

安裝&設定
$sudo mkdir /var/lib/cassandra
$sudo mkdir /var/log/cassandra
$sudo chown -R $USER:$GROUP /var/lib/cassandra
$sudo chown -R $USER:$GROUP /var/log/cassandra
$export CASSANDRA_HOME=~/cassandra
$export PATH=$PATH:$CASSANDRA_HOME/bin

啟動 cassandra
$  ./cassandra/bin/cassandra
原本是用 sudo 去執行, console 上會顯示訊息建議不要用 root 權限啟動 cassandra, 所以就拿掉囉

執行 cql
$ ./cassandra/bin/cqlsh 

顯示:
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.2.1 | CQL spec 3.4.0 | Native protocol v4]
Use HELP for help.
cqlsh> 

簡單的指令操作可參考官網 GettingStarted


參考資料
http://tecadmin.net/install-oracle-java-8-jdk-8-ubuntu-via-ppa/#
http://idroot.net/tutorials/how-to-install-apache-cassandra-on-ubuntu-14-04/
http://wiki.apache.org/cassandra/GettingStarted



2015年2月22日 星期日

硫磺之火-超自然迷殺首部曲

是兩個作者合著的偵探小說: 道格拉斯.普萊斯頓 & 林肯.柴爾德

比較好奇的是, 寫小說跟寫報告畢竟有些不同, 即使情節可先溝通, 但每個人慣用的語詞還是會有所不同. 話說回來, 剛出道的上官鼎也是三位一體的兄弟檔, 而非僅現今寫王道劍的那位

原本在圖書館看到的是第三部 "死者之書",  因為是第三部, 圖書館又沒進前兩部 (真怪) 就一直沒借. 今年圖書館網站更新, 發現上網可用館際借書, 在附近圖書館就可取書, 實在是太方便了

會稱之超自然迷殺, 是指死者的死因乍看都是非正常自殺或他殺的狀況
首部曲 "硫磺之火"  死者死因導於人體自燃, 現場狀況更攘人不禁聯想兇手是地獄來的惡魔
也帶出了故事中的支線劇情

主角是一位 FBI探員 & 一位刑警. 可看作是福爾摩斯與華生這樣的拍檔, 一個神通廣大, 相較之下另一個按直覺行事. 後面兩部曲還沒借. 應該還會是這兩位才對.  雖然 FBI 最後被埋起來了 XD.

劇情則跟著一個個死掉的嫌犯發展, 逐漸帶出動機, 兇手及殺人手法
個人是覺得推理的部分不算太多, 動作場面到是不少.

小說應該頗暢銷, 但 Google 了一下, 似乎沒拍成電影.
也難說啦, 小說暢銷, 電影不見得賣座, 像千禧三部曲小說賣得那麼好, 電影也只拍了一步就沒續集了.... 偏驚悚的情節還是不夠大眾吧


2015年2月16日 星期一

Install express 4.0 with npm

為了在 nodejs 中使用 express
使用 npm 安裝 express
> sudo npm install -g express

安裝後 nodejs 可正常使用 express
但是當想用 express --version 時, 卻會出現
"The program 'express' is currently not installed"

查了一下才發現
express 4.0 後, 要安裝 express-generator
> sudo npm install -g express-generator
才會有 express 執行檔, 用於建立 application

另外則記得進到 node_modules/express
執行
> sudo npm install 安裝相關套件

參考資料:
install express with npm

Install & Upgrade nodejs on Ubuntu 14.04

安裝

安裝 nodejs, 原本是用
> sudo apt-get install  nodejs
安裝後發現下command 只能用 nodejs [filename].js , 而非 node [filename].js

後來將nodejs 移除改用
> sudo apt-get install nodejs-legacy
就可解決
其實應該也只是建了 node link 指向 nodejs

更新
由於透過 apt-get 安裝的是較舊的版本
可透過 npm 進行更新

>sudo npm cache clean -f
>sudo npm install -g n
>sudo n stable

若想要更新到特定版本
可將 sudo n stable 改為 sudo n [version] , ex, sudo n 0.10.30

Note:
當用apt-get install 安裝時, 有時會看到 "node" 這個套件, 這個套件跟 nodejs 無關


參考資料
upgrade Node.js via NPM
Can not install packages using node package manager in Ubuntu

2015年2月12日 星期四

Linux Command

雖然很多command 使用都可以用 "man xxx" 去找
但現在已習慣用 "google xxx"  了 XD

把自己會用到的做些整理

ps -eLf 
- list process with threads
- 參考

tar of 'gz'
- 壓縮:  tar zcvf FileName.tar.gz
- 解壓:  tar zxvf FileName.tar.gz
- 參考

uname - a
- Check linux kernel version

grep
- grep -nr [mystring] [folder]

2015年2月10日 星期二

VMware Tools fail for Shared Folders (Ubuntu)

先前在 windows 7 上安裝, VMware-Player 7.0 + Ubuntu 14.04.1

原本用VMware tools 設定了 shared folders 以便存取 windows 資料夾
某天發現無法使用, 訊息顯示未安裝 VMware tools.
透過 GUI 上的 "Reinstall VMware Tools" 也無法重新安裝

Google 後找到 這篇

說明原因可能是 kernel upgrade 後造成的

按著步驟
1. login as super user : sudo -i
2. run command:/usr/bin/vmware-config-tools.pl

然後就是一連串的 enter , 讓VMware Tools 安裝需要的 modules 就好了 ^ ^

更新VMware tools 可參考這篇

=============
3/6

最近又出現 shared folders 無法正常運作的狀況
執行 vmware config 會出現 vmhgfs compile fail 的相關 error.
找到這篇
看來同樣是更新 linux kernel (3.13.0.46)後出現的問題, 在vmware tool 修正前, 似乎只能先以回復舊版linux kernel 的方式來處理.

試了回復後再執行一次 vmware-config-tools.pl 就 ok了

切換 linux kernel,
簡單的方式是開機時 按著 'shift' , 進入選單選擇要開機的 kernel
若要一勞永逸, 不想每次開機都選一次, 可參考這篇, 還沒試