くんすとの備忘録

IT系技術メモ

移転しました。

15秒後に自動的にリダイレクトします。

KUSANAGIのインスタンスをConohaにVagrantを使ってセットアップする方法

この記事は特に何かのアドベントカレンダーというわけではありません。

以前、vagrantを使ってConohaを操作する記事を書いた(「Conohaへ(ほぼ)CLIだけでCoreOSのインスタンスをセットアップしてみた - くんすとの備忘録」)のですが、その時やれそうな予感がしたのでやってみました。

準備物

  • 契約済みのConohaアカウント
  • Vagrantコマンド

環境変数の設定とvagrant-conohaのインストール

前回の記事と同じですが。

環境変数の設定

export OS_USERNAME=[APIユーザ名]
export OS_PASSWORD=[APIパスワード]
export OS_TENANT_NAME=[テナント名]
export OS_AUTH_URL=[Identity Endpoint]
export OS_REGION=[リージョン]
export OS_ADMIN_PASSWORD=[Adminパスワード]

vagrant-conohaのインストール

$ vagrant plugin install vagrant-conoha

インスタンスの作成

さっそくvagrantでインスタンスを作成します。

KUSANAGIのイメージ名を確認

$ vagrant openstack image-list | grep -i kusanagi

出力結果

| c03ec927-88d0-41c1-8e64-e9e7029d7e59 | vmi-wordpress-kusanagi-centos-7.2-20gb    | public     | 2534      | 0            | 20            |
| 88503ca6-5d0f-454e-9b51-2e42d72d7d09 | vmi-wordpress-kusanagi-centos-7.2         | public     | 3260      | 0            | 50            |

Vagrantfile

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box       = 'conoha'
  config.ssh.username = 'root'
  config.ssh.pty      = true

  # disable rsync
  config.vm.synced_folder ".", "/vagrant", disabled: true

  config.vm.provider :conoha do |conoha|
    conoha.openstack_auth_url = 'https://identity.tyo1.conoha.io/v2.0'

    conoha.username           = ENV["OS_USERNAME"]
    conoha.password           = ENV["OS_PASSWORD"]
    conoha.tenant_name        = ENV["OS_TENANT_NAME"]

    conoha.flavor             = 'g-1gb'
    conoha.image              = 'vmi-wordpress-kusanagi-centos-7.2'
    conoha.region             = ENV["OS_REGION"]
    conoha.admin_pass         = ENV["OS_ADMIN_PASSWORD"]
    conoha.metadata           = {
      instance_name_tag: "vagrant_kusanagi"
    }
    conoha.security_groups    = [
      "default",
      "gncs-ipv4-all"
    ]
  end
end

生成&起動!

$ vagrant up

SSHして確認

$ vagrant ssh

確認

なるほどこれがKUSANAGIッ!!

f:id:kunst1080:20161205182859p:plain

削除(解約)

$ vagrant destroy

いじょう!

参考URL

調性ラブライブ! - 各キャラクターのイメージ調性について(μ’s編)

※これ系の記事を増やしていきたいので、思い切って専用のブログを作りました。よろしければそちらも見てくださいです。→http://tonality-lovelive.hatenablog.jp/entry/2016/12/03/002752


この記事はラブライブ! Advent Calendar 2016 - Adventarの3日目の記事として公開されました。

はじめに

「調性ラブライブ!」とは?

『ラブライブ! School idol project』 を、楽曲の音楽理論、とりわけ『調性』 の観点から考察する独自研究(考察・遊び)のことです。

例)

今回は、自分の中でのμ'sのメンバーのイメージ調性というものをまとめていきたいと思います。

各キャラクターのイメージ調性について

早速まとめていきます。

μ’s (国立音ノ木坂学院)

