ほげほげ

プログラミング、英会話、ヨガ、料理などの備忘録など。

No space targeted, use 'cf target -s SPACE'

bluemix で pushしようとしたところ、以下のエラーが出力されpushできなくなった。

 No space targeted, use 'cf target -s SPACE'

-s devとdevスペースを指定しており、bluemix consoleからは確かに存在している。

ぐぐってみたところ、regionの指定が正しくない場合に発生することがわかった。

regionを明示的に正しく指定してログインし直すことで解決した。

cf login -a https://api.ng.bluemix.net -u <ユーザー名> -o <組織名> -s <スペース名>

人の顔と名前を覚える方法

ずっと人の顔と名前を覚えるのが苦手だと思っていました。 実際なかなか覚えることが出来ないままでした。

しかし最近転職したのを気に、顔と名前を覚えたいと思うようになりました。

やったことは2つです。 - ある人を見て名前を知っていたら、○○さんだと心のなかで思うようにすること - 名前を口に出して呼んで会話すること

このふたつを実行するだけで、簡単に顔と名前を一致させることができるようになりました。

vagrantホストからゲストへansibleで接続する

vagrantゲストを2台作成して、1台からもう1台へansibleコマンドで操作するサンプルは結構あったのだが、ゲスト1台のみを構築する手順が見当たらなかったのでメモしておきます。

ssh接続情報の確認

vagrantゲストへssh接続するにはvagrantユーザーを使用すると、ゲストへ直接接続するのではなく、一度localhostを経由してポートフォワーディングしてゲストに接続するようです。 sshの接続の確認方法はvagrant ssh-configで確認できます。

$ vagrant ssh-config
Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile "PATH_TO_DIRECTORY/.vagrant/machines/default/virtualbox/private_key"
  IdentitiesOnly yes
  LogLevel FATAL

この例だと、ホストの2222ポートを使用してゲストにssh接続しています。

ansible hostsファイルの編集

ansibleで操作するサーバーの情報をhostsファイルに設定しておく必要があります。 これにはssh接続に関する情報も設定できるので、ssh-configで調べた情報を元に以下のように設定しておきます。

[db-server]
db1 ansible_port=2222 ansible_host=127.0.0.1 ansible_user=vagrant ansible_ssh_private_key_file=.vagrant/machines/default/virtualbox/private_key

参考

ansibleコマンドの実行

以下のようにpingを実行し、正常に実行されればansibleでゲストを操作できることになります。

$ ansible db-server -i hosts -m ping
db1 | SUCCESS => {
    "changed": false,
    "ping": "pong"
}

vagrant sshを使わずにvagrant に ssh接続

ゲストにわりあてられるIPアドレスに22ポートでアクセスしようとしてもダメ。

vagrant ssh-configでssh設定が確認できる。 その情報を参考に、以下のようにアクセスできる。

ssh vagrant@127.0.0.1 -p 2222 -i .vagrant/machines/default/virtualbox/private_key

jettyとは

ずっとスクリプト言語で開発してましたが、servletで開発できるようになる必要があります。

今まではweb serverといえば、 apache , lighttpd ,nginxなどを使用してきましたが、今日jettyというweb server & servlet実行環境のようなものがあることを知りました。

どうやらjettyはnginxのように非同期で処理している模様。

使用もそれなりに簡単で、アーカイブを回答して展開し、java -jar $JETTY_HOME/start.jarてな感じで実行すると8080ポートでwebサーバーが起動します。

今後しばらくはお世話になりそうです。 末永くよろしく。

windowsでvagrantを使う際の注意点

ひょんなことからwindows環境でvagrantを使用する必要に迫られた。 幾つかハマった点があったので、メモ。

sshがない

windowsには標準でsshコマンドがないので、vagrant sshなどで接続できない。 sshを使用できる方法はいくつかあるが、Git for Windowsをインストールしgit bashのコンソールでvagrant sshなどを実行するのが楽ちん。

仮想化の許可

BIOSの設定などで明示的に仮想化を許可する設定をする必要があるマシンがある。 vagrant upだとエラーの内容がわかりづらいのですが、virtualbox自体の仮想マシンを操作しようとすると仮想化が許可されていない旨のメッセージが表示されます。

今のところハマりは上の2つです。