あいてぃ煮込み

SIer(SE)が、ITインフラをメインに知識や実装手順を紹介するブログです。

RHEL8.3インストール直後の /var/log/messages に出力されるエラー文紹介

f:id:toto-blend:20210420134939p:plain

今回は、RHEL8.3のインストール直後に「/var/log/messages」に出力される警告・エラー文について紹介します。

環境説明&確認方法

実施した環境

仮想化ソフト:VMware Workstation Player
OS:Red Hat Enterprise Linux
カーネルバージョン:4.18.0-240
ソフトウェアの選択:サーバー(GUI使用)

確認方法

1. RHEL8.3をインストール(インストール時にサブスクリプションをアタッチ)
2. ログファイル/var/lo/messagesを下記コマンドで確認

$ sudo cat /var/log/messages | egrep -i "emergency|critical|alert||error|warning|fail"

3.出力された内容を確認

確認されたエラー・警告文

内容が重複しているものは省略して記載しています。
また、関連して出力されている文ごとにまとめ前後に改行を挟んでいます。

$ sudo cat /var/log/messages | egrep -i "emergency|critical|alert||error|warning|fail"
Jan  5 09:29:17 test01 run-initial-setup[1062]: #011(WW) warning, (EE) error, (NI) not implemented, (??) unknown.

Jan  5 09:29:27 test01 org.fedoraproject.Anaconda.Modules.Services[2360]: WARNING:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
Jan  5 09:29:27 test01 org.fedoraproject.Anaconda.Modules.Users[2360]: WARNING:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
Jan  5 09:29:28 test01 org.fedoraproject.Anaconda.Modules.Timezone[2360]: WARNING:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
Jan  5 09:29:28 test01 org.fedoraproject.Anaconda.Modules.Network[2360]: WARNING:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
Jan  5 09:29:28 test01 org.fedoraproject.Anaconda.Modules.Security[2360]: WARNING:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
Jan  5 09:29:28 test01 org.fedoraproject.Anaconda.Modules.Localization[2360]: WARNING:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses

Jan  5 09:30:42 test01 org.gnome.Shell.desktop[5996]: libEGL warning: DRI2: failed to create dri screen.
Jan  5 09:30:42 test01 org.gnome.Shell.desktop[5996]: libEGL warning: Not allowed to force software rendering when API explicitly selects a hardware device.

Jan  5 09:30:57 test01 gnome-keyring-daemon[6291]: couldn't create login keyring: An error occurred on the device.

Jan  5 09:32:40 test01 org.gnome.Shell.desktop[6370]: Window manager warning: last_user_time (216220) is greater than comparison timestamp (216219).  This most likely represents a buggy client sending inaccurate timestamps in messages such as _NET_ACTIVE_WINDOW.  Trying to work around...
Jan  5 09:32:40 test01 org.gnome.Shell.desktop[6370]: Window manager warning: W3 appears to be one of the offending windows with a timestamp of 216220.  Working around...

ログの読み方


Jan 5 09:29:17 test01 run-initial-setup[1062]: #011(WW) warning, (EE) error, (NI) not implemented, (??) unknown.

項目ログ該当箇所
ログ出力日時Jan 5 09:29:17
ログ出力元ホスト名test01
ログ出力元サービス
[*1プロセス番号]:
run-initial-setup[1062]:
内容#011(WW) warning, (EE) error, (NI) not implemented, (??) unknown.

出力されたエラー文の和訳と内容

run-initial-setup[1062]: #011(WW) warning, (EE) error, (NI) not implemented, (??) unknown.

和訳:(WW)警告、(EE)エラー、(NI)実装されていない、(??)不明。
内容:run-initial-setupがインストール時に表示されるGUIの初期セットアップに該当するパッケージ。
エラー内容から、VMでOSをインストールするとき解像度が大体おかしいので、その時に出力されたものだと推察。


org.fedoraproject.Anaconda.Modules.Services[2360]: WARNING:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses~

和訳:警告:py.warnings:/usr/lib64/python3.6/site-packages/pyanaconda/core/util.py:34:非推奨警告:impモジュールは非推奨になり、importlibが優先されます。別の使用法については、モジュールのドキュメントを参照してください
内容:Python2.7以降、関数呼び出しモジュールがimpモジュール→importlibに変更されたのでそれに関する注意書き。
RHELのパッケージ類の多くがPythonで記述されています。