高坂 穂乃果

  • イメージ調: ホ長調
    • 調性のイメージ^1: 輝かしく、温和で喜ばしい。高貴の調。
  • 同じ調性の曲
    • ラブライブ!: 僕らは今の中で、愛してるばんざーい!、KiRa-KiRA Sensation!、小夜啼鳥恋詩
    • クラシック: ヴィヴァルディの「四季」より「春」、ショパンの「別れの曲」、ベートーヴェンのピアノソナタ第30番、

絢瀬 絵里

  • イメージ調: ホ短調
    • 調性のイメージ^1: 悲歎、悲痛、不安。早い曲では激烈なものとなる。
  • 同じ調性の曲
    • ラブライブ!:START:DASH!!、Mermaid festa vol.1、ダイヤモンドプリンセスの憂鬱、soldier game、?←HEARTBEAT(メロ)
    • クラシック: ショパンのピアノ協奏曲第1番、リムスキー=コルサコフの交響組曲「シェヘラザード」、スメタナの連作交響詩「わが祖国」第2曲「ヴルタヴァ」(モルダウ)

南 ことり

  • イメージ調: 変イ長調 ※ヘ長調・変ホ長調と迷いました
    • 調性のイメージ^1: 夢想的で繊細。叙情的で壮麗。生き生きとして新鮮。
  • 同じ調性の曲
    • ラブライブ!: 友情ノーチェンジ、夏色えがおで1,2,Jump、ススメ→トゥモロウ、No brand girls
    • クラシック: メンデルスゾーンの「歌の翼に」、ショパンの「英雄ポロネーズ」、ベートーヴェンのピアノソナタ第8番「悲愴」第2楽章、リストの「愛の夢」第3番

園田 海未

  • イメージ調: 変ホ長調
    • 調性のイメージ^1: 柔和の中にも悠然さを持ち、響きが充実し、華麗で荘重、最大の変化の表出に適するとまでいわれている。特に真剣な感情、壮大あるいは英雄的な気分を表すのによく使われる。青空の調ともいう。
  • 同じ調性の曲
    • ラブライブ!: 勇気のReason、ユメノトビラ、Music S.T.A.R.T!!
    • クラシック: ベートーヴェンの交響曲第3番「英雄」、ピアノ協奏曲第5番「皇帝」、ショパンのノクターンOp.9-2、スーザの「星条旗よ永遠なれ」

星空 凛

  • イメージ調: ロ長調
    • 調性のイメージ^1: 積極的になると、大胆な誇りを表し、消極的になると純潔な純情さを示す。精力的なこともある。
  • 同じ調性の曲
    • ラブライブ!: 恋のシグナルRin rin rin!、キミのくせに!
    • クラシック: ベートーヴェンのピアノ協奏曲第5番「皇帝」の第2楽章、ヴェルディの歌劇「リゴレット」より第三幕「女心の歌」、ブラームスのピアノ三重奏曲第1番

西木野 真姫

  • イメージ調: ニ短調 ※嬰ヘ長調と迷いました
    • 調性のイメージ^1: 不安、悲歎、荘厳、崇高。シューマンによると、巨大な力を持つ調。
  • 同じ調性の曲
    • ラブライブ!: Daring!!
    • クラシック: バッハのトッカータとフーガ(一番有名なやつ)、ベートーヴェンの交響曲第9番「合唱付き」、ピアノソナタ第17番「テンペスト」、リヒャルト・シュトラウスの交響詩「マクベス」

東條 希

  • イメージ調: 変ロ長調
    • 調性のイメージ^1: ゆったりした感じを出す。柔和な輝かしさ、静かで瞑想的なところもある。
  • 同じ調性の曲
    • ラブライブ!: Oh,Love&Peace!、乙女式れんあい塾、?←HEARTBEAT(サビ)
    • クラシック: シューベルトの「アヴェ・マリア」、シューマンの交響曲第1番「春」、ガーシュウィンの「ラプソディー・イン・ブルー」

