designetwork

ネットワークを軸としたIT技術メモ

Helm repo indexしたパッケージ更新で既存のtimestampを書き換えないようにする

helm repo index .してGitHub Pagesで公開している自作Helmチャートの更新運用時に、既存パッケージ(旧バージョン)のタイムスタンプが更新されてしまう事象が発生したので対処メモ。 QuickFix ./bump-index.sh <new_package.tgz>として、退避・index --mergeする。 bump-index</new_package.tgz>…

Praeco (ElastAlert GUI) を Helm で Kubernetes にインストールする (Beta)

以前より本ブログで取り上げている Praeco (ElastAlert GUI) の Helm Chart を作成した。 Praecoについてはこちら参照 designetwork.daichi703n.com Betaリリース 初めてのHelm Chartで、かつ、まだ本番運用はできておらず、k3sのローカルKubernetes環境での…

Praeco + ElastAlert2.0 + ES7.x 構成の不具合対応方法

(2020/04/24 id:naoyukisano1 様からの情報を追記) こちらの記事で紹介したPraecoだが、Elasticsearchのバージョンアップに伴いElastAlertもバージョンが上がり、2020/2月時点ではElastAlertのバグで正常に動作しない状態となっている。 designetwork.daichi…

BOSH-Lite Directorの証明書一式を更新する

こちらの記事で構築したBOSH-Lite環境だが、1年が経過し生成された証明書の期限が切れた。 designetwork.daichi703n.com 監視の仕組みを作っておらず、BOSH環境が停止してしまっていたため、証明書を更新(再生成)し復旧させた。 エラー内容 BOSH VMにアクセ…

CI/CD for CI/CDs Dockerイメージの継続的最新化 with ConcourseCI

CI/CD Advent Calendar 2019 の 7日目 qiita.com 数日前に書いた記事のQiita向け調整版です。 AWS CLI on Alpine Docker Image 自動更新ビルド with Concourse - designetwork ConcourseでのAWS関連作業用コンテナとして、AWS CLIのDocker Imageをビルドする…

AWS CLI on Alpine Docker Image 自動更新ビルド with Concourse

ConcourseでのAWS関連作業用コンテナとして、AWS CLIのDocker Imageをビルドする。ビルドにはConcourse CIを使用することで継続的に更新し続ける仕組みを作る。 最終的な成果物としてのDocker Imageはこちら daichi703n/awscli 後から再調査したところ、こち…

MySQL(RDS, Aurora)のSSL証明書有効期限を確認する

Amazon AWS RDSのCA証明書が更新されることを受けて、MySQLのSSL証明書の有効期限の確認方法を検証した。 動作確認は以下のインスタンスで実施した。 Amazon RDS (MariaDB, 10.1.31) Amazon Aurora (Aurora MySQL, 5.7.mysql_aurora.2.04.3) opensslコマンド…

Pivotal.IO 2019 登壇しました 「決済システム内製化に向けたプラットフォーム構築 - PCF・BOSHによるオブザーバブルプラットフォーム」

Pivotal.IO 2019に登壇させていただきました。 pivotal.omniattend.com 資料をアップロードしましたのでご参照ください。 決済システム内製化に向けたプラットフォーム構築 - PCF・BOSHによるオブザーバブルプラットフォーム 決済システム内製化に向けたプラ…

Error: `sass-loader` requires `node-sass` >=4. エラー発生時の対処方法のひとつ

※発生原因・根本対策について詳細確認できていませんので、各自の判断で適用ください。 Node.jsで以下のエラーが発生した際の対処方法。前提構成・詳細は割愛するが、暫定対処として記載しておく。 Error: `sass-loader` requires `node-sass` >=4. Please i…

Praeco (ElastAlert GUI)でElasticsearchログアラートする

Elasticsearchのデータを元にアラート通知できるElastAlertは、X-Pack(Watcher Alert)を導入しない環境において、ログ監視を実装する有用な方法として広く使用されている。 しかし、ElastAlertはコマンド・設定ファイル(YAML)ベースでの動作のみをサポートし…

ElastiFlowでNetFlow可視化する

以前、こちらの記事にまとめた通りオープンソース(OSS)のNetFlowコレクタを調査した。 designetwork.daichi703n.com 改めて調査したところ、ElastiFlowという、Elasticsearch + Logstash + Kibana (ELKスタック) ベースのNetFlowコレクタ、ビジュアライザを…

iptablesのNATコネクション状態を確認する(AWS NATインスタンスなど)

AWS NATインスタンスなど、LinuxでiptablesによりNATマシンを作成することがある。 ルータ、FWなどのNW機器の操作経験があるネットワークエンジニアであれば、コネクション状態を確認したいケースが多いと思う。 netstat-natコマンドを使用してshow xlateの…

Kibanaが参照するElasticsearchを冗長化する(v6.6.0-)

Kibana 6.6.0 から標準で参照するElasticsearchを複数設定できるようになった。設定方法と動作を確認する。 Release Note 以下の通り機能追加が報告されている。 www.elastic.co Kibanaでは、待ち望まれていた複数へのElasticsearchノードの接続がKibanaで可…

JMeter Dashboard Report グラフの粒度を変更する

Apache JMeterはWebシステム等のシナリオ試験、性能試験、負荷試験等で広く使用されている。テスト結果からレポート・ダッシュボードを生成することもでき、結果報告書等にも利用できる。 標準で出力されるグラフは1分単位で詳細が把握できないため、グラフ…

Tornado for Apache JMeterでBOSH環境で負荷試験する

