zaki work log

作業ログやら生活ログやらなんやら

Linux

ものすごくざっくりとPrometheusのアラートルールを設定して動きを見てみる

Prometheusのアラートルールを設定する。 閾値を越えたらalert状態にするというもの。 この状態になった場合の通知はまた別途AlertManagerを使うが、その前段階の設定についてざっくりと確認してみた。 prometheus.io 環境やベースのPrometheusは以下の「Cen…

PrometheusとNode ExporterをCentOS上でバイナリを直接動かして動きを確認してみる

先日のOperatorを使ったK8sクラスタへのデプロイは全自動だったので一体何が動いたのか!?という感じだったので、Prometheusのコンポーネントや動きを理解するために、素のPrometheusを使いGetting Startedの内容に沿って動かしてみる。 prometheus.io Prom…

[ESXi / CentOS 7] ディスクを"追加"してパーティションサイズを拡張

実はスナップショットがあると既存ディスクのサイズ拡張ができなかったので、新しくディスクを作成してパーティションサイズを拡張した。 zaki-hmkc.hatenablog.com 内容は、上記の「サイズ拡張した領域にパーティション作成して拡張」が「新しく追加したデ…

IUSリポジトリのパッケージでCentOS 7にGit version 2をインストールした

VS CodeのGitHistoryやGitLens拡張がいつの間にか動かなくなってた。 エラーの通りGit Versionが1系なのが原因なのでアップデートしてみる。 こんなエラー git shortlog -e -s -n HEAD (completed in 0.008s) git log --full-history --pretty=oneline --dat…

制限ネットワーク環境のRHEL7でproxy経由でサブスクリプション登録とDockerインストール

実は自宅環境でRHEL入れるの初めてなんですよ…。 記事内のproxyは172.29.0.11:8080 zaki-hmkc.hatenablog.com RHEL7の取得とインストール後のサブスクリプション登録 イメージの取得 OSインストール サブスクリプションの登録 proxy設定 システムの登録 利用…

[Docker] コンテナでSquidを動かしてproxyサーバーを構築

2年近くproxyすらないネットに繋がらない環境にいて、少し前にようやくパブリッククラウドの自由ないんたーねっとを手に入れたぜうっひょーと思ったら、今度はついにproxy環境での検証をすることになったので、自宅ラボにも似たような構成作れないか、Squid…

[ESXi] CentOS 7のストレージ(XFS)を拡張する

CentOS 7 (on ESXi 6.5)のストレージを増やしたい。 LVMわかってないので、参考記事ベースに作業してみたらうまく行ったという内容。 ディスクサイズの増加 パーティション作成 fdisk起動 現パーティション 空きストレージにパーティション作成 システムタイ…

Windows Terminalの新規ターミナルに項目追加して1操作で指定サーバーにssh接続できるようにする

Windows Terminalの「新しいタブ(ターミナル)を開く」に、いつもsshで接続して作業するメインのホストにシェルを起動する。 設定箇所 タブを開く新しい項目を追加する 追加項目のコマンドにsshを指定する 公開鍵認証設定してパスワードを聞かれないようにす…

[コマンドメモ] 引数を1個しか取れないコマンド実行にxargsで複数のパラメタを渡したいときは-n1を使う

以前bashのループで回避したけど、そもそもxargsで1個ずつ引数渡せないの?と調べたら-nオプションがあったのでメモ。 $ kubectl config get-contexts -o name | grep ... | xargs kubectl config delete-context Delete the specified context from the kub…

[Azure] CLIツールをインストール(CentOS)して、VM作るまでお試し実行

AzureのCLIコマンドをローカルのCentOS7へインストールする。(ただそれだけ) yumを使ってインストールするので簡単。 docs.microsoft.com 2020.07.28時点でver 2.9.1をインストールした時の作業ログです。 インストールする際は、最新の情報を確認して作業し…

[AWS] CLIツールのインストール(on Linux)

LinuxへAWSのCLIツール(version 2)を入れる。 ただそれだけ。 以前はpipで入れてた気がするけど、今はzipでバイナリをダウンロードする方式になっている。 docs.aws.amazon.com インストール 初期設定 お試し インストール [zaki@cloud-dev aws]$ curl "http…

[コマンドメモ] Linuxでzip操作

200年に1回くらい遭遇するLinux OSでzipの展開。 unzipはわかるし、-hすればまぁ分かるけど一応メモ。 アーカイブ内のファイル一覧 展開時にファイル一覧を出力しない 指定ディレクトリに展開 (おまけ)zip圧縮 アーカイブ内のファイル一覧 tarだとtar tf <filename>に</filename>…

[Kubernetes] podに任意のログを発生させてkubectl logs -fの出力を自由にコントロールしたい

