IT

2015/09/25

Zabbix Conference 2015@ラトビア最新速報!と、Zabbixだけじゃない、OSSを徹底活用した運用自動化の実現

zabbix3.0のリリース時期は未定です。

【速報!Zabbix最新動向紹介】

@ike_dai さんのお話。
  • ラトビアまで行って参加。
  • 参加者は28カ国、183人(日本人7名)。
    • 国際カンファレンスなのにこじんまりしてますw
●Zabbix3.0
  • リリース時期未定。年内にはなんとか。
    • 新機能はまだbranchesでの開発中。trunkにはマージされていない…
●暗号化
Before
  • 平文で送受信。
  • 送信元IP制限は可能だったが、ログ監視結果/ホスト情報を見せたくない場合はVPN/SSH port forwardingなどで対応。
After
  • TLSv1.2の認証&暗号化。
  • PSK/証明書ベース。
  • OpenSSL、GnuTLS、PolarSSLが使用可能。
    • 暗号化したい部分のみ有効化可能
Passiveの暗号化
  • TLSAccept,,TLSPSKIdentity,TLSPSKFileが設定ファイルに追加される。
Activeの暗号化
  • TLSConnect,TLSPSKIdentity,TLSPSKFileが設定ファイルに追加される。

zabbix_sender,zabbix_getにもこれらに該当するオプションが追加される。

●Zabbix Frontend
MVCモデルでクリアなコードに。
→ページカスタマイズ/追加が楽に。

●Problem&trend prediction
forecast:特定の未来時間に値がどうなるかを評価
timeleft:特定の値に達するまでにあとどれぐらいかを評価

の機能が追加される予定。
  • 線形近似、指数近似、多項式近似、対数近似。累乗近似が使用可能。
    • 近似法は ユーザが指定 する必要がある。
●その他
  • トリガー関数などの閾値にパーセンタイルが使用可能に。
  • SMTP認証に対応
  • ハウスキーピング処理を任意のタイミングで手動実行。
    • zabbix_server -R housekeeper_execute
    • HouseKeepingFrequency=0で自動処理無効化が可能に。

これは地味だがすごく助かる。

  • Top100のフィルタリングが可能。
  • ZabbixUSAができた!
  • ZabbixShareβ公開。テンプレート/活用ソリューションがあるが、現段階では玉石混交。今後の運用は検討中。
●活用ソリューション・事例
zlm-python
  • ローダブルモジュールはC言語で実装されていてハードルが高い。
    • メインはPythonで会って、CからPythonコードを呼び出して組み込めるように。
      ※ローダブルモジュールはスクリプトによる監視に比べて5~10倍速い。
大規模環境のZabbix監視
  • 大規模な環境の場合、Zabbixに対する設定状態のチェックも重要
  • ZabbixのDB情報、CMDBの情報をDWHに集約し、JasperReportでレポート。
  • Zabbix Configuration Checker
    • 設定漏れがないことの監視を効果的に行う事例
globo.comの事例
  • ブラジルの放送局。CloudStackベースの大規模環境監視

zabbix_agentのデバッグ
http://www.slideshare.net/Zabbix/volker-frhlich-how-to-debug-common-agent-issues
このスライドおすすめ。

【Zabbix監視運用業務の自動化事例】

@satoruf さんのお話。

https://tis-oss.doorkeeper.jp/events/24978
で聞いた話のアップデート版

  • 最新のJobScheduler(v1.10)ではユニバーサルエージェントでDocker、RaspberryPiにも対応。
    • 残念ながら有償版のみ
  • HyClops JobMonitoringではバッチ実行時に監視の閾値を変更する、などが可能。

【Zabbixだけじゃない OSSの監視とジョブ管理ーHinemosのご紹介】

  • 監視とジョブをワンパッケージで使えます
  • インストールはコマンド一発。DBも入ります。エージェントも一発で監視/ジョブが使えます
  • 簡単設定

●Zabbixと違うところその①
Hinemosは雰囲気で監視が設定できる。

●Zabbixと違うところその②
「スコープ」と「テンプレート」
  • Hinemosはノードを「スコープ」という単位でグループ化
  • Zabbixは監視設定をグループ化
HinemosはHinemosマネージャとHinemosエージェントを入れれば監視もジョブもすぐ使えます。
  • Zabbix+JobSchdulerは…

Hinemos5.0からジョブのリトライが可能になった。

この方はHinemosWorldでも登壇するので聞きたいが、残念ながらDevSumiとかぶってる…

【Zabbixを徹底活用!~~高度なPostgreSQL監視を実現する pg_monzのご紹介】

PostgreSQLは主に稼働統計情報で監視
  • PostgreSQLのアクティビティ情報を蓄積
  • SELECT文でビューにアクセスして参照
    • pg_stat_activity、pg_stat_databaseなど
  • 主に累積値なので差分から事象を判断する必要がある。
●PostgreSQL専用ツール
pg_statsinfo,pg_stats_reporterが代表だが
  • 専用のリポジトリDBが必要
  • 統合監視ツールとは別に運用する必要がある。
●pg_monzでできること
クラスタとしてのサービス状態監視
  • サーバだけの監視では気づきにくいクラスタ特有の障害に対応
●pg_monzで活用するZabbix機能
  • v1ではAgentのみを利用
  • v2ではAgentとSenderを利用
    • PostgreSQLサーバへの接続とSQL実行回数を削減
  • Zabbixローレベルディスカバリ
    • 環境に合わせた監視設定を自動で生成
    • データベース単位の監視設定、Standbyサーバへのレプリケーション監視設定

ZabbixでPostgreSQLを監視できます。そう、pg_monzならね。

なぜか外人からしかプルリクが来ないという嘆き。

| | コメント (0) | トラックバック (0)

2015/09/15

Cloud Week 2015@Hokkaido University

これに参加するため、札幌へ行ってきました。 一応、主催側の体でちょっとだけ司会なども。

1日目

