長生村本郷Engineers'Blog

千葉県長生村本郷育ちのエンジニアが書いているブログ

Nginx

Raspberry PI3 Model B に docker-compose で Nginx で認証かけて Prometheus + Node Exporter + Grafana + cAdvisor構築

概要 Raspi3に docker-compose で Prometheus による監視機構を作成しました。 github.com 環境 Raspberry Pi 3 Model B (Raspbian GNU/Linux 8) arm7l Docker version 17.04.0-ce, build 4845c56 docker-compose version 1.9.0, build 2585387 Raspi に doc…

docker-compose で開発環境構築 〜Nginx アクセスログ(ltsv) を fluentd + elasticsearch + kibana で可視化〜

概要 前回構築した Vagrant 環境上で docker-compose による開発環境構築をします。 kenzo0107.hatenablog.com 今回は前回の続きで Nginx のアクセスログを Elasticsearch + Fluentd + Kibana で可視化してみます。 アプリ 簡単構築手順 macOS% $ git clone …

ある日 Nginx で HTTP/2 and SPDY indicator が青く輝いてくれなくなった件

概要 Chrome Extention の HTTP/2 and SPDY indicator は HTTP/2 で通信していることを確認する Chrome の拡張 Pluginです。 これがある日 not enable となっていたので その対応をまとめます。 結果的に何が原因だったか ALPN をサポートしていなかった為で…

Nginx 1.9.6 → 1.11.1 へバージョンアップ 脆弱性対応

脆弱性CVE-2016-4450 に対応した Nginx 1.11.1 が 2016-05-31 リリースされたということで 早速バージョンアップを試みました。 CVE-2016-4450 に対応した nginx 1.11.1 リリース — | サイオスOSS | サイオステクノロジー ダウンタイムゼロで実行できました…

運用中のNginxをノーメンテでバージョンアップ&HTTP2.0モジュールを導入

概要 運用中の Nginx に HTTP2.0モジュール http_v2_module を導入し サイトのパフォーマンス向上を図ります。 ※ Nginx 1.9.5 から http_spdy_module は http_v2_module に変更しています。 環境 CentOS Linux release 7.1.1503 (Core) Nginx 1.9.3 インスト…

Nginx Basic認証設定、社内IPなど特定ipのみ許可

概要 サービス公開前にNginxで Basic認証を掛ける必要がありました ちょうど社内公開したときでもあり Basic認証のポップアップが出るのが鬱陶しいのもあって 社内だけオフりたい、というときに以下のような設定をしました。 Basic認証設定 # yum install -y…

Nginxエラー調査 「duplicate MIME type "text/html" in /etc/nginx/nginx.conf」

概要 エラーログをslackに通知させるようにしてるとほんと便利。 kenzo0107.hatenablog.com 時たまなんですが、なんだこれ?というのが送られてくる。 その一つが掲題のエラー。 duplicate MIME type "text/html" in /etc/nginx/nginx.conf nginx.confを見て…

NginxでGeoIP設定しアクセスログにアクセスポイントを追加する

概要 GeoIP Libraryを設定後、access.logにアクセスポイントを表示 GeoIP データファイル取得 GeoIPライブラリを提供しているMaxMindサイトから取得可能です。 有料版もありますが、取り急ぎは無料版で試します。 # mkdir -p /usr/share/GeoIP/ # cd /usr/sh…

インストール済みNginx にgeoIP Library追加

概要 元々yumでNignxをインストールしていましたが IP制限やfluentdでip情報を割り出す必要があり geoIPが必要になりました。 その為には 新たにNginxをソースからダウンロードしLibrary追加しコンパイルし直す必要があります。 geoIPインストール理由 ログ…

エラーログをSlack通知する

環境 CentOS Linux release 7.1.1503 (Core) td-agent: 0.12.12 Nginx: 1.8.0 概要 社内でSlackによる連携が進み ログ管理もfluentdにまとめつつあるので エラーログで何かあったらSlack通知させようと思いチャレンジ♪ 以下のような流れを想定しています。 N…

Nginx ssl.conf設定 特定ページのみhttpsへリダイレクトさせる設定

概要 Go RevelフレームをNginx上で利用しています。 その際に設定したssl設定、及び、 特定ページのみhttpsへリダイレクトする様な 設定をする必要があったので以下まとめました。 gist.github.com https通信したいのページは以下です。 /register /mypage /…

fluentd設定ハマった所あるある

以下随時追加。 環境 CentOS Linux release 7.1.1503 (Core) Fluentd 0.12.12 Nginx 1.8.0 Permission denined パーミッションエラー! # tail -f /var/log/td-agent/td-agent.log 2015-08-19 14:17:14 +0900 [error]: Permission denied @ xxxxxxx - /var/l…

NginxにオレオレSSL証明書インストール

環境 AWS EC2 : t2.micro OS : CentOS Linux release 7.1.1503 (Core) Nginx: 1.8.0 OpenSSL: 1.0.1e-fips 11 Feb 2013 前提 Nginxがインストール済みである。 事前にパスワード作成 $ cat /dev/urandom | LC_CTYPE=C tr -dc '[:alnum:]' | head -c 40 v6biM…

CentOS7 に Nginx + Go + Revel インストール・動作確認

環境 EC2 t2.micro CentOS Linux release 7.1.1503 (Core) Go version go1.4.2 linux/amd64 以下手順です。 事前準備 EC2 インスタンスへSSHログイン $ ssh -i aws.pem centos@xxx.xxx.xxx.xx root権限へ変更 $ sudo su - yumパッケージ インストール # yum …