mutao.net

いわゆる雑記。

2021-01-01から1年間の記事一覧

Flask+MySQLなローカル環境をDockerで構築する

Flask + MySQL なアプリケーションのローカル環境を作成する機会があったので残す。 作ったもの github.com 欲しかったもの ローカル環境に依存しないようにしたい。 docker-compose up -d だけでローカル環境を整備したい。 MySQL用のコンテナも作ってテス…

log4j2の脆弱性についてのポエム

災害レベルの脆弱性に出会ったので記念?に書く。 ゼロデイ脆弱性だし、日本は金曜日だし最悪なタイミングでした。 logging.apache.org Base CVSS Score: 10.0 と文句なしの満点。 loggerにこのレベルの脆弱性があるとは考えもしてなかった。 www.lunasec.io…

MySQL8系への移行に備える

MYSQL8系を使用するにはSpring で使われているMySQL Connector/Jをアップデートする必要があります。 今回はちょっと詰まってしまったところがあるのでメモ。 MySQLのEOL https://www.oracle.com/us/support/library/lifetime-support-technology-069183.pdf…

Kubernetes入門メモ書き

k8sに入門しているのでどうやって習得していったのか備忘録ながら書く。 k8sって2年前?くらいは「人類には早すぎる」って言われてた気がするのにもはや知ってて当たり前みたいな風潮がある。 人類の進化が早いのか、人類のミュータント化に成功したのか、k8…

PHP Benchmark

mutaonet.hatenablog.com の続き。 benchmarkに使うscriptは公式が出しているものを使っていきます。 github.com 実行環境 Raspberry Pi4 ModelB CPU: 4core Arm Cortex-A72 ARMv8 64bit RAM: 4GB JIT機能は有効にしてないです。PHP8でもデフォルトで無効化…

ペチゾーが来たゾウ🐘

PHP

ラズパイ(CentOS)にphpbrewで最新版のPHPをinstallしてみる。 phpcon2021でペチゾー君が我が家に来たので久々にPHP触ってBenchmarkとってみようと思い立ったのでやってみる。 こういう抽選系のは当たったことないのでうれしい。elePHPantも欲しいです。 ちな…

Grafanaのパスワードがわからなくなった。

タイトルの通り、adminユーザのパスワードが分からなくなって困ってしまった。 ちなみに以下の記事で構築したラズパイ上のGrafana。 mutaonet.hatenablog.com 英語の記事だけどここに書いてありました。(日本語訳しました。) ahelpme.com # ps axuf|grep g…

Apacheでロードバランシング

mod_proxy_balancerとは? Apache2.2系から使えるようになったらL7のロードバランシング機能を持つmodule。 触れる機会があったのでちょっと調べてみる。 実際にはApacheでロードバランシングしているところを、AWSで言うELBに置き換えたいので調べてみたと…

load average

load average 「LAが急上昇しました。」とかそういうことを聞いたりする。 load averageについてこの機会におさらいかねてまとめておくことにした。 実行するタスクが増えてくるとタスクの実行待ちが発生する。 この待ち状態がプログラムの遅延状態としてloa…

SREに求められる知識?

SREとして働く上でどんなスキルセットが必要なのか、そして自分はどこまで知識を持っているかというのを洗い出したいので書き出してみる。 qiitaで「各社の募集要項からSREに求められるスキルをまとめた」という素晴らしいPOSTがあったので参考にしてみるこ…

Nmap(Network Mapper)

Nmapとは nmap.org ポートスキャンを行えるツール。 私はポートが開放されているかどうかくらいでしか、使用したことがなかったので改めて使い方を調べる。 ※ポートスキャンは不正アクセス禁止法には抵触しませんが、「攻撃された」と判断する可能性もあるの…

Golangでopenweathermapを使ってみる

openweathermap.org 天気予報の個人使用無料のAPIを使ってみたかったので作成。 気象庁が公開している非公式のAPIもありますが、1時間毎のデータを取得できる等のメリットがあるopenweathermapを使用。 openweathermap.org FreePlanでアカウントを作成してマ…

GolangでLinebot②

mutaonet.hatenablog.com 前回の続き。もう少し意味のあるものにしていく。 作るもの 楽天市場APIを使って1日1回、楽天市場に出品されているワインの中でレビュー平均の降順でいくつかLineBotで通知しようというもの。 webservice.rakuten.co.jp まずはRakut…

GolangでLinebot

Herokuとは Salesforceの提供するPaaS 価格アプリケーション起動時間の従量課金制。 マスに向けたWebサービスでなければ無料枠を超えるようなことはないと思う。 レンサバも持っていないので今回はHerokuを使っていく。 jp.heroku.com go-Linebot github.com…

Grafana PrometheusでMySQL監視

アーカイブをwget ## https://github.com/prometheus/mysqld_exporter/releases/tag/v0.13.0 $ wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.13.0/mysqld_exporter-0.13.0.linux-arm64.tar.gz $ tar xvzf mysqld_exporter-0.13…

