白と黒のとびら 第1章 遺跡 その5

第2章に進みます、と書いておきながらやっぱり第1章でひっかかってます。あれから、2つの部屋で行き来ができるのがいけないのではないかと思ってまた制約を追加してみました。 // ある2つの部屋が直接相互に行き来できない(そんな制約はないような気がするけ…

白と黒のとびら 第1章 遺跡 その4

しつこくまだ第1章です。いや、どうも検証がうまくいかないんです。あれから、「目」の部屋が長老の経路で1回しか通らなかった(他の部屋には「目」がなかったという暗黙の証言があったとする)という制約や、扉の先が入口に戻ることがないという制約などを加…

白と黒のとびら 第1章 遺跡 その3

あいだが空きましたが、昨日は第1章の遺跡を Alloy で表現してみようとして少し書いていました。 今日も新たに読み進めるのではなくて Alloy で検証してみました。まず遺跡の制約と、長老、長老の兄、遺跡に「喰われた」人の証言から遺跡の構造を記述してみ…

白と黒のとびら 第1章 遺跡 その2

「白黒黒黒」の経路は抜けることができる「白黒黒白」の最後の扉だけ逆にしたものなので、必ず別の場所につく。少くとも同じ出口にはつかない 追加情報として長老兄弟がどちらも通った「目」の絵があった部屋は実際に同じ部屋(落とした帽子を拾ってたらしい)…

白と黒のとびら 第1章 遺跡 その1

第1章は古い遺跡のはなし 遺跡の部屋にはそれぞれ白と黒の扉が1つずつある 入口から「白黒黒白」の順と「黒白白黒」の順に辿ると外に出られた 扉の行き先には以下のルールがある 各部屋の2つの扉は必ず別の場所に通じる 全ての扉の行き先はつねに一定で時間…

白と黒のとびら プロローグ

しばらく達人出版会の電子書籍ばかり読んでいましたが、今日から久しぶりに紙の書籍を読みます。白と黒のとびら: オートマトンと形式言語をめぐる冒険作者: 川添愛出版社/メーカー: 東京大学出版会発売日: 2013/04/18メディア: 単行本この商品を含むブログ (…

入門 Chef Solo 第23章 どこまでを Chef でやるべきか

最終章です。重要なテーマですね。 サーバ管理は可能な限り Chef でやる ちょっと一時的に ssh でログインしてパッケージインストール……などとしない サーバの状態が管理されてないと意味がないですからね サーバの用途毎にレポジトリを用意せず、Role を使…

入門 Chef Solo 第22章 Chef Server の様子を知りたい - 概要からセットアップまで

今日は Chef Server についての章です。本書は主に Chef Solo について書かれていますが大規模構成では Chef Server を使ったアーキテクチャも考慮する必要があるので Chef Solo との差異、や pros/cons については把握しておきたいところです。 Chef Solo …

入門 Chef Solo 第21章 サードパーティのクックブックを Bundler 風に管理したい - Berkshelf

Berkshelf は rubygems でインストール Berksfile にインストールするクックブックを記述(Gemfile に相当) berks --path (インストールディレクトリ) でダウンロードするだけ。依存関係にあるクックブックもまとめて入る Berkshelf + Vagrant 連携 berks coo…

入門 Chef Solo 第20章 ノードを役割ごとにグルーピングして管理したい - Role

今日は複数のノードをまとめるためにリソース Role の章です。 Role roles ディレクトリ配下に JSON ファイルで設定を記述 Node Object の run_list に "role[(ロール名)]" のように書くと、Role の run_list のレシピが含まれる roles のファイルの default…

入門 Chef Solo 第19章 Attribute と Data Bag

19章はちょっと長いですね Attribute ノードや Resource の属性として json ファイルで変更できる変数部分 Data Bag よりグローバルな変数として使う ex) ノード間で共有されるユーザーの情報 レポジトリの data_bugs ディレクトリ配下に json ファイルを配…

入門 Chef Solo 第18章 Resource を自分で定義したい - Definition

なんと8月から間があいてしまいました。これはひどい。 さくさく読んで今年のうちに読み終えたいと思います。 define (resource名), (オプション引数) にブロックを渡して他の Resource (Script Resource など)を使って定義 cpanm 'Path::Tiny' と書いた時の…

入門 Chef Solo 第17章 レシピ落ち穂拾い - run_list, ファイル分け, include_recipe

run_list の書き方 クックブック名のみ記述するとそのクックブックの recipes/default.rb が実行される クックブック名::レシピ名で記述するとレシピまで指定可能 recipe[クックブック名::レシピ名] という記述も可能 include_recipe あるレシピに別のレシピ…

入門 Chef Solo 第14章 git レポジトリからファイルを取ってくる - Git

Git Resource github などから直接ソースを落としてくる git はあらかじめインストール済みである必要がある repository でリポジトリの URL 指定 reference でブランチ/タグなどを指定 action :checkout は初回のみ。 :sync で毎回更新する チェックアウト…

入門 Chef Solo 第13章 ユーザーを作成したい - User, Group

User Resource action には :create の他 :remove, :modify, :manage(:modify と同じだけどユーザが存在しなくてもエラーにならない)など Group Resource action には :create の他 :modify など? サンプルのグループ名 xenoblade ってゲームのなんかですか…

入門 Chef Solo 第11章 テンプレートから設定ファイルを配置したい - Template