小泉 花陽

  • イメージ調: ヘ長調
    • 調性のイメージ^1: 平和、単純素朴、牧歌的、田園的。低い音を多く使うと、深い悲しみまでにはいたらないが痛々しい感情を出し、ゆるやかな曲では荘厳な、しかしあまり宗教的でない感じを出す。
  • 同じ調性の曲
    • ラブライブ!: なわとび(ラスサビ)、僕らのLIVE 君とのLIFE、sweet&sweet holiday
    • クラシック: ベートーヴェンの交響曲第6番「田園」、ヴァイオリンソナタ第5番「春」、ショパンのバラード第2番、シューマンの「トロイメライ」

矢澤 にこ

  • イメージ調: ニ長調
    • 調性のイメージ^1: 高尚で華美、雄大で宗教的。特に歓喜に適す。活発なファンファーレにも用いられる。
  • 同じ調性の曲
    • ラブライブ!: 僕たちはひとつの光(メロ)、Listen to my heart!!(メロ)、もぎゅっと“love”で接近中!(前奏)
    • クラシック: ヘンデルのオラトリオ『メサイア』より「ハレルヤ」、ベートーヴェンの歓喜の歌(交響曲第9番第4楽章の主題)、ヨハン・シュトラウス1世のラデツキー行進曲

※穂乃果・絵里は即決、ことり・にこ・真姫は非常に迷いました

調性による関係性の考察

こういった風にキャラに調性を当てはめてみると、ここから関係祭などを考察できるようになりいろいろ捗ります。

調性の距離によるメンバーの関係性の考察

主な着目点は、『平行調』『同名調』『属調』『下属調』のような近親調、そして遠い調、などです。 考えうるパターンをいくつか上げてみます。

  • 穂乃果と絵里、にこと真姫は『同名調』の関係。
  • ことりと海未は『属調・下属調』の関係。
  • ソルゲ組(真姫・海未・絵里)は、順番に「ニ短調」「変ホ長調」「ホ短調」と半音階の関係になっています。
  • 花陽の「ヘ長調」と凛の「ロ長調」はちょうど正反対の調です。

曲の展開を踏まえた考察

曲の調性や転調の関係から考察することも可能です。

  • 「?←HEARTBEAT」はメロの部分が「ホ短調」、サビの部分が「変ロ長調」になっていす。のぞえりです。
  • 「なわとび」は、「変ホ長調」「ホ長調」「ヘ長調」と半音ずつ上がっていくことで、花陽の成長を表しているように感じます。
  • 「小夜啼鳥恋詩」は穂乃果を表す「ホ長調」です。
  • 「Love marginal」は「ハ短調」で、これは海未の「変ホ長調」の『平行調』です。
  • 「Love marginal」は「変ホ短調」で、これは海未の「変ホ長調」の『同主調』です。 ※12/11修正: 調間違えてました……でも大丈夫、ことほのには変わりありません。
  • 「スピカテリブル」は「嬰ト短調」で、これは南ことりの「変イ短調」の『同名調』です。

おわりに

それでは皆さんも、よき調性考察をお楽しみ下さい!

参考文献

  • 門馬直美(1992)『音楽の理論』音楽之友社.
  • 近森一重(1949)『新訂 音楽通論』音楽之友社.

明日のラブライブ! Advent Calendar 2016 - Adventar、4日目の担当はshanonimさんです。 よろしくお願いします!

Conohaへ(ほぼ)CLIだけでCoreOSのインスタンスをセットアップしてみた

今回やること一覧

特に記載のない限り、CLIでやります。

  1. ツール等の準備
    1. 環境変数の設定
    2. vagrant-conohaのインストール
    3. ConoHa ISOのインストール
    4. CoreOSのISOイメージをConohaに対してダウンロード
  2. ConohaにCoreOSをインストール
    1. Conohaのインスタンスを作成
    2. CoreOSのISOイメージをConohaにマウント
    3. CoreOSをインストール1 ※一部GUI
    4. CoreOSをインストール2
    5. CoreOSのISOイメージをアンマウントして再起動
    6. Vagrantfileの書き換え(ssh用のユーザを変更)
  3. インスタンスのイメージ保存・削除・復元
    1. インスタンスのイメージ保存 ※GUI
    2. インスタンスの削除
    3. インスタンスの復元