gccコマンド

Linuxを使っているとgccコマンドというのをよく目にする。 実際良くわかっていなかったのでメモする。 まず、GCCとは GNU Compiler Collectionの略でC,C++,Goなどのコンパイラコレクションとのこと。 linuxize.com gccコマンドはGNU C Compilerの実行ファイ…

RaspberryPiのCPU温度を確認したい

vcgencmdを使って確認します。 www.raspberrypi.org $ dnf install cmake gcc gcc-c++ make アップグレード済み: cpp-8.4.1-1.el8.aarch64 gcc-8.4.1-1.el8.aarch64 gcc-c++-8.4.1-1.el8.aarch64 libgcc-8.4.1-1.el8.aarch64 libgomp-8.4.1-1.el8.aarch64 li…

Grafana Prometheusな環境構築

grafanaをラズパイにinstall 環境 Rasberry Pi4 ModelB CentOS 8 構築 https://grafana.com/grafana/download?platform=arm $ wget https://dl.grafana.com/oss/release/grafana-8.0.5-1.aarch64.rpm $ sudo yum install grafana-8.0.5-1.aarch64.rpm $ syst…

drone-ci構築

drone Github上のmainブランチへのmergeや、PR作成をhookして.drone.ymlに記載したpipelineを実行する。 build deployなんかができる。詳しくは公式documentを参照。 readme.drone.io localで構築してみる。 これも公式documentを見るだけでできる。 docker-…

decleareでエラー

decleareでエラー bashを使って簡単なscriptを書いたときにエラーが出たので軽くメモ 「decleareでエラー」の語感が好きだったという理由です。 #!/bin/bash declare -A arr=( ["aaa"]="100" ["bbb"]="200" ["ccc"]="300" ) for value in ${!arr[@]}; do ech…

td-agentでnginxのaccesslogを収集

前回apacheのtd-agentの設定は書いたけどnginxはまだ書いていなかったのでメモ。 <source> @type tail path /var/log/nginx/access.log format nginx tag nginx.access pos_file /var/log/td-agent/nginx.access.log.pos </source> <match nginx.access> @type elasticsearch host 127.0.0.1 port </match>…

Raspberry Piにdocker-composeをinstall

環境 Raspberry Pi4 ModelB CentOS Linux release 8.3.2011 install $ wget https://github.com/docker/compose/releases/download/1.25.5/docker-compose-Linux-x86_64 $ mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose $ chmod 755 /usr/l…

GoでMySQL操作入門

MySQL用意 Localの環境を汚したくないのでテスト用のDBはDockerで用意する。 docker-compose でテスト用のデータを事前に入れておく github.com 実際にSELECT文を打ってみる 使用するモジュールをgo getで取得 go get github.com/go-sql-driver/mysql github…

負荷

負荷とは 「CPU負荷」と「I/O負荷」に大別される。 CPU負荷( CPUバウンド) プログラムの処理が原因でかかるCPUの負荷のこと 大規模な計算を行うプログラムはディスクとの入出力は行わないが、計算処理はCPUの計算速度に依存する。 I/O負荷(I/Oバウンド) ディ…

楽しい勉強の仕方を考える

目的 自分の市場価値を上げる だけど苦しいのは嫌で、できるだけ楽しく成長したいという典型的な最悪パターンをとっているのが私。 仕事で必要なことはやるが、それにはある程度のゴールがあってプライベートな時間の中で継続的に勉強することができるように…

サーバ/インフラを支える技術

1章 サーバ/インフラ構築入門 本書を読み終えたので軽くメモ。 クラウドが便利になって気にしていなかったところの知識やざっくりとした知識で捉えていたものが理解できるようになる良書だった。 ヘルスチェック ICMP監視(L3) echoを投げてリプライが来るか…

td-agentを入れてapacheのログ監視をしてみる

td-agentインストール docs.fluentd.org curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent4.sh | sh systemctl start td-agent.service systemctl status td-agent.service apacheインストール # apche起動用ユーザの作成 useradd -s …

ラズパイ4にElasticsearch+Kibanaインストール

暇だったのでラズパイ4にElaticsearchとKibanaをインストールしたときのメモ。 ちなみにすでにラズパイ4にはCentOS8が入っていてJava11もインストール済み。 Java8以降が必須になるみたいなので、ない場合は事前にインストールしておく。 すごくレベルの低い…

PostmanのTips

Postmanのリクエストをcurlコマンドに変換する機能があるというのを見てめちゃくちゃ便利だったのでメモ。 クエリパラメータやtokenを大量に付与するAPIのリクエスト等だとありがたすぎる。 右の「codeをクリック」 左上のプルダウンから「cURL」を選択する…

SEOメモ②

SEO

2021/5月からGoogleの検索順位にCoreWebVitalsが影響すると正式に発表された。 developers.google.com CoreWebVitalsが何の指標なのかは各所で言及されているので特筆しないし、ユーザにメリットがあるようにサイト構築をするのはSEO対策の基本。 ちなみに各…