【『さくらのクラウド』を例にしたパブリッククラウドの作り方】

  • ポータルもVPSのダッシュボードもUIは非常に若い社員が作っています。

【日立の考えるアカデミック分野における最適なクラウドサービス】

日立のクラウドはあまり知らなかったな。
学生/大学向けの視点は他のイベントではなかなか聞けないので面白い。

【デジタルビジネスの世界を支えるプラットフォーム】

10月から一般トライアルを開始するFUJITSU CLOUD SERVICE K5の話。
富士通はスマホから交通費精算ができない、とか、今も紙で契約書作ってますという自虐ネタw

  • 新たなイノベーションが起きても、課金や契約管理は現行システムとつながざるをえない。
    • 既存システムとつなぐシステムの構築
  • "K5"→Knowledge,5大陸をイメージ。グローバルに知見を広げていく。
  • IasS:OpenStackベース
  • PaaS:CloudFoundryにIaaS連携、LaaSを拡張。
    • 今後、マルチAZ、オートスケール、Dedicate,Dockerイメージインポートなどを拡張予定。
  • WL-PKG:運用定義/構成定義/ソフトウェアスタック/テストセットをパッケージ化したもの。
    • マルチクラウドへのデプロイを可能に。

【アカデミックな皆様のお役に立つ AWS最新情報】

http://bit.ly/1K0z775

AWSホワイトペーパーおすすめ。
→HPCのホワイトペーパー出たよ!

【Shibboleth IdPのサービスと認証強化】

http://wisepoint.jp/wpshibboleth.html
のお話。

  • イメ-ジングマトリクス認証
    • 事前に覚えた画像でワンタイムパスワ-ドを生成
  • グループウェア等だけでなく、WebEx、BIG-IPなどとも連携可能。
  • SAML2.0に対応していないものにはリバプロとしてサービス提供も可能。

【ハイブリッドクラウド利活用におけるITリソースの最適化 ~PrimeCloud Controllerによるクラウドマネージメントのアプローチ~】

パブリッククラウド間で自動的にVPN接続する設定も。
http://www.primecloud-controller.org/
オープンソースで提供しているとのことなので、CloudStackと組み合わせて使ってみようかと思った。

【次世代クラウドにおけるネットワークサービスインフラとは】

  • NetScalerだけでなく、他社もLBにモバイル対応の機能を載せてきている。
  • SSL終端がやはり、ハードウェアアプライアンスの強み。
    • 2Uの筐体で80程度のLBは動く。
  • NetScalerSDXで、Paloaltの仮想アプライアンスも動かせる。
    • OpenStackとの連携も始めた。

【ソフトウェア管理や配布を効率化するクラウド製品ご提案】

IT資産管理の必要性。
  • ASSETBASEではWindowsのパッチだけでなく、AdobeやJava、ブラウザのパッチ配信も可能。
    • クラウドサービスとして提供しています。
  • 大学で一番、ウケがいいのは、ソフトウェアのライセンス数管理。
    • 買収された会社、クラウド版、ローカルインストール版なども辞書を使用して正しくライセンス管理が可能。
  • DownloadStationの説明。インストーラをポリシー付きのバイナリとしてラッピング
    • インストール台数
    • インストール期限
    • パスワード設定
      などが可能に。
  • クラウドサービスにしたメリットは学内ネットワークだけでなく、インターネットでも監視可能ということ。(学校の先生は家に持って帰ることが多い…)

【京都大学におけるプライベートクラウド環境の現状と課題】

部局の力が強く、個別に整備されてきた京都大学の情報基盤を「集約と共有」ということで作り替えていくお話。

  • 学生向けのホスティングサービスで、public_htmlの下にwordpress入れて提供とか怖い。
  • 昨今の様々な問題を受け、京都大学では9/1付けで論文、研究データなどをすべて、少なくとも10年間保存する。という通達が出た。
  • 現在、動画配信サービスはあまり活用されていないが、教育の動画はたくさんあるので活用していきたい。

2日目

【アプリケーション中心型オーバーレイクラウド】

  • データ解析プラットホームの構築
    • アプリケーションごとに最適(占有)プラットホームを自動的かつ高速に構築する基盤が必要
    • 現状は2週間~1ヶ月を要している。
  • 仮想ネットワーク
    • SINET5ではバックボーンが100GBps。オンデマンドでL2VPLSを作成可能にしていく。
  • RNA-Seq01のコンテナ対応
    • Dockerでコンテナ化

【クラウドブローキングのための述語論理式によるシステム記述について】

  • ブローカーの3つの仕事
    • 仲介:クラウドサービスを提供する
    • 統合:新たなサービスを提供する
    • 調停:動的にサービスを選択する
  • システムに対する要件(=相互依存した制約条件の集まり)を述語論理式として記述し、システム記述を表す式とする。
  • この式を用いて、クラウドの資源最適化を行うBrokerをフレームワークとして定義していく。

【クラウドバーストバッファによるクラウド・スパコン間連携】

  • クラウド上のデータを使用するには、低帯域のWANが問題。
    • バーストバッファによるインタークラウド間のI/Oアクセラレーション
  • コストの問題から、クライアントにSSDを入れるのではなく、バーストバッファサーバとしてリモートファイルシステムとの間に入れている。

【塩基配列データベースを中心とした生命・医学系研究の解析基盤の構築】

  • 個人ゲノム情報のアーカイブを日米欧3極で運用開始。
  • DDBJはJST傘下のNBDCと共同でJGAを運用。
  • 可能なものはDockerに移していく。

【ユーザー駆動型・大域アプリ連成フレームワーク】

  • 連成計算アプリケーション
    • 複数のアプリで構成されるアプリが増えている。Ex:Pre-Post連携タイプなど
  • ネットワーク的に離れた他大学へノードをオフロードしても、処理性能が向上する場合がある。
    • 5コアを要するシミュレーションをオフロードした場合、 東工大4コア<東工大4コア+九州大1コア となった。
  • フレームワーク設計の方針
    • Well-knownサービスだけで構築

