シンプルなテストピラミッドの提案 ~ テストを有効活用するためのイロハ Overcomplicating your test structure can lead to slow, brittle tests. A focus on test speed as the primary labeling mechanism maximizes your test investment.
シンプルなテストピラミッドの提案 ~ テストを有効活用するためのイロハ Overcomplicating your test structure can lead to slow, brittle tests. A focus on test speed as the primary labeling mechanism maximizes your test investment.
こんにちは。Lorentzcaです。3月ですがまだまだ寒いのでなかなか釣りに行けずテンションさげぽよです! ↑↑ この度DBサーバー(物理マシン、MySQL)の引っ越しを行いました。 そのついでに、冗長化の仕組みをmhaとconsulを使った方法に変えたので紹介します。 はじめに まずは簡単に引っ越し前と引っ越し後の構成を比べてみます。 引っ越し前は以下の様な構成でした。 サーバー台数: 2台 MySQLフェイルオーバーの仕組み: 自作シェルスクリプト アプリの参照先を切り替える仕組み: keepalivedでvipを張り替えることで実現 引っ越し後は以下の様な構成になりました。 サーバー台数: 3台 MySQLフェイルオーバーの仕組み: mha アプリの参照先を切り替える仕組み: consulのdns機能を使って実現 なぜこのような構成にしたのか、話していきます。 引っ越し前に持っていた
ConsulはDNSインターフェースを通してノードとサービスの死活監視の状況を提供することができる e.g. ロードバランスのためラウンドロビンしているノード群を問い合わせ結果として提供するとき、問い合わせ結果からダウンしたノード・サービスを動的に外す DNSをどのようにインターフェースとして利用しているか、を見ていく過程で、DNSについて学ぶことができる www.consul.io localhostでConsulサーバが動いていて、ノードルックアップを行う場合、例えばfoo.node.consulの名前解決を行う際は$ dig @127.0.0.1 -p 8600 foo.node.consul ANYのように行う DNSサフィックスがOSの設定によって自動的に付加されることを防ぐためにFQDNはピリオドで終端するので、DNSサフィックスが不要な場合、digで問い合わせする際にピリオド
株式会社カヤックでは今年の 1 ~ 3 月にかけて、 運用しているソーシャルゲーム 3 タイトルをオンプレミス環境から AWS に移行しました。 Perl で実装されているそれぞれのタイトルを事例に、 AWS 移行の知見を共有し、アーキテクチャについてお話ししたいと思います。 事例はソーシャルゲームですが、他の分野にも応用ができるお話しになる予定です。 全てのゲームで consul を活用していますので、consul の導入事例もお話しできると思います。 本発表では、以下のトピックについてお話しします。 AWS 移行によるメリット・デメリット 機能面、金額面 オンプレミス環境の MySQLから RDS へ移行する際の注意点 MySQL のデータ移行時間を200分から95分に短縮した話し consul の DNS と Health Check 機能の活用方法 consul と stretch
Miiverse とは任天堂株式会社が運営しているウェブサービスであり、世界中の Wii U やニンテンドー3DS、そして PC やスマートデバイスから利用することができます。 AWS 上でマルチリージョン構成をとり大量のサーバを抱える Miiverse のデプロイを支える技術と運用上の工夫、そして株式会社はてなと任天堂株式会社が共同で開発する Git リポジトリの同期システムの構築を通して得られた経験をもとに、大規模なウェブサービスを素早くかつ安全に改善する方法を紹介します。 概要 これまでの Miiverse のデプロイ 採用している技術の紹介 運用の概観 運用上の tips Git リポジトリ同期システム 背景 はてなにおける先行事例 アーキテクチャ紹介 新しいアーキテクチャのデプロイ 現状のアーキテクチャの課題とその解決 取り上げる予定のキーワード マルチリージョン Git Git
#!/bin/sh # # consul - this script manages the consul agent # # chkconfig: 345 95 05 # processname: consul ### BEGIN INIT INFO # Provides: consul # Required-Start: $local_fs $network # Required-Stop: $local_fs $network # Default-Start: 3 4 5 # Default-Stop: 0 1 2 6 # Short-Description: Manage the consul agent ### END INIT INFO # Source function library. . /etc/rc.d/init.d/functions # Source networ
audit { enabled = true sink "My sink" { type = "file" format = "json" path = "data/audit/audit.json" delivery_guarantee = "best-effort" rotate_duration = "24h" rotate_max_files = 15 rotate_bytes = 25165824 } } The following sub-keys are available: enabled - Controls whether Consul logs out each time a user performs an operation. ACLs must be enabled to use this feature. Defaults to false. sink - T
We will be using 64-bit Ubuntu 14.04 servers for this demonstration, but any modern Linux server should work equally well. When the configuration is complete, you should have a system in place that will allow you to easily add services, checks, and nodes. Log into your machines as the root user to complete the steps in this guide. Downloading and Installing Consul If you did not already install co
Vaultって何? VaultはHashicorpが発表した機密情報管理ツールである。 詳細はいくらか日本語情報があるのでそちらを参照のこと。 http://pocketstudio.jp/log3/2015/04/29/vault/ http://kiririmode.hatenablog.jp/entry/20150429/1430279218 今回やること VaultはConsulをstorage backendにすることによりHA構成を取ることができる、とドキュメントに書いてあったので試してみることにした。 今回、VaultサーバとなるコンピュータはConsulクライアントでもあることとする。 これは設定ファイルでConsulのアドレスを指定する箇所だけに影響する。 Vaultサーバは2台立てることにする。 10.0.2.167(hostname: cc6)はCentOS 6、10
There are two sides to monitoring – exposing problems with alerts and acting upon those alerts to find solutions to the exposed problem. For exposing problems, users can define any script for Consul to intelligently check and report the health status of all nodes in a cluster. These scripts could be as simple as returning a 200, or as complex as querying the load and query response time on a datab
Serfとは? Serfは、HashiCorp社がオープンソースとして開発・公開しているクラスタ管理用のツールです。軽量なエージェントを起動するだけで手軽にクラスタを構成でき、複数台のサーバにまたがる作業の自動化に役立ちます。2013年後半から開発がスタートし、現在もGitHubやIRC上で開発が行われています。 登場背景と利用シーン クラウドコンピューティングを使ったシステムの普及と、継続的な開発・運用スタイルの普及により、インフラ環境が増えたり減ったりするシーンが増えつつあります。クラウドを活用し、OSの領域までは短時間で準備できるようになりました。ミドルウェアやアプリケーションの設定も、ChefやAnsible等の構成管理ツールを使う手法が広まり、作業時間の短縮や正確性の向上が実現しています。 このようにインフラ部分が動的に変わることが当たり前になりつつある一方、運用視点で新しい課題
こんにちは、インフラストラクチャ本部のあだち(@foostan)です。 このエントリは GREE Advent Calendar 2014 19日目の記事です。昨日はにしだ(@hosi_mo)さんによるネイティブゲームクライアントの幸せな設計図でした。 今年のグリーアドベントカレンダーのテーマは「GREEを支える技術」ですが、私からは「GREEを支えるかもしれない技術」としてConsulについてご紹介します。 本エントリの対象者 本エントリでは、簡単なWebシステムを例にとって、Consulやその周辺ツールの基本的な使い方やオーケストレーションする仕組みについて説明していきます。 なので Consulって何? Consulって便利そうだけどどうやって使うの? Consul触ってみたけど、使いどころ分からないんだけど? オーケストレーションって? と思われた方にとって良い情報源になることを期
はじめに Consul 0.4 がリリースされ、大幅な機能追加が行われました。 また下記のリリース記事で、Consulは次のようなのものであると言っています。 Consul is a solution for service discovery, configuration, and orchestration. https://www.hashicorp.com/blog/consul-0-4.html 以前までは、オーケストレーションツールであるとは述べていなかったと思いますが、今回のリリースによってSerfのイベントシステムをConsulから使えるようになり、オーケストレーションが行えるまでになったと思います。 本記事では0.4で追加された機能に注力して利用法について紹介していきます。 Consulとは 公式のドキュメントで丁寧に解説されていますので参照して下さい。 http://w
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く