tag:blogger.com,1999:blog-15400457082736924442024-03-11T08:19:48.945+09:00HA's memoHAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.comBlogger89125tag:blogger.com,1999:blog-1540045708273692444.post-29557147040368000182022-10-30T11:07:00.001+09:002022-10-30T11:07:52.847+09:00ASRock C236M WS障害<br />
マザーボードの(BIOS/UEFI)バッテリーが弱るとHDDアクセスが不安定になる場合があることを知りました。<br />
電源入れっぱなしのPCでマザーボードのバッテリーが原因で障害になるとは思いませんした。<br /><br />
サーバ運用しているASRock C236M WSにリモートログインが出来なくなり無反応な状態に。<br />
普段外しているディスプレイ、キーボードを接続するも無反応なので、強制電源断で再起動すると取り敢えずログインできるようになりました。<br /><br />
messagesログを見ると下記メッセージの記録後、同じメッセージが定期的に記録され
<pre class="brush: text">
kernel: ata11.00: exception Emask 0x10 SAct 0xc0 SErr 0x4000000 action 0xe frozen
kernel: ata11.00: irq_stat 0x80000040, connection status changed
kernel: ata11: SError: { DevExch }
kernel: ata11.00: failed command: WRITE FPDMA QUEUED
kernel: ata11.00: cmd 61/08:30:68:d2:b4/00:00:06:00:00/40 tag 6 ncq 4096 out#012 res 50/00:00:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
kernel: ata11.00: status: { DRDY }
kernel: ata11.00: failed command: WRITE FPDMA QUEUED
kernel: ata11.00: cmd 61/08:38:80:2f:13/00:00:61:00:00/40 tag 7 ncq 4096 out#012 res 50/00:00:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
kernel: ata11.00: status: { DRDY }
kernel: ata11: hard resetting link
kernel: ata11: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
kernel: ata11.00: configured for UDMA/133
kernel: ata11: EH complete
</pre>
1時間40分後に下記メッセージの記録を最後にストール状態になったようです。
<pre class="brush: text">
kernel: ata11.00: exception Emask 0x10 SAct 0x0 SErr 0x4000000 action 0xe frozen
kernel: ata11.00: irq_stat 0x80000040, connection status changed
kernel: ata11: SError: { DevExch }
kernel: ata11.00: failed command: FLUSH CACHE EXT
kernel: ata11.00: cmd ea/00:00:00:00:00/00:00:00:00:00/a0 tag 5#012 res 50/00:00:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
kernel: ata11.00: status: { DRDY }
kernel: ata11: hard resetting link
kernel: ata11: SATA link up 6.0 Gbps (SStatus 133 SControl 320)
kernel: ata11.00: configured for UDMA/133
kernel: ata11.00: retrying FLUSH 0xea Emask 0x10
kernel: ata11.00: device reported invalid CHS sector 0
kernel: ata11: EH complete
</pre>
エラーが出ていたata11(起動HDD)のSMART情報を確認するとエラー記録もなく、ディスクとしては問題なさそうな様子。<br /><br />
SATAケーブルがダメになったかな?などと考えながらその他ログなどを確認していると、I/Oエラーのメッセージが表示されシェルでコマンドを実行できなくなり、電源断再起動後にBIOS画面も出ない状態に。<br />
なんどか試すもBIOS画面が表示されたり、されなかったりでOSブートまで辿り着かず。<br />
これはマザーボードのバッテリー交換あるあるかなと思い、バッテリー交換するとGRUB画面まで進み一先ず復旧しました。<br />
<br />
不安定な状態で確認作業等をしていたため、ファイルシステムの不整合も起きたようで、/sysrootがマウントできずに起動失敗するようになっていました。<br /><br />
ブート時にシェルモードになり、dmesgで下記メッセージが表示されたので、lvscanでrootボリュームを調べ、xfs_repairを実行したところ失敗。<br />
起動ディスクだから失敗したのかなと、あまり考えずUSBブートイメージを作成してxfs_repairを実行し直しました。<br />
最終的にxfs_repairの-Lオプションを付けて実行したので、USBブートする必要なかったかもしれません。
<pre class="brush: text">
:
systemd[1]: Mounting /sysroot...
kernel: SGI XFS with ACLs, security attributes, no debug enabled
kernel: XFS (dm-0): Mounting V5 Filesystem
kernel: XFS (dm-0): Corruption warning: Metadata has LSN (720:28720) ahead or current LSN (720:28592). Please unmount and run xfs_repair (>= v4.3) to resolve.
kernel: XFS (dm-0): log mount/recovery failed: error -22
kernel: XFS (dm-0): log mount failed
mount[526]: mount: wrong fs type, bad option, bad superblock on /dev/mapper/ct-root
mount[526]: missing codepage or helper program, or other error
mount[526]: In some cases useful info is found in syslog - try
mount[526]: dmesg | tail or so.
systemd[1]: sysroot.mount mount process exited, code=exited status=32
systemd[1]: Failed to mount /sysroot.
systemd[1]: Dependency faild for Initrd Root File System.
systemd[1]: Dependency failed for Reload Configuration from the Real Root.
:
</pre>
しばらく様子見が必要ですが、マザーボードのバッテリー交換だけで今のところ復旧した感じです。<br />
まさか、起動時だけでなく起動している状態でもマザーボードのバッテリー状態が影響するとは思いませんでした。<br /><br />
ちなみに外したバッテリーの電圧は、無負荷状態では3Vありました。
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-8663998229817091292022-04-28T07:35:00.000+09:002022-04-28T07:35:21.533+09:00ScanSnap iX1300購入ScanSnap iX1300を購入しました。</br>
郵便物や数枚程度の書類の整理に使おうと思っていたのですが、使ってみると面白くて数冊雑誌も裁断してスキャンしてみました。</br></br>
コンパクトなエントリーモデルなので大量の本のスキャンは向かなそうですが、一度に数冊程度であれば使えそうな感じです。</br>
いわゆる自炊的なことをするつもりはなかったのですが、見返すことはないと思いつつ捨てられずにいる雑誌や本を整理するのもいいかもと興味が出てきました。</br>
もっともカッターでの裁断は手間がかかりすぎなので、自炊するなら裁断機が欲しいところです。HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-7715926718218970432022-02-01T19:25:00.002+09:002022-02-01T19:28:10.227+09:00IX2207でBIGLOBEのIPv6オプション接続中古のIX2207を購入したのでファームウェアを最新に上げ、NECの技術情報サイトにあるサンプルを参考に設定してみました。</br></br>
接続自体は問題なくできたのですが、IPv4通信(MAP-E)の速度が100Mbps以下になってしまいました。</br>
https://www.speedtest.net/やhttps://fast.com/で下り300~600Mbpsだったものが、平均80Mbpsで良くて100Mbpsと大幅ダウン。</br></br>
我が家はフレッツ光でBIGLOBEのIPv6オプション回線なのですが、http://www.speed-visualizer.jp/の結果を見ると、IPv6通信のほうは以前と変わらずか若干よくなっている感じでIPv4通信の方だけ劣化したようです。</br>
WiFiルーター二台構成でIPoEとPPPoEを併用していたので、IX2207一台構成にしようと目論んでいたのですが…。</br>
</br>
結局、IX2207一台でIPoEとPPPoEの併用はうまく動作しましたが、PPPoE用のWiFiルーターをIX2207に置き換えただけになりました。</br>
チューニング項目もなさそうなので、BIGLOBEとIX2207との相性的な問題なんでしょうか?</br>
ドキュメントを見ると対応しているようですし、特に制限事項も記載がなかったので大丈夫だと思っていたのですが。</br>
中古なのでサポートに聞くわけにもいかず、また他回線もないので調べようがなく残念です。
</br></br>
参考)</br>UNIVERGE IXシリーズ 技術情報 <a href="https://jpn.nec.com/univerge/ix/Support/ipv6/v6plus-mape/index.html#ipv6pdra">設定例1 v6プラス(MAP-E方式)の設定 - DHCPv6-PD/IPv6 RA 自動判別</a>HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-9316872706102409612022-01-29T14:07:00.000+09:002022-01-29T14:07:31.340+09:00Mac mini購入Apple M1チップ搭載のMac mini(M1,2020)を購入しました。</br>
Late 2012モデルを利用していましたが、最新のmacOS要件から外れて久しいのでそろそろかなと。
悩んだ末、スペックはメモリ16GB,SSD 512GB,10GbEとし、Touch ID搭載のMagic KeyboardとMagic Mouseも購入。</br>
新型はキータッチがイマイチなような気が…、A1314は気に入っていたので慣れかな。HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-39129558229105284162021-01-23T10:49:00.000+09:002021-01-23T10:49:05.932+09:00raidz2のST4000DM004交換昨年12月にHDDを一台交換したraidz2(ST4000DM004:7台+WD40EZRZ:1台構成)ですが、また一台のHDDでCurrent_Pending_Sector, Offline_Uncorrectableが発生しました。<br />
数日様子見して数値の増加はありませんでしたが、二桁だったので交換することに。<br />
今回も前回と同じくWD40EZRZと入れ替えました。<br /><br />
稼働23,353時間で交換となりました。<br />
今のところST4000DM004の8台中4台が3年未満で故障となっています。<br />
ST3000DM001よりも故障が早いかな?と言う気がします。<br />HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-43227214029296202912020-12-31T11:04:00.000+09:002020-12-31T11:04:34.634+09:00Supremicro X11SDV-4C-TP8F購入X11SDV-4C-TP8Fを購入してしまいました。<br />
今年は家にいる時間が長いからかPCパーツをたくさん買ってしまったなぁ。<br />
<br />
TDP 60WのXeon D-2123IT搭載なので省電力を期待していたのですが、結果はいまいちでした。<br />
M2 SSDを一枚、メモリ32GBx2搭載状態で電源OFF時で16W、電源ON後15分程度経過した状態56Wという感じです。<br />
BMCで15Wも消費しています。ASRock Rack X470D4UではBMC消費電力が3.5W程度だったのでかなり大食いな印象です。<br /><br />
X470D4U, X570M Pro4と同様にESXi6.7をインストール後省電力設定、BIOSでも省電力設定を行い、PCIeボード2枚とHDDを8台追加した構成のアイドル状態で80W程度となりました。X470D4U, X570M Pro4では上記に10G NIC(PCIe)を追加した構成で60W程度まで設定できていたので20Wの差です。<br />
BMCの消費電力差12.5Wを引くと7.5W、10Gポートが2つ、SATAポートが4つ増えているのでこんなものかなと言う気がしなくも無いですが…。
普段停止しておくにしても待機状態で16W消費とかもったいない感じがします。<br />
BIOSでもう少し設定詰められると良いのですが。<br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-38549556773418281242020-12-28T00:13:00.000+09:002020-12-28T00:13:03.646+09:00raidz2のST4000DM004をWD40EZRZに交換今年6月にHDD二台が故障したraidz2(ST4000DM004の8台構成)ですが、scrubを実行したところread failとなるHDDが二台出てしまいました。<br />
うち一台は一時的なものだったようですが、他方は下記の感じでCurrent_Pending_Sector, Offline_Uncorrectableが3桁台に…。
8台中3台が3年未満で故障とは。<br />
<pre class="brush: text">
# smartctl -A /dev/sdf
smartctl 7.0 2018-12-30 r4883 [x86_64-linux-3.10.0-1160.6.1.el7.x86_64] (local build)
Copyright (C) 2002-18, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 059 055 006 Pre-fail Always - 10386248
3 Spin_Up_Time 0x0003 096 096 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 96
5 Reallocated_Sector_Ct 0x0033 100 100 010 Pre-fail Always - 0
7 Seek_Error_Rate 0x000f 087 060 045 Pre-fail Always - 513462226
9 Power_On_Hours 0x0032 075 075 000 Old_age Always - 22634 (210 239 0)
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 96
183 Runtime_Bad_Block 0x0032 099 099 000 Old_age Always - 1
184 End-to-End_Error 0x0032 100 100 099 Old_age Always - 0
187 Reported_Uncorrect 0x0032 088 088 000 Old_age Always - 12
188 Command_Timeout 0x0032 100 099 000 Old_age Always - 2 3 3
189 High_Fly_Writes 0x003a 100 100 000 Old_age Always - 0
190 Airflow_Temperature_Cel 0x0022 068 045 040 Old_age Always - 32 (Min/Max 27/45)
191 G-Sense_Error_Rate 0x0032 100 100 000 Old_age Always - 0
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 935
193 Load_Cycle_Count 0x0032 099 099 000 Old_age Always - 2628
194 Temperature_Celsius 0x0022 032 055 000 Old_age Always - 32 (0 20 0 0 0)
195 Hardware_ECC_Recovered 0x001a 070 064 000 Old_age Always - 10386248
197 Current_Pending_Sector 0x0012 098 098 000 Old_age Always - 720
198 Offline_Uncorrectable 0x0010 098 098 000 Old_age Offline - 720
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
240 Head_Flying_Hours 0x0000 100 253 000 Old_age Offline - 21826h+07m+03.803s
241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 14648100184
242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 28880173058
</pre>
longtestでもエラーとなり、smartdもsyslogにメッセージを出すようになったので交換しました。<br />
Reallocated_Sector_Ctが0のままなんですが、こう言うものなんでしょうか。<br />
SMARTの情報ってイマイチ見方が分からないんですよね。<br /><br />
さて、前回交換時は多重障害になってしまいましたがresilverに数日かかったので、今回はCMRのものを試そうとWD40EZRZに変えてみました。<br />
たまたまセール中にあたりST4000DM004より安く買えたのでお財布にも優しくラッキーでした。<br /><br />
で、resilverにかかった時間ですが、17時間弱で完了しました。<br />
私の用途ではST4000DM004でも普段使っている時は全く問題ないんですけど、resilverなど長時間書き込みが発生すると影響が出てしまうような感じです。<br />大容量で安いCMRのHDDって無いんですよね。
<pre class="brush: text">
# zpool status
pool: tank
state: ONLINE
scan: resilvered 3.27T in 0 days 16:47:29 with 0 errors on Sun Dec 27 03:04:23 2020
config:
NAME STATE READ WRITE CKSUM
tank ONLINE 0 0 0
raidz2-0 ONLINE 0 0 0
ata-ST4000DM004-2CV104_aaaaaaaa-part1 ONLINE 0 0 0
ata-ST4000DM004-2CV104_bbbbbbbb-part1 ONLINE 0 0 0
ata-ST4000DM004-2CV104_cccccccc-part1 ONLINE 0 0 0
ata-ST4000DM004-2CV104_dddddddd-part1 ONLINE 0 0 0
ata-ST4000DM004-2CV104_eeeeeeee-part1 ONLINE 0 0 0
ata-WDC_WD40EZRZ-22GXCB0_WD-ffffffffffff-part1 ONLINE 0 0 0
ata-ST4000DM004-2CV104_gggggggg-part1 ONLINE 0 0 0
ata-ST4000DM004-2CV104_hhhhhhhh-part1 ONLINE 0 0 0
errors: No known data errors
</pre>
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-12783764527471831562020-12-05T19:47:00.001+09:002020-12-05T19:50:39.234+09:00送信者アドレスで接続先MTAを変更してSMTPSとSMTP認証を使用するいくつかのISPのメールアドレスを利用しているのですが、受信はISPの転送設定を利用してVPSのMTAに集め、送信はISPのメールサーバを利用せずにVPSのMTAを経由させて直接配送していました。<br /><br />
MUAでFromアドレス毎にISPのメールサーバを指定するのが面倒なので、このように利用していたのですがDMARCも普及してきているようなので正しくISPのメールサーバを経由させるように設定変更することにしました。<br /><br />
まあ、なりすましメールと同じなので仕方ないですが、SPFの認証結果は気にはなっていたけど面倒なので長年放置していたと言う感じです。<br />
ちなみに独自ドメインについては一応SPF設定はしてありますが、こちらのアドレスでメールを送信することはほとんどありません。<br /><br />
前置きが長くなりましたが、環境と条件は下記になります。<br />
<ul>
<li>CentOS 8.2</li>
<li>postfix 3.3.1</li>
<li>Envelope FromがISPのメールアドレスの場合は、ISPのメールサーバを経由する。</li>
<li>上記以外のメールアドレスの場合は、直接配送する。</li>
<li>ISPのメールサーバは、SMTP over SSLで認証(SMTP Auth)ありとする。</li>
</ul>
まずは、/etc/postfix/main.cfに下記の設定を追加します。
<pre class="brush: text">
sender_dependent_default_transport_maps = hash:/etc/postfix/sender_dependent_transport
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/password_maps
smtp_sasl_security_options = noanonymous
</pre>
クライアントサイドのSMTP Auth有効化と、送信者アドレスによるtranspot mapの定義を行っています。<br />
次にsmtp_sasl_password_mapsに指定した/etc/postfix/password_mapsを下記の形式で記述します。<br />
<pre class="brush:text">
[ISPメールサーバ]:ポート アカウント名:パスワード
</pre>
ファイルの作成後、postmapコマンドでハッシュファイルを作成します。<br />
password_maps, password_maps.dbはプレーンなパスワード情報を含むため、rootのみ参照可能に設定します。<br />
例えば、下記のようになります。<br />
<pre class="brush:text">
# cd /etc/postfix
# cat password_maps
[mail.example1.com]:465 foo@example1.com:password1
[mail.example2.com]:465 var@example2.com:password2
#
# postmap hash:password_maps
# chmod og-rxw password_maps*
</pre>
sender_dependent_default_transport_mapsに設定した/etc/postfix/sender_dependent_transportは下記の形式で記述します。<br />
<pre class="brush:text">
メールアドレス relay-smtps:[ISPメールサーバ]:ポート
</pre>
こちらもファイルの作成後、postmapコマンドでハッシュファイルを作成します。<br />
例えば、下記のようになります。<br />
<pre class="brush:text">
# cat sender_dependent_transport
foo@example1.com relay-smtps:[mail.example1.com]:465
var@example2.com relay-smtps:[mail.example2.com]:465
#
# postmap hash:sender_dependent_transport
</pre>
relay-smtpsサービスを指定しているのがポイントになります。<br />
次に/etc/postfix/master.cfに下記のようにrelay-smtpsサービスを追加します。<br />
<pre class="brush:text">
relay-smtps unix - - n - - smtp
-o smtp_tls_security_level=encrypt
-o smtp_tls_wrappermode=yes
</pre>
設定後、postfixを再起動すれば完了です。<br />
これで通常は適宜STARTTLSを使用し直接配送、設定したメールアドレスの場合はSMTPS(SMTP over SSL)を使用し各ISP経由で配送するようになります。<br /><br />
最後にsyslogに下記のメッセージを出し認証に失敗する場合は、SMTP Authの認証メカニズムが不足しているのでSASLのパッケージを追加します。
<pre class="brush:text">
warning: SASL authentication failure: No worthy mechs found
</pre>
恐らくcyrus-sasl-md5, cyrus-sasl-plainパッケージをインストールすれば解決するはずです。<br />
認証アルゴリズムは、CRAM-MD5, DIGEST-MD5, PLAINがあれば問題ないかと思います。<br />
<br />
参考)<br />
<a href="http://www.postfix.org/postconf.5.html#sender_dependent_default_transport_maps"> Postfix Configuration Parameters: sender_dependent_default_transport_maps</a><br />
<a href="http://www.postfix.org/TLS_README.html#client_smtps">Postfix TLS Support: Sending only mail for a specific destination via SMTPS </a>
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-5800572184095278502020-12-05T19:12:00.000+09:002020-12-05T19:12:29.203+09:00iPad Air 4購入iPad Air 2を愛用してきましたが、iPad Air 4を購入してしまいました。<br />
調べるとiPad Air 2は2014年12月に購入していました。<br />
丸6年毎日使ってきたので一番使い込んだ機器かもしれません。<br /><br />
性能的には全く問題なかったのですが、ストレージが手狭になったのとバッテリーがへたってきたので新モデルを購入しましたが、バッテリー交換してもう少し使ってやればよかったかな…と思わなくもないです。
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-44485171210242545122020-10-11T21:09:00.000+09:002020-10-11T21:09:22.972+09:00お名前.comのVPSDNS、メールサーバとして利用しているVPSで障害が発生していた。<br/>
Webの障害情報で復旧完了のアナウンス後も、管理画面でメンテナンス中となり何も操作できない、問合せの回答もないなどイマイチな対応だった。<br />
<br />
結局、復旧時刻から4時間程度遅れてサービス再開した感じである。24時間以上のサービス停止、また管理画面からVPSの電源を入れても起動しなかったので中身は空っぽになってしまったようでデータ全損。<br />
<br />
DNS/メールサービス自体は、他業者のVPSと冗長構成を組んでいるので影響ないのですがOSからの再構築はかなり面倒くさい。<br/>
それにしても障害自体は仕方がないと思うのですが、障害時に正確な情報開示と進捗状況の適宜開示が出来ないのは何故なんですかね。<br/>
かなり長期の利用でしたが次回更新はないかな。
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-21250278740847245342020-08-22T18:24:00.000+09:002020-08-22T18:24:27.760+09:00fail2ban on CentOS8先日CentOS8化したメール中継サーバですが、firewalldとipsetをCentOS7の
<a href="https://octais.blogspot.com/2018/06/firewalld-and-ipset-on-centos7.html" target="_blank"> この記事 </a>
と同じようにpublic, domesticゾーンを利用するように設定していました。<br /><br />
sshとsmtp-submissionは国内IPのみ許可するように設定したのでそれほどでもないのですが、smtpはIP制限することもできず鬱陶しいアクセスが多く辟易してきたので対処することにしました。<br />
<br />
CentOS6の時は、iptablesでルールを書いていたりしましたが今回はfail2banを利用します。<br />
firewall-cmdとipsetを使用する場合は、以下のようになります。<br />
<pre class="brush: text">
# dnf install fail2ban
# cat << EOF > /etc/fail2ban/jail.local
[DEFAULT]
banaction = firewallcmd-ipset[actiontype=<multiport>]
banaction_allports = firewallcmd-ipset[actiontype=<allports>]
bantime = 604800
findtime = 86400
maxretry = 3
[sshd]
enabled = true
[postfix]
enabled = true
mode = aggressive
maxretry = 2
EOF
#
# cat << EOF > /etc/fail2ban/action.d/firewallcmd-common.local
[Init]
blocktype = DROP
EOF
#
</pre>
これで、sshdとpostfixの不正アクセス対策が動作します。<br />
動作状況は下記のようにfail2ban-clientコマンドで確認できます。<br />
<pre class="brush: text">
# fail2ban-client status
Status
|- Number of jail: 2
`- Jail list: postfix, sshd
#
# fail2ban-client status postfix
Status for the jail: postfix
|- Filter
| |- Currently failed: 5
| |- Total failed: 90
| `- Journal matches: _SYSTEMD_UNIT=postfix.service
`- Actions
|- Currently banned: 18
|- Total banned: 31
`- Banned IP list: x.x.x.x y.y.y.y .......
#
</pre>
nftablesやipsetの定義は下記のように、iptables、ipsetコマンドで確認できます。<br />
<pre class="brush: text">
# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 22 match-set f2b-sshd src
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 25,465,587 match-set f2b-postfix src
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
#
# ipset --list --name
f2b-postfix
DOMESTICv4
DOMESTICv6
f2b-sshd
#
# ipset --list f2b-postfix
Name: f2b-postfix
Type: hash:ip
Revision: 4
Header: family inet hashsize 1024 maxelem 65536 timeout 600
Size in memory: 1944
References: 1
Number of entries: 18
Members:
x.x.x.x timeout 342227
y.y.y.y timeout 214654
~
#
</pre>
f2b-xxxがfail2banで作成されたipsetです。<br />
ipsetのDOMESTICv4は、firewalldのdomesticゾーンに紐づけています。<br />
本サーバでは、IPv6のアドレスをアサインしていないのでDOMESTICv6は未使用です。<br />
<br />
上記設定で暫く運用していたのですが、smtpポートアクセスで遮断できないものが多かったのでpostfix用フィルターを下記のように改造してみました。<br />
<pre class="brush: text">
# cd /etc/fail2ban/filter.d
# diff -uw postfix.conf.original postfix.conf
--- postfix.conf.original 2020-04-16 21:41:47.000000000 +0900
+++ postfix.conf 2020-08-10 21:45:56.232418891 +0900
@@ -44,9 +44,13 @@
mdre-extra = %(mdre-auth)s
%(mdre-normal)s
-mdpr-aggressive = (?:%(mdpr-auth)s|%(mdpr-normal)s|%(mdpr-ddos)s)
+mdpr-ddos2 = disconnect from
+mdre-ddos2 = ^unknown\[<HOST>\].+commands=\d/\d
+
+mdpr-aggressive = (?:%(mdpr-auth)s|%(mdpr-normal)s|%(mdpr-ddos)s|%(mdpr-ddos2)s)
mdre-aggressive = %(mdre-auth2)s
%(mdre-normal)s
+ %(mdre-ddos2)s
mdpr-errors = too many errors after \S+
mdre-errors = ^from [^[]*\[<HOST>\]%(_port)s$
</pre>
逆引きが出来ず、かつ必要なコマンドを発行していない接続は大体検知出来ています。<br />
漏れはありますが9割以上遮断できているので一先ず良しとしています。<br />
<br />
sshdのアクセス制限については、TCP Wrapperが利用できなくなり不便になりました。<br />
ipsetとhosts.allowを併用して許可IPを絞り込んでいたのですが、良い代替方式が見つかりません。<br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-37282842058154146302020-08-09T13:45:00.000+09:002020-08-09T13:45:03.601+09:00MikroTik CRS326-24G-2S+IN購入eurodkで購入。送料込みで$200以下、発送も速くてとても良い。<br /><br />
<ul>
<li>MikroTik CRS326-24G-2S+IN : 24 Gigabit ports, 2 SFP+</li>
</ul>
<br />
以前購入したMikroTik CRS309-1G-8S+INと筐体サイズが同じでいい感じです。<br />
「server room power for your home!」とのこと。<br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-44523015813858462020-08-09T12:26:00.000+09:002020-08-09T12:26:01.056+09:00postfixのメール中継設定メール中継サーバで利用しているCentOS6のEOLが迫ってきたので、CentOS8に入れ替えました。
その際にpostfixのメール中継サーバ設定で少しはまったのでメモしておきます。<br /><br />
結論から言うと「パラメータのデフォルト値が変わっているのでマニュアルを確認しよう」です。<br />
<br />
CentOS8ではpostfix 3.3.1がインストールされますが、compatibility_levelの設定値によりパラメータのデフォルト値が変わります。<br />
postconfの出力からcompatibility_levelを抜き出すと、下記になります。<br />
<pre class="brush: text">
# postconf | grep compatibility_level
append_dot_mydomain = ${{$compatibility_level} < {1} ? {yes} : {no}}
compatibility_level = 2
mynetworks_style = ${{$compatibility_level} < {2} ? {subnet} : {host}}
relay_domains = ${{$compatibility_level} < {2} ? {$mydestination} : {}}
smtpd_relay_restrictions = ${{$compatibility_level} < {1} ? {} : {permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination}}
smtputf8_enable = ${{$compatibility_level} < {1} ? {no} : {yes}}
#
</pre>
デフォルトのmain.cfでは、compatibility_levelが2に設定されています。<br />
このためrelay_domainsのデフォルトが空となり、リレーが許可されません。<br />
リレーを許可するには、明示的にrelay_domainsを設定する必要があります。<br />
また、これらパラメータを参照しているパラメータも影響を受けるので注意が必要です。<br />
<br />
今回のリプレースでは旧サーバの設定ファイルをコピーせず、デフォルトの設定ファイルから書き直しました。
main.cf内のコメントを読みながら設定していて「The default relay_domains value is $mydestination.」と記載があったため、旧バージョンと同じと考えてしまい、リレーできない原因が分からず暫くはまりました。<br />
<br />
マニュアルにはバッチリ記載がありましたので、横着せずマニュアルを確認しようと言うことかと思います。
ちなみにcompatibility_levelのデフォルトは0なので、旧サーバの設定をコピーした場合は挙動が変わることはなかったようです。<br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-66787167409181117922020-06-17T21:34:00.001+09:002020-06-17T21:34:53.096+09:00ASRock Rack X470D4U購入ESXiで利用しているPC(ASRock X570M Pro4)は、GPUパススルーのVMでwindows 10を使用してデスクトップPCのように使用しようと考えていたのですが、windowsの利用頻度に対して消費電力が高すぎることに気がつきました。
大体100W強なので省電力化したい。<br /><br />
BIOSやESXiの設定をいじってみたのですがイマイチ効果がでず、結局GPUを外すことにしました。
省電力GPUも検討しましたが、ASRock Rack X470D4Uを購入してしまいました。<br /><br />
マザーボードを入れ替えて大体70W程度、AMDのCPU特性なのか大して負荷をかけなくても消費電力が細かく変動するようです。
70Wから100W位を行き来して、大体70W中位という感じ、60W以下にしたかった。<br />
あとは、VMがほぼアイドル状態でもデータストアには常に書き込みがあるようで、HDDがアイドルにならないことが消費電力に影響しているように思います。8台のHDDが常に書き込み状態となるので。<br />
HDDはデータ置き場にして、データストアはSSDに置きたい気もしますが、安物のSSDだと耐久性が心配、エンタープライズ向けは高すぎて手が出ない。<br />
<br />
ちなみに、X470D4Uは国内在庫がなく納期1.5ヶ月以上とのことだったので、amazon.comから買いました。
5日で届いたので国内通販とたいして変わりません。初期不良があると面倒ですが。<br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-86402517052008070112020-06-12T19:35:00.000+09:002020-06-12T19:35:27.163+09:0010Gbps Network10GBASE-Tの2ポートスイッチGS110MX-100NASを使用していますが、10Gbps接続を増やしたくなり下記を購入しました。<br />
<br />
ラトビアから<br />
<ul>
<li>MikroTik CRS309-1G-8S+IN : Cloud Router Switch (SFP+ 8port)</li>
<li>MikroTik S+RJ10 : SFP+ RJ45 10Gbps Module</li>
</ul>
シンセンから<br />
<ul>
<li>10Gtek X520-10G-2S-X8 : SFP+ 2port, Intel X520-DA2 equivalent</li>
<li>10Gtek XL710-10G-2S-X8 : SFP+ 2port, Intel X710-DA2 equivalent</li>
<li>10Gtek ASF-10G-T : SFP+ RJ45 10Gbps Module</li>
</ul>
10GBASE-Tの多ポートスイッチはまだ高いので、今回はSFP+で揃えました。<br />
MikroTikと10GtekのそれぞれからSFP+ DAC twinaxケーブルも買いましたが、どちらも問題なく利用できています。<br />
また、10GtekのNICはどちらもESXi 6.7で問題なく認識したので、XL710-10G-2S-X8をESXiで、X520-10G-2S-X8はLinuxで利用予定です。<br /><br />
CRS309-1G-8S+INの電源ランプがすごく眩しいので、テープを貼って使用しています。<br />
何でこんなに強烈な明るさにするのか不思議です。
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-65184117306484041262020-06-12T16:14:00.000+09:002020-06-20T13:19:51.617+09:00raidz2のST4000DM004交換raidz2(ST4000DM004の8台構成)で運用中のHDDが一台、I/Oエラー頻発ということなく突然死という感じで故障しました。<br />
他HDDのSMART情報から大体17740時間で壊れたようです。<br /><br />
予備と交換してresilver中にもう一台壊れました...。<br />
たまたま二台とも故障時にPCの近くにいましたが、どちらも突然カッコン、カッコンと嫌な音を立てたあと鳴り止み御臨終です。<br />
どちらもSMART情報も取れない状態。<br /><br />
まだ、1台目のresilverが完了していない状況ですが、zpool statusで進捗を確認するとDEGRADED状態のHDDが1台発生。<br />
こちらはSMART情報が取れたので確認するとエラーが記録されていました。<br />
何とか完了まで持ち堪えて欲しい。<br /><br />
初ST4000DM004ですが、2年で二台故障、一台エラー発生と耐久性が低いような感じがします。<br />
<br />
2020/6/20追記)<br />
一台目のresilver中に全HDDがDEGRADEDステータスになりヒヤッとしましたが、リブート後無事再開することができました。<br />
一台目のresilver完了後に、二台目のHDDを入れ替えresilverを開始しましたが何方も6日程度時間がかかり、およそ12日で復旧となりました。<br /><br />
処理時速度は、resilver開始後に暫くして3桁MB/sになるも、直ぐに70MB/s程度になり徐々に減速し終了間際は52MB/s程度になり非常に低速です。<br />
SMRが原因と思われるので、次に入れ替える時はCMRを選んでみようと思います。
4TBのHDD入れ替えで6日は、厳しいかなと思います。<br />
ちなみに、プールの使用率は90%程度で空きが1.5TB程度ある状態、正常時の書き込みが激遅になっていないので、空き容量としては許容範囲かなと考えています。<br /><br />
Seagate BarraCudaはコスパが良くて気に入っていたのですが、SMRとzfsの相性はやはり悪そうです。<br />
普段利用している時は特に不都合は感じないのですが、resilverの長時間書き込みではデメリットが顕著になるように感じました。<br /><br />
最近組んだPCのHDDもBarraCudaなのでSMRなんですよね、しかも6TBにしてしまいました。
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-51142938910828355322020-05-16T18:13:00.000+09:002020-05-16T18:13:30.425+09:00Ascork X570M Pro4のオンボードUSBホストコントローラとUSBポートESXi 6.7でAsrock X570M Pro4のオンボードUSBホストコントローラをパススルー利用するため、USBホストコントローラとUSBポートの対応を調べました。<br />
<br />
下記、lspciの実行結果。
<pre class="brush: text">
[root@esxi:~] lspci |grep -i usb
0000:08:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:0d:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
root@esxi:~] lspci |grep 0000:0[8d]
0000:08:00.0 Non-Essential Instrumentation: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP
0000:08:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:0d:00.0 Non-Essential Instrumentation: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP
0000:0d:00.1 Encryption controller: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Cryptographic Coprocessor PSPCPP
0000:0d:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:0d:00.4 Audio device: Advanced Micro Devices, Inc. [AMD] Starship/Matisse HD Audio Controller
</pre>
PCIとUSBポートの対応は下記になります。
<br />
<ul>
<li>0000:08:00.1 マザーボード上のUSB2ヘッダ</li>
<li>0000:08:00.3 下図リアパネルの赤枠+マザーボード上のUSB3ヘッダ</li>
<li>0000:0d:00.3 下図リアパネルの青枠</li>
</ul>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX0AbcTY-THDoOwl-HFXwmP_mx1949a6Ms8UAJFC0TdboR3HdwlDWio_93B1ag_ENuYUMIIk7itRpejW4DS-flFioTgMPTqjC0LUIH0LeBu9OmZGwrDmyxTfrNqtHJBvEtgGi7RVhkfawV/s1600/X570M_Pro4_rear_panel.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="178" data-original-width="567" height="100" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX0AbcTY-THDoOwl-HFXwmP_mx1949a6Ms8UAJFC0TdboR3HdwlDWio_93B1ag_ENuYUMIIk7itRpejW4DS-flFioTgMPTqjC0LUIH0LeBu9OmZGwrDmyxTfrNqtHJBvEtgGi7RVhkfawV/s320/X570M_Pro4_rear_panel.png" width="320" /></a></div>
<div style="text-align:center">リアパネル (画像はAsrockのX570M Pro4の製品ページより)</div><br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-74242053302268031662020-05-14T22:24:00.000+09:002020-05-16T18:11:38.162+09:00ESXi 6.7でオンボードUSBホストコントローラのパススルーAsrock X570M Pro4のオンボードUSBホストコントローラをESXi 6.7でPCIパススルーできました。<br />
<br />
当初、PCIパススルー設定をして仮想マシンを起動すると、下記メッセージが表示されパワーオンに失敗していました。<br />
<br />
<blockquote class="tr_bq">
モジュール「DevicePowerOn」のパワーオンに失敗しました。<br />
ハードウェアまたはソフトウェアのサポートが使用できないため、デバイス pciPassthru0 の 13:0.3 への登録に失敗しました。<br />
仮想マシンの起動に失敗しました。<br />
</blockquote>
<br />
この時に仮想マシンのログ(vmware.log)には、次の記録が残っていました。<br />
<pre class="brush: text">vmx| I125: PCIPassthru: Failed to register device 0000:0d:00.3 error = 0xffffffff
vmx| I125: Msg_Post: Error
vmx| I125: [msg.pciPassthru.createAdapterFailedPlatformNotSupported] Failed to register the device pciPassthru0 for 013:00.3 due to unavailable hardware or software support.
vmx| I125: ----------------------------------------
vmx| I125: Module 'DevicePowerOn' power on failed.
</pre>
vmkernel.logには、次の記録がありました。<br />
<pre class="brush: text">cpu10:2100020)WARNING: PCI: 384: Dev @ 0000:0d:00.3 did not complete its pending transactions prior to being reset; will apply the reset anyway but this may cause PCI errors
cpu7:2100020)WARNING: PCI: 471: Dev 0000:0d:00.3 is unresponsive after reset
</pre>
ふと、リセット設定をすれば上手くいくのでは?と思い試したところうまく行きました。<br />
<br />
リセット設定は、ESXiの/etc/vmware/passthru.mapに記述するようです。<br />
フォーマットの説明はファイルの初めの方に記載されていますが、vendor-id device-id resetMethod fptShareableの順で記述します。<br />
<br />
vendor-idとdevice-idは、次のようにlspciで調べることができます。<br />
<pre class="brush: text">
[root@esxi:~] lspci |grep -i usb
0000:08:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:0d:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
[root@esxi:~] lspci -n |grep -E '0000:0(8:00.[13]|d:00.3)'
0000:08:00.1 Class 0c03: 1022:149c
0000:08:00.3 Class 0c03: 1022:149c
0000:0d:00.3 Class 0c03: 1022:149c
</pre>
上記からvendor-idが1022、device-idが149cとなります。
ファイル内の他デバイスの記載を参考にresetMethodをd3d0、fptShareableはdefaultで指定しました。<br />
<pre class="brush: text">
[root@esxi:~] tail -2 /etc/vmware/passthru.map
# AMD USB host controller
1022 149c d3d0 default
</pre>
この設定で0000:0d:00.3のコントローラはPCIパススルーで利用できるようになりました。<br />
仮想マシンも問題なく起動します。<br />
<br />
また、0000:08:00.1と0000:08:00.3は、PCIデバイスの設定でパススルーをアクティブにできなかったのですが、上記調査中にvmkernel.logに下記を見つけました。<br />
<pre class="brush: text">
0:00:00:04.808 cpu0:2097152)PCI: 1305: Found a PCIe-to-PCIe bridge at 0000:00:08.1
0:00:00:04.808 cpu0:2097152)PCI: 423: 0000:00:08.1: PCIe v2 PCI Express Root Complex Port
0:00:00:04.808 cpu0:2097152)PCI: 427: Not a ACS capable device
0:00:00:04.808 cpu0:2097152)PCI: 488: 0000:00:08.2: PCIe v2 PCI Express Root Complex Port
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0xb (Vendor Spec
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x19 (Secondary
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x25 (Data Link
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x26 (Physical L
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x27 (Lane Margi
0:00:00:04.808 cpu0:2097152)PCI: 1305: Found a PCIe-to-PCIe bridge at 0000:00:08.2
0:00:00:04.808 cpu0:2097152)PCI: 423: 0000:00:08.2: PCIe v2 PCI Express Root Complex Port
0:00:00:04.808 cpu0:2097152)PCI: 427: Not a ACS capable device
0:00:00:04.808 cpu0:2097152)PCI: 488: 0000:00:08.3: PCIe v2 PCI Express Root Complex Port
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0xb (Vendor Spec
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x19 (Secondary
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x25 (Data Link
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x26 (Physical L
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x27 (Lane Margi
0:00:00:04.808 cpu0:2097152)PCI: 1305: Found a PCIe-to-PCIe bridge at 0000:00:08.3
0:00:00:04.808 cpu0:2097152)PCI: 423: 0000:00:08.3: PCIe v2 PCI Express Root Complex Port
0:00:00:04.808 cpu0:2097152)PCI: 427: Not a ACS capable device
</pre>
「Not a ACS capable device」とあるので、ACSを無効化すれば動作するようです。<br />
試しに、ESXiのシステム>詳細設定でVMkernel.Boot.disableACSCheckをtrueに設定したところアクティブにでき、それぞれ仮想マシンからも利用できました。<br />
<br />
参考URL<br />
<a href="https://kb.vmware.com/s/article/2142307">vSphere VMDirectPath I/O and Dynamic DirectPath I/O: Requirements for Platforms and Devices (2142307)</a><br />
</nl>HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-4191096801421229172020-05-06T13:05:00.002+09:002020-05-06T13:05:42.218+09:00ESXi 6.7でPT3をPCIパススルーひとまず静音対策は置いておき、TV録画環境が移行できるか確認することにします。<br />
<br />
Linux VM上でPT3を動作させるためESXiでPCIパススルー設定をしたのですが、リブート後も「有効/再起動が必要」と表示されたままアクティブになりません。<br />
何か対処が必要なんだろうかと、VMKernel logを確認すると下記ワーニングが記録されていました。<br />
<br />
<pre class="brush: text">
cpu8:2097649)WARNING: PCIPassthru: PCIPassthruAllowed:175: Device passthru not possible on this system (no PCI ACS support)
cpu8:2097649)PCIPassthru: PCIPassthruAttachDev:217: Passthru not possible on device 0000:05:00.0
</pre>
<br />
ログメッセージが若干異なりますが、VMware KBにある<a href="https://kb.vmware.com/s/article/1036811"> PCI Passthrough with PCIe devices behind a non-ACS switch in vSphere (1036811) </a>が原因のようです。<br />
PCIのAccess Control Services(ACS)を有効にする必要があるとのこと。<br />
<br />
BIOSで設定すればいいだろうと確認したのですが、これがなかかな分かりにくい仕様でした。<br />
デフォルト状態だとACS設定が非表示で、AER Capを有効にするとACS設定が出現するという分かり難さ。<br />
ACS設定の説明欄には、AER Cap設定に依存する旨の記述がありましたが、そもそも表示されてなければ設定自体があるのかどうか分からないような...。<br />
Advanced Error Reporting (AER) capabilityとACSの関係ってよく知られているものなのかな?<br />
<br />
ASRock X570M Pro4では、下記BIOS設定でPT3をPCIパススルーで有効化できるようになります。もちろんIOMMUは有効にしておく必要があります。<br />
<ul>
<li>Advanced > AMD CBS > NBIO Common Options > Enable AER Cap : Enabled</li>
<li>Advanced > AMD CBS > NBIO Common Options > ACS Enalbed: Auto (AER有効化後のデフォルトのまま)</li>
</ul>
<br />
安定性は追々確認するとして、取り敢えずVMでPT3を利用できることは確認できました。<br />
<br />
ちなみにカードリーダーはUSBパススルーで利用しています。<br />
オンボードのUSBホストコントローラをPCIパススルーしてVMでUSBキーボードを利用したかったのですが、動作させることが出来ませんでした。<br />HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-85478303121386932142020-05-04T17:53:00.000+09:002020-05-07T07:48:12.624+09:00FreeNAS on ESXiFreeNASは、下記リソースのVMにインストールしました。<br />
<ul>
<li> vCPU: 2 </li>
<li> memory: 16GB </li>
<li> HDD: 32GB (ローカルデータストア)</li>
<li> HDD: RDM Disk x8 </li>
<li> NIC: VMXNET3 x2 </li>
</ul>
インストールは特に問題なく完了。<br />
プールは、RDMしたHDD8台で作成し問題なく動作したのですが...。<br />
煩い、シーク音がとても煩い。<br />
FreeNAS単体で動作させた状態でも何か書き込みをしているらしく、数秒毎にシーク音がします。<br />
<br />
SeagateのHDDは、ST3000MD002, ST3000MD007, ST4000DM004をそれなりの数を利用してきたのですが、シーク音が煩いと感じたことがありませんでした。<br /><br />
今回のPCは、<a href="https://octais.blogspot.com/2018/06/pc.html"> 2年に組んだPC</a>と同型のPCケースを使っているのでケースの静音性は同一で比較しやすく、並べて聴き比べるとST4000DM004が「ククククク」、ST6000DM003は「ピリピリピリパリパリ」という感じで高音で耳障りな音がし、音量も大きいように思います。<br />
音を文字で表現するのは難しいのですが雰囲気は伝わりますかね?<br /><br />
<a href="https://www.seagate.com/jp/ja/support/internal-hard-drives/desktop-hard-drives/barracuda-3-5/#specs"> BarraCuda 3.5 HDDの仕様書 </a>にあるマニュアルを確認すると3TB,4TBモデルと6TBモデルでは、ディスク数が異なるようなのでこの影響だろうか?<br />いずれにしても、これでは現行PCのリプレースとして居室で24H稼動は厳しいかもしれない。<br />
他HDDを試すとしたらコスト的にWesternDigitalのWD60EZAZ-RTあたりだけど、うーん。<br />
<br />
FreeNASの定期的な書き込みについては、レポート情報の書き込みらしく、System > System DatasetのSystem Dataset Poolを変更すれば出力先を変更できるようです。<br />
とりあえず、HDDのプールではなくfreenas-bootに変更したところ、FreeNAS単体動作時のHDDシーク音はしなくなりました。まあ、freenas-bootだとブートディスク(SSD)に書き込むことになるので、別な意味で心配な感じではあります。<br />HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-47445014854215507912020-05-04T12:31:00.000+09:002020-05-04T12:31:39.396+09:00RDM on ESXi 6.7ESXi 6.7は、次の構成を考えています。<br />
<ul>
<li>FreeNAS(VM)をESXiのローカルデータストアから起動する。</li>
<li>FreeNASは、iSCSIかNFSでHDD領域を公開する。</li>
<li>ESXiは、FreeNASの領域をデータストアとして利用する。</li>
<li>その他VMは、FreeNASのデータストアから起動する。</li>
</ul>
<br />
伝わるだろうか?簡単な図にするとこんな感じになります。<br />
<pre>
+ESXi
|
+SSD==datastore(local)==+FreeNAS
| |
+HDD==(RDM)=============+datastore(iSCSI or NFS)+VM1
+VM2
+VM3
</pre>
ESXiとFreeNASは、USBデバイスからの起動も可能でサイズも小さいため冗長化していないNVMe SSDから起動させても障害時の対応が容易だろうとの考えです。<br />
設定情報を保存しておけば、再インストールが必要になっても大した手間をかけず復旧できるかなと考えています。<br /><br />
HDDはZFSで利用したい。FreeBSDやLinuxでZFSを利用してもいいのですが、せっかくVMにするのなら用途を絞って楽に管理したとの思いからFreeNASを利用することにしました。FreeNASは初めて使いますがFreeBSDベースなので問題ないかなと思っています。<br />
<br />
で、特にハマることなく構築できました。<br />
RDM(Raw Device Mapping)の設定についてメモしておきます。<br />
RDMはVMware Host Clientだけでは設定できないようで、ESXiにsshログインしvmkfstoolsコマンド操作が必要でした。<br /><br />
まず、HDDのデバイス名を調べます。
<pre class="brush: text">
$ ls /vmfs/devices/disks/*ATA*
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTaaaaa
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTbbbbb
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTccccc
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTddddd
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTeeeee
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTfffff
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTggggg
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCThhhhh
$
</pre>
名前が長いですね。ファイル名の末尾がシリアル番号のようです。<br />
<br />
次に適当なディレクトリを作成し、vmkfstoolsでRDMを作成します。<br />
RDMには仮想互換モードと物理互換モードがあるようですが、今回は物理互換モードで設定します。<br />
仮想互換モードでは、スナップショットなども利用できるようです。<br />
最後の引数のファイル名は何でもいいのですが、シリアル番号が分かるようにしておくとメンテナンスが楽になるかもしれません。<br /><br />
<pre class="brush: text">
$ mkdir rdm
$ cd rdm
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTaaaaa ST6000DM0032D2CY186_WCTaaaaa.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTbbbbb ST6000DM0032D2CY186_WCTbbbbb.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTccccc ST6000DM0032D2CY186_WCTccccc.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTddddd ST6000DM0032D2CY186_WCTddddd.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTeeeee ST6000DM0032D2CY186_WCTeeeee.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTfffff ST6000DM0032D2CY186_WCTfffff.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTggggg ST6000DM0032D2CY186_WCTggggg.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCThhhhh ST6000DM0032D2CY186_WCThhhhh.vmdk
$
</pre>
<br />
成功するとファイル名に「-rdmp」がついたファイルが増えていました。<br />
<pre class="brush: text">
$ ls -1
ST6000DM0032D2CY186_WCTaaaaa-rdmp.vmdk
ST6000DM0032D2CY186_WCTaaaaa.vmdk
ST6000DM0032D2CY186_WCTbbbbb-rdmp.vmdk
ST6000DM0032D2CY186_WCTbbbbb.vmdk
ST6000DM0032D2CY186_WCTccccc-rdmp.vmdk
ST6000DM0032D2CY186_WCTccccc.vmdk
ST6000DM0032D2CY186_WCTddddd-rdmp.vmdk
ST6000DM0032D2CY186_WCTddddd.vmdk
ST6000DM0032D2CY186_WCTeeeee-rdmp.vmdk
ST6000DM0032D2CY186_WCTeeeee.vmdk
ST6000DM0032D2CY186_WCTfffff-rdmp.vmdk
ST6000DM0032D2CY186_WCTfffff.vmdk
ST6000DM0032D2CY186_WCTggggg-rdmp.vmdk
ST6000DM0032D2CY186_WCTggggg.vmdk
ST6000DM0032D2CY186_WCThhhhh-rdmp.vmdk
ST6000DM0032D2CY186_WCThhhhh.vmdk
$
</pre>
ここまでくればVMware Host Clientで仮想マシンの編集>ハードディスクの追加でvmdkファイルを選択できるようになります。<br /><br />
下記参照URL<br />
<a href="https://docs.vmware.com/jp/VMware-vSphere/6.7/com.vmware.vsphere.storage.doc/GUID-16D15895-5D91-437A-9304-EBBF4458934B.html">vmkfstools コマンドのオプション</a><br />
<a href="https://docs.vmware.com/jp/VMware-vSphere/6.7/com.vmware.vsphere.storage.doc/GUID-ABF52D5B-BF41-42E7-A1A2-531B109B16A3.html">物理互換モードの Raw デバイス マッピングの作成</a><br />
<a href="https://docs.vmware.com/jp/VMware-vSphere/6.7/com.vmware.vsphere.storage.doc/GUID-4B2479B1-541D-4FF4-865E-2EE711294478.html">RDM の仮想および物理互換モード</a>
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-4733145364996246572020-05-03T13:09:00.000+09:002020-05-03T13:09:49.575+09:00SyntaxHighlighterが動かなくなっていたしばらく更新していなかったので気がつきませんでしたが、SyntaxHighlighterが上手く動かなくなっていました。<br /><br />
オリジナルサイトのhostingを利用させてもらっていたのですが、shBrushPerl.jsがNot Foundになっていました。
どうもhttpsにリダイレクトされた先にファイルがない感じ。<br /><br />
下記CDNでも提供されているようなので、こちらを利用させてもらうことにしました。<br /><br />
<a href="https://cdnjs.com/libraries/SyntaxHighlighter" target="_blank"> https://cdnjs.com/libraries/SyntaxHighlighter </a>
<br /><br />
Bloggerの「テーマ> HTMLの編集」で該当URLを修正して対応完了。
ついでにHTTPSリダイレクトも有効にしておきました。<br />HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-62805085209091756472020-05-02T22:41:00.000+09:002020-05-02T22:41:27.659+09:00Transcend PCIe SSD200SはESXi 6.7で認識されないNVMe SSDにESXi 6.7をインストールしようとしたのですが、Transcend PCIe SSD200Sはディスクとして認識されませんでした。<br />
コスパでパーツを選択したので、ESXiで利用できるかどうかは調査していませんでした…。<br /><br />
仕方がないのでUSBメモリにインストール後確認すると、PCIデバイスとしては認識されているようです。<br />
NVMeドライバについて調べてみると、Crucial NVMe SSDがESXiのアップグレードで認識されなくなると情報があったので試してみるとディスクとして認識させることができました。<br /><br />
<a href="https://www.virtuallyghetto.com/2019/05/quick-tip-crucial-nvme-ssd-not-recognized-by-esxi-6-7.html" target="_blank">Quick Tip – Crucial NVMe SSD not recognized by ESXi 6.7</a>
<br /><br />
ESXi6.5 Update2のドライバを利用すれば良いようなので、ESXi650-201905001の1.2.1.34-1vmw.650.2.50.8294253を利用すると認識されるようになります。<br />
パッチの内容を確認するとESXi650-201912002からドライバが変更になっているようでした。
<ul>
<li> ESXi650-201905001 </li>
<p> vib20/nvme/VMW_bootbank_nvme_1.2.1.34-1vmw.650.2.50.8294253.vib </p>
<li> ESXi650-201912002 </li>
<p> vib20/nvme/VMW_bootbank_nvme_1.2.2.28-1vmw.650.3.96.13932383.vib </p>
</ul>
しばらくUSBブートで利用していましたが、ブートデバイスをSSDにしたかったのでIntel SSD 760pを買い足してしまいました。<br />
パッチ当てが面倒なので、SSD200SはRDMで利用することにします。<br />HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-17765116179984526202020-04-30T13:18:00.000+09:002020-04-30T13:28:14.778+09:00新PC先日、検証用として使っていたHP ProLiant ML110 G7の電源が入らない状態になってしまいました。<br />
最近も問題なくWindows Server評価版を試したりしていたので、電源かな?と思い電源を交換してみましたが治らず、
残念ながらハードウェアの知識がないためお手上げ。とうとう壊れたか。<br /><br />
検証環境がないと少し不便なので、下記構成でPCを作りました。<br />
<ul>
<li> ASRock X570M Pro4 </li>
<li> AMD Ryzen5 3600 </li>
<li> DDR4-2666 32GB x2 </li>
<li> Seagate ST6000DM003 x8 </li>
<li> M2.SSD Transcend TS512GMTE220S x1 </li>
<li> M2.SSD Intel SSD 760p SSDPEKKW256G8XT x1 </li>
<li> MSI GeForce GTX1060 ARMOR 6G</li>
</ul>
GPUはそこらにあったものを流用。Intel SSD 760pは、ESXiのインストーラーがTranscendのSSDを認識しなかったので後から追加しています。<br /><br />
現在KVMで運用しているVMを巻き取り、検証環境を含めた仮想環境をESXiで作ろうと目論んでいるのですが...。<br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0tag:blogger.com,1999:blog-1540045708273692444.post-10718239891789822962018-06-24T14:49:00.000+09:002018-06-24T14:57:38.182+09:00firewalld and ipset on CentOS7CentOS 7でipsetを利用してみました。<br />
firewalldが標準になり、ipsetはどうやって使うんだろうと思っていましたが、firewalldの設定でOKのようです。<br />
先日設定したVPN接続を国内からのみ許可するように設定しました。<br /><br />
IPアドレスのリストは、<a href="http://nami.jp/ipv4bycc/">http://nami.jp/ipv4bycc/</a>で配布されているものを利用させてもらうのが簡単かと思います。<br />
私は、IPv6のリストも欲しかったので、RIRが提供してるリストを加工して利用することにしました。<br />
<ul>
<li>ftp://ftp.arin.net/pub/stats/arin/delegated-arin-extended-latest</li>
<li>ftp://ftp.ripe.net/pub/stats/ripencc/delegated-ripencc-extended-latest</li>
<li>ftp://ftp.apnic.net/pub/stats/apnic/delegated-apnic-extended-latest</li>
<li>ftp://ftp.lacnic.net/pub/stats/lacnic/delegated-lacnic-extended-latest</li>
<li>ftp://ftp.afrinic.net/pub/stats/afrinic/delegated-afrinic-extended-latest</li>
</ul>
設定するにあたり、IPアドレスのリストをCIDRの形式でx.x.x.x/nやx::/nの形式で用意しておきます。<br /><br />
以下の環境で設定しています。<br />
<pre class="brush: text">
$ cat /etc/centos-release
CentOS Linux release 7.5.1804 (Core)
$ uname -rv
3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018
$
</pre>
<br />
まず、国内からのアクセスを扱うように新しいゾーンを作成します。<br />
<pre class="brush: text">
# firewall-cmd --permanent --new=zone=domestic
</pre>
次に、IPv4、IPv6用のipsetを作成します。<br />
<pre class="brush: text">
# firewall-cmd --permanent --new-ipset=DOMESTICv4 --type=hash:net
# firewall-cmd --permanent --new-ipset=DOMESTICv6 --type=hash:net --family=inet6
</pre>
リロードして確認すると次のようになります。<br />
<pre class="brush: text">
# firewall-cmd --reload
# firewall-cmd --get-ipsets
DOMESTICv4 DOMESTICv6
#
</pre>
作成したipsetへのエントリ追加は、次のようにファイル指定で行うことができます。<br />
<pre class="brush: text">
# firewall-cmd --permanent --ipset=DOMESTICv4 --add-entries-from-file=./ipv4_list
# firewall-cmd --permanent --ipset=DOMESTICv6 --add-entries-from-file=./ipv6_list
</pre>
追加したエントリは、次のように確認できます。<br />
<pre class="brush: text">
$ firewall-cmd --ipset=DOMESTICv4 --get-entries |head
1.0.16.0/20
1.0.64.0/18
1.1.64.0/18
1.5.0.0/16
1.21.0.0/16
1.33.0.0/16
1.66.0.0/15
1.72.0.0/13
1.112.0.0/14
14.0.8.0/22
</pre>
ここまででipsetの設定ができましたので、firewalldのゾーンとipsetを関連づけます。<br />
<pre class="brush: text">
# firewall-cmd --permanent --zone=domestic --add-source=ipset:DOMESTICv4
# firewall-cmd --permanent --zone=domestic --add-source=ipset:DOMESTICv6
</pre>
これで、DOMESTICv4, DOMESTICv6に定義したIPアドレスからのアクセスは、domesticゾーンが適用されるようになりました。<br /><br />
あとは、domesticゾーンに必要なサービスを追加して、デフォルトゾーン(ここではpublic)から不要なサービスを削除すればOKです。<br />
<pre class="brush: text">
# firewall-cmd --permanent --zone=domestic --add-service=ssh
# firewall-cmd --permanent --zone=domestic --add-service=ipsec
# firewall-cmd --permanent --zone=domestic --add-port=5555/tcp
#
# firewall-cmd --permanent --zone=public --remove-service=ssh
# firewall-cmd --permanent --zone=public --remove-service=ipsec
# firewall-cmd --permanent --zone=public --remove-port=5555/tcp
#
# firewall-cmd --reload
# firewall-cmd --info-zone=domestic
domestic (active)
target: default
icmp-block-inversion: no
interfaces:
sources: ipset:DOMESTICv4 ipset:DOMESTICv6
services: ssh ipsec
ports: 5555/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
</pre>
permanent指定なので、適宜リロードが必要です。<br />
HAhttp://www.blogger.com/profile/16017304445069938540noreply@blogger.com0