猫山さんの日記

写真付きで日記や趣味を書くならgooブログ

Fessを試してみよう(18)またシステムエラー

2022-06-21 | 日記

Fessにログインしようとしたら、

また出たか。きっとelasticsearchが止まったんだろう。
# systemctl status elasticsearch
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
   Active: failed (Result: signal) since Tue 2022-06-21 00:49:00 JST; 7h ago
     Docs: https://www.elastic.co
  Process: 1114 ExecStart=/usr/share/elasticsearch/bin/systemd-entrypoint -p ${PID_DIR}/elasticsearch.pid --quiet (code=killed, signal=KILL)
 Main PID: 1114 (code=killed, signal=KILL)
    Tasks: 0 (limit: 100757)
   Memory: 3.4M
   CGroup: /system.slice/elasticsearch.service

 6月 19 19:59:48 fess systemd[1]: Starting Elasticsearch...
 6月 19 20:00:08 fess systemd[1]: Started Elasticsearch.
 6月 21 00:49:00 fess systemd[1]: elasticsearch.service: Main process exited, code=killed, status=9/KILL
 6月 21 00:49:00 fess systemd[1]: elasticsearch.service: Failed with result 'signal'.

あれ?killedってなっている。
障害が発生したんじゃなくて、何者かに強制終了させられたのか。
起動してみよう。
# systemctl status elasticsearch
ちゃんと起動できた。
状態を見てみよう。
# curl -XGET localhost:9200/_cat/shards?h=index,shard,prirep,state,unassigned.reason
configsync                        0 p UNASSIGNED   CLUSTER_RECOVERED
fess.20220529                     0 p INITIALIZING CLUSTER_RECOVERED
fess.20220529                     1 p INITIALIZING CLUSTER_RECOVERED
fess.20220529                     2 p INITIALIZING CLUSTER_RECOVERED
fess.20220529                     3 p INITIALIZING CLUSTER_RECOVERED
fess.20220529                     4 p UNASSIGNED   CLUSTER_RECOVERED
UNASSIGNEDとINITIALIZINGがいくつかあるけれど、
そっとしておけばそのうち回復するでしょう。