org.gnome.Shell.desktop[5996]: libEGL warning: DRI2: failed to create dri screen.
org.gnome.Shell.desktop[5996]: libEGL warning: Not allowed to force software rendering when API explicitly selects a hardware device.

和訳:libEGL警告:DRI2:dri画面の作成に失敗しました
libEGL警告:APIがハードウェアデバイスを明示的に選択する場合、ソフトウェアレンダリングを強制することは許可されていません。
内容:libEGLのバグ。Ubuntuだが同様のものだと思われる。
https://github.com/bulletphysics/bullet3/issues/2595github.com


gnome-keyring-daemon[6291]: couldn't create login keyring: An error occurred on the device

和訳:ログインキーリングを作成できませんでした:デバイスでエラーが発生しました
内容:gnomeのバグ。割とよく見かける。
1368331 – gnome-session has warning messages


org.gnome.Shell.desktop[6370]: Window manager warning: last_user_time (216220) is greater than comparison timestamp (216219). This most likely represents a buggy client sending inaccurate timestamps in messages such as _NET_ACTIVE_WINDOW. Trying to work around...
org.gnome.Shell.desktop[6370]: Window manager warning: W3 appears to be one of the offending windows with a timestamp of 216220. Working around...

和訳:ウィンドウマネージャーの警告:last_user_time(216220)が比較タイムスタンプ(216219)よりも大きいです。これは、バグのあるクライアントが_NET_ACTIVE_WINDOWなどのメッセージで不正確なタイムスタンプを送信している可能性があります。回避しようとしています...
ウィンドウマネージャーの警告:W3は、タイムスタンプが216220の問題のあるウィンドウの1つであるようです。回避策...
内容:GUIで端末を操作などいろんな操作がトリガーとなって出力されるバグ
操作するたびに出力され続けるので、messagesを監視している場合、このメッセージは除外するのが吉。
1242210 – [GTK3][wayland] Window manager warning: last_user_time is greater than comparison timestamp

あとがき

LinuxというOSの都合上、いろんな人がそれぞれのパッケージを開発しているのでインストールした時点でもそれなりにエラー・警告文は出力されるものですね。

お仕事とかでLinuxを構築したりしていると試験とか正常性確認として/var/log/messagesに表示されるメッセージをかなり気にされる方がいますが、 実装したい内容を考えると試験として/var/log/messagesをとりあえず組み込むのは、自分の身を守るためにもあまりよくないなーと最近感じています。

なので、インストールしたときや構築時に見つけられた問題なさそうなエラー・警告文は除外しますよって方向で持っていくのが一番丸いのかなと考えています。

*1:プロセスが起動した瞬間に割り当てられる識別番号

VMware ESXi 7.0 Update1 DCUIでできること

f:id:toto-blend:20210420134739p:plain

今回は、ESXi 7.0 Update1のダイレクトコンソールユーザーインターフェース(DCUI)でできることを確認します。

DCUIの中身

トップページ

F2キー:各種設定
F11キー:再起動もしくはシャットダウン

f:id:toto-blend:20210107163737j:plain

F2キーの各種設定項目

Configure Password:rootのパスワード変更
Configure Management Network:各種ネットワークの設定
Restart Management Network:ネットワークの再起動
Network Restore Option:標準/分散仮想スイッチのリストア
Configure Keyboard:キーボードレイアウトの設定
Troubleshooting Options:sshやshellの設定
View System Logs:各種ログの確認
View Support Information:シリアルナンバーなどの各種情報の表示
Reset System Configuration:システム構成のリセット

f:id:toto-blend:20201230184828j:plain

Configure Management Network

Network Adapters:ESXiに接続するNICの設定
VLAN(optional):VLANの設定
IPv4 Configuration:IPv4ネットワーク設定
IPv6 Configuration:IPv6ネットワーク設定
DNS Configuration:プライマリ&代替DNSとホスト名設定
Custom DNS Suffixes:DNSサフィックス設定

f:id:toto-blend:20201230192627j:plain

