MORE
最近では「マイクロサービス」と呼ばれる、機能毎に細かくサービスを分割して開発や運用を行うアーキテクチャの採用例が増えている。本記事ではこのマイクロサービスアーキテクチャや、それに使われる技術について紹介する。
2018年11月9日・10日に大阪南港ATC ITM棟10Fにて関西オープンフォーラム2018が開催されました。本記事ではその様子をレポートいたします。
指定したネットワークインターフェイスを通過するすべてのパケットを収集して分析したい、という場合に適したパケットキャプチャツール「Moloch」では、Webブラウザ経由でアクセスできる「Moloch Viewer」経由で収集したパケットの分析が行える。今回はこのMoloch Viewerを使ったパケット分析機能を紹介する。
オープンソースのパケット監視ツールとしてはWiresharkが有名だが、常時パケットを収集して異常を検出する、といった用途にはWiresharkはあまり適していない。そこで今回は、大規模なネットワークパケット監視向けに開発されているパケット収集・分析ツール「Moloch」を紹介する。
Pythonには任意のコードを対話的に実行できる環境が用意されているが、昨今ではこの機能を強化した「IPython」や、それらをグラフィカルに利用できる「Jupyter Notebook」といったツールが登場している。
近年、科学技術計算で利用するプログラミング言語としてPythonが注目されている。ただ、Pythonを利用する環境を構築しようとすると、Python本体に加えてさまざまなライブラリのインストールが必要となる。その作業の手助けとなるのが「Anaconda」というPythonディストリビューションだ。
ここ数年「FaaS」というサービス運用アーキテクチャが注目されている。しかし、FaaSではサービスを提供するプロバイダによって大きく仕様が異なり、相互運用性の面ではまだ課題があった。OpenFaaSはこういった課題を解決できる可能性があり、またオンプレミスでFaaSを利用したいという需要にも答えるものだ。
画像分類においては、高い精度を実現できる手法として「畳み込みニューラルネットワーク(CNN)」というものが提案されている。CNNは強化学習のモデルとして使用するニューラルネットワークの形状と信号の伝達方法を工夫することで、少ないノードで高い分類能力を実現するものだ。今回はこのCNNをTensorFlowで実装したものを紹介する。
前回までの記事では、TensorFlowを使って3層のニューラルネットワークを構成して機械学習による画像分類を試みた。今回は前回までのコードを拡張し、4層以上のニューラルネットワークを使用した、いわゆる深層学習(ディープラーニング)による画像分類を行う例を紹介する。
TensorFlowでは、学習などに使用するデータを読み書きするための「TFRecord」というデータフォーマットが用意されている。今回はこのTFRecordを使って学習データを準備したり、TFRecord形式のデータを読み込む方法を紹介する。
TensorFlowには計算グラフや学習過程を分析するためのツールである「TensorBoard」が付属している。これを利用することで、計算グラフを実際のグラフの形状で表示したり、学習処理の経過によるモデルの変化をグラフで表示するといったことが可能になる。今回はこのTensorBoardについて紹介する。
人工知能関連のソフトウェアを実装するに当たって広く使われているのがGoogleが提供するオープンソースの数値演算・人工知能関連ライブラリである「TensorFlow」だ。今回はこのTensorFlowのアーキテクチャや、基本的な行列演算、CSVファイルからのデータ読み込み、機械学習プログラムの実装を行う流れを紹介する。
昨今では「人工知能(AI)」やそれに関連する技術が注目されている。そこで本連載では人工知能に関する技術の概要や、それを利用するためのソフトウェアについて紹介する。
Prometheusには簡易的なグラフ作成機能が用意されているが、これには必要最低限の機能しか実装されていない。そこでおすすめしたいのが監視用コンソールを提供するソフトウェア「Grafana」だ。以下ではPrometheusとGrafanaを組み合わせて利用する流れを紹介する。
Prometheusでは、Prometheus Serverが監視対象にアクセスしてデータを収集するアーキテクチャを採用している。このデータ収集のためのアクセス先(エンドポイント)は「exporter」と呼ばれており、さまざまなソフトウェアやハードウェア向けのものが提供されている。今回はこのexporterについて、独自のデータ取得方法なども含めて紹介する。
サーバーやインフラなどの監視ツールの1つとして最近注目されているのが「Prometheus」だ。Prometheusはインストールや設定が容易で、かつ十分な機能を持ち管理しやすいという特徴を持つ。本記事ではこのPrometheusの導入方法、基本的な監視設定の流れを紹介する。
Apache Traffic Serverを利用する場合、注意したいのがキャッシュの設定だ。特に動的なコンテンツを配信するサイトや、ログインなどが必要でユーザー毎に異なるコンテンツを送信する場合、この設定を間違えると情報漏洩などに繋がる可能性もある。今回はTraffic Serverのキャッシュ設定について説明する。
昨今ではWebサービスを運営する場合、リバースプロクシを介してサービスを公開するという運用形態が多く見られる。こういった構成の際に使われるリバースプロクシサーバーはいくつかがあるが、今回は優れたキャッシュ機能が特徴の「Apache Traffic Server」を紹介する。
ログ管理ソフトウェア「rsyslog」ではモジュール方式でさまざまな機能が追加されているほか、独自のスクリプト言語を使った柔軟な設定が行えるようになっている。前編に引き続き、これらrsyslog独自の機能について紹介する。
多くのLinuxディストリビューションで採用されているsyslogサービス「rsyslog」は現在でも活発に開発が進められており、ネットワーク経由でのログ転送だけでなくログの整形や柔軟な条件分岐、さまざまなデータベースへのログ出力サポートといったさまざまな機能が追加されている。