gitlab 2.0 をcentos 5.5にインストール

gitlab 2.0のセットアップに必要なもの

  • git, gitolite ( gitosisでもできると思うけど, 2.0からgitoliteが使えるようなので )
  • ruby 1.9.2以上 ( 公式には1.9.2と書いてるけど最新が1.9.3だったのでそれを使った )
  • redis ( 必要らしいけど、何に使うかいまいちわかってない )
  • sqlite3 ( 標準ではこれを使うらしい。mysql使おうとしたけどだめだった。あまり追ってないけど )

学校 環境

  • ruby 1.9.3p0
    • rpmを作ってインストールした
  • git 1.7.2.1
  • redis 2.0.0
  • thin 1.3.1

ひらめきまずは、gitlabを適当な場所に配置

$ cd /srv
$ git clone git://github.com/gitlabhq/gitlabhq.git

ひらめきgitoliteをインストールする ( gitlabというユーザを作った )

$ sudo /usr/sbin/useradd gitlab

$ sudo –H –u gitlab –s

$ ssh-keygen –f ./admin

$ mkdir -p $HOME/bin $HOME/gitolite/conf $HOME/gitolite/hooks

$ git clone git://github.com/sitaramc/gitolite gitolite-source

$ cd gitolite-source

$ src/gl-system-install $HOME/bin $HOME/gitolite/conf $HOME/gitolite/hooks

$ gl-setup $HOME/admin.pub

参考URL: http://webos-goodies.jp/archives/access_control_to_git_repositories_with_gitlite.html

ひらめきbundle installとmigrateをする。 ruby-debug-base19インストールのためにruby-1.9.2-p290のソースが必要(四苦八苦してこれで解決した)

$ wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p290.tar.gz –O /tmp/ruby-1.9.2-p290.tar.gz

$ mkdir /tmp/source

$ cd /tmp/source

$ tar –zxvf /tmp/ruby-1.9.2-p290.tar.gz

$ cd /srv/gitlabhq/

$ bundle config build.ruby-debug-base19 –with-ruby-include=/tmp/source/ruby-1.9.2-p290/

$ bundle install

$ bundle exec rake db:setup RAILS_ENV=production

$ bundle exec rake db:seed_fu RAILS_ENV=production

参考URL: http://stackoverflow.com/questions/7054948/ruby-debug19-on-ruby-1-9-3-preview1

ひらめき thinを使って公開する

$ sudo cp /home/gitlab/admin /root/.ssh/id_rsa

$ sudo chmod 600 /root/.ssh/id_rsa

$ cat /root/thin.conf

port: 80
pid: tmp/pids/thin.pid
log: log/thin.log
address: 0.0.0.0
max_persistent_conns: 50
max_conns: 50
timeout: 600
wait: 30
require: []

environment: production
daemonize: true
chdir: /srv/gitlabhq

$ sudo thin –c /root/thin.conf

以上でgitlab構築完了

現状ではzipなどのアーカイブではダウンロードできない。(主にこれを期待してたんだけど、構築に専念しすぎた)

redisは何に使っているかいまいちわかりません。

Google Buzz

chefの構造を整理してみる(0.10.4)

最近、サーバを構築する作業が多くなってきた。なのでミドルウェアのインストールを簡略化するため、chefを入れることにした。puppetはマニフェストの記述方法がわかりにくく、応用できる知識も少ないと思ったためやめた。

chefをインストールにいろいろ四苦八苦したので、chefのアーキテクチャを自身の整理のためにまとめてみる。

※chefでは hosted chef と 自分ですべて構築する方法があるみたいです。ここではhosted chefは使いません。

 

まずは、アーキテクチャ

レシピはcouchDBに保存し、chef serverのAPIを使って各サーバ(che client)に適用するみたい

knifeは、クライアントを増やしたりとかのAPIの操作?をする役を持っているみたい

 

ServerAPIとknife

knifeコマンドを使用して、nodeの追加やcookbookの追加/削除等を行う。

 

Chef-solo

cookbookをクライアントに適用するときにcookbookの検索とかcacheに使用するラッパーみたい。とりあえず、通常運用しているときはあまり意識なくてもよさげ。

 

Chef-Server WebUI

クライアントの状況やcookbookリストとか見れる。knifeでもできるがクラインとの追加なども可能。

 

全体的な感想

実際に構築してわかったが、いろいろ分かれてて分散化が徹底しているみたい。1台にてんこ盛りにしたけど、大規模なサービスとかでは分散して負荷を減らすことも容易だと思う。

そのおかげで理解するのにすこし手間取ってしまった。

最後にbug fixは以下にまとまっている

次は、実際の構築手順を書くことにする

Google Buzz

さくらクラウドの未来予想図

さくらクラウドを10日間使い続けてきたが、出たばかりだろうがいまいちVPSから移行する気が起きない。

移行しようとしている対象が開発環境だからだろう。

 

開発環境には、さくらクラウドよりVPSのほうが現状では使いやすい。

 

OSの再インストールができるのでスケールアウトなどのテストをするのにはすごく便利。

ただ、VPSには初期状態で25ポートがふさがれているためクラウドのようにぽこぽこ起動するわけには行かない・・・。

 

なので、今後のさくらクラウドに期待することをリストアップしてみた。

 

  • VPS 512 程度のプランの追加
  • 再インストール機能を追加
  • サーバ作成などのAPIの公開

 

リストアップってほどでもなかったけど、これぐらいだろうか。

 

これにからどんどん日本のスタートアップが増えるのに期待!!

Google Buzz

さくらクラウドの感想とAmazon EC2

さくらクラウドがリリースされて一週間もたちました。サーバ起動しっぱなしで何もしていない。しかも初回にサーバ立ち上げたりネットワーク作ってたりしてたので、1658円になってた…orz

ひさしぶりにコントロールパネルをたけど、ディスクを消したときに計算が合わない、不具合は直っていたようである。また、サーバを消すさいにディスクも消しますか?とか出るので親切になったみたい。

書くこともないのでAmazon EC2と比較表でもつくろうかなぁと思ったけど、以下の電卓?で計算してみたところ自分の運用からしてみればさくらクラウドがいいかな。

AWS Simple Monthly Calculator ← これ電卓いいね。

なので、自分の頭では以下のように理解。

 

  • 開発とかで数時間サーバが必要な場合はEC2
  • 小さなサービスとか月単位で計算するサービスにはさくらクラウド

 

EC2は大規模向けかと。大規模になればなるほど、こまくメニュー化されたEC2はメリットがありそうな気がする。自分のように1ヶ月単位でやってる人は、さくらが断然お得!!

Google Buzz

さくらクラウドを使ってみた感想

11月15日やっとさくらクラウドが公開されたので使ってみた。

少し触っただけなので、間違ってるかも知れなけど、所感を・・・

 

  • ネットワークが高いスイッチが5千円/月ちょっとルータが1万円/月ちょっとなので、サーバをルータ代わりやスイッチ代わりにして、ipsecなどでネットワーク作ったほうが安い。vyatta coreもあるしそのほうがいいとおもう。
  • ディスクやネットワークを削除した場合に、すぐにステータスのご利用状況のサーバが減らない。(再ログインすると減っている)

 

申し少し使ってみて続き書きます♪

Google Buzz
Go back to top