さて、誰が強制終了したんだろう。
/var/log/messagesを見てみよう。
Jun 21 00:48:59 fess kernel: elasticsearch[f invoked oom-killer: gfp_mask=0x6200ca(GFP_HIGHUSER_MOVABLE), order=0, oom_score_adj=0
Jun 21 00:48:59 fess kernel: oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/system.slice/elasticsearch.service,task=java,pid=1114,uid=989
Jun 21 00:48:59 fess kernel: Out of memory: Killed process 1114 (java) total-vm:24758456kB, anon-rss:8302696kB, file-rss:0kB, shmem-rss:0kB, UID:989 pgtables:30040kB oom_score_adj:0
メモリ不足ということはわかった。
他にもCall Trace、Mem-Info、Tasks stateなどが表示されているけれど、見方がわからない。
とにかくメモリを増やすか、消費量を減らすかだ。
まずはcrawlerのヒープメモリを2Gから1Gに減らして様子を見よう。


Fessを試してみよう(17)サジェストって何?

2022-06-20 | 日記

毎日正午になるとSuggest Indexerが動き出し、3時間程負荷が高くなる。
これっていったい何だろう。
どうやら検索窓に検索ワードを入力するときに、候補を提案してくれる機能のようだ。
クロール結果に基づくサジェストと、
よく検索されるワードに基づくサジェストがあるみたいだけど、
まだ庁内に公開していないので検索結果に基づくサジェストワードは0件だ。

ちょっと試してみよう。
「共聴」と入れてみる。「共聴組合」ではなく「共聴施設」を出してほしいけれど、何も出てこない。
「マイ」と入れてみると、「マイナンバー」その他が出てきた。
もしかして、カタカナしか反応しないのかな?
しばらく探してみたけれど、何も情報は得られなかった。
ファイルサーバーの検索用途には、サジェストはいらないかな。
ジョブを無効にしておこう。

でも、手動での追加はありかもしれない。
追加ワードに「共聴施設」を登録してみた。
でも、何も提案してくれない。
登録方法間違っているのかな?
面倒になったので、これはしばらく保留しよう。


オープンソースのeラーニング探し

2022-06-19 | 日記

職員のリカレント教育が必要だと感じていて、
昨年から、飛び込み営業が来る度に
「eラーニングを紹介して」とお願いしていたんだけど、
なかなか良いものが見つからない。
Windows基礎みたいなのは、個人向けしかないのだ。
J-LISもeラーニングを提供しているけれど、その昔情報処理技術者試験で
見たような情報の機密性、完全性、可用性みたいな
眠くなる内容で役に立ちそうにない。
求めているのは、
ポップアップブロックって何?
IEとEdgeってどう違うの?
SmartScreenって何?
みたいな身近ですぐに役に立つ内容だ。

もう自分で用意するしかないかな。
オープンソースのeラーニングがあると良いんだけど、
と調べたところ、あった。
何でもあるんだね。
日本語で使えるのはMoodle、Canvas LMS、iroha Boardの3つのようだ。

Moodle
老舗で、日本ムードル協会というのもあって、情報量は多そうだ。
PHPとMySQで動作して、自由度が高いそうだけど、
日本語デモサイトが404になるのが気がかり。

Canvas LMS
デージーネットによると、UIがわかりやすく最近のシェアはMoodleより高いらしい。
Ruby on RailsとMySQLで動作する。MosPの環境構築のときちょっと触ったけれど、
Railsはわからないので、できるだけ避けたい。

iroha Board
日本製小規模向けだけど、デモサイトで触った限り機能は充分と思う。
PHPとMySQLで動作し、UIもわかりやすくて良さそう。

まずiroha Boardを試して、機能が不足するようならMoodleにしよう。


自走式財布

2022-06-18 | 日記

朝から妻子と車で出かけ、オープン前にアウトレットモールに到着した。
娘たちは楽しそうに回遊しているけれど、妻は興味がなく文句が多い。
猫山は、ほぼ財布として付いて歩いているだけだ。
帰りに家族で写真を撮った。4、5年ぶりかもしれない。
一日中歩いて疲れたけれど、楽しかった。
秋になったら、妻の誕生日プレゼントを主目的にまた行こうかな。


Fessを試してみよう(16)壊れた!?

2022-06-17 | 日記

昨晩クロール対象ファイルを40万ほど増やしたけれど、順調かな?
Fessにログインしようとしたら、Errorが出てログインできない。
サービスの状態を見たら、elasticsearchが止まっていた。
elasticsearchを起動してしばらく待つと、ログインできた。
でも、ダッシュボードが赤くなっていて、
elasticsearchのshardsがいくつか接続できないようだ。

試しに検索してみると、何もヒットしない。
データが保管されているインデックスの状態を見てみると、
docsが0だし、見た目がいつもと違う。

えー、壊れちゃったの?
とりあえずosをrebootしてみた。
でも、状況は変わらない。

簡単に直す方法があるといいのだけど。
しばらく後、状態を見る方法を見つけた。
# curl http://localhost:9200/_cluster/health?pretty
あれ、unassigned_shardsが1つ減っている。
   "initializing_shards" : 4,
   "unassigned_shards" : 1,
もしかして、自動修復中なのかな。
fessを停止して修復に専念させよう。
# systemctl stop fess

もう少し細かい情報を見る方法があった。
# curl -XGET localhost:9200/_cat/shards?v&h=index,shard,prirep,state,unassigned.reason&s=state:asc
でも、rebootしちゃったから、理由がわからない
もし再発したら、まずはこのコマンドを実行しよう。

さらに修復が進んでいる。頑張れ。
fess.20220529   0 p STARTED
fess.20220529   1 p STARTED
fess.20220529   2 p STARTED
fess.20220529   3 p STARTED
fess.20220529   4 p INITIALIZING CLUSTER_RECOVERED