Network Restore Options
標準仮想スイッチ→分散仮想スイッチへの移行に失敗し通信ができなくなった際にはNetwork Restore Optionsで対応します。

Create Standard Switch:標準仮想スイッチの作成
Create Port Group:ポートグループの作成
Migrate VMkernel NIC to Standard Switch:分散仮想スイッチ上のVMkernelを標準仮想スイッチに移行
※移行先の標準仮想スイッチに最低一つ以上の物理NICが必要。
Restore Network Settings:ネットワーク設定のリストア
Restore Standard Switch:標準仮想スイッチのリストア
※ESXiホストが標準仮想スイッチ上に存在する場合、グレーアウト。
Restore vDS:分散仮想スイッチのリストア
※分散仮想スイッチが存在しないのでグレーアウト。

f:id:toto-blend:20201230194508j:plain

Troubleshooting Mode Options

Enable ESXi Shell:ESXi Shellの有効/無効
Enable SSHSSHの有効/無効
Modify ESXi Shell and SSH timeouts:ESXi Shell/SSHタイムアウト設定
*1可用性タイムアウト*2アイドルタイムアウトの設定が可能。
Modify DCUI idle timeout:DCUIのアイドルタイムアウト設定
Restart Management Agent:管理エージェントの再起動

f:id:toto-blend:20201231135136j:plain

View System Logs

View System Logsを選択した状態で数字キーを押すことによってログを表示。
ログが表示された画面から抜ける場合Qキー。
f:id:toto-blend:20201231144639j:plain

*1:可用性タイムアウトとは、ESXi Shellを有効にしてからログインするまでの許容時間制限。時間超過後、ESXi Shellは無効化。

*2:アイドルタイムアウトとは、入力が無い状態でタイムアウトするまでの時間。

vSphere環境上にNested ESXiを構築 構築時の考慮点も

f:id:toto-blend:20210420134507p:plain

今回は、VMware vSphere環境上にNested ESXiを構築する手順を紹介します。
ネスト構成で構築するにあたり何点か考慮点があるのでそれもまとめて解説します。

環境説明 そもそもNested構成とは?

ネスト構成とは?

VMware ESXiなどの仮想化ソフトウェア上の仮想マシンとして仮想化ソフトウェアを動かす構成のことです。
設定の確認や既存仮想化環境を壊さずに検証する用途として便利です。
ただし、VMware社はNested ESXiをサポートしていないので本番環境での利用は非推奨です。

f:id:toto-blend:20201227131759j:plain

↓Nested ESXiについて

kb.vmware.com

実施した環境 仮想化ソフトウェア:VMware ESXi 6.5
サーバー管理:VMware vCenter Server 6.5
Nested ESXi:VMware ESXi 7.0 Update 1(Build:16850804)

Nested ESXi用の仮想マシン作成と設定

仮想マシンとしてESXiを動かすにあたってESXiのハードウェア要件に合わせて仮想マシンにリソースを割り当てる必要があります。
下記表のリソースを満たさずにNested ESXiを作成した場合、インストールに失敗したりインストール後仮想マシンを作成できなかったりします。

例えばストレージ容量を64GBでNested ESXiを構築した場合インストールは無事成功したものの、 vSphere Web Client上から確認した際にデータストアが存在しませんでした。

VMware ESXi ハードウェア要件
CPU2つ以上のコアを持つx64 CPU
メモリ4GB以上のメモリ
最低で8GB以上のメモリを用意しないと仮想マシンを作成することはできない
ストレージインストール:USBやSDデバイスで8GB以上
ブート パーティションと ESX-OSData:32GB以上
ローカルディスク:142GB以上
NIC1つ以上のNIC

↓ESXiハードウェア要件

docs.vmware.com

仮想マシン作成

1. vSphere Client(HTML5)からログインし「ホストおよびクラスタ」もしくは「仮想マシンおよびテンプレート」に移動
2. ツリーから右クリックして「新規仮想マシン」をクリック
3. 「1.作成タイプの選択」で「新規仮想マシンの作成」を選択
4. 「2.名前とフォルダの選択」で仮想マシン名を決め、仮想マシンを展開するを選択
5. 「3.コンピューティングリソースの選択」で仮想マシンを展開するESXiホストを選択
6. 「4.ストレージの選択」で仮想マシンを展開するストレージを選択
7. 「5.互換性の選択」で互換対象にESXi6.5を選択