前提条件

準備物

  • 契約済みのConohaアカウント

操作環境

  • Windows10 Pro
  • CLIにはGit bashを使用
  • Vagrantインストール済み

1. ツール等の準備

1-1. 環境変数の設定

あらかじめ以下の環境変数をセットしておきます

export OS_USERNAME=[APIユーザ名]
export OS_PASSWORD=[APIパスワード]
export OS_TENANT_NAME=[テナント名]
export OS_AUTH_URL=[Identity Endpoint]
export OS_REGION=[リージョン]
export OS_ADMIN_PASSWORD=[Adminパスワード]

※ここで設定した環境変数は以降の「vagrant-conoha」と「ConoHa ISO」で利用します。

1-2. vagrant-conohaのインストール

ConohaのインスタンスをCLIで生成・停止・破棄などするために、vagrant-conohaを導入します。

$ vagrant plugin install vagrant-conoha

1-3. ConoHa ISOのインストール

ConohaへカスタムISOを登録するために、ConoHa ISO というツールを導入します。

$ curl -L -O https://github.com/hironobu-s/conoha-iso/releases/download/current/conoha-iso.amd64.zip
$ unzip conoha-iso.amd64.zip

※MacやLinuxの人はREADMEを参照

1-4. CoreOSのISOイメージをConohaに対してダウンロード

ISOイメージのダウンロード

$ conoha-iso download -i "https://stable.release.core-os.net/amd64-usr/1185.3.0/coreos_production_iso_image.iso"

実行結果に

time="2016-11-23T18:48:15+09:00" level=info msg="Download request was accepted."

などと表示されるので、ダウンロードが完了するまでしばらく待ちます。

ISOイメージの一覧を確認

$ conoha-iso list

2. ConohaにCoreOSをインストール

2-1. Conohaのインスタンスを作成

Vagrantfileの作成

Vagrantfile

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box       = 'conoha'
  config.ssh.username = 'root'
  config.ssh.pty      = true

  # disable rsync
  config.vm.synced_folder ".", "/vagrant", disabled: true

  config.vm.provider :conoha do |conoha|
    conoha.openstack_auth_url = 'https://identity.tyo1.conoha.io/v2.0'

    conoha.username           = ENV["OS_USERNAME"]
    conoha.password           = ENV["OS_PASSWORD"]
    conoha.tenant_name        = ENV["OS_TENANT_NAME"]

    conoha.flavor             = 'g-1gb'
    conoha.image              = 'vmi-ubuntu-14.04-amd64'
    conoha.region             = ENV["OS_REGION"]
    conoha.admin_pass         = ENV["OS_ADMIN_PASSWORD"]
    conoha.metadata           = {
      instance_name_tag: "vagrant_conoha"
    }
    conoha.security_groups    = [
      "default",
      "gncs-ipv4-all"
    ]
  end
end

※rsyncはローカルにないので無効化しておきます。 ^1

インスタンスを生成

$ vagrant up

authorized_keysの確認

$ echo "cat ~/.ssh/authorized_keys" | vagrant ssh

※あとで使うので控えておく

インスタンスを停止

$ vagrant halt

2-2. CoreOSのISOイメージをConohaにマウント

$ conoha-iso insert

対話形式で進める。こんな感じ。

[1] vagrant_conoha (150-95-143-11)
Please select VPS [1]: 1

[1] coreos_production_iso_image.iso
Please select ISO [1]: 1
time="2016-11-23T19:16:41+09:00" level=info msg="ISO file was inserted and changed boot device."

2-3. CoreOSをインストール1 ※一部GUI

インスタンスを起動

$ vagrant up

SSHでログインできるようにする

ここだけConohaのWEBコンソールから操作します

