Jenkins ユーザ・カンファレンス 2015 東京 – セッション
![JenkinsとPuppet+ServerspecでインフラCI / Jenkins Puppet Serverspec Infra CI](https://cdn-ak-scissors.b.st-hatena.com/image/square/a3aa854c351c15fd6b4aafe25f3d7ef182a303fb/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Febc7df807b8a0132aa045e14f5c7c273%2Fslide_0.jpg%3F4329193)
インフラ構築・運用をコーディングで行うことは珍しい事ではなくなってきていますが、Windows Server の開発記事はあまり見受けられません。しかし、現場では Windows Server を使っている人も多いと思います。私の職場でも Windows Server の案件が多いです。 そこで3連休を利用して、 Vagrant , Puppet , Serverspec を使った Windows Server のテスト駆動開発環境を作ってみましたのでシェアします。 開発マシンは Mac OSX です。開発マシンの内容は以下の通りです。事前に VirtualBox と Vagrant ,Serverspec が使えるようにしておいて下さい。 ソフト バージョン 開発OS OS X 10.9.4 ゲストOS Windows Server 2012 Vagrant 1.6.5 Vagrant
本記事は英語版ブログで公開された記事の翻訳版です。 シリーズ前回の記事では、クラウドサーバアーキテクチャの新しいとらえ方としてペットと家畜の例えを紹介しました。絶えず個別の世話を必要とし仕様もばらばらな「ペット」に代わり、共通仕様を持ち均質で、群れ単位で気軽に追加や削除ができる「家畜」を使っていこう、というのがクラウドの考え方です。家畜サーバーは取り替えの利くリソースと言うこともできます。 「1匹の仔犬の世話は家族3人がかりですが、家畜は数万頭いてもカウボーイ数人で管理できますし、そばに付きっきりでいる必要もありません」 Piston CloudのCTO、Joshua McKenty これは家畜のマインドセット、時にnoflakeアプローチとも呼ばれる考え方をうまく説明してくれています。ペットサーバーだと管理者が四六時中コンソールに貼り付いて面倒を見るのですが、家畜サーバーはこちらが途中で
前に監視ソフトをNagiosからSensuに切り替えて2ヶ月経ったのでまとめた - Glide Note - グライドノート を書いて、 さらに半年近く経過し、約8ヶ月間Sensuを本番環境で運用しているけど、非常に安定していて監視もちゃんと機能していて1回もsensu自体は止まったことはない。 某誌からSensuについて執筆の依頼が来てたんですが、企画が流れてしまったので、 企画段階で書いたり、作ったりしたものをせっかくなので公開しようと思う。 glidenote/sensu-puppet-sample sensu-puppet-sampleを利用すると下記のような構成が出来上がります。 sensu-puppet-sampleではsensu用のマニフェストは1つのファイルで完結してて、 puppet applyだけで適用出来るようになっているので、 puppetを使ってない環境への組み込
puppetのCIが運用レベルに到達したのでちゃんとまとめておこうと思う。 下のリポジトリを使ってこの記事どおりにすれば、AWSにDocker + Jenkins for puppetのCI環境ができるはずだ。 https://github.com/tmtk75/ci-puppet 当初は「はよpuppetマニフェストをCIせなヤバイなー」という問題意識が先にあって、使う技術は何でもよかった。 やっぱレシピとかマニフェストってちょっと気を抜くと壊れるよね。 というか壊すよね。 ってか、最近すでに二回やっちまってるよね、俺。 ごめんなさい。 そう、まさにマニフェストのCIが急務だったわけです。 で、日本語リソースのDevOps的記事では、「Vagrant + serverspec + JenkinsでChefのcookbookをCI」というのが多い気がしてる。 ちょっとググると@naoyaさ
Packerを使ってChef/Puppet/AnsibleでDockerのイメージをつくる Packerは,Vagrantの作者であるMitchell Hashimoto氏によって開発が進められているVirtualBoxやVMWare,Amazon EC2などの仮想マシンのテンプレートの作成を行うツール.VagrantのVirtualBox用のBoxを作るveeweeに置き換わるツールとして知られている.最近のアップデートでDockerのイメージのビルドをサポートした. TL;DR Packerを使えばDockerのイメージをDockerfileを使わずビルドすることができる つまり,Dockerfileの特有な記述を使わず,今まで慣れ親しんできたChefやPuppet,Ansibleのようなプロビジョニングツールを使ってDockerのイメージをビルドできる. 参考 Dockerイメージの
「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ
はじめに docker と puppet を使って sensu の環境を構築してみた sensu についてざっくり理解する 構築では chef ではなく puppet で試してみる ベタなタイトルですいません(記事の中身はセンスありません) 参考 Sensu Documentation Sensu Intro Sensuを使って自由度の高い監視システムの構築を行う方法 監視ソフトをNagiosからSensuに切り替えて2ヶ月経ったのでまとめた Sensu 監視システムを Chef で制御 Getting Started With Sensu Using Puppet. For Real. sensu について sensu の詳細についてはこちらやこちらがとても参考になったので割愛させて頂く。以下は sensu のダッシュボード。 以下は自分が使ってみてセンスを感じたポイントと「?」なポイン
はじめに 前回はざくっと sensu を使ってみたのでも少し掘り下げてみる 検証に作った Dockerfile 達もちょっと修正してみる 参考 Sensuを使って自由度の高い監視システムの構築を行う方法 Overview of Sensu Sensu Intro sensu のおさらい sensu ってなんすか? 以下、個人的な認識。 軽量でシンプルな監視システム ruby で実装されていて EventMachine が使われている rabbitmq と redis が利用されている クライアント自身が自分を監視して結果をサーバーの rabbitmq に送りつける クライアントの監視結果(OK = 0 / WARNING = 1 / Critical = 2)は Redis に LIST 型で記録される(されていた) 設定やログは全て JSON 形式で書かれている 行う処理として監視の C
前回、ペパボ新卒エンジニア研修のアプリケーションサイドについて、2013年の振り返りに合わせて紹介した。 今回はその後編にあたるオペレーションサイドの研修について紹介しようと思う。 Ops研修 エンジニア研修オペレーションサイドの内容を説明するのはカンタンだ。 Rails Tutorialで作成したTwitter風Webアプリケーションは、これまでHerokuやSqaleで動かしていた。 今度はそれを、minimalなOSの入ったサーバを用意し、環境を構築し、デプロイする。 production環境を自分で作り上げる。 自ら作り上げたサービスを自ら運営してみせるのが、この2ヶ月に渡り実施されたエンジニア研修の大目的だったと思う。 maglica 社内にはmaglicaによって構築されたinternal cloud環境がある。 社内ネットワークにVMを好きなだけ(といってもストレージに限界は
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist
最近、サーバーの設定作業などを自動化するChefなどのツールがよく話題になっている。はてなブックマークでのブックマーク数などを見る限り、Rubyで実装されているChefが日本では人気のようだが、それ以外にも同様のツールとして同じくRubyで実装されたPuppetやPythonで実装されたAnsible、Saltといったソフトウェアがあり、これらを比較したレビュー記事がInfoWorldに掲載されている(本家/.)。 記事では4つのツールそれぞれをAvaliabillity(可用性)、Interoperabillity(相互運用性)、Management(管理)、Scalabillity(スケーラビリティ)、Performance(性能)、Value(価値)の6項目で評価したスコアが掲載されており、トップはPuppet、続いてSalt、Chef、Ansibleという序列になっている。 詳しく
ここ最近のインフラ系技術の流れがおもしろいなー、と思ったので、Puppet が出た辺りぐらいから、振り返って整理してみる。殴り書きなので、後から修正したり書き加えたりするかも。特に後半の方は、あまり考えが整理できてない。 最近のウェブ界隈での「インフラ」という用語の使われ方には、色々異論もあるようだけど、ここではごく最近使われるようになってきた、OS からミドルウェアといったソフトウェアレイヤーを指す言葉としてのインフラについて触れる。(英語圏でも同様の意味で使われているようなので、ある程度市民権を得たと言っても良さそうだし。) プロビジョニングレイヤー まず、前提知識としてプロビジョニングレイヤーと自分が勝手に呼んでるものについて整理。 Chef や Puppet は「プロビジョニングフレームワーク」とも呼ばれているが、以下の議論をより厳密にするために、Lee Thompson 氏による
Gossip-based Membership Serf relies on an efficient and lightweight gossip protocol to communicate with nodes. The Serf agents periodically exchange messages with each other in much the same way that a zombie apocalypse would occur: it starts with one zombie but soon infects everyone. In practice, the gossip is very fast and extremely efficient. Failure Detection Serf is able to quickly detect fai
多数のサーバーを運用している場合などに面倒なのが、サーバーごとの環境管理だ。そのため注目されているのが、サーバーの環境設定やインストールなどを自動化する設定管理ツールである。今回はその中でも比較的古くから使われている「Puppet」というソフトウェアを紹介する。 あらかじめ用意しておいた設定ファイルに基づいてサーバーのさまざまな設定を自動的に行うソフトウェアを、設定管理ツールと呼ぶ。今回紹介する「Puppet」は、スタンドアロンおよびクライアント/サーバー構成でサーバー設定を集中管理できる設定管理ツールだ。行える設定はユーザー/グループの作成やネットワーク関連の設定、パッケージのインストールなど多岐にわたる。また、「モジュール」と呼ばれる機能拡張のための仕組みも用意されており、目的に応じた「モジュール」をインストールすることで簡単に設定対象を拡張できるという特徴を持つ。モジュールは誰もが開
14. クライアント側の機能の比較 ディレクトリ構成 Puppet(クックパッドの場合) ├── lib ├── manifests ├── modules │ ├── apache │ │ ├── files │ │ ├── manifests │ │ └── templates │ ├── nginx │ ├── roles │ ├── app_server │ │ ├── files │ │ ├── manifests │ │ └── templates │ ├── db_server │ │ ├── manifests │ │ └── templates │ └── types Chef ├── cookbooks │ ├── apache │ │ ├── attributes │ │ ├── definitions │ │ ├── files │ │ ├── libraries
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く