サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
nopipi.hatenablog.com
はじめに Checkovとは ローカルPCでの使い方 インストール (留意事項)レベルアップ 静的解析のやりかた 静的解析の実行方法 指摘事項のスキップ方法(Terraformのオブジェクト単位) 指摘事項のスキップ方法(ルール単位) GitHub ActionsへのCheckovの組み込み はじめに Terraformコードのセキュリティーチェックを行う必要があり、IaC用の静的コード解析ツールであるcheckovをGitHub ActionsのCIに組み込んでみた時のメモです。 最初にcheckovをローカルで実行する場合のやりかたを説明して、最後にActionsへの組み込み方法を説明します。 Checkovとは Checkovは、Infrastracture as code(IaC)コード用の静的コード解析ツールです。Checkovを利用することで、セキュリティやコンプライアンスの問
はじめに AWS Secrets Managerとは ここでは説明しないこと アーキテクチャ 設定手順(SecretsManagerからの情報取得) SecretsManager用のKMSの鍵作成 新しいシークレットの作成 VPC PrivateLinkの作成 Private Link用のセキュリティグループを作成する Secrets Manager用のVPC PrivateLinkの作成 EC2インスタンスロール インラインポリシー*3 信頼関係ポリシー 作成ロールのSecretsManager用KMS鍵のキーユーザへの登録 APサーバ上のAWS CLI設定 APサーバでのシークレット情報取得テスト リソースポリシーでシークレット情報取得を許可するVPCを制限する リソースポリシーの設定 リソースポリシーのアタッチ*4 動作テスト 設定手順(ローテーションの設定) RDBのDB管理者ユー
RHEL7にdockerをインストールしようとして、二年前に確認した手順でセットアップしようとしたらうまくいかず、2時間ぐらい唸っていたら、いつの間にかRHUIがバージョンアップしてレポジトリ名称がごっそり変わっていたらしい。 access.redhat.com 変更例 以前のExtrasリポジトリ名称: rhui-REGION-rhel-server-extras 今のExtrasリポジトリ名称: rhel-7-server-rhui-extras-rpms もう無駄なところでハマるから、メジャーバージョンの中でこう言う変更するのやめてほしい。
こちらはAWS Containers Advent Calendar 2020の13日目の記事です。 本記事は個人の意見であり、所属する組織の見解とは関係ありません。 とてもこまか〜い話ですが、Amazon ECSのタスク定義設定ではCPUのリソース設定に関して以下の2つのパラメータがあります。この2つのパラメータがどんな挙動をするのか気になりましたのでドキュメントと実機での挙動確認から調べてみました。最後にOSレベルですが素潜りもしてみました。(時間があればcgroupのコードも確認したかったのですが時間がなく、残念) タスクサイズのCPU: タスクに使用される CPU量。 コンテナ定義レベルでのCPUユニット: コンテナ用に予約した cpu ユニットの数 長い記事になってしまったので調査結果の結論を先に行ってしまうと、以下の通りになりました。 コンテナのCPUユニットは、 各コンテナに
はじめに dnsmasqとは 作成する構成 RHEL8とRHEL7の違い RHEL8にdnsmasqを設定する 実行環境 設定手順 dnsmasqインストールと実行ユーザ設定 NetworkManagerの設定変更 再起動 動作確認 RHEL7にdnsmasqを設定する 実行環境 設定手順 dnsmasqインストールと実行ユーザ設定 dnsmasq設定ファイルの変更 dnsmasqのDNS参照先設定(/etc/resolv.dnsmasq) dnsmasqサービスの有効化 DHCPのDNSリゾルバー設定変更と反映 動作確認 dnsmasqのキャッシュ保持期間 はじめに AWS環境にRHEL8とRHEL7にdnsmasqを利用したDNSキャッシュを設定した時の手順メモです。ネットワーク設定にDHCPを利用している環境の場合、DHCPとの整合性を合わせる部分が鍵となります。 dnsmasqとは
はじめに 検証構成 環境構成概要図 データ構成 マスターデータ コピー先ディレクトリ構成 検証コード 環境準備 (1)AWSリソース準備 (2)インスタンス初期設定 (3)テスト用のマスターファイルの作成とS3アップロード (4)CSV生成pythonの設定ファイル作成 (5)ターゲット用CSV生成 検証-1 AWS CLIとpythonスクラッチプログラムの比較 検証概要 検証前提 検証手順 検証結果 検証-2 インスタンスタイプと並列度の検証 検証概要 検証前提 検証手順 検証結果 検証考察 (1) S3のスロットリング (2) KMSのスロットリング (3) 多重度とインスタンスの最適化 検証-3 200万ファイルのランニング検証とS3スロットリング対策 検証概要 検証前提 検証 3-(a) S3スロットリング対策:プレフィクスでの対策 検証 3-(b) 再実行による対策 まとめ 全
VPCのCIDRを"10.1.0.0/16"とした時のCIDR例。 私は検証用途での利用でIPが枯渇するほどインスタンスを起動するわけではなので、IPアドレス範囲をキツキツには設計していない。 ポイント Privateサブネットは少し大きめの19bitで切る。 Publicサブネットは、10.1.0.0/19の範囲をさらに24bitで切って利用する AZ間は間違えないように離れた番号を利用するようにアドレスを割り当てる サブネットのCIDR割り当て例 #大区分小区分項目CIDRIPアドレス範囲1PublicAZ-1PublicSubnet110.1.0.0/2410.1.0.1-10.1.0.2542未使用10.1.1.0/24 〜 10.1.15.0/2410.1.1.1-10.1.15.2543AZ-2PublicSubnet210.1.16.0/2410.1.16.1-10.1.16
はじめに Amazon Linux1&2の場合 概要 VPC Endpoint(S3)の設定 RHELの場合 概要 Forward Proxy設定 フィルタリング対象URL Forward Proxy設定 RHELのyumへのProxy設定 はじめに セキュリティなどの理由で、VPCからインターネットへの外の通信をさせないようにしている環境を想定した検証環境で、必要なパッケージ追加をしようとしてハマったのでまとめました。 結論 Amazon Linux : S3のVPC Endpointを設ける RHEL : ForwardProxy(URLフィルタリング)を利用する 変更履歴 2018.10.28 update: AL2の場合の設定がなかったので追記しました 2020.9.20 update: RHELのRHUIのURLが変更されていたのでアップデートしました。 2021.6.27 Am
Red Hat Developer Programのに参加すると、無料のRed Hat Enterprise Linuxサブスクリプションを取得することができます。RHELのを取得できるのも嬉しいですが、redhatの ナレッジベースを参照できるようになるのが嬉しいです。 ちなみに、この無償プログラムは2016/4から提供されています。 また2020/12には、16 システムまでのプロダクション環境での利用に拡張されています。 www.redhat.com (1)Red Hat Developer Programに参加してサブスクリプションを取得する こちらの記事にまとまっていたのでこちらは割愛します。 qiita.com (2)サブスクリプションの更新 Red Hat Developer Programのサブスクリプション"Red Hat Developer Subscription"は
会社でディスク(ブロックデバイス)とNFSの違いはという話題になったので、Linux kernelの中のブロクデバイス、NFS(ファイルシステム)、ネットワークの関係をざっくりしたポンチ絵に落としてみました。(簡素化するため箸折っていたり、そもそも私の理解が曖昧な部分もあるので、マジマジ見ると色々気になるかもしれないです) Linuxカーネルのブロックデバイス、ファイルシステム、ネットワークの位置付け 凡例 青色:共通インターフェース VFS(Virtual File system): ファイルシステムを抽象化している層 blk:正式な名称がわからないですが、ブロックデバイスを抽象化している層 socket:ソケット通信(networkは、ソケット通信で抽象化されている) 緑色:ファイルシステム 黄色:各プロトコル、またはハードに依存しない上位のデバイス 橙色:ハードウェアデバイス、または
1.はじめに 2.前提 3.netconsole serverを一時的に立てて取得 3.1 netconsole serverの準備 (1) security group設定 (2) ncatのパッケージインストール (3) ifconfigでネット設定を確認 (4)サーバ起動(フォアグランド実行) 3.2 netconsole client実行 (1)クライアントのネット設定を確認 (2)netconsoleのローディング 4.syslog serverでカーネルメッセージを取得する 4.1 rsyslogサーバの設定 (1)rsyslogにUDPでのListenを有効化 (2)設定の有効化 (3)設定確認 4.2 クライアント(netconsole)の設定 (1)送信先のsyslogサーバIPとポート設定 (2)netconsoleのサービスの再起動 5.reference 1.はじめ
0.関連記事一覧 1.はじめに 2.ネットワーク設定 (1)スタティック設定例 (2)DHCP設定例 3.ディスク設定 (1)ブートディスク構成例*1 (2)上記構成例の場合のKickStart設定 4.インストールパッケージ設定 5.ユーザ設定 (1)rootユーザのパスワード設定 (1)-(a)パスワードを平文で記載する場合 (1)-(b)暗号化したパスワードで記載する場合 (2)指定する暗号文字列をどうするか? (3)-(a)pythonで生成する (3)-(b)"/etc/shadow"からコピーする 6.その他 (1)GUI/textモードの指定 (2)selinux設定 (3)サービス設定 (4)KickStart完了後の挙動 7.設定ファイル例 0.関連記事一覧 KickStartによる自動インストールの説明 その1 KickStartによるOS自動インストールの全体の流れ
テストのために、AWSのAmazon Linuxのインスタンスをカーネルレベルでハングアップさせたかったので、テスト用のカーネルモジュールを作ってみました。 できること カーネルのハングアップ(ping応答もできないレベル。プリエンプションをdisableにして実現) 中途半端なハングアップ(ping応答は帰るレベル。リエンプションはenable) カーネルパニック(echo c > /proc/sysrq-triggerと同じ) 使い方 カーネルモジュールのビルド コードはGitHubにあります。 github.com (1) 必要なパッケージのインストール カーネルモジュールのビルドに、gccとkernel-develが必要になります。(Amazon Linuxの場合) sudo yum -y install git gcc kernel-devel(2) ソースコードをローカルに持っ
1.はじめに 2.VS Codeのセットアップ 2.1 VS Codeのインストール 2.2 コマンドラインからのVS Code設定 3.git連携 3.1 gitのセットアップ 3.2 git連携設定 4.gitを使ってみる 4.1 gitリポジトリをcloneする 4.2 VC Codeでgitリポジトリを開いて操作する 5.参考 1.はじめに 職場の人にコード何で書いてるか聞いたら、Visual Studio Code(以下、VS Code)を使っているという話しだったので、Macにセットアップしました。かつgit連携もしたのでメモっておきます。 関連記事 VSCodeでAWS CloudFormation(YAML)を作成する環境を整備する - のぴぴのメモ 2.VS Codeのセットアップ 2.1 VS Codeのインストール MicrosoftのページのMacセットアップ手順に
1.はじめに 1-1.この記事の要旨 1-2.(予習)メモリに関する指標とlinuxのメモリ挙動について 2.検証環境と検証方法 2-1.検証環境 2-2.検証方法 2-3.測定方法 (1)psコマンドによるVSZ,RSS情報の取得 (2)freeコマンドとmeminfo情報の取得 3.結果 3-1.全体の結果 3-2.プロセスのVSZ/RSS挙動 ポイント① malloc()した時の挙動→VSZのみ増加 ポイント② 1回目のデータread時→RSSは増えない ポイント③ データwrite→RSSが増加する 3-3.システムワイドな挙動(freeコマンド/meminfo) ポイント① malloc()した時の挙動→usedもAnonymousPageも増えない ポイント②1回目のデータread時→変化しない。 ポイント③ データwrite→used上昇、AnonymousPage上昇 4.
結論 タイトル通りですが、備忘録です。 CentOSやRHELで最小構成でインストールした場合、最小限のコマンドマニュアルしかなくて、man(2)、man(3)・・・は、入っていないのですね。 結論から言うと、そんな時は"man-pages"(日本語も必要な場合は、man-pages-jaを追加で)のパッケージをインストールするとman見れるようになります。 yum install man-pages man-pages-ja お世話になったページ おそらく同じ悩みをした人がいるとググってヒットした、こちらのページを参考にしました。 hyperneetprogrammer.hatenablog.com 記事は苦労が伺える内容になっていますが、結論だけ使わせていただきました。すみません。先人の方の努力に感謝します。 リンク先記事は、CentOS6.4ですが、RHEL7でも問題なくmanが使え
はじめに ツール説明 シェルスクリプト 使い方 出力結果 はじめに 昔作った/proc/meminfoを取得時刻情報取得スクリプトを改造して作った、freeコマンド+/proc/meminfoを取得して、CSV形式で出力するシェルスクリプトです。 nopipi.hatenablog.com ツール説明 シェルスクリプト 下記URL先のgistにあります。 collect memory information(free command and /proc/meminfo), and output in CSV format. · GitHub 使い方 シェルのファイルを配置して、"chmod +x collect_mem.sh"で実行権限を付与する。 実行する。(カレントディレクトリに、"meminfo.YYYYMMDDHHMMSS"形式で3秒間隔でデータが出力されます) 終了したい場合は、
1.はじめに 2.対処方法(古いkernelの削除) (1)現在のカーネルバージョンの確認 (2)インストール済みカーネルのバージョン一覧を確認 (3)コマンドをテスト実行確認(DryーRun) (4)パッケージを削除する (5)削除されたか確認 3.参考 1.はじめに ubuntuで「ソフトウェアの更新」で「/bootのディスク容量が足りない」と言われてしまった時の対処方法です。 ubuntuが結構頻繁にkernelの更新を行うようで、私は半年ぐらい周期で/bootが足りなくなります。 2.対処方法(古いkernelの削除) (1)現在のカーネルバージョンの確認 $ uname -r 4.4.0-59-generic (2)インストール済みカーネルのバージョン一覧を確認 現在利用中のカーネルバージョン(4.4.0-59)以外のバージョン(4.4.0-38、4.4.0-45、4.4.0-4
0.関連記事一覧 1.はじめに 2.ネットワーク構成例 2.1静的IP構成 (1)構成イメージ (2)KickStart設定例 2.2DHCP設定の場合 (1)構成イメージ (2)KickStart設定例 2.3複数セグメント設定 (1)構成イメージ (2)KickStart設定例 2.4VLAN設定 (1)構成イメージ (2)KickStart設定例 2.5bond設定(ネットワーク冗長化設定) (1)構成イメージ (2)KickStart設定例 2.6bond-vlan設定 (1)構成イメージ (2)KickStart設定例 2.7vlan-bond設定 (1)構成イメージ (2)KickStart設定例 3.参考 0.関連記事一覧 KickStartによる自動インストールの説明 その1 KickStartによるOS自動インストールの全体の流れ その2 ks.cfg設定ファイルの説明
0.関連記事一覧 1.はじめに 1.1KickStartとは 1.2ざっくりした使い方 2.利用手順 2.1ファイル(ks.cfg)の編集 2.2ファイル検証 2.3インストーラを起動しキックスタートをローディングする 2.4インストール完了 3.補足(kickstartファイルを読み込ませるベストプラクティス) (1)ネットワークが利用可能な環境の場合 (2)ネットワークが使えない場合 (2)-1 インストーラをカスタマイズする (2)-2 フロッピーから読み取る (2)-3 KicStartファイル専用のdvd(isoファイル)を準備して差し替える (2)-4 USBメモリor外付けHDDを利用する 4.リファレンス(kickstartドキュメント) 0.関連記事一覧 KickStartによる自動インストールの説明 その1 KickStartによるOS自動インストールの全体の流れ(この
はじめに ftraceを使うためのセットアップ (1)kenelのリビルド (2)debugfsの/sys/kernel/debugへのマウント (3)trace-cmdのインストール。 trace-cmdを使う 基本的な使い方(trace-cmdからコマンドを実行する) 実行中のプロセスのトレースを取得する はじめに 少し前にid:yohei-aさんに、Brendan Greggさんのfuncgraphを教わり、中身がシェルだったので、そのシェルでftraceの使い方が少し解りました。ありがとうございます。 funcgraph で Linux カーネル内のボトルネックをミクロに追跡する - ablog 今回は、funcgraphと同じ事をtrace-cmdコマンドで実現する方法をまとめます。(trace-cmdのfunction_graphを使います。) ftraceを使うためのセットア
squashfsとは squashfsのファイルシステムの作り方 squashfs用ツールのインストール squashfsファイルシステムの作成 squashfsファイルシステムのマウント fstabで自動マウント 追伸 squashfsとは squashfsとは、圧縮された読み込み専用のファイルシステムでLiveCD(CD/DVDブートして利用するOS)で利用されている。詳しくはwikipediaを見るのが手っ取り早いかと。 wikipedia:SquashFS squashfsのファイルシステムの作り方 squashfs用ツールのインストール squshfsなファイルシステムはmksquashfsコマンドを利用するが、CentOSなどではデフォルトでは入っていないため、個別にrpmパッケージ(squashfs-tools)インストールする必要がある。 # yum install squ
はじめに 先日の下記の記事で「RHEL6ではバックポートされてMemAvailableが使えるよ」という情報を頂いたので、追加で情報を整理しました。 nopipi.hatenablog.com RHEL6.6へのMemAvailableのバックポート MemAvailableは、RHEL6.6でバックポートされてました。というのも、ググったらredhatのナレッジ情報が出てきました。 詳細はログインしないと見れないのですが、MemAvailableは"kernel-2.6.32-504.el6"以上で利用可能とあり、このバージョンがRHEL6.6のカーネルバージョンになります。 Backport "MemAvailable" field to /proc/meminfo in Red Hat Enterprise Linux 6. - Red Hat Customer Portal 使い方
はじめに linuxのメモリ利用容量(空き容量)の考え方 linuxのメモリ利用容量/空き容量の計算方法 ■RHEL7 【freeコマンドとmeminfoの図解】 【計算方法】 freeコマンド表示例 /proc/meminfo表示例 ■RHEL6 【freeコマンドとmeminfoの図解】 【計算方法】 freeコマンド表示例 /proc/meminfo表示例 ■RHEL5以前 【freeコマンドとmeminfoの図解】 【計算方法】 freeコマンド表示例 /proc/meminfo表示例 蛇足 その1:無名ページとファイルページ その2:図解の内容のツッコミ その3:RHEL6の計算 その4:Inactiveを空き領域とすることは間違い。 はじめに linuxサーバを利用する上で何時も頭を悩ますものの一つが、メモリ利用状況の評価(メモリ利用率)ではないでしょうか。私も悩みます。そこで
sysctlのカーネルパニックオプション panicの整理 panic系パラメータの関係 それぞれのパラメータの挙動 kernel.panic kernel.panic_on_unrecovered_nmi kernel.unknown_nmi_panic kernel.panic_on_io_nmi kernel.panic_on_warn kernel.softlockup_panic kernel.hung_task_panic kernel.panic_on_stackoverflow vm.panic_on_oom sysctlのカーネルパニックオプション ちょいとカーネルパニックをどう設定すればよいかという話があって、ためしにsyscltをpanicでgrepすると、意外にというかpanicに関するパラメータがバラバラ出てきてどうすればよいかイマイチわからない。 # sysct
今までのやり方では展開されない [RHEL7/CentOS7/FC21]initramfsの展開方法 グーグルさんに聞いてみる 手順 バイナリ解析ツールのインストール initramfsの解析と展開 今までのやり方では展開されない 普通、initramfsの中身を展開する場合は、gunzipあたりとcpioを使って以下のようにするはず。 $ cd /tmp $ cp /boot/initramfs.img initramfs.gz $ gunzip initramfs.gz $ mkdir ramdisk $ cd ramdisk $ cpio -i -d -H newc --no-absolute-filenames < ../initramfsところが、最近のFedora/CentOS/RHELで上記をやると、これは「gzipじゃない!!」と怒られてしまう。 $gunzip initr
はじめに 作成の流れ 手順詳細 必要ファイルの作成 Makefile.am作成(後の作成/修正も可) autoscanコマンドの実行 configure.acファイルの作成&編集 aclocal実行以降 はじめに オープンソースでよくある、configure → make → make installというセットアップの流れ。これはGNUのautotoolsというツール&フレームワーク群により実現されている。 本記事ではそのautotoolsによりconfigureを作成する手順を説明する。 autotoolsの概要についてはこちら→Autotools - Wikipedia 作成の流れ 必要ファイルの作成(automake時に必要) Makefile.am作成(後の作成/修正も可) autoscanコマンドの実行 configure.acファイルの作成&編集 aclocal実行 auto
1.RHELメディアのマウント 2.yumレポジトリの設定 3.RHN接続の無効化(任意) 4.確認 1.RHELメディアのマウント 今回の例では、/mntにDVDをマウントする。 mount -t iso9660 -o ro /dev/cdrom /mnt 2.yumレポジトリの設定 /etc/yum.repos.d/に、xxx.repoというファイルを作る。(xxxは任意) /etc/yum.repos.d/mnt_rhel60.repo [rhel60_dvd] ※1 name=RHEL6.0(x86_64) DVD ※2 baseurl=file:///mnt/Server/ enabled=1 ※3 gpgcheck=1 ※4 gpgkey=file:///mnt/RPM-GPG-KEY-redhat-release ※5 ※1 : レポジトリ名(わかりやすい名前をつける) ※2
1.irqbalance概要 2.詳細 3.サービス起動可否の考え方 1.irqbalance概要 FedoraやRHEL,Suseなど多くのLinuxディストリビューションに標準実装されているデーモンで、マルチCPU環境において、IRQ割込み処理を複数のCPU間で負荷分散させることを目的としています。 2.詳細 Linux Kernelはデフォルトの状態では、CPU0のみでIRQ割込み(ハードウエアからの割込み要求)の処理を行います。しかしそれではIRQ割り込みが頻繁に発生する場合CPU0に負荷が偏りパフォーマンスが劣化する可能性があります。そこでマルチCPU環境でにおいてirqbalanceを導入することで、2nd CPU以降も割り込み処理を行えるようになります。 irqbalanceは、10秒毎に各CPUのIRQ割込み処理負荷状態状態に応じ、各CPUへのIRQ割込み処理の再配置をおこ
このページを最初にブックマークしてみませんか?
『nopipi.hatenablog.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く