f:id:toto-blend:20201227174853j:plain

8. 「6.ゲストOSを選択」で今回は、Nested ESXiなので「ゲストOSファミリ:その他」、「ゲストOSバージョン:ESXi 6.5以降」を選択

f:id:toto-blend:20201227175015j:plain

9. 「7.ハードウェアのカスタマイズ」でVMware ESXiハードウェア要件を満たすようにリソースを割り当て

f:id:toto-blend:20201227184704j:plain 10. 「8.設定の確認」で想定している設定であれば「FINISH」をクリック
仮想マシンの作成はこれで完了です。

仮想マシンの設定

先ほど作成した仮想マシンの設定の編集にてCPUのタブを選びハードウェア仮想化の「ハードウェアアシストによる仮想化をゲストOSに公開」にチェックを入れます
チェックを入れることで、CPUのIntel VT-x / AMD-Vという仮想化支援機能をゲストOSも受けることができます。

f:id:toto-blend:20201227185419j:plain

チェックを入れていない場合インストール時に下記のような警告が表示されます。
またインストール後、Nested ESXi上で作成した仮想マシンが起動できないなどの症状が出るので、必ずチェックを入れましょう。

f:id:toto-blend:20201227191110j:plain

ESXiのインストール

1. Enter

f:id:toto-blend:20201229163815j:plain

2. F11キーで同意

f:id:toto-blend:20201229163959j:plain

3. ESXiを展開するストレージを矢印キーで選択してEnter

f:id:toto-blend:20201229164134j:plain

4. キーボードレイアウトを選択
デフォルトでは、US Defaultなので日本人ならJapaneseを選択するのが無難

f:id:toto-blend:20201229164340j:plain

5. rootのパスワードを設定

f:id:toto-blend:20201229164603j:plain

6. F11キーでインストール開始

f:id:toto-blend:20201229164653j:plain

7. インストール後、再起動するためにEnter

f:id:toto-blend:20201229164843j:plain

再起動後下記画面が立ちあがってきたらインストール成功です。
インストール後のこの画面をDCUIと呼びます。
F2キーを押してネットワークの設定をした後、ブラウザから表示されているURLにアクセスできるか確認してください。

URLは、「https://IPアドレス/」です。

f:id:toto-blend:20201229164947j:plain

CentOSの新・旧バージョンisoダウンロード方法

f:id:toto-blend:20210420134237p:plain

CentOS公式サイトから最新版をダウンロードする方法はわかりやすいですが、
古いバージョンをダウンロードする方法が少しわかりずらかったのでまとめて紹介します。

公式サイトへアクセス

下記URLよりCentOS公式サイトにアクセスにします。

www.centos.org

CentOS Linuxをクリックします。

f:id:toto-blend:20201101141654p:plain

記事執筆時点での最新版は、8.2(2004)の様です。
7や6も最新のマイナーバージョンが表示されています。

f:id:toto-blend:20201101144719p:plain

最新版のisoダウンロード

7の最新版をダウンロードしてみます。
isoの中から適したbitバージョンを選択します。
ほとんどの場合はx86_64を選択すれば問題ないです。

f:id:toto-blend:20201101151139p:plain

ミラーサイト*1がいくつか表示されるので、「The following mirrors in your region should have the ISO images available:」の中からひとつ選んでください。

f:id:toto-blend:20201103173234p:plain

CentOS-7-x86_64-DVD-2003.iso」をクリックするとダウンロードできます。
8~6までの最新バージョンのダウンロード方法は以上です。

f:id:toto-blend:20201103185814p:plain

旧版のisoダウンロード

CentOS公式サイトのトップページ上部の「Download」をクリックします。

f:id:toto-blend:20201103203351p:plain

CentOSのダウンロードページに移動します。
2で紹介した最新版のisoもここからダウンロードすることができます。
ちなみにCentOS Streamとは、FedoraRHELの中間に位置するローリングリリースモデルのLinuxディストリビューションです。

f:id:toto-blend:20201103204517p:plain

ページを下にスクロールし Older Versions の「then click here」をクリックします。

f:id:toto-blend:20201103215458p:plain