【Innovation at Global Universities by Amazon Web Services】

英語でのセッション。同時通訳はないので、スライド見ながらなんとか意味を理解するので手一杯。

以後は司会と懇親会準備のためメモなし。

3日目

【Dockerの概要、最新情報アップデート】

  • AmazonEC2ContainerService
  • GoogleContainerEngine
  • Hyper-V Container
    と出そろった。

【Dockerの分散に関する手法の提案と SDNへの対応】

  • CI環境をネットワーク設定まで同一な状態で提供しています。
  • なぜDockerに注目するのか。
    • 開発者の未来を変える
    • 洗練された機能だけが必要十分数存在している
    • コードが無駄に大きくない
  • 最初にaufsを採用したのがが秀逸。
    • 差分記録ができるので、同一イメージから複数のコンテナ起動ができる。
  • libnetworkはまだ発展途上。
    • 現状ではBridgeによるネットワークのコントロールとVXLANが少し実装されているだけ。
    • Windowsのドライバはファイルはあるがあきらかに動く代物ではない。
  • Wakame-vdc+OpenVNetでDockerを扱う。
    • Dockerのいいところは1台のマシンで動かすところ
    • オーケストレーションのツールは出てきたけれど…
    • 1つの大きなコンピュータに見せればいいじゃないか
      →仮想データセンタを作ろう!

Dockerのいいところだけではなく、変えたいところなどすばらしい講演。

【Dockerとインフラ運用自動化とIoT】

TIS松井さまからのお話。
Twitterのアイコンと顔がつながってよかった。

  • Dockerコンテナを使い捨てにするのであれば、オーケストレーションツールによる冪等性はなくてもかまわない。

【Mesosで作るDocker実行環境の共有】

次回のDockerハンズオンは10月前半に予定されているらしいので、ぜひいきたい。

【ハイパーコンバージドインフラによる仮想化環境とストレージの進化】

  • 無理矢理コンテナの話をねじこんだw
  • ストレージ拡張専用のノードもラインナップしました。

CloudStackユーザ会で直接聞いたときには、3ノードで400万ぐらいのグレードがあるとのことでした。

【DESTCloud のこれまでとこれから】

大学の同級生である柏崎くんのお話。

大阪大学主導でインタークラウドストレージの研究を行う。
ということで、協力ベンダーであるクラウディアン、スキャリティ様からの招待講演。

【インタークラウドストレージの検討】

  • PublicCloud間インタークラウドの課題
    • 基本的には条件が対等でないと契約が成立しない。
  • クラウドコネクターの事業が台頭してくる可能性は高い。
  • ストレージはCPUパワーをあまり使用しないので、
    • IoTのデータを受け取ったら、そこで保存してしまう。
    • 余剰のCPUパワーで計算してしまい、結果だけを転送する
      みたいな使い方も考えられる。

【Software Defined Storageを用いた広域分散構成の考察】

クラディアンと同様にS3互換APIを実装。このへんはオブジェクトストレージとしてどこも似たり寄ったり。
いずれにせよ、クラスタを組んだサーバの上段にLBをはさんでRESTのリクエストをノードに振り分ける。

  • イレイジャーコーディング/レプリケーションのポリシーが選択可能
  • コネクタサーバを挟んで、NFSやSMBのプロトコルも使用可能。
    • コネクタサーバにはキャッシュ機能を実装。
  • リコンストラクト時の不良発生を考えると、RAID6でようやく、ディスク1本の障害に耐えられると考える。
    • Yahooでは24時間、ディスクを差し替えつづける仕事もあったお…
  • レプリケーション:耐性重視。
  • イレイジャーコーディング:容量、I/O重視。(ファイル格納ノードが分割されることでシーケンシャルリードが上がる。)
  • イレイジャーコーディングのポイント
    • 利用効率が高い
    • スペアディスクが不要
    • スループットを高めやすい

クラウディアン様もスキャリティ様も 「ネットから拾ってきた絵ですから…」 と時事ネタw

| | コメント (0) | トラックバック (0)

2015/09/03

仮想化・クラウド担当者が知っておくべきコンテナ(Docker)解説 に行ってきた

コア技術だけでなく、運用向けの機能が充実してきた。というのが第一の感想でした。

【Dockerビジネス最新情報】

●「Bezosの法則」
  • クラウドサービス価格は3年の間に半分に下がる
    • →ハードウェアコストの減少分を値下げに充てている。
●クラウドサービスのTCOI構成要素
  • 35%:ファシリティ、電力コストなど
  • 30%:人件費
  • 35%:IT機器コスト
●IT業界の新たな動き
  • クラウド:普及に5年
  • Docker:普及に1年
    • アプリ層に近い技術ゆえ、直接的な効果が大きい
●Docker:1年の成長記録
  • 1300人のContributor
  • イメージダウンロード:累計5億
●今後採用する技術としての注目度
  • Fortune100で今後採用するIT技術として、Dockerがダントツの1位

「早く、イノベーティブ、ロックインからの回避」 がDockerの真髄。

●Docker1.8発表
  • DockerRegistry
    • S3,OpenStack(swift)でのイメージ管理に対応。

●米国連邦政府一般調達局(GSA)での導入
AWSがGSAが使用するIT基盤を共通化。
アプリはIT基盤をAPI経由で操作。
その後、アプリをすべてDockerに置き換えた。

●Dcokerに関する標準化
  • Open Container Initiative
    • Dockerの寄贈したDockerEngine(runC)の標準化を進める独立団体。
    • Linux Foundation傘下
  • CLOUD NATIVE COMPUTING FOUNDATION
    • GoogleがKubernetesのソースコードを寄贈。

これによって DockerEngineでのマネタイズは事実上不可能 になった。