パフォーマンス測定・負荷テストツールのApache JMeterをBOSHを用いて構築し、テストを実施する。Apache JMeter自体は通常のアプリケーションなので、Windows, Mac, Linux等にインストールして実行することができる。また、複数台で並列実行することで高負荷…

Windows Server 2019 無償評価版を ESXi6.5 にインストールする

Windows Serverは通常は有償で個人利用は難しいが、評価版は無料・無償で使用することができる。(180日間の利用期間制限があるものの、期間はslmgrコマンドで延長可能) これにより、Active Directory ( AD ) やDNS、Exchange、IIS、DHCP といった基本的なWin…

Cisco ASAにSSH公開鍵認証でログインする

サーバ運用では一般的なSSH公開鍵認証をCisco ASAで実装する。これにより、よりセキュア、かつ効率的に運用が可能になる。 オフィシャル情報 Cisco ASAのSSH関連設定ガイドはこちら www.cisco.com 本記事ではSSH公開鍵認証に特化して設定方法を記載する。 環…

TurbulenceでBOSH環境にカオスエンジニアリングを導入する

Cloud Foundry Advent Calender 2018 の24日目 先進的な企業・サービスで導入されているカオスエンジニアリングを実施してみる。Cloud FoundryやKubernetesなど、BOSHで構築された環境であれば、本記事の方式で比較的簡単に導入できる。 なお、本記事では、B…

BOSH-Lite in VirtualBoxでブリッジアダプターを使用しリモート接続する

Cloud Foundry Advent Calender 2018 の23日目 BOSH-LiteをVirtualBoxでローカル環境に構築する手順は各所で説明されている。その場合、BOSHオフィシャルにも記載されている通りホストOSから各種操作をすることが基本となっている。ただ、メインのPCでBOSH-L…

Easy Gantt with Gitmike で休日をグレーアウトする

Redmineのガントチャートツールとして有用なEasy Ganttだが、テーマGitmikeと組み合わせるとデフォルトでは休日がグレーアウトされない。 なお、デフォルトのテーマの場合はこの問題が発生しない。 キレイなテーマであるGitmikeはそのまま使用し、休日を考慮…

Docker-ComposeでMACVLAN (802.1Q VLAN Tag) ネットワークを作成する

こちらの記事でDockerコンテナを外部ネットワークと802.1Q VLAN Tag接続した。 designetwork.hatenablog.com 今回はDocker-Composeファイルで定義して運用しやすくする。さらに作り込めば、ネットワークテスト自動化が実現できると考えている。 参考情報 Doc…

Dockerコンテナを外部ネットワークとVLAN Tag接続する

ネットワークの疎通確認・経路確認などのテストにDockerコンテナを活用する方式を検討している。テストの際に大量のPCを用意するのは非効率なため、軽量・スピーディなDockerコンテナを活用していきたい。 イメージしている構成は以下の通り。802.1Q VLANタ…

SSH Piper w/DockerでSSH R-Proxyを構築する

FirewallなどによりサーバへのSSHアクセスが制限されている環境において、踏み台サーバではなく、SSH R-Proxyサーバ (Dockerコンテナ) によりバックエンドのサーバへのSSH Proxyアクセスを実装する。 HTTP Proxy経由でSSH接続をする方法もあるが、今回はHTTP…

Redmineで期日超過のチケットを一覧表示時にマークアップする (View Customize Plugin使用)

Redmineでの課題管理において、チケット一覧表示時に期日超過チケットをマークアップ表示することで対応漏れを防ぐことができる。リマインドメールを活用すれば同等効果が期待できるが、一覧表示時にもマークアップしておくと状況が把握しやすい。 実装イメ…

Proxy環境での設定誤りでGem, Bundleインストールが失敗するケース

Proxy環境でのパッケージインストールは環境変数などでProxyサーバの指定が必要となる。Gem, Bundlerにおいても同様、http_proxyの環境変数の設定が必要となる。 環境構築の中で、誤設定によりProxyが期待通りに動作しないケースがあったため、設定内容によ…

Proxy環境のDocker RedmineでGemインストールするための設定

(2018/4/28 Update 別原因だったため訂正) Docker Redmineへのプラグイン追加の際、Gemパッケージのインストールが必要となる場合には、docker-compose.ymlでProxy環境変数を設定する。 .gemrcの配備が必要となる。 発生した問題と調査内容、対応方法を示す…

Docker RedmineのSMTPメール送信を非同期にして遅延を解消する

Dockerで稼働させているRedmineでのチケット作成・更新時のレスポンスが悪くなり、原因調査・対応実施して問題解消したため手順メモ。 結論としては、SMTPによるメール通知をAsync(非同期)にすることで、メール送信の完了を待たずにチケットの画面が遷移する…

DockerでHinemosをインストールする (初期構築)

NTTデータがOSSとして開発している統合監視システムのHinemosをDockerで導入してみる。 こちらにオフィシャルのDocker Imageがあるが、バージョンが古く、メンテナンスもされていないようなので、自分でDockerfileから作成する。 https://hub.docker.com/r/h…

OpenStackにBOSH環境を構築する

基本的にこちらに記載の通りの手順でOpenStackにBOSHをインストールする。 https://bosh.io/docs/init-openstack.html なお、OpenStackのホストとして使用しているCentOS等でも作業可能だが、PackStackを使用した私の環境ではOpenSSLの依存関係の問題でうま…

(Queens)PackStackで実用的なOpenStackスタンドアロン検証環境を構築する

OpenStack Queensがリリースされたのでインストールから初期使用までを検証する。 OpenStack環境を簡単に構築できるPackStackで、少しのカスタマイズを加えて実用的なOpenStack検証環境を構築する。 OpenStackバージョン: Queens (Version: 13.0.0) ※あくま…