$ sudo passwd core

2-4. CoreOSをインストール2

稼働中のConohaのインスタンスにsshでログイン

$ ssh core@インスタンスのIPアドレス

パーティションの削除

$ sudo fdisk /dev/vda
p
d
d
d
wq

cloud-config.yamlを作成

~/cloud-config.yaml

#cloud-config

ssh_authorized_keys:
  - ssh-rsa ※項番「2-1」で確認したauthorized_keysを記入

※公開鍵はvagrant ssh-configで取得した秘密鍵から生成するのが正しいと思うのですが横着しました

インストール

$ sudo coreos-install -d /dev/vda -C stable -c ~/cloud-config.yaml

2-5. CoreOSのISOイメージをアンマウントして再起動

$ vagrnat halt
$ conoha-iso eject
$ vagrant up

2-6. Vagrantfileの書き換え(ssh用のユーザを変更)

Vagrantfileの

config.ssh.username = 'root'

config.ssh.username = 'core'

に変更。

これで

$ vagrant ssh

できるようになる。

3. インスタンスのイメージ保存・削除・復元

3-1. インスタンスのイメージ保存 ※GUI

ここもConohaのWEBコンソールから操作します

手動でイメージ保存。(https://www.conoha.jp/guide/saveimages.php)

名前は CoreOS にしました。

3-2. インスタンスの削除

$ vagrant destroy

3-3. インスタンスの復元

インスタンスのイメージから起動できるようにVagrantfileを作成

Vagrantfile

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box       = 'conoha'
#  config.ssh.username = 'root'
  config.ssh.username = 'core'
  config.ssh.pty      = true

  # disable rsync
  config.vm.synced_folder ".", "/vagrant", disabled: true

  config.vm.provider :conoha do |conoha|
    conoha.openstack_auth_url = 'https://identity.tyo1.conoha.io/v2.0'

    conoha.username           = ENV["OS_USERNAME"]
    conoha.password           = ENV["OS_PASSWORD"]
    conoha.tenant_name        = ENV["OS_TENANT_NAME"]

    conoha.flavor             = 'g-1gb'
#    conoha.image              = 'vmi-ubuntu-14.04-amd64'
    conoha.image              = 'CoreOS'
    conoha.region             = ENV["OS_REGION"]
#    conoha.admin_pass         = ENV["OS_ADMIN_PASSWORD"]
    conoha.metadata           = {
      instance_name_tag: "vagrant_conoha"
    }
    conoha.security_groups    = [
      "default",
      "gncs-ipv4-all"
    ]
  end
end

※保存したイメージから起動するため、conoha.image = 'CoreOS'にしています。

起動

$ vagrant up

インスタンスが生成されました。

以上。

参考URL

ConohaにCoreOSをセットアップ

ConohaをVagrantから操作する

その他


脚注

「第25回シェル芸勉強会 大阪サテライト」レポート

10/29(土)に東京で行われた「jus共催 第7回初心者の定義で大揉め午前のシェル勉強会/第25回もう4年もやってんのかシェル芸勉強会」について、今回も大阪でサテライトしました!

イベント情報

東京(本家)

usptomo.doorkeeper.jp

今回も、大阪(私達)と、福岡でサテライト会場がありました。

大阪サテライト

atnd.org

福岡サテライト

atnd.org ぱぴろん(@papiron)さんによるまとめ papiro.hatenablog.jp

大阪サテライトレポート

参加者

今回の参加者は、私も含めて9人、うち、初参加は2名でした。
9人……9人!? ……いえ、なんでもないです。

会場のようす

午前

@ryuichiueda さん 「man grep」

https://linuxjm.osdn.jp/html/GNU_grep/man1/grep.1.html
前回のawk(1)に引き続き、今回はgrep(1)のマニュアルを読む会でした。普段は同じようなオプションばかり使うのでこういうのはありがたいです。
特にgrep -mオプションは、ログの調査のときなどなかなか使える場面が多そうです。

おひる

昼休み、参加者全員のOS環境・使用シェルのアンケートを取りました。結果はこんな感じです。

OS環境

  • Mac: 4人
    • そのまま: 2人
    • Ubuntu on Mac: 2人 (Veertu, VirtualBox)
  • Windows: 3人
    • PowerShell
    • Cygwin
    • Ubuntu on Docker on Windows
  • Linux:2人
    • Debian
    • ArchLinux

使用シェル

  • Bash 7人
  • Zsh 1人
  • PowerShell 1人

午後

今回もパズル回!!やったぜ!!

※詳細はtogetterの方を参照です。

LTのようす

いつもちょっぴりおかしい大阪勢のLTです。

日柳 光久(@mikkun_jp)さん 「シェルスクリプトでGnuCashを使いやすく」


GnuCashを使って、日本でちゃんと使える請求書フォーマットで出力するCLIツールの紹介でした。本格的です!
リポジトリはこちらです。 → GitHub - mikkun/gnucash-util-jp: 日本の商慣習下でGnuCashを使うためのツール

くんすと(@kunst1080) 「バイナリをbase64してからgzipするとファイルサイズは小さくなるのか??????」


テキスト・バイナリ・画像ファイルを、base64->gzip->base64...と続けていったときにファイルサイズがどうなっているのか、数字を取って確認する企画です。気になりますよね??

MSR(@msr386) さん 「アスキーアートワンライナー」


突然の死!やslなどのアスキーアートを、ワンライナーで出力するというヤバイやつです。

T.Motooka(@t_motooka) さん 「パイプを通るPDF」

CLIでPDFを作ってパイプに渡してごにょごにょする話です(語彙力) まだ作成中とのことで、次回の発表が楽しみでもあります!

@nmrmsys さん 「tmuxチートシート 10,000ビュー突破記念の大幅加筆修正エントリ! ※トリだけに」


Qiitaエントリ「tmuxチートシート」の紹介でした。view数がすんごいことになってるらしい。

MSR(@msr386) さん ※延長線 「ターミナル画面をぐちゃぐちゃに」

ターミナル画面をぐちゃぐちゃにするシェル芸です。打ち込んで遊んでみよう! ※資料はスライドの47枚目からです

まとめ

上田会長、東京・福岡・大阪の皆様、お疲れ様でした。
フェンリル様、会場使わせて下さってありがとうございました!

次回もまたよろしくお願いします!!

追記

Play Framework 2.5 (Java)で一覧検索・登録アプリケーションサンプル

Qiitaに書きました。
qiita.com

ソースコードGitHubに。
github.com


やっぱり少ない記述量で書けて、よいフレームワークかと思います。

Scalaで使うのが普通、みたいな流れになってきてますが、Javaでも普通に使えるなーと思ってます。

最近、テキストでER図を書いています。

ER図を書くために、「MarkDownDiagram」というツールを使うようにしてみました。

ツールの情報

git cloneして、index.htmlをブラウザで開くとすぐに書き始められます。簡単。
※NodeJSとかもいらないです。静的HTMLだけ。

作図イメージ

こんな感じで書いて〼
ER図専用のツールではない(線の上に文字を書けなかったり…)ので、若干アレンジした書き方をしてます。
ちなみに箱はD&Dで動かせます。

適当に書いた図

f:id:kunst1080:20160916225216p:plain

[kokyaku] <15,16>
#顧客マスタ
顧客コード
---
顧客名
---

[syohin] <2.8,2>
#商品マスタ
商品コード
---
商品名
単価
---

[uriage] <1,15>
#売上テーブル
売上日
商品コード(FK/1:n)
顧客コード(FK/1:n)
u=(S)=>d[syohin]
r=(S)=>l[kokyaku]
---
数量
合計金額
---

運用方法

テキスト + スクリーンショットをセットでバージョン管理してます。
差分が見れて便利!!