chevron_left

メインカテゴリーを選択しなおす

cancel
社外SE技術日記(OUTPUT) https://www.mtioutput.com/

インフラ部門の社外SEが学んだことを発信しています。最近は自動化技術に興味があります。

社外SEくん
フォロー
住所
未設定
出身
未設定
ブログ村参加

2019/07/13

  • 【Python/tweepy】tweepy.Clientを利用するためにtweepyのバージョンをあげる手順

    やりたいこと Twitter API v2経由でツイートをするためにtweepy.Clientを利用したい。 ただし、現状のバージョンでは以下のエラーとなるためPython/tweepyのバージョンアップが必要。 # python3 test.py Traceback (most recent call last): File "test.py", line 9, in <module> client = tweepy.Client(BT, AK, AS, AT, ATS) AttributeError: module 'tweepy' has no attribute 'Client' 環境…

  • 【Linux】日本語を含む文字列を文字サイズ順に並べ替えるワンライナー

    やりたいこと 以下のようなファイルがあった場合に $ cat test.txt いちに onetwo 12 一二日本語の文字も1文字扱いで文字数順に並び替えたい。 環境情報 GNU bash, 4.4.12(1)-release (x86_64-pc-linux-gnu) やり方 以下を実行すると $ cat test.txt while read line; do echo "$line" wc -m;echo $line; done awk 'NR%2 != 0{printf "%s ", $1} NR%2 == 0 {printf "%s\n",$1}' sed -e s…

  • 【入門/暗号】離散対数問題とは?

    はじめに 主に公開鍵暗号の方式で活用される離散対数問題。辞書にて以下のように解説されています。 離散対数問題とは、ある計算の結果から簡単に逆算ができないような数学上の問題の一つで、整数のべき乗(冪乗)を素数で割った余りを求める計算を用いるもの。 本記事ではそこから「具体的にどういう問題?」「なぜ暗号の世界で利用されているの?」という観点で深掘りし、分かりやすく説明してみました。 離散対数問題とはどういう問題? 離散対数問題を理解するために質問ですが、「とある整数aを冪乗した時、とある整数bで割った余りはいくつか?」という問題と「整数aを何乗すれば整数bで割った余りがcになるか?」という問題、ど…

  • 【Linux】任意の数値の小数点以下の桁数を削除する

    やりたいこと 1.2345のような数値列がある際に以下のような切り出し方を行う。 1.2 1.23 1.234 環境情報 $ bc --version bc 1.06.95 やり方 数値列に対して1での除算を行う。 $ echo "scale=1;1.2345/1" bcscaleで指定する数値を変更することで小数点以下の桁数を指定できる。 $ echo "scale=2;1.2345/1" bc 1.23 $ echo "scale=3;1.2345/1" bc 1.234以下、補足です。 補足 以下のように数値をそのまま入れるだけでは小数点処理はされないため $ echo "s…

  • 【Python】スクリプトで利用する環境変数を設定ファイルから読み込む

    やりたいこと 以下のようにスクリプト内で利用する変数の値を client = tweepy.Client(BT, AK, AS, AT, ATS)別ファイルからの読み込みで与えたい。 環境情報 Debian GNU/Linux 9 Python 3.9.2 やり方 スクリプトが配置されているディレクトリ内に.envファイルを用意し、スクリプト内からそれを読み出す。具体的にはdotenvモジュールを以下のようにインストールした上で # pip3 install python-dotenv ... Successfully installed python-dotenv-1.0.0 ..スクリプト…

  • 【Linux】grep実行時に「無効な範囲終了です」というエラーになる

    事象 二つのファイルの比較作業として以下を実行した際に $ grep -x -v -f /root/test2.txt /root/test1.txt以下のエラーとなる。 grep: /root/test2.txt:128: 無効な範囲終了です 環境情報 $ grep --version grep (GNU grep) 2.27 原因/解決策 正規表現で使用する特殊な文字(\、[、]、^、$、*、.など)が該当行に存在した。 特殊文字をエスケープせずに検索するためにFオプションを利用することで解消する。 $ grep -x -v -F -f /root/test2.txt /root/test…

  • 【Db2】特定のSQLに対してインデックスの利用有無を確認する

    やりたいこと Db2環境で発行するSQLにてテーブルに作成してあるインデックスの利用有無を確認する。 環境情報 DB2 v11.5 RHEL 7 やり方 db2explnコマンドを利用する。接続情報及びqオプションにて発行したいSQLを記載した結果にて $ db2expln -d sample -u DB2INST1 P@ssword -t -g -q "select * from sales where SALES = 15"以下のようにIndexが含まれているかどうかを確認する。 Optimizer Plan: Rows Operator (ID) Cost 12.6715 RETURN …

  • 【Db2】SQLにかかる時間をdb2batchで計測する

    やりたいこと Db2環境で発行するSQLの処理時間を確認する。 環境情報 DB2 v11.5 RHEL 7 やり方 db2batchコマンドを利用する。 $ which db2batch ~/sqllib/bin/db2batchSQL分を記載したファイルを用意した上で select * from sales; 以下のように引数にてデータベースへの接続情報を入力すると $ db2batch -d XX -a DB2INST1/XX -f test.sql -i complete -o f -1 p 1 o 5以下のようにSQLの実行結果及び計測結果が出力される。 * 2176 row(s) f…

  • 【Kubernetes】特定のPodに対してパケットキャプチャーをしかける

    やりたいこと WorkerNode上で動作する特定のPod(例IngressController等)を宛先とする通信のパケットを取得する。 環境情報 Kubernetes v1.23 やり方 tcpdumpが含まれたコンテナイメージを用意した上でIngress ControllerのPodが動くWorkerNodeを以下のYAMLのnodeSelectorに記載。 apiVersion: v1 kind: Pod metadata: name: test namespace: default spec: containers: - args: ["-c", "sleep 1d"] comman…

  • 【JP1/AJS3】ジョブネットの実行予定と実行結果をコマンドで表示させる

    やりたいこと JP1/AJS3 ManagerがインストールされたLinux機において特定のジョブネットの実行予定時刻及び実行結果を確認する。 環境情報 JP1AJS_1260L01 JP1AJS_1260W01 やり方 ジョブスケジュール(test)を以下のように指定すると実行結果が確認でき # /opt/jp1ajs2/bin/ajsshow -T "/test/*" AJSPATH = /test/ Name Type Status Code Start time End time test2_jpb net normal *** ... 1:00 ... 1:00 AJSPATH = …

  • 【JP1/AJS3】ジョブネットとジョブの一覧をコマンドで出力する

    やりたいこと JP1/AJS3 - Viewにて以下のように表示されている場合にジョブネット定義ジョブネット、ジョブの一覧をLinux機側で表示する。 環境情報 JP1AJS_1260L01 JP1AJS_1260W01 やり方 ajsprintコマンドで表示する。 # /opt/jp1ajs2/bin/ajsprint -a "/*" grep unit出力情報としてジョブグループやジョブネットが以下のような形式で表示される。 # /opt/jp1ajs2/bin/ajsprint "/*" grep unit unit=test,,jp1admin,; #ジョブグループ unit=…

  • 【JP1/AJS3】Managerのインストール/初期構築の流れ

    はじめに ジョブスケジューラのJP1構築の参考として Linux側にJP1/Base&Jp1/Managerをインストール Windows側にViewをインストール ViewからManagerに接続 を実施した流れを記載します。 環境情報 JP1AJS_1260L01 JP1AJS_1260W01 Manager(Linux)側のインストール モジュール(JP1AJS_1260L01_P1.iso)を配置した上で展開し、以下のディレクトリにあるLINUX/SETUPからインストールを行います。 # find JP1AJS_1260L01_P1 grep -i setup JP1AJS_12…

  • 【JP1/AJS】認証サーバのホスト名を確認する

    やりたいこと JP1/Automatic Job Management System 3における、JP1/Baseの認証サーバに指定しているホスト名を確認する。 環境情報 CentOS 7 P-812C-6LCL,125004(T),JP1/Base やり方 以下のファイルを確認する。 # file /opt/jp1/hcclibcnf/regdir/HKEY_LOCAL_MACHINE.dat /opt/jp1/hcclibcnf/regdir/HKEY_LOCAL_MACHINE.dat: ASCII text具体的にはSVNAMEという項目で値が管理されている。 # cat /opt/j…

  • 【AWS】作成済みのIAMユーザに対する対するパスワードの強制変更フラグ付与

    やりたいこと AWSアカウントにおいて、既にプロファイル作成済みのIAMユーザーに対してパスワードの強制変更フラグを付与してパスワードを変更する。 環境情報 $ aws --version aws-cli/2.11.25 … やり方 該当のユーザを—user-nameで指定した上で以下のようにログインプロファイルをアップデートする。 $ aws iam update-login-profile --user-name test --password p@ssw0rd --password-reset-required尚、パスワードの強制変更のフラグの有無は以下にて確認ができる。 $ aws i…

  • 【Linux】crontabにて%を付与したコマンド実行がエラーとなる

    事象 crontabに以下のような記載をした場合に # crontab -l * * * * * curl test.com -o /dev/null -w '%{http_code}\n' -scronログにはエラーとして出力される。 /bin/sh: -c: line 0: unexpected EOF while looking for matching `'' /bin/sh: -c: line 1: syntax error: unexpected end of file 環境情報 Red Hat Enterprise Linux Server 7.9 原因/解決策 コマンド部分の%…

  • 【Linux】curlコマンドを実施するもCannot assign requested addressというエラーになる

    事象 curlコマンドにて外部システムに対してリクエストを発行するも以下のエラーとなる。 $ curl 10.X.X.X -v * About to connect() to 10.X.X.X port 80 (#0) * Trying 10.X.X.X... * Failed to connect to 10.X.X.X: Cannot assign requested address * couldn't connect to host at 10.X.X.X:80 * Closing connection 0 curl: (7) Failed to connect to 10.X.X.X…

  • 【Wireshark】分割されたパケットキャプチャデータをコマンドで結合する

    やりたいこと 分割されたパケットデータ(.pcap)をCUIから統合して1ファイルとする。 環境情報 Wireshark 3.2.2 CYGWIN_NT-10.0 ... 3.3.4... x86_64 Cygwin やり方 Wiresharkフォルダに格納されているmergecap.exeを利用する。 $ ls -l /cygdrive/c/Program\ Files/Wireshark/mergecap.exe -rwxr-x---+ 1 ... '/cygdrive/c/Program Files/Wireshark/mergecap.exe'カレントディレクトリにpcap形式のファイ…

  • 【IBMCloud/Windows】CUIでチケットに対してファイルを添付する

    やりたいこと IBMCloud上で起票したチケットに"ibmcloud.exe sl ticket"コマンドでファイルを添付したい。 環境情報 $ ibmcloud version C:\Program version 2.13.0..$ uname -a CYGWIN_NT-10.0 ... 3.3.4... x86_64 Cygwin やり方 以下でオープン中のチケットの一意のIDを確認した後に $ ibmcloud sl ticket list Id Assigned User Title Last Edited Status Updates Priority 1234567890 xx…

  • 【Vyatta】VRRPにおけるadvert_intの値を変更する

    やりたいこと Vyattaにてkeepalivedにおけるadvert_intの値を変更する。 環境情報 Debian 4.19.150-0vyatta1 やり方 以下のように、冗長構成を取っている両機に対して構成変更モードに遷移した後に設定変更を実施する。数字の単位は秒。 $ configure # set interfaces bonding XX vrrp vrrp-group XX advertise-interval 30 # commit # exit設定値は以下で確認ができる。 $ show vrrp detail --------------------------------…

  • 【JMeter/Linux】CUIで実施時に応答時間の結果をLatencyで確認する

    やりたいこと JMeterを実行ができる状況にて # jmeter -n -t test.jmx各リクエストに対する応答時間を確認する。 環境情報 apache-jmeter-5.4.1 java-1.8.0 RedHatEnterpriseLinux 7 やり方 lオプションを付与して実行することで # jmeter -n -t test.jmx -l test.csv以下のような応答結果が出る。 # head test.csv timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,f…

  • 【Linux/CentOS】timedatectlによるNTPとの時刻同期方法

    はじめに CentOS7のNTPによる時刻同期ができていない環境にて、NTPによる時刻同期を行う流れについて記載しました。 尚、時刻同期ができている状態とはtimedatectlコマンドの結果が以下という状態を指しています。 # timedatectl ... NTP enabled: yes NTP synchronized: yes 環境情報 CentOS Linux 7.7 ntp.x86_64 0:4.2.6p5-29.el7.centos.2 NTP enabled 時刻同期ができていないデフォルトの状態は以下となっています。 # timedatectl ... NTP enable…

  • 【Kubernetes】kube-controller-managerのnode-monitor-grace-periodを変更する

    やりたいこと WorkerNodeの状態を管理するパラメータである「node-monitor-grace-period」を変更する。 環境情報 Kubernetes v1.23.2 やり方 kube-contoller-managerの引数に記載する数値を変更する。(デフォルトは40秒) - kube-controller-manager - --node-monitor-grace-period=40s尚、同値を変更することでkube-controller-managerがNodeのステータスのヘルスチェックに関する閾値が変更される。 I1025 ...1 event.go:294] "Ev…

  • 【Db2】アクティブログのミラーログをMIRRORLOGPATHで設定する

    確認したいこと アクティブログのミラー先を設定した後に $ db2 UPDATE DB CFG FOR sample USING MIRRORLOGPATH /test/db2inst1/Mirror DB20000I The UPDATE DATABASE CONFIGURATION command completed successfully. SQL1363W One or more of the parameters submitted for immediate modification were not changed dynamically. For these configur…

  • 【Nginx/Ingress】Endpointに紐づくPodのIP変更を検知する流れ

    確認したいこと NGINX Ingress ControllerはService/Endpointに紐づくPodのIPが変更されるとそれを検知します。 今回はDeploymentでNGINX Ingress Controllerが動作している環境で、変更検知の流れをログから調査しました。 環境情報 NGINX Ingress controller Release: v0.48.1 Kubernetes: v1.23 確認方法/結果 Nginx Ingress Controllerにはでバックログ(Debug Logging)機能があり、デプロイメント起動時に--v=5を指定することでログレベル…

  • 【Nginx/Ingress】Sticky sessionsを有効にすることで同一PODに通信を流す

    はじめに NGINX Ingress Controllerにはセッションが続いている間は同じクライアントを同じサーバへ誘導する機能(Sticky sessions)が存在します。本記事ではそれを実際に有効にすることで、ブラウザ通信が同一のPodに流れることを実機で確認しました。 環境情報 NGINX Ingress controller Release: v0.48.1 Kubernetes: v1.23 事前準備 Deployment, Service, Ingressを用意することでロードバランサのIPに通信を発生させるとNginxのPodに通信が流れるようにしておきます。 $ kubec…

  • 【Db2】HADR_STATE=REMOTE_CATCHUP_PENDINGから復旧させた流れ

    事象 スタンバイ機のDBのHADRが正常に機能しない。具体的にはステータスがREMOTE_CATCHUP_PENDINGとなっている。 $ db2pd -db sample -hadr .... HADR_ROLE = STANDBY HADR_STATE = REMOTE_CATCHUP_PENDING HADR_CONNECT_STATUS = DISCONNECTED ... 環境情報 IBM Tivoli System Automation for Multiplatforms 4 DB2 v11.5 RHEL 7 解消方法 プライマリーとスタンバイ側のDB2インスタンスを停止させた状…

  • 【Db2】STANDBY機のサーバ再起動時におけるTSA/RSCTによる復旧確認

    確認したいこと db2haicuで設定したTSAMP構成が組まれている環境で $ lssam Online IBM.ResourceGroup:db2_db2inst1_db2inst1_SAMPLE-rg Nominal=Online '- Online IBM.Application:db2_db2inst1_db2inst1_SAMPLE-rs - Online IBM.Application:db2_db2inst1_db2inst1_SAMPLE-rs:test1 '- Offline IBM.Application:db2_db2inst1_db2inst1_SAMPLE-rs:…

  • 【JitsiMeet】ミーティング参加を試みるとWebsocket errorで接続が切断される事象

    事象 トップ画面は正常にアクセスできるが「ミーティングを開始/参加」をしようとすると あなたは切断されました というメッセージが出た後に再接続が繰り返される。 原因/解決策 ブラウザ経由でのWebSocket機能が正常に利用できていない。docker-composeによるJitsiMeetの設定ファイルである.envに以下を記述すると ENABLE_XMPP_WEBSOCKET=0正常に起動する。以下、補足です。 補足 以下の記事で作成した環境へProxy(プロキシー)経由で接続した際にエラーとなりました。 ブラウザ上でデバッグすると下記のように出力されていたので init @ app.bun…

  • 【Db2】データベースマネージャー構成パラメーターを確認する

    やりたいこと 以下のように設定を行うデータベースマネージャー(dbm)の構成パラメーターの現在値の確認する。 $ db2 update dbm cfg using xx yy 環境情報 IBM Tivoli System Automation for Multiplatforms 4 DB2 v11.5 RHEL 7 やり方 以下のコマンドを押下すると $ db2 get dbm cfg以下の形式で値が表示される。 Database Manager Configuration Node type = Enterprise Server Edition with local and remote…

  • 【Db2】db2_killを用いたインスタンス障害時のTSA/RSCTによる復旧確認

    確認したいこと db2haicuで設定したTSAMP構成が組まれている環境で $ lssam Online IBM.ResourceGroup:db2_db2inst1_db2inst1_SAMPLE-rg Nominal=Online '- Online IBM.Application:db2_db2inst1_db2inst1_SAMPLE-rs - Online IBM.Application:db2_db2inst1_db2inst1_SAMPLE-rs:test1 '- Offline IBM.Application:db2_db2inst1_db2inst1_SAMPLE-rs:…

  • 【Db2】db2haicuの設定情報をxml形式で出力する

    やりたいこと db2haicuで対話形式に設定したTSAMP構成をXML形式に出力する。 環境情報 IBM Tivoli System Automation for Multiplatforms 4 DB2 v11.5 RHEL 7 やり方 -o(output)オプションを利用し、出力先のファイル名を指定すると $ db2haicu -o test.xml Welcome to the DB2 High Availability Instance Configuration Utility (db2haicu). db2haicu determined the current DB2 data…

  • 【ICOS】curlコマンドのみでファイルをアップロードする

    やりたいこと IBM CloudのICOS(IBM Cloud Object Storage)にWindowsに標準搭載されているcurlコマンドを利用してファイルをアップロードする。尚、ibmcloudコマンドは利用せず、事前にAPIキーを作成しておく 環境情報 > curl -V curl 7.83.1 (Windows) libcurl/7.83.1 Schannel ... やり方 APIキーを引数に入れた上で下記コマンドを押下すると > curl -X "POST" "https://iam.cloud.ibm.com/identity/token" --data-urlencode…

  • 【Db2】TSAによるHADR自動切り替えにおけるクォーラムデバイスの役割

    はじめに クラスタリングツールの世界にはクォーラムデバイス(quorum device)と呼ばれる概念があり、実際にDb2のクラスタリングを組む際に以下のように指定します。 Configure a quorum device for the domain called 'xx'? [1] ... The following is a list of supported quorum device types: 1. Network Quorum/2. Disk Quorum/3. Majority Node Set...本記事では、同デバイスの役割と実際にそれがどのように使われるのかの動き方を…

  • 【Db2】db2haicuで設定した自動テイクオーバーを確認する

    はじめに スタンバイ側にてdb2haicuを実施した後に プライマリーでも同設定を行い、機能検証としてプライマリー側のOSをシャットダウンしてみました。 環境情報 IBM Tivoli System Automation for Multiplatforms 4 DB2 v11.5 RHEL 7 Primary側の手順 db2haicuを対話モードで実行し、Sutandby側と同じクラスターとDB名を指定します。 $ db2haicu ... The following are valid settings for the high availability configuration par…

  • 【Db2】スタンバイ側にてdb2haicuを用いてクラスタードメインを構成する

    はじめに 以下のようにHADR構成のデータベースが既にある場合、プライマリーのデータベースサーバとスタンバイのデータベースサーバでクラスタードメインを作成する流れについて記載しました。 尚、今回はクラスタリングツールにTSAを利用しています。 環境情報 IBM Tivoli System Automation for Multiplatforms 4 DB2 v11.5 RHEL 7 事前準備 TSAのインストールを行った上で # ./installSAM prereqSAM: All prerequisites for the ITSAMP installation are met on o…

  • 【Db2】HADR構成のDBでクライアントリルートの動きを確認する

    はじめに 以下のようにHADR構成のデータベースがある場合、クライアント側が接続先を変更せずともTAKEOVER時にスタンバイ側に切り替わるクライアント・リルート機能をを確認しました。 環境情報 DB2 v11.5 RHEL 7 サーバ側での事前確認 プライマリー側のデータベースにて"Alternate server hostname"と"Alternate server port number"を指定することでスタンバイ側の情報をクライアント側に伝達できるようにしておきます。 $ db2 "UPDATE ALTERNATE SERVER FOR DATABASE SAMPLE USING >…

  • 【Db2】リモートにあるデータベースサーバに接続するためにカタログを作成する

    はじめに 以下のように遠隔にデータベースがある場合、クライアント側でCATALOGと呼ばれる情報を用意して接続を行います。本記事ではそれらの流れについて記載しました。 尚、クライアント側でdb2コマンドは押下できる状態かつサーバ側ではインスタンス/DBが作成済の状態とします。 環境情報 DB2 v11.5 RHEL 7 サーバ側での事前確認 インスタンスが待ち受けているポート番号は、インスタンスにログイン後に以下のコマンドで $ db2 get dbm cfgSVCENAMEに記載の値で確認できます。 TCP/IP Service name (SVCENAME) = db2c_db2inst1…

  • 【Db2】HADRの正副構成を手動で切り替える

    はじめに プライマリー機とスタンバイ機の間でHADR(High Availability Disaster Recovery)機能を利用しているIBM Db2環境で、プライマリー側の更新がスタンバイ側に取り込まれていることを実機で確認しました。 環境情報 DB2 v11.5 RHEL 7 事前準備 SAMPLEデータベースにてHADR構成を組み、プライマリー側/スタンバイ側それぞれでHADR_STATEが"PEER"となっていることを確認。 $ db2pd -db sample -hadr Database Member 0 -- Database SAMPLE -- Active -- ..…

  • 【Kubernetes】calico/kube-controllersのLivenessであるcheck-statusの動き

    はじめに Calicoのkube-controllersのLiveness/Readinessを見ると、内部的に以下コマンドで生死監視が行われています。 exec [/usr/bin/check-status -l] delay=10s timeout=10s period=10s #success=1 #failure=6本記事にて実機を用いて内部的に何が確認されているのかを調査しました。 環境情報 calico/kube-controllers:v3/usr/bin/check-status --version v3.21.4 check-statusはjsonファイルを確認している コン…

  • 【Db2】START HADR AS STANDBYを実施するもUnable to start HADR. Reason code = "1"となる

    事象 HADR構成をスタンバイ側で実施しようとするも表題のエラーとなる。 $ db2 "START HADR ON DB SAMPLE AS STANDBY" SQL1768N Unable to start HADR. Reason code = "1". 環境情報 DB2 v11.5 RHEL 7 原因/解決策 公式ドキュメントにて START HADR AS STANDBY コマンドを発行したが、データベースの状態が、ロールフォワード・ペンディングでもロールフォワード進行中でもないため。 と記載あり。再度プライマリー側のデータをリストア&ロールフォワード・ペンディング状態のまま実施すると…

  • 【Db2】sb2setコマンドでDB2SYSTEMを変更する

    やりたいこと デフォルトで設定されている変数であるDB2SYSTEMを変更したい。 尚、同値はインスタンスユーザにスイッチした上で以下コマンドで確認できる。 $ db2set -all [i] DB2COMM=TCPIP [i] DB2AUTOSTART=NO [g] DB2SYSTEM=testserver 環境情報 DB2 v11.5 RHEL 7 やり方 特権ユーザ(root)にスイッチした上で環境変数にてインスタンス名を定義した上で # export DB2INSTANCE=db2inst1以下のように変更後の値を入力すると # /home/db2inst1/sqllib/adm/db…

  • 【Db2】No start database manager command was issued というエラー

    事象 データベースに接続しに行くも表題のエラーとなる。 $ db2 connect to SAMPLE SQL1032N No start database manager command was issued. SQLSTATE=57019 環境情報 DB2 v11.5 CentOS Linux 7 (Core) 原因/解決策 db2startで起動するメインプロセス(db2sysc)が存在しない。よって該当のプロセスを起動すると $ db2start ... 0 0 SQL1063N DB2START processing was successful. SQL1063N DB2START…

  • 【Kubernetes】NotReadyのNodeで動いているPodはServiceから切り離される

    確認したいこと 以下の記事のようにWorkerNode~API Serverの通信が途絶えたりkubelet障害が発生した場合に Pod上はどのような挙動をするのか。2台のNodeを用意し、それぞれに1つずつPodをDeployした状態でService経由のアクセスを可能にしてあることとする。 環境情報 Kubernetes 1.24 確認結果 二台のNodeが存在する環境で1台のNodeのみを「NotReady」ステータスとすると $ kubectl get node NAME STATUS ROLES AGE VERSION 10.X.X.A NotReady ... 10.X.X.B R…

  • 【Vyatta】インターフェースに割り当てられているIPv6のアドレスを無効化する

    やりたいこと 各インターフェースに定義されているinet6を無効化したい。 尚、同IPアドレスは以下で確認できる。 $ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 s…

  • 【JSON】jqコマンドで階層を問わずに指定した項目/アイテムを表示する

    やりたいこと 以下のような構造のJSONがあるとして { "issue": { "id": XX, "project": { "id": 8, "name": "Test" }, "tracker": { "id": 10, "name": "Task" }, ... nameの値だけを取り出す。ただし、nameの場所がどの入れ子の深さにあるかは指定しない。 環境情報 $ jq --version jq-1.6 やり方 以下のように指定することで $ cat test.json jq ".. .name? select(.!=null)"全てのアイテムにてnameという名前のフィールドを再…

  • 【Vyatta】VRRP構成でリモートサーバにSyslog転送を行う際の注意点

    はじめに VRRPによる冗長構成が有効な場合に Syslog転送を行うと、送信元のIPアドレスに気をつける必要がある点を実機で確認しました。 環境情報 Debian 4.19.150-0vyatta1 Vyatta側の設定 Vyattaでは以下構文でSyslog転送の設定ができるので # set system syslog host <address> facility <keyword> level <keyword>ファシリティは all とした上で対象を警告以上とするように設定をしました。 # set system syslog host 10.X.X.X facility all le…

  • 【Wireshark】パケット内の任意の項目を表示列に追加する

    やりたいこと パケットの中にある任意の値をWireshark上の列として表示させる。例えばTCP(Transmission Control Protocol)パケットの中にて以下のように格納されているウィンドウサイズの値を Window: 29200 [Calculated window size: 29200] 列に組み入れるケースを想定する。 環境情報 Wireshark 3.2.2 やり方 ツリービューに表示されるパケットの詳細にて該当箇所を選択した上で右クリックを押し「列として適用」を行う。GUI上尚、デフォルトではNo. , Time , Source , Desitination,…

  • 【Vyatta】config-syncに新たなルールを追加してconfig-sync errorを防ぐ

    やりたいこと 例えばファイアウォールのためにIPアドレスのグループを定義する以下の定義を # set resources group address-group group-name { address address description desc }config-sync機能で同期をかけたい。尚、同期設定は完了していることとする。 環境情報 Debian 4.19.150-0vyatta1 やり方 Config-syncを有効にした状態で新たなルールを有効化すると # set system config-sync sync-map SYNC rule 4 action include…

  • 【Vyatta】config-syncで片方のRouterに定義を同期して反映する

    はじめに VyattaではNETCONF Protocolという機構を利用してConfigをネットワーク越しに設定することができますが、冗長構成のVyattaではset system config-syncを用いることで片側でのcommit時に構成定義の同期が可能となります。本記事ではVRRP構成のVyattaを利用し、実際に確認しました。 環境情報 Debian 4.19.150-0vyatta1 1系側での設定 対向のIPアドレスを以下のように入れておき set system config-sync remote-router xx password '********' set syst…

  • 【Vyatta】片系のみVRRPのpreemptが有効化されている時の挙動

    確認したいこと VRRPが有効化なVyattaにて片系のみ # set interfaces bonding test0 vrrp vrrp-group 1 preempt trueとしている状態でMaster/Backupの切り替えを行うとどうなるのか。 環境情報 Debian 4.19.150-0vyatta1 確認結果 優先度が高い系でpreemptが有効化されている場合は対向側の有効化状況に拘わらずにMasterとなる。箇条書きにすると以下。 優先度が高いAでpreemptがtrueの場合 優先度が低いBのpreemptの状態に拘わらず、A側がBackupに入る挙動に入ってもA側がMa…

  • 【Vyatta】冗長構成としてのVRRPを有効化する流れ

    やりたいこと VyattaにてVRRPを有効化したい。 環境情報 Debian 4.19.150-0vyatta1 やり方 以下のように定義を入れた状態で set interfaces bonding test0 vrrp vrrp-group 1 disable set interfaces bonding test0 vrrp vrrp-group 1 preempt false set interfaces bonding test0 vrrp vrrp-group 1 priority XXX set interfaces bonding test0 vrrp vrrp-group 1…

  • 【IBMCloud/VRA】冗長構成のVyattaをオーダーする流れとその確認

    はじめに 冗長構成のVirtual Router Applianceをオーダーした際の流れとその確認結果を記事にしました。 尚、同情報は執筆(2022年)時点での確認結果となりますのでご了承ください。 環境情報 $ ibmcloud --version C:\Program Files\IBM\Cloud\bin\ibmcloud.exe version 2.1.1... オーダー確認 オーダー時には以下を指定した上でオーダーをすると Vendor : AT&T vRouter Hostname : xx High avaliability : ON Location : xx Pod : x…

  • 【Kubernetes/Dashboard】Error scraping node metricsというエラーの解消法

    事象 システムログに以下のメッセージが定期的に出力される。 ... journal: {"level":"error","msg":"Error scraping node metrics: the server could not find the requested resource (get nodes.metrics.k8s.io)","time":"..."}尚、以下記事のようにDashboardをインストールしている。 環境情報 dashboard/v2.4.0 原因/解決策 dashboard-metrics-scraperが起動しているが # kubectl get all -…

  • 【Redmine/API】curlコマンドでチケットのウォッチャーを追加する

    やりたいこと 以下で作成済のチケットに対してウォッチャーの追加を行いたい。 尚、APIアクセスキーは個人設定から確認済とする。 環境情報 curl 7.55.1 (Windows) libcurl/7.55.1 WinSSL やり方 ユーザIDを記載したJSONファイルを用意した上で $ cat test.json { "user_id": "XX" }curlコマンドのPOSTを利用してデータを送付する。尚末尾のプレフィックスにはissuesのidを入れる。 $ curl -X POST -H "Content-Type: application/json" -H "X-Redmine-AP…

  • 【IBMCloud】ClassicNetworkにおいて利用しているスイッチ情報を確認する

    やりたいこと IBM Cloudで利用しているクラシックインフラストラクチャにて使用している具体的なネットワーク機器情報を確認したい。 環境情報 $ ibmcloud --version C:\Program Files\IBM\Cloud\bin\ibmcloud.exe version 2.7.0+..-2022-04-28T... やり方 ブラウザにてアカウントにログイン後に Classic > Local Network Status を確認することで以下のようにホストに紐づくネットワーク機器が階層的に確認できる。 bcr01a.tok05.softlayer.com/Router b…

  • 【Bash/Linux/awk】awkの中でシェルの変数の中身を展開して利用する

    やりたいこと 以下のような変数が格納されているとして sport=baseball同変数を利用して以下のようなawkの処理を行いたい。 $ cat test.csv awk 'BEGIN{FS=","} $1 == "baseball" {print $0}'尚、上記は指定列での検索を行う構文。 環境情報 $ awk -W version mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan やり方 -vオプションにて変数を指定した上で$無しで利用する。 $ cat test.csv awk -F, -v sport="$sport…

  • 【Bash/Linux】シェルスクリプトのコメント業を用いてヘルプ機能を実装する

    やりたいこと 引数に--helpまたは-hが指定された場合にヘルプを出力したい。 尚、表示する内容はシェルスクリプトの中で先頭に#付きのコメント行として記載されていると仮定。具体的には以下ルールとする。 # test → 出力する #test → 出力しない ## test → 出力しない 環境情報 $ bash --version GNU bash, version 4.4.12(3)-release (x86_64-unknown-cygwin) やり方 シェルスクリプトの任意の箇所に以下を挿入させる。 if [ "$1" = "--help" ] [ "$1" = "-h" ] …

  • 【ibmcloud】アクセスグループに紐づくポリシー情報をCUIで確認する

    やりたいこと IBM Cloud CLI(コマンド・ライン・インターフェース)にて特定のアクセスポリシーに紐づく権限を確認する。 環境情報 $ ibmcloud --version C:\Program Files\IBM\Cloud\bin\ibmcloud.exe version 2.6.0... やり方 アカウントにログイン後に $ ibmcloud login ... Account: XX (xx) <-> YY以下コマンドでアクセスグループ名を付与してコマンド実行すると ibmcloud iam access-group-policies "XXX" --output JSON以下…

  • 【macOS】FFmpegを利用してVODファイルをMP4形式に変換する

    やりたいこと 拡張子がVODの映像をMP4に変換する。 尚、FFmpegはインストール済みでコマンドは打てる状態とする。 環境情報 macOS 10.15 ffmpeg version N-106666 the FFmpeg developers やり方 変換したいVOBに対して $ file VTS_01_1.VOB VTS_01_1.VOB: MPEG sequence, v2, program multiplexファイルのパスを-iで指定し、変換後のファイル名を指定すると sudo /Users/admin/xx/ffmpeg -i "VTS_01_1.VOB" VTS.mp4以下のよう…

  • 【Openshift】dataSourceによるPVC指定のバックアップがPending状態となる事象

    事象 作成済のPVCに対して $ oc get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE test-data Bound pvc-test-73e902635620 1Gi RWO XX ...pvc.spec.dataSource(RESOURCE: dataSource )を利用してクローンコピーを作成するもPVが作成されない。 $ oc get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE test-data Bound pvc-…

ブログリーダー」を活用して、社外SEくんさんをフォローしませんか?

ハンドル名
社外SEくんさん
ブログタイトル
社外SE技術日記(OUTPUT)
フォロー
社外SE技術日記(OUTPUT)

にほんブログ村 カテゴリー一覧

商用