設定ファイルなどを配置するための Resource 内容の一部を Attribute を展開する 完全に静的なファイルは Cookbook File Resource を使える が、あとから Attribute を使いたくなるかもしれないので Template で管理していてもいい Template のシンタックス …

入門 Chef Solo 第10章 サービスを起動したい - Service と Notification

Package リソースでパッケージをインストールするだけではサービスの自動起動は行なわれないので Service というリソースを使って、起動、OS起動時の自動起動設定などを行なう Service action に :enable を渡して OS 起動時の自動起動の設定 action に :sta…

入門 Chef Solo 第9章 パッケージをインストールする - Package

Package Resource パッケージの状態を記述する Resource(「パッケージをインストールする」ではなくて、パッケージの状態を指定する) version でバージョンを固定 action :install でインストール action :upgrade で最新版に更新 action :remove で削除 sou…

入門 Chef Solo 第8章 代表的なレシピのサンプルを見たい - td-agent のレシピを読む

また1月近く間があいてしまいました。そうこうしているうちに仕事でも Chef Solo や serverspec を使うようになっていて今更感もありますが、一応読み進めます。 td-agent のレシピが使っている Resource Group, User - グループ、ユーザーの追加、設定 Dire…

入門 Chef Solo 第7章 サードパーティの Chef クックブックを使いたい

Opscode Community に集積されているクックブックを利用する Opscode Community へのユーザ登録と秘密鍵の取得が必要(へー、なぜユーザ登録が必要なのでしょう) ~/.chef/knife.rb で client_key で秘密鍵ファイルと cookbook_path でクックブックの保存先を…

入門 Chef Solo 第6章 レシピを作って実行する流れをおさらいしたい

vagrant で仮想マシンを立ち上げ knife solo init chef-repo で Chefレポジトリ生成 & knife solo prepare melody で JSON ファイル生成 knife cookbook create でクックブック作成 knife solo cook でレシピを仮想マシン内で実行 わ、第6章短い。

入門 Chef Solo 第5章 リモートから chef-solo を実行する - knife-solo

Chef Solo だと設定するサーバ上に Chef がインストールされていてレシピファイルを編集して実行することになるので面倒 knife-solo でリモートの chef-solo の実行をサポート インストールは rubygems で 開発が活発なので最新版を使いたいときは github か…

入門 Chef Solo 第4章 Chef Solo の試験環境を 3分で用意する - Vagrant その2

Vagrant で仮想環境の立ち上げ。本当に簡単ですね。 仮想サーバの追加 vagrant init Vagrantfile で設定を編集(とりあえずネットワークの設定のみ編集) 仮想サーバの起動 vagrant up ssh で接続 vagrant ssh ~/.vagrant.d/insecure_private_key を使うように…

入門 Chef Solo 第4章 Chef Solo の試験環境を 3分で用意する - Vagrant その1

Oracle VirtualBox をインストール Vagrant をインストール gem install でインストールできるんですね http://www.vagrantbox.es/ から CentOS 6.3 のイメージをダウンロード 同じ配布元のものの最新版は CentOS 6.4 になっていたのですが、クラウドサービ…

入門 Chef Solo 第3章 nginx を Chef Solo で立ち上げたい

なんか「実際に試すには○○章の話まで待ってね」的な構成になっていることが多くて若干ストレスがありますね。 レシピ作成 knife で作る 設定ファイルは ERB テンプレートファイルにして Attribute と呼ぶ変数部分を実行時に指定できるようにする Attribute …

入門 Chef Solo 第2章 Chef Solo をインストールして試したい - Hello Chef!

また2週間もあいてしまいました。ちょこちょこと読み進めてはいたのですけど。 Chef のインストール Opscode の Omnibus Chef Packaging か、RubyGems を使っていれば chef.gem をインストール レシピの構造 レポジトリ(キッチン)、クックブック、レシピの階…

入門 Chef Solo 第1章 Chef とは何かを知りたい - Chef Overview

年度末、新年度でばたばたしてまた間があいてしまいました。今日から最近話題の Chef Solo の本を読みます。入門Chef Solo - Infrastructure as Code【電子書籍】伊藤直也達人出版会発行日: 2013-03-22対応フォーマット: EPUB, PDF詳細を見るまずは「はじめ…

FPGA で CPU を作ろう 第7章 発展とまとめ

FPGAでCPUを作ろう 〜FPGAで、あなたも自分がデザインしたコンピュータを動かせる〜【電子書籍】岸本誠達人出版会発行日: 2012-03-21対応フォーマット: EPUB, PDF詳細を見る アプリケーションを作る awk でアセンブラを作る ツールチェインを全部自作とか夢…

FPGA で CPU を作ろう 第6章 「My8」の完成

FPGAでCPUを作ろう 〜FPGAで、あなたも自分がデザインしたコンピュータを動かせる〜【電子書籍】岸本誠達人出版会発行日: 2012-03-21対応フォーマット: EPUB, PDF詳細を見る 算術演算命令、ジャンプ命令、条件分岐命令、メモリ書き込み命令、入力読み取り命…

FPGA で CPU を作ろう 第5章 「My8」の基本的な設計と実装 その4

ALU 論理命令の実装 データパスを明示的に考える設計法 v.s. 記述言語を用い、データパスは合成系に任せて入出力のみに注力する設計法 My8 はある程度データパスについて考えながら作る レジスタは A レジスタと PC レジスタ、また RAM 読み込み用の BUFF, …