podのログの監視ツール作成みたいな作業をしているときに「任意のログをpod内に発生させたい!」ということがあったので、その方法について。 TL;DR 解説 podで動作確認 普通のLinux OS上で確認 TL;DR ログを発生させたい対象podのシェル上(kubectl exec -it…

[コマンドメモ] firewall-cmd備忘録 (firewalld)

firewall-cmdをたまにしか使わないので覚えられず、いつもブログの過去記事から探してるので、まとめておく。 設定確認 デフォルトゾーンの設定を見る 全てのゾーンの設定を見る ゾーン関係 一覧 アクティブなゾーンの一覧 ゾーンに指定インタフェースを設定…

[Ansible / Linux] sysctlコマンドとAnsibleモジュールについてメモ (sysctl_set未解決)

kernelパラメタを更新するのに使用するsysctlとAnsibleのsysctlモジュールについて、設定ファイルと読み込みの動作について備忘録。 sysctl_setパラメタについては不明点あり。 docs.ansible.com sysctl CLIコマンドについて sysctl -w について sysctl -p …

[Ansible] get_urlモジュールでyum-config-managerコマンドをAnsible対応

細々とkubeadmを使ったKubernetesクラスタのデプロイをAnsibleで自動化するってのをやってるんだけど、手順の中のContainer RuntimeのインストールでDockerインストールのためのYumリポジトリの設定をyum-config-managerで行うというのがあって、でもAnsible…

[Ansible] CentOSのswap無効化を行う (check_mode / changed_when / ignore_errors)

Kubernetesのシステム要件に「swapがオフであること」というのがあるので、Ansibleつかってノードの準備を行う際に「swapが有効の場合には無効にする」というのを冪等になるようにやってみた。 対象はCentOS 7 taskの例 現在のswap設定 swapが有効化かチェッ…

rsyslogでリモートへログを送りつける設定

今回は、リモートのrsyslogへログを送りつける設定について。 (図の左側のrsyslogの設定です) 対向のrsyslog(図の右側)は前回の記事の、リモートからログの受信を受け付けるrsyslogの設定が入ってる前提 zaki-hmkc.hatenablog.com 基本 実は/etc/rsyslog.con…

rsyslogでリモートからのログ出力を受け付ける設定とloggerコマンドでの確認

The rocket-fast Syslog Server - rsyslog rsyslogでリモートからのログ出力を受け付ける設定とloggerの簡単な使い方。 図で言うと、右側のrsyslogの設定。 (図の左側に当たる送信側については別記事参照) (確認用)loggerコマンド 基本 オプション 出力先の…

[Kubernetes] kubeadmを使ってCentOSへk8sクラスタをデプロイしてみた (firewalld有効版)

今回は(今回も)CentOS 7.7 1908 Minimalを素で入れて、公式ツールであるkubeadmを使ってKubernetesクラスタを作ってみた。 何だかんだで一度もやったことがなかった基礎… kubernetes.io kubernetes.io 追記2: masterを複数ノードにする場合は、kubeadm init…

(小ネタ) systemctlでサービスの有効化と起動を同時に設定

systemctl enableのオプションに--nowというのを追加できた…! いつもいつも # systemctl enable docker # systemctl start docker みたいに実行してて、「コマンド2回たたくの面倒だなー」か、「インストールしたときenable忘れて、何日も経った後にreboot…

[Python] オフライン環境でpipする

インターネットに繋がらないホストでpip installするには、パッケージファイル指定インストールかローカルPyPIサーバを用意する。 普通にやっても [zaki@centos1 ~]$ pip install pypdf2 Collecting pypdf2 Retrying (Retry(total=4, connect=None, read=Non…

yumdownloaderを使ってインストール済みのrpmパッケージファイルをダウンロードする

既にインストール済みのパッケージだと [root@manager rpms]# yum install --downloadonly --downloaddir=. python2-pip 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile epel/x86_64/metalink | 6.4 kB 00:00 * base: ftp-…

yum updateするときに特定のパッケージを更新対象外にする

色んな事情でyumでインストールした特定パッケージのバージョンを固定したい(アップデートしたくない)場合の設定について。 環境 お題 準備 epelを追加 updateを確認 除外設定 (a) --excludeオプションで指定 (b) /etc/yum.conf に設定 うっかりアップデート…

(CentOS7)プライベート環境に必要なパッケージのみ提供するyumリポジトリサーバを構築する

プライベート環境で用意されているyumリポジトリサーバではインストールできないパッケージを、rpmファイル配布してインストールでなく、ローカルにyumリポジトリサーバを構築し、そのリポジトリからパッケージインストールする。 例としてjq用のyumリポジト…

(CentOS7) sudo実行時に/usr/local/binにパスが設定されてないのは何故

結論から書くと、sudoの実行元のユーザのPATH設定・sudoの実行先のユーザ(root)のPATH設定、どちらも関係なく、/etc/sudoersでPATHを再設定しているため。 Defaults env_reset # 環境変数をクリア Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin # …

(コマンドメモ)ssh経由でリモートのファイル一覧をtarする

たまに使うので備忘録 リモートの/home/zaki/work/ansibleをローカルにansible.tar.gzとして固める [zaki@manager-dev ~]$ ls [zaki@manager-dev ~]$ [zaki@manager-dev ~]$ ssh zaki@192.168.0.19 tar cz /home/zaki/work/ansible | cat - > ansible.tar.gz…

CentOS7にsamba4.9を入れるときのSELinuxの設定

設定はだいたいあってるはずだしwindowsからディレクトリ一覧は見えるのにディレクトリにアクセスできないと思って色々調べてたらSELinuxの設定が足りてませんでした。 そういえばubuntu/debianでしかsambaインストールしたことなかったなと思って… sambaイ…

GitLab CEのDockerコンテナイメージを使って、ローカルにGitLab CEをサクッとたてる(https + Container Registry込み)

DockerHubで公開されているGitLab CEのコンテナイメージを使えば、簡単にGitLabをローカルに立てることができます。 GitLab CEをDockerで動かす GitLab CEでコンテナレジストリを動かす はそれぞれ先人たちのブログ記事とか見つかる(ありがとうございます!)…

dnsmasqを使ったDHCP/PXE/TFTPでネットワークブートとインストール

dnsmasqはTFTPサーバ内蔵してるので、設定で有効にしてあげれば、DHCP + PXE + TFTPでネットワークブート&インストールするための環境を簡単に構築できます。 前提 設定 TFTP有効化 ブートローダーの設定 カーネルの設定 設定ファイル dnsmasqのリスタート…