●今後の動きへの予測
  • Dockerのエンタープライズでの実装事例は急増
  • VMとDockerの関係:両極端の議論が続く。
  • エコシステムの急激な成長と、Docker純正機能開発の協業/競争
    • オーケストレーション:DockerSwarm VS Kubernetes
    • ネットワーク/ストレージ管理:DockerNetwork:Google,VMWare,AWSなど
  • Dockerを軸としたビジネスモデルの登場
    • 単体では販売できる技術ではないことは市場が理解し始めている。
    • 開発者にとってのDockerは100%Free! → プロダクションサイトのDockerにビジネスが生まれる

【Docker最新情報アップデート】

@zembutsu さまのセッション

●DockerMachine
  • Docker動作環境の自動作成
  • コマンドラインで使うツール
  • Linux/Windows/MacOSXに対応
  • VirtualBoxだけでなく、多くのクラウドに対応
●DockerSwarm
  • Dockerクラスタ管理ツール
  • コマンドラインで操作

続きは http://docker.jp で!
これからドキュメント関連は↑にまとめていく予定

●DockerEngine1.8
  • ボリュームプラグインが安定版
  • ロギングドライバの提供開始
  • 細かな改善
    • docker daemon ,docker cp,docker ps --format,--config
●DockerContentTrust
  • TUF
    • コンテナ作成時に署名を可能に。
●見送りになった機能
  • NetworkPlugins
●DockerRegistry2.1
  • 新機能
    • Swiftのサポート
●まとめ
  • DockerHubがリニューアル
  • DockerToolbox提供開始
  • Docker1.8がリリース

普段のイベントと違ってスライドが固いなー、と思っていたら「ここから話変わるよ!」とネタスライド来たww

●Docker都市伝説
1.今すぐ始めなくてはいけない
2.全ての環境をコンテナにしなくてはいけない
3.仮想化システムは不要になる
4.構成管理ツールは不要になる
5.クラウド環境は不要になる
6.Dockerやコンテナが全て解決してくれる
7.Dockerは難しい
8.本番環境では使えない
9.セキュリティや信頼性に問題がある
10.Dokcerは冗長化できない
11.ネットワークが貧弱だ
12.よく落ちる
13.商用サポートを受けられない
14.DockerではなくCoreOSを使うべきだ
15.データの可用性が貧弱
16.Dockerがあればコスト削減できる
17.DockerはKubernetesがないと意味がない
18.Dockerやコンテナを使うとベンダーロックインされる
19.Dockerであれば業務効率化できる
20.そもそも、Dockerを使う意味が無い

だいたいはそもそものインフラ設計の誤りだったり、運用の問題だったり。
技術的な問題は時間が解決する。

【Dockerソリューション紹介】

  • RANCHERのデモでAWS上にリアルタイム展開。
    • NetworkAgentコンテナがIPSECでコンテナとの通信を提供する。
  • さまざまなクラウドのインスタンス作成/コンテナデプロイをGUIから操作するほか、RANCHER自身もRESTAPIとして動作する。
  • コンテナのWebコンソール機能もあり

| | コメント (0) | トラックバック (0)

2015/09/02

SoftLayer Bluemix Summit 2015 に行ってきた

【基調講演】

基調講演、といいつつ2~30分の細切れのタイムテーブル。

【OpenStackベースのホスティッド・プライベート・クラウド「Blue Box」とは】
で、
「OpenStack IS NOT Linux」 って文字がGNU's Not UNIX を彷彿とさせる。

【trackE:OpenStackベースのプライベートクラウドサービス「Blue Box」とは

@blueboxjesse
・パブリッククラウドの知見をプライベートクラウドに戻したい。
・OpenStackのユーザはハード、ネットワークを決める必要があった。
・Junoベースで構築、今年中にKiloに置き換えていく。
・Ursula/Giftwrapというツールを公開しています。
・92コア、384GB、3TB、/27のパブリックIPで$6500/月

同時通訳いらないぐらい、すげぇ聞きやすい英語。

【trackB:セキュリティから見る経営陣が納得するクラウドプロバイダーの選び方】

http://bit.ly/1Kqmg03
IDに対応するログが必要。サービス/サーバ単位ではない。

【trackC:Beaconを活用した行動解析の実態 ~必要なコストや、その効果・対策について~】

・Beacon検知で、会議室に入ったら資料をダウンロードとか面白そう。
Beacontrol アプリをAppStoreで公開中。
・設置したビーコンをフロアマップ上にプロットする機能がある。
・ログから行動をマッピングすることも可能。

【trackC:Bluemixを実案件(エンタープライズ)で使ってみてわかったこと】

残念ながらエンドユーザ名は明かせず。(日本の企業)

個人向け医療サービス情報webアプリのリプレース

現行:オンプレ/Oracle/Tomcat/JavaWebアプリ
たとえばまずはIaaSで…と提案しようと思ったら、 エンドユーザから Bluemixでと指定された。

●アプリケーション層
ランタイム:Python
Webフレームワーク:Django
コードリポジトリからPush

  • ログの課題
    • インスタンス内のログは再起動で消滅
      • ログをCloudantDBに格納
  • データストアはRDBだけではない
    • KVSやストレージサービスを活用
  • Bluemixならサービスで検証が容易
    • 開発/検証レベルでの活用性は高い

●データストア層

  • ディスク容量
  • サードパーティDBサービスは対象外
  • SQL Databaseサービス
    • Premiumプランで500GB。足りない。
      • 複数のインスタンスを起動して、ソフトウェア的にパーティショニング。
    • これを使うためにDB2を学んだ。
    • 今ならDB2 on Cloudもある。(開発当時はなかった)

●ネットワーク層

  • 管理者用APインターフェース
    *認証だけでなく、接続網で制限したい。
    • SecureGateway。ローカル側にDockerコンテナ
  • 機密データはローカルでストアしたい。
    • CloudIntegration。バックエンドをREST API化。フロントはクラウドを活用。

「データストア層をコンテナで、という議論はしない」

●開発プロセス

  • DevOps Services
  • コードリポジトリ→Push→デプロイ
  • デプロイ後の再起動で上がってこない
  • ログが少ない
  • 詳細を調べる方法がわかりづらい
  • 代替リポジトリ
    • Bitbucketを使用した。
    • SourceTreeを使用。(Git/Mercurial用GUI)
  • 全てのサービスは止まる/遅くなる前提
    • 代替サービスや代替策を用意する
  • それでも使う理由
    • デプロイの幅への期待
    • Agilityを高める環境が整っている