旧isoのダウンロードページが表示されます。
ページを下にスクロールすると旧isoが並べられているので、ダウンロードしたいisoのArchived Tree欄の「Tree」をクリックします。

f:id:toto-blend:20201103222316p:plain

f:id:toto-blend:20201103221542p:plainf:id:toto-blend:20201103221747p:plain

表示されたディレクトリ構造の中から「isos/」を見つけクリックします。

f:id:toto-blend:20201117120458p:plain

x86_64」をクリックします。

f:id:toto-blend:20201117122530p:plain

DVD-isoをダウンロードします。

f:id:toto-blend:20201117122952p:plain

*1:Webサイトの全てまたは一部分を運営者の許可のもと負荷分散を目的に複製されたWebサイトのこと。

クラウドの種類とサービス形態

[f:id:toto-blend:20210420134011p:plain

パブリッククラウド」「プライベートクラウド」「ハイブリットクラウド

クラウドとは

ネットワーク経由でユーザーにコンピュータリソースを提供するサービスのことです。
ここで言う、コンピュータリソースは物理的な機器にとどまらず、
一部アプリケーションも含みます。
例えば、サーバーやロードバランサー、データベースなどが上げられます。

クラウドは、特定の技術を表す言葉ではなく概念です。
そのため、クラウドによってさまざまな特徴やサービスが存在します。
下記の表は、NIST(アメリカ国立標準技術研究所)が定めたクラウドの定義です。

https://www.ipa.go.jp/files/000025366.pdf

特徴概要
オンデマンド・セルフサービス事業者と直接やり取りすることなく必要に応じてコンピュータリソースを利用可能
幅広いネットワークアクセスネットワークを経由して様々なデバイスから利用可能
リソースの共有ユーザーがコンピュータリソースの正確な所在を知ることなく複数のユーザー共有する形でサービス提供
スピーディーな拡張性需要に応じてスケールアップ/スケールアウトが任意、
場合によっては自動的に調達可能
サービスが計測可能であること利用に応じて課金が発生し、利用状況のコントロール可能

パブリッククラウド

不特定多数の個人や組織がアクセスし利用可能なクラウドのことです。
例えば、AzureやAWSGCPなどが該当します。

プライベートクラウド

データセンターに特定の組織専用の環境を構築し利用するクラウドのことです。

データセンターや社内のサーバルームに構築されたオンプレミスもプライベートクラウドに含まれるかと言うと違います。
違いは、「クラウドとは」に記載されたNISTのクラウド定義がシステムとして実装されている必要があります。

ハイブリットクラウド

オンプレミス+クラウド環境のことです。 もっとも柔軟性が高く、企業が基盤として採用する環境もおおむねハイブリットクラウドです。

それぞれの用途としては、どうしてもローカルに置かなければならないデータは、オンプレミスで管理し
それ以外は、全てクラウドに上げてしまうのが理想的な使い訳です。

「IaaS」「PaaS」「SaaS

「IaaS」「PaaS」「SaaS」は、クラウドのサービス形態を表す言葉です。
各分類で、柔軟性と責任範囲が異なってきます。
また、クラウドで利用できる豊富なリソースも「IaaS」「PaaS」「SaaS」で概ね分けられています。

※ここで言うリソースとは、クラウド内で利用できるVMやFWとかのことです

責任共有モデル(共同責任)

クラウドは、従来のオンプレミスとは異なり物理的な機器を意識しなくともサービスを展開できます。
そのため、クラウド事業者とユーザーの間で定めらた範囲で責任を持つことを責任共有モデルと呼びます。
責任共有モデルは、サービス形態によって変わってきます。
下記の表は、オンプレミスと各サービス形態による責任分解点を表しています。

f:id:toto-blend:20201031223328j:plain

ユーザー管理となっている部分が、自由に利用できセキュリティなど責任を持たなければならない範囲です。

IaaS

クラウドの中で最も自由に利用できるサービス形態です。
オンプレミスで色々運用していたものを移行する場合、IaaSが選ばれることが多いです。

SaaS

すでに構築済みのOSにアプリケーションやデータを配置して利用するサービス形態です。
SaaSを利用することで基盤を一から用意せずに開発をすることもできます。

PaaS

エンドユーザー向けのサービス形態です。