ゴールデンサークルとは 「なぜやるのか?」から始めて「どうやってそれを実現するか?」を考え、「何を作るか」の順番で考える/伝えるというものです。誰でも考える事のように思えますが、肝なのは順序。一般の方とは、伝える順が逆なんだとか。 NG What(…
AWS EC2インスタンスのEBSボリュームディスクが不足したので拡張した時の学習メモ。 対象インスタンスにアタッチ済みボリューム拡張を↓この辺を参考にして事前に済ませておく。 https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/console-modify.h…
GitHubを使う事が無かったが、チーム開発する環境への移動に伴い基本知識を学んだ時の学習メモ。 GitHubを利用したことのない人が、Fork〜Pull Request〜Merge までの入門記事です。 以下構築環境 クライアント:mac SCM:GitHub レポジトリ名:testrepo ■ G…
夏場にPC(MacBook)を使用している場合、熱を多く持ち高熱(60℃後半)になることがしばしばあります。 FANはフル稼働していますが、排熱が間に合わず、熱暴走によって動作が重くなる/突然フリーズするなど発生する為、夏場の温度管理は必要です。 iStatsという…
mysqldumpを使用したレプリケーション構築を作成するとします。このとき、mysqldumpに--master-dataを付与すると"FLUSH TABLES WITH READ LOCK" が発行され、一瞬のあいだ、全テーブルがロックが発生します。 mysqldump -uroot -pxxxxxxxx --single-transact…
前回の記事( MySQL+groonga+mroonga構築手順 - :>/dev/null )でレガシーシステムから現時点(2019/07/18)の最新Versionにアップデートする手順を検証したが、多段レプリケーションを用いた構成で再検討したので作業記録メモを残す。 多段構成として5.1 → 5.5 …
前回の記事( MySQL+groonga+mroonga構築手順 - :>/dev/null )でレガシーシステムを検証したが、その環境を現時点(2019/07/18)の最新Versionにアップデートする必要があり作業記録メモを残す。 レガシーシステムではMySQLからgroongaをストレージエンジンとし…
オンプレ環境でMySQL+groonga+mroonga構成を検証する機会があり、Versionは古いが知見として作業記録メモを残す。 MySQLからgroongaをストレージエンジンとして利用する場合、mroonga plugin(MySQL組込)を使用するが直接利用するケースとの違いを参考資料と…
先行の記事(https://ogugu.hateblo.jp/entry/2019/07/02/121645)で構築完了したが、日々の運用で発生した障害対応を行った時の情報を知見として作業記録メモを残す。 HA / DRBD(冗長化)構築に伴い、障害対応時の確認事項が多い為、参考資料として共有。 以下…
オンプレ環境でMySQL+DRBD+HA構成を検証する機会があり、クラウド全盛のタイミングだが低レイヤーの知見として作業記録メモを残す。 クラウドのマネージドサービスを使用した場合、クラウドベンダー範疇の為意識されてないが参考資料として共有。 基本となる…
awsの構成変更を行う場合、Document更新を忘れるので良い方法がないか調査した。 本来なら構成変更を行ったタイミングで自動化してDocument更新をするのが良いが効果的な方法が見つからない。 cloudmapperを使用した場合、現時点での構成が図表されるので代…
ansibleを使用して構成管理をする場合の条件分岐方法の調査を行った時の勉強メモ。 以下構築要件 Ansibleで構成管理を行う(冪等性の担保) Ansibleで各環境毎に設定内容を書き換える PRD(Production)/STG(Staging)/sandbox等 ■下記に各設定サンプルのconfファ…
Amazon Kinesis Client Library (KCL)を使用したログファイル収集基盤構成を構築する必要があり、調査を行った時の勉強メモ。 以下構築要件 apacheのaccess_logを集約サーバへ収集する 集約サーバでAmazon Kinesis Client Library (KCL) ライブラリを使用し…
aws cloudwatchで各使用状況を確認出来るが、各コストに関して詳細に調査する必要があり、調査を行った時の勉強メモ。 請求ダッシュボード -> Cost Explorer -> サービス別の月別使用量ビュー リンクアカウント別の月別使用量ビュー 日別使用量ビュー cost r…
タイトル通り実装する要件があり、調査・設定行った時の勉強メモ。 fluentdを使用したログ集約環境で、送信データの特定フィールドの値をごにょごにょ加工したい(次工程に渡す)っていう要件があります。 調査の結果、fluentdのfilter_record_transformerプ…
Lambdaをpython3で書く必要があり、まずは環境構築を行った時の勉強メモ。 構築手順 python3 install pip3 install reqest package作成 boto3 package作成 Token取得 ※取得したTokenが正常か確認 ・python3 install $ sudo yum install python36 python36-vi…
Kinesisはライブラリとして使用する事が多い為、実際の挙動を把握せず使ってるので調査した時の勉強メモ。 実際の挙動を把握する事で障害対応等で効率的に行動出来るようにする。 ■ストリーム作成 aws kinesis create-stream --stream-name <ストリーム名> -…
表記の通りCloudWatchに監視項目を追加する必要が発生したので調査した時の勉強メモ。 CustomMetrix追加手順 aws configureがインストールされてない環境での手順 cloudwatchのsrcファイル(今回は「CloudWatch-1.0.20.0」)をインストール カスタムメトリクス…
sshターミナル環境でtopコマンド発行時、terminal is not big enoughが表示され出力されないので調査した時の勉強メモ。 sshターミナルでtopコマンド発行 発生内容:Sorry, terminal is not big enough 対応:代替えコマンド発行(mpstat -P ALL) [root@**** …
aws環境でログ基盤を構築する必要があり、周辺関連の知識がたりなさすぎたので調査した時の勉強メモ。 lamda関数 処理フロー クラアント(td-agent)→Kinesis firehose→lamdba→s3 # # lamdba # import boto3 import json import base64 import time import sys…
fluent(td-agent)で、Buffer溢れにによるログ欠損が発生したのでその時の調査・対応を下記へ記載しておく。 ・対応フロー コンソールからtd-agentのログ状況確認 Bufferの蓄積状況確認 td-agent.conf確認 td-agent.conf設定変更 td-agnetサービス再起動 以下…
ansibleでplaybookを書いていたが、大規模化するにつれ実行時間を要するようになり調査・対応を下記へ記載しておく。 以下、設定環境:ansible version2.1 ・ansible.confパラメータチューニング # cat .ansible.cfg [defaults] transport=ssh pipelining=Tr…
Mongodb に関してslowlog出力設定での調査・対応を下記へ記載しておく。 mongosに設定追加は「profile currently not supported via mongos」とエラーとなる為、shard(mongod)に設定をする。 mongodへ設定追加後、mongosで解析行う。 以下対応フロー mongod…
apacheのaccess_logをカスタム出力設定後、ローテート設定したが正常稼働せず調査・対応を下記へ記載しておく。 以下対応フロー apacheのaccess_logを稼働出力設定する ログローテート設定に上記出力したファイルをローテート設定 ログローテート実行 ログロ…
apacheのaccess_logを構築した集約サーバへ収集する必要があり、そのついでに解析しやすいようjson化設定したのでメモ。 apacheログをjson化する要件が発生した場合汎用性がありそうなので、調査・対応を下記へ記載しておく。 以下構築要件 apacheのaccess_l…
shellで日時バックアップ処理を行う必要があった為、設定時メモ。 以下構築条件 デイリーバックアップ 圧縮必須 suffixが日時のみ処理 開始・終了時刻が記載 本条件でshell scriptを書いた #!/bin/sh set -e readonly SCRIPT_NAME=${0##*/} readonly HISTORY…
td-agentを起動した場合、buffer_path指定でエラー発生し、嵌ったので設定時メモ。 sourceディレクティブが複数あり、各tagを指定してサーバへ送信している環境。 以下構築条件 各sourceディレクティブでtag指定 sourceディレクティブでtag名重複は無い サー…
fluent(td-agent)を使用したlabel切り分けで各label毎にrecord追加する対応が発生したので設定時でのメモ。 sourceディレクティブが複数あり、送信時に特定recordを追加して送りたい場合に有効。 汎用性がありそうな為、調査・対応を下記へ記載しておく。 以…
fluent(td-agent)サーバ構築時、buffer等の監視設定時のメモ。 Buffer溢れ、転送先サーバ接続不可などの検知に使用出来ればと考えた。 設定方法を下記へ記載しておく。 以下監視項目 buffer_queue_length -> (バッファーに蓄積されているキューの数)buffer_q…
fluent(td-agent)を使用したlabel切り分けで一時的設定→送信時変更する対応が発生したので設定時でのメモ。 sourceディレクティブが複数あり、送信時にsubgroup化して送りたい場合に有効。 sourceディレクティブにsubgroup機能が無い為、送信時のlabelディレ…