●Bluemixを使ってみてわかったこと

  • プロトタイプ開発向き
    • リージョンが米英のみ…
  • キャパシティ
    • スケーリング、ディスクサイズ拡張の選択肢がない。
  • セキュリティ
    • ソリューションは豊富。あとは信頼性。 
  • 課金
    • サブスクリプションはエンタープライズ向き
      • 予算が取りやすい。

●これから求めること

  • 商用サポート体制の明確化
    • 技術的問い合わせ                                                                                                                                              
    • パートナーとして商用観点
  • 柔軟なキャパシティプランニング
    • 柔軟な拡張性を。リミット管理も含め。
  • DevOps Servicesの機能充実
    • UI、タスク管理…
    • そうはいっても、Bluemixの真の価値はここにあると思います。

【trackC:ビッグデータ/クラウドにデータ連携自由自在】

AttunityReplicate のお話。

トランザクションログを監視して、レプリケート先にSQLを適用しているので…

  • 異種DB間の移行*統合
  • N:Nの複雑な構成でも容易に統合
  • フル同期から差分同期まで
  • DB側にエージェントレス
    が可能

実際にデモを行いました。
バックアップ用のレプリケーションではなく、データ移送が目的のツールです。
起動しておけば、クラウドtoクラウドでも10数秒遅れぐらいでのシンクが可能みたい。

ターゲット側にテーブルがない場合には作成してくれるなど、いろいろ便利そう。

| | コメント (0) | トラックバック (0)

2015/07/29

夏サミに行ってきた

togetterまとめ。
http://togetter.com/li/853934

資料が後からダウンロードできるので、あまりメモは取らず。

【AWS専業クラウドインテグレーターが語るクラウド時代のエンジニア像】

スライドは↓
http://www.slideshare.net/serverworks/201507-2015

東日本大震災で日赤を助けた話から。
ダムOpsテラワロスw

●今までのオフィス
  • コンピューターがあるから会社に行く
●新しいオフィスのチャレンジ
  • 会社設置のサーバーゼロ
  • 会社支給のPCゼロ
  • 社内のLANゼロ
  • 時間によって場所を変える新しいフリーアドレス
    • 1日1回は必ず場所を変えさせている

オフィスに環境音を流すことで、静かにしなければというプレッシャーを取り除いている。

【クラウドストレージBoxのグリーによるコンテンツプラットフォームとしての効果的活用事例】

BoxのSDKが無料で公開されてるの知らなかった。
コラボレーター追加のデモでリストに篠塚、クロマティ、原の名前を発見w

【IoT時代のビジネス創造ービーコンのハード、ソフト、サービス、ビジネスモデルを作る】

対談形式だとわかってたら来なかった。

【エンタープライズJava環境におけるマイクロサービス・アーキテクチャの必要性】

  • SOAを追求し、改善を続けていったらMSAになった。
  • ESBは必須ではなく、直接呼び出しのメッシュ型もOK。
  • サーバサイドMVCからクライアントMVCへ。
  • SNSアカウントを使ったログインもMSA。
  • 変革期を迎えたエンタープライズJava
    • 大きく進歩したJavaEEの登場

式年遷宮と増改築を重ねた温泉旅館で対比w

ITシステムも一定期間ごとに新しいアーキテクチャで再実装する効果はある。

  • JavaEE7とWAS Libertyプロファイル
    • JAX-RS2.0でクライアントAPIも楽に実装できるようになった。

| | コメント (0) | トラックバック (0)

2015/07/26

July Tech Festa 2015に行ってきた。

【数学の知識不要、ITエンジニアのための「機械学習理論」入門】

ガチで文系の人が多くて困る中井さん
日経BPが煽ると一年ぐらいで忘れさられる、と軽いディスり。
資料は↓にあるもののさわりだけ。

http://www.slideshare.net/enakai/ss-46880120

  • ビジネスに役立つ学習アルゴリズムの選定が大事。
  • データサイエンティストはビジネスに役立つ結論を提案しなければいけない。
    • 過去の事実を分析するだけではデータエンジニア。
  • データ半分からルールを作って、残り半分で検証するとかは初歩的な手段。
  • ビジネスプロセスにデータサイエンスを組み込むのがこれからのトレンドになると思います。
    • amazonはやってる。

最後は現在、書いてる機械学習の書籍を宣伝。

【失敗例を成功に変える、AWSアンチパターンの数々(Webアプリ編)】

デザインパターンを知らずにアンチパターンは語れない。
まずは基本のパターンをということで、以下の妄想ストーリー。
================================
①雲の写真をアップするブログを開設
 →EC2インスタンス1台でMOVAVLE TYPEを使用
②日本には雲マニアが想像以上にいた
 →S3で静的コンテンツ配信
③まさか、海外のニュースサイトでとりあげられるとは‥
 →CDN導入
================================

☆構築時のアンチパターン

●EC2一神教

  • 目的ごとにEC2を用意してしまい。インスタンスが増えすぎる。
  • 可用性担保にも障害となる。
    解決策
    他のサービスを検討する。

●ノースナップショットアンチパターン

  • EBSのスナップショット機能を知らない。
  • スナップショットが高価だと思っている。
    解決策
    新しいことを行ったときはスナップショットを作成する。
    定期的に不要なスナップショットを消す。

●AMIなしアンチパターン

  • AMI作りが難しいと思っている。
  • オンプレミスのインストール手順に固執。
    解決策
    まずはやってみろ。

●AMI至上主義アンチパターン

  • AMI作成をバックアップだと思っている。
    解決策
    EBSのスナップショットを利用する。
    適材適所のバックアップを作成する。

●インスタンス振動アンチパターン

  • AUTOSCALINGの設定が敏感すぎてインスタンス数の増減が激しい。
    • 課金は1時間単位なので、2回起動したらその段階で2時間分の課金が発生する。(たとえ1時間以内であっても!)
  • cloudwatchの条件ソースが不適切。
    解決策
    起動条件の4倍程度に緩和する。
    1時間に切り上げて課金されるので、55分で自殺させるようなスクリプトを仕込んでおく。

●単機能

  • サブネット毎に、DB用、アプリ用などと分けてしまい、それぞれを複数設置し忘れる。
  • 特定の機能が単一のAZにあるのでSFPになる。
    解決策
    ELB、RDSなど複数AZを有効に使うサービスを導入する。

●とりあえずELBアンチパターン<

  • 冗長化のためにロードバランサを必ず置かないといけないと思う古い知識。
    解決策
    モダンブラウザ×DNSラウンドロビン。
    アプリケーション開発者に聞いてみろ

●cloudfront使わないアンチパターン<

  • 配信先が日本だけなので不要と考える。
  • キャッシュ設定を嫌う
    解決策
    cloudfrontのレスポンスを体感しろ。

●ベンチマークソフトウェアアンチパターン<

  • システム実態と違うベンチマークソフトウェアによる測定値を使ったサイジング。
    解決策
    本番システム全く同じシステムを一時的に作成する。

☆運用時のアンチパターン

●ノールック明細アンチパターン<

  • 月末の料金請求しかないと思っている。

●インフラ塩漬けアンチパターン<

  • 構築当初のままインフラの見直しをしない
    解決策
    サービスは四半期に一度見直す。

●机上の空論アンチパターン<

  • サーバ発注、システムデプロイ、納品の硬直したループにはまっている。
  • 事前のプラニングに時間をかけすぎる。
    解決策
    ともかく小さく試してみる。

☆失敗したら‥

  • ブログに書く。
  • 周りに面白おかしく話す。
  • 解決した方法を発信する。

【仮想化とストレージの新しい形!ハイパーコンバージドインフラの技術解説】<

●これまでのインフラが抱える問題<

  • 根本的に複雑
  • スケーラビリティの制約
  • 非効率なサイロ化、分断

●ハイパーコンバージドインフラ<

ソフトウェア処理で仮想化環境のサーバーと共有ストレージを単一HWに統合

●Nutanixの基本コンセプト - WebスケールIT<

googleやfacebookデータセンターは

  • 汎用的なHW
  • すべてをソフトウェアで制御
  • 管理を自動化
  • 計算処理やデータを分散させる

●Controller Virtual Machine<

  • Nutanixクラスタのすべてのノード上で動作
  • ユーザ空間で実行されるVM
    • ハイパーバイザとは別に更新管理
  • PCIパススルーでサーバのディスクコントローラを直接認識
  • ハイパーバイザとは仮想スイッチ経由で通信

●書き込みI/O<

  • 筐体内のRAIDという考えは捨てて、別ノードで保持
    • あるノードが倒れたら、コピーの再配布が始まるので、対障害性は強い
  • 基本的にローカルストレージから読み込む

●LiveMigration<

  • Migration後にリードが発生したら、元ノードのストレージからデータをコピーする。

●あるノードでCVMがダウンしたら<

  • ゲストVMはそのまま動き続ける。
    • 別ノードのCVMを経由してストレージにアクセスする。
    • CVMの更新時にもゲストVMはそのまま動かせる

●拡張性<

  • ストレージだけのったノードも発売した
  • シャーシ単位ではなく、筐体内のサーバ単位で買える

【運用に自動化を求めるのは間違っているだろうか】<

このセッション目当てに来たといっても過言ではない。
資料公開されてました。
ネタ満載のスライドですが、そこに惑わされてはいけませんね。
http://www.slideshare.net/zembutsu/automation-myth-we-can-advance

前佛さん、まさかのすごいドメイン取得。
http://docker.jp/

こんなのまで。
http://viviop.net/

| | コメント (0) | トラックバック (0)

2015/06/10

MySQL5.6.25と5.7.7を比較。

今日聞いてきた内容が気になったので、手持ちの環境で確認。

Grants

rootユーザです。

show grants;

5.6.25

+----------------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@localhost                                                                                                              |
+----------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*1CE3106356E17EAE54E6BC6225B416DDE0EC656F' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION                                                                           |
+----------------------------------------------------------------------------------------------------------------------------------------+

5.7.7

+---------------------------------------------------------------------+
| Grants for root@localhost                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION        |
+---------------------------------------------------------------------+

default_password_lifetime

show variables like 'default_password_lifetime';

5.7.7

+---------------------------+-------+
| Variable_name             | Value |
+---------------------------+-------+
| default_password_lifetime | 360   |
+---------------------------+-------+

※5.6には存在しません。

sql_mode

select @@sql_mode;

5.6.25

+------------------------+
| @@sql_mode             |
+------------------------+
| NO_ENGINE_SUBSTITUTION |
+------------------------+

5.7.7

+--------------------------------------------+
| @@sql_mode                                 |
+--------------------------------------------+
| STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
+--------------------------------------------+

log_warnings

show variables like 'log_warnings';

5.6.25

+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_warnings  | 1     |
+---------------+-------+

5.7.7

+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_warnings  | 2     |
+---------------+-------+

初期値の変更もさることながら、log_error_verbosityへの影響もあります。

secure_file_priv

show variables like 'secure_file_priv';

5.6.25

+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| secure_file_priv |       |
+------------------+-------+

※空の場合は、mysqld実行ユーザのパーミッションで許可されたファイルは全て触れます。

5.7.7

+------------------+-----------------------+
| Variable_name    | Value                 |
+------------------+-----------------------+
| secure_file_priv | /var/lib/mysql-files/ |
+------------------+-----------------------+

※空の場合は、外部ファイルを一切触れません。

| | コメント (0) | トラックバック (0)

db tech showcase 1日目

【今から備えるMySQL最新バージョン5.7】


  • mysql_old_passwordプラグインの消失。
    • 5.6ではアップグレード時のみ16桁ハッシュのユーザも可能。新規作成は不可。

  • default_password_lifetimeがデフォルトで360日に設定されている。
    • 0を指定して無効化しよう。


  • SET PASSWORD構文が変更になった。

  • SHOW GRANTSでパスワードが出力されなくなった。

    • SHOW GRANTSの結果を用いたユーザ移行はできない。




  • sql_modeのデフォルトが変更になった。

    • ONLY_FULL_GROUP_BYがデフォルト動作になる予定。

      • MySQLはsql_modeによってはこんなアホみたいなクエリを通すんです…
        当然、nameの値は保証されません。

        SELECT COUNT(id)
        ,name FROM user
        WHERE name LIKE 'A%';

        +-----------+------+
        | count(id) | name |
        +-----------+------+
        | 50000 | A0 |
        +-----------+------+

        5.7では新たな関数、ANY_VALUE()が追加されたが、余計なお世話。

        SELECT COUNT(id)
        ,ANY_VALUE(name) FROM user
        WHERE name LIKE 'A%';





  • performance_schema.events_statements_historyでアプリが握りつぶしたエラーも見られる。



  • 古いlog_warningsは取り除いておくべき。



  • InnoDBではテンポラリテーブルをautoextendedにしないこと。

    • mysqldの再起動まで解放されない。




  • オプションによる動作/初期値の変更が初心者殺しすぎる。



  • インストール時のテンポラリパスワードが標準エラー出力。



  • secure_file_privの動作が変更。

    • rpmなどで入れるとデフォルト値が/var/lib/mysql-files/

    • nullにするとファイル読込不可。




  • コマンドラインオプションのパラメータ名補完が無くなった



  • スローログ関連の閾値が変わるかも。



  • 気になるバグはAffects Me!


| | コメント (0) | トラックバック (0)

2015/05/28

Zabbixだけじゃない! OSSを徹底活用して運用自動化を実現

Zabbix大好きなので、セミナーに行ってきました。



【基調講演:Zabbix3.0の新機能とAPIを利用したステータスの可視化や設定ツール】


  • 3.0のリリースは開発の遅れによって2015年8月に延期。

●開発の状況



  • http://www.zabbix.org/wiki/Docs/roadmap

    • ユーザ権限のメンテナンス作成機能、スクリーン等の共有機能は実装中。



  • WEBインターフェースのプルダウンがボタンに変わったりしてます。

    • 2.5ではデザインの変更を取り込み済み。



  • ローレベルディスカバリの改善

    • Windowsのサービスも登録可能



  • 任意のタイミングでアイテムのデータを取得

    • アイテムの監視タイミングをcronに似た表記で設定可能。間隔ではなく時刻を指定できる。



  • 任意のタイミングでhousekeeperを実行

    • zabbix_server -R housekeeper_execute


テンプレートなどの共有サイトができました!
http://share.zabbix.com


ダッシュボードのデザインが洗練されたな、と思う反面、開発遅れで欲しい機能1位が落ちるまさかの罠w


  • 任意のタイミングで、zabbix_server に取得命令発効 → zabbix_agentd から値を即時取得、
    というのがユーザフォーラムで最も欲しい機能でした。


●Zabbix APIとは


http://zabbix-server/zabbix/api_jsonrpc.php からJSON形式で取得できます。

  • 監視設定の実施、取得

  • 収集した監視データの取得

APIを利用したツールは


  • zabbix_tool(Python)

  • zabcon(Ruby)

  • Zabbix-Gnome(Python)
    ぐらいしかない…


様々な言語のライブラリはあるが、デファクトスタンダードは存在しない。

INTEROPでは


  • ShowNetの監視のデモをします。

  • グローバルダッシュボードのデモもあります。




【Zabbix監視運用業務の自動化事例】

●システム運用の目的



  • サービスの継続的提供

  • 障害対応

●手作業の運用の問題



  • 撲滅できない操作ミス

    • タイプミス

    • 手順書のタイポ

    • エラー時のロールバック手順不備



  • 原因不明の障害

    • 開発/検証/本番環境が微妙に異なる

    • 環境によって操作手順が異なる

    • そもそも手作業なので再現が困難

    • 秘伝のタレによる属人化



  • リリースサイクルの長期化

    • 変更が適用されるまでに次の変更要求が滞留

    • 変更頻度が少ないため、変更箇所が増えて変更のリスクが増大



  • 環境の複雑化への対応が困難

    • 仮想化、Cloud化によって環境が複雑化



  • 非効率、非人間的な作業

    • 端末操作、手順書読み上げ、作業確認の3人体制

    • 作業の長時間化による注意力低下


●運用管理を自動化する効果



  • 構築~実装~サービス稼働までプログラム化

    • コスト低減、ミスの削減、期間短縮

    • 「運用でカバー」、から「設計で保証」



  • 運用管理の集中化と可視化

  • 継続的デリバリーの実現

  • 広域分散環境に対応

  • リソースの最適化

  • DR/BCPへの対応

●Excelの何が問題か?



  • タイポ

  • コピペによるミスの再生産

  • 変更管理、差分管理に乏しい

  • 結局、紙に印刷してコマンド打つ

ただし、デモは


  • 設定が記述された"xlsx"ファイルをアップロード

  • Pythonのジョブがパラメータを読み込んで、ZabbixAPIからホスト/アイテム登録
    の流れ。
    そこは普通にAnsibleかChef-soloでいいのでは…

●自動化の鍵



  • 人間判断フロー:CMDBuild/Shark

    • 承認、指示など各ステークホルダが入力



  • プログラム制御:JobScheduler

    • エラー制御、分岐判断のロジックを記述


CMDBuild構成管理システム



  • AGPLライセンス

  • PostgreSQLしか対応していません。

    • JSONをフル活用してるから。



  • 監視システムだけでなく、文書管理システム等にも対応




【Zabbixと外部連携の効果とその可能性をさぐる】

●なぜ外部との連携が重要なのか?

1ツールで全要件が満たされればいいが…


  • 使うのにハードルが高くなる

  • 変化に対応できなくなる
    などの副作用がある。
    個々のパーツの組み合わせで実現するマイクロサービス的な考えがいいかも。


連携による効果と管理の複雑さはトレードオフ。

●Zabbixが連携に適する理由



  • 連携を効果的に行える仕組みの豊富さ

    • APIの提供



  • 仕様のオープン性

    • ユーザが考えてやってみる、という動きにつながりやすい。

      • 公式ドキュメント、BTS



    • あとはもちろんソースコード

    • ロードマップが詳しい



●Zabbixとの連携例
蓄積したデータをEmbulkで整形した例。


  • 試してみます。


| | コメント (0) | トラックバック (0)

2015/05/16

第8回redmine.tokyo勉強会

資料のURL、セッションの状況は↓に反映されています。
http://redmine.tokyo/versions/15

●アンケート
  • 今回の出席者は長期間使用ユーザが多め。
  • ほぼ2.6/3.0へバージョンアップしている傾向。

【Redmineによるwebサポート窓口の実装と運用】
メールに代わるサポート窓口として自社ホスティングのMyRedmineを利用したお話。

  • サポートのメールを返すときに、会社名から挨拶から本題に入るまでが長い。
    • COBOLか!のノリツッコミw 
    • メールでないツールを使うことで、メールの慣習から逃れられる。
  • トラッカーの設定で非表示にできなくても、「フィールドに対する権限」で「読み取り専用」にすることで作成・編集画面には表示されなくなる。
●他の顧客が見えないように
  • 顧客のロールを「非メンバー」に
  • ウォッチャー関係の権限をすべてオフ。
●課題
  • 顧客はプロジェクトのメンバーではないので、お客様に対してのチケットを作成できない。
  • 同じ契約先のユーザ同士でも情報共有できない。
  • アカウント登録が必要。
    *サポートにかける時間は減っていない。
    • レスポンスタイムの短縮によって、より多くのやりとりをすることでサポート内容は向上している。
●Redmine2.6以降では
  • プロジェクトごとに非メンバーのロールが設定できる!

【Redmineチューニングの実際と限界】
チューニング好きの自分に一番ヒットしたセッション。

  • 通信ボトルネックを避けるため、VM1つで全部やりきってる。
  • Unicornは万人向けではないので採用しなかった。
  • RubyのOOBGC/OOBWでGCオプションを変えると反応速度が変わってくる。
    • Passenger4で対応
  • Redmine2.6はRuby2.0→2.1にすることで24.8%性能が向上する。
    • 残念ながらRedmine2.6(Rails3.2)はRuby2.2に対応していない。
  • MySQL5.6/Postgres9.4のBufferPool Dump/Restoreを活用しないと100万チケットを越えたあたりでDB起動直後に5分ぐらいの待ちが発生する。

【Redmineニュース3本立て】
Agileware川端さんのお話。

  • 新しいLycheeシリーズ
    GanttChartPlugin 1.7.0(2015/05/01)でクリティカルパスの表示に対応。Redmine3.0に対応。
  • LycheeGanttChartが生まれ変わります!
    • β版をデプロイしました。
    • 非同期で動くようになったのでサクサクです!
    • 1.8で英語化対応
    • 1.9でメール一括送信制御
●新プラグイン
  • Lychee Issue Template
  • Lychee Issue Sorter
【全体ディスカッション】
  1. Redmineはどんなツール?
     A.管理ツール
     B.コミュニケーションツール
  2. Redmineは何に適している?
     A.計画を明確にする
     B.コミュニケーション
     C.情報を蓄積する
  3. Redmineのバージョンは?
     A.新しいバージョンがよい
     B.運用を始めたらバージョンは変えない

で全体ディスカッション。
私の意見は
1:B
2:C→BでそこからのナレッジでA
3:自分はA、会社向けにはB
という感じ。

【Redmine最新動向~3.0の変更点と3.1について~】
3.0の主な変更点
  • 古いRubyのサポート終了(1.8.7、1.9.2)
  • wikiのプロジェクト間移動

#11702:ユーザ・グループの複数プロジェクト一括登録が可能に。
#1326:添付ファイルの説明欄を後から編集可能に
#15326:カスタムフィールドの「長いテキスト」がdiff形式に。
#18983:バージョン単位にリマインダ設定が可能に。
#4244:各ユーザに追加メールアドレスが指定可能。
#18500:チケットコピー時に、コピー元/コピー先を自動付加するか選択可能に。
#5991:チケット作成時のデフォルトステータスをトラッカー単位で設定可能に。
#11724:表示可能なメンバーを「見ることができるプロジェクトのメンバー」だけに。
#18947:Ruby2.2対応(Rails3.xがRuby2.2未対応なので、Redmine2.xでは動作しない)
#13849:ドロップダウンリストをグループ化

●3.1の主な変更点
  • Markdownが試験的でなくなる。
  • メールによるチケット登録でプライベートチケットの登録が可能に。
●4.0では
  • おそらくRails5.xが対象に。

ライトニングトーク枠。

【LT1:@yohwadaさん】
EPM Baseの紹介。
http://www.origination.co.jp/#!epmbase/c1kgq

【LT2:@glad2121さん 「インターネット非接続環境で、Redmine & Subversion のインストール&設定を、Ansible を使って自動化してみた」】
http://www.slideshare.net/glad2121/redmine-ansible-48223729

【LT3: @tanaq0 さん 「チケットの棚卸し、ウチではこうしてます」】
http://www.slideshare.net/tanaq0/redmine-stocktaking

【LT4: @akiko_pusu さん 「うわ、Redmineバージョンが上がった!へなちょこプラグイン開発者はどうするか?」】
http://www.slideshare.net/akiko_pusu/20150516-redminetokyoltakikopusu

どれも非常に参考になりました。
次回も必ず参加します。

| | コメント (0) | トラックバック (0)

より以前の記事一覧