Fessã§æ±ãããŒã¿ã¯Elasticsearchã®ã€ã³ããã¯ã¹å ã«ä¿æããŠç®¡çãããŠããŸããããæç¹ã®ããŒã¿ãããã¯ã¢ããããŠãããããŒã¿ã埩å ã§ããããã«ãããå Žåã¯ãElasticsearchã¹ãããã·ã§ããæ©èœã䜿ã£ãŠã€ã³ããã¯ã¹ã®ããŒã¿ããªã¹ãã¢ããŸããä»åã¯ã€ã³ããã¯ã¹ã®ããã¯ã¢ããããªã¹ãã¢ãªã©ãã€ã³ããã¯ã¹ã®ç®¡çæ¹æ³ã«ã€ããŠã玹ä»ããŸãã
ã€ã³ããã¯ã¹ã®ããã¯ã¢ãããšãªã¹ãã¢
ã¹ãããã·ã§ããã¯ãããæç¹ã«ãããç¶æ ãã®ããã¯ã¢ããããŒã¿ã§ãããŒã«ã«ã®ãã¡ã€ã«ã·ã¹ãã ãS3ãªã©ã®ãªã³ã©ã€ã³ã®ã¹ãã¬ãŒãžäžã«äœæã§ããŸããä»åã¯ãããŒã«ã«ã®ãã¡ã€ã«ã·ã¹ãã ã«ä¿åããã¹ãããã·ã§ãããå¥ãµãŒãã«ãªã¹ãã¢ããå Žåã®æé ã説æããŠãããŸãã
æäœã¯ä»¥äžã®é çªã§è¡ããŸãã
- ãªããžããªã®ç»é²
- ã¹ãããã·ã§ããã®ååŸ
- ãªã¹ãã¢ã®å®è¡
åäœã¯ãFess 13.9.3ãElasticsearch 7.9.3ã§ç¢ºèªããŠããŸãããŸããFessãšElasticsearchã®ç°å¢ã¯æ¢ã«æ§ç¯ããŠãããã®ãšããŸãã
ã¹ãããã·ã§ããã®ãªããžããªã®ç»é²
ãŸããã¹ãããã·ã§ãããä¿åããåºåå ãšããŠããªããžããªçšã®ãã£ã¬ã¯ããªãäœæããŸãããã®ãã£ã¬ã¯ããªã¯Elasticsearchã®ããã»ã¹ãã¢ã¯ã»ã¹ã§ããããã«ããŠãŒã¶ãŒãšã°ã«ãŒãã¯ãelasticsearchãã«æå®ããŸãã
$ sudo mkdir -p /var/backup/elasticsearch/
$ sudo chown elasticsearch:elasticsearch /var/backup/elasticsearch/
Elasticsearchããã®ãã£ã¬ã¯ããªãå©çšããããã«ããelasticsearch.ymlãã«ãpath.repoããç»é²ããŸãããpath.repoãã«èšå®ãããã¹ã¯ãå ã»ã©äœæãããã£ã¬ã¯ããªã§ãã
path.repo: ["/var/backup/elasticsearch/"]
elasticsearch.ymlãæŽæ°ããããElasticsearchãåèµ·åããŸããFessãèµ·åããŠããå Žåã¯ãFessã®ãµãŒãã¹ã忢ããŠããElasticsearchãåèµ·åããŠãã ããã
åèµ·ååŸã以äžã®ã³ãã³ãã§ãªããžããªãElasticsearchã«ç»é²ããŸãã
curl -X PUT "localhost:9200/_snapshot/fess_backup?pretty" -H 'Content-Type: application/json' -d'
{
"type": "fs",
"settings": {
"location": "fess_backup"
}
}
'
以äžãè¿ã£ãŠãããæåã§ãã
{
"accepted" : true
}
ã¹ãããã·ã§ããã®ååŸ
次ã«ã¹ãããã·ã§ãããååŸããŸãã以äžã¯å šãŠã®ã€ã³ããã¯ã¹ãååŸããäŸã§ãããä¿åãããã€ã³ããã¯ã¹ãæå®ããŠååŸããããšãå¯èœã§ãã
curl -XPUT "localhost:9200/_snapshot/fess_backup/[ã¹ãããã·ã§ããå]?wait_for_completion=true&pretty"
以äžã¯å®è¡äŸã§ããããã§ã¯ã¹ãããã·ã§ããåã¯ãã€ååŸããããããããã«æ¥ä»ãæå®ããŠããŸãããâstateâãããâSUCCESSâãã«ãªã£ãŠããããšã確èªããŸãã
# curl -XPUT "localhost:9200/_snapshot/fess_backup/snapshot_20200715?wait_for_completion=true&pretty"
{
"snapshot" : {
"snapshot" : "snapshot_20200715",
"uuid" : "FLSNb3ffRzuPOnAqZ5G_Kw",
"version_id" : 7080099,
"version" : "7.9.3",
"indices" : [
".fess_config.file_authentication",
".fess_user.user",
"fess_log.search_log",
... çç¥ ...
".fess_config.duplicate_host",
"fess_log.click_log",
".fess_config.related_content"
],
"include_global_state" : true,
"state" : "SUCCESS",
"start_time" : "2020-07-15T04:08:37.731Z",
"start_time_in_millis" : 1594786117731,
"end_time" : "2020-07-15T04:08:39.743Z",
"end_time_in_millis" : 1594786119743,
"duration_in_millis" : 2012,
"failures" : [ ],
"shards" : {
"total" : 87,
"failed" : 0,
"successful" : 87
}
}
}
ãªããžããªç»é²æã«äœæãããã£ã¬ã¯ããªãèŠããšã/var/backup/elasticsearch/fess_backupãã£ã¬ã¯ããªé äžã«ã¹ãããã·ã§ãããåºåãããŠããã®ã確èªã§ããŸãã
ãªã¹ãã¢ã®å®è¡
ååŸããã¹ãããã·ã§ããããã€ã³ããã¯ã¹ããªã¹ãã¢ããŸãã
ååŸããã¹ãããã·ã§ãããä¿åããŠãããã£ã¬ã¯ããªã/var/backup/elasticsearch/ãããªã¹ãã¢å ã®ãµãŒãã«ã³ããŒããŸãããªã¹ãã¢å ã®Elasticsearchã«ãåãæé ã§ãªããžããªç»é²ãããŠãããŸãã
ãªã¹ãã¢ããéãåãååã®ã€ã³ããã¯ã¹ãååšããŠãããšãªã¹ãã¢ã¯ã§ããªãã®ã§ã以äžã®ããããã宿œããå¿ èŠããããŸãã
- ã€ã³ããã¯ã¹ãåé€ãã
- ã€ã³ããã¯ã¹åã倿ŽããŠãªã¹ãã¢ãã
ããã§ã¯ãæ€çŽ¢çšã®ã€ã³ããã¯ã¹ãä¿åãããŠãããfess.20200715ãããrestored_fess.20200715ããšããå¥ã®ååã«ããŠãªã¹ãã¢ããŸãã
curl -XPOST "localhost:9200/_snapshot/fess_backup/snapshot_20200715/_restore?pretty" -H 'Content-Type: application/json' -d '{
"indices": "fess.20200715",
"ignore_unavailable": "true",
"include_global_state": false,
"rename_pattern": "fess.20200715",
"rename_replacement": "restored_fess.20200715"
}'
以äžãè¿ã£ãŠãããæåã§ãã
{
"accepted" : true
}
ãªã¹ãã¢å ã®Fessã®ç®¡çç»é¢ãèŠãŠã¿ãŸããããã·ã¥ããŒãã«ãfess.20200715ããšãå¥åã§ãªã¹ãã¢ãããrestored_fess.20200715ãã衚瀺ãããŠããã°æåã§ãã
ãªã¹ãã¢ããã€ã³ããã¯ã¹ãFessã«åæ ããããã«ãfess.searchããšãfess.updateãã®ãšã€ãªã¢ã¹ãåŒµãæ¿ããå¿ èŠããããŸãã
curl -XPOST "localhost:9200/_aliases?pretty" -H 'Content-Type: application/json' -d '{
"actions": [
{"add": {"index": "restored_fess.20200715", "alias": "fess.search"}},
{"add": {"index": "restored_fess.20200715", "alias": "fess.update"}},
{"remove": {"index": "fess.20200715", "alias": "fess.search"}},
{"remove": {"index": "fess.20200715", "alias": "fess.update"}}
]
}'
ãªã¹ãã¢åŸã¯ãå€ãã€ã³ããã¯ã¹ã¯åé€ããŠãã ããã
ã€ã³ããã¯ã¹ããŒã¿ã®æäœ
Fessã§ã¯ãã³ãã³ãã§Elasticsearchã®ããŒã¿ãæ±ã以å€ã«ã管çç»é¢ã§ãã€ã³ããã¯ã¹ã®ããŒã¿ã«å¯Ÿããæäœãè¡ãããšãã§ããŸãã管çç»é¢ã«ãã°ã€ã³ããŠããã·ã¹ãã æ å ±ãã®ãã¡ã³ããã³ã¹ãç»é¢ã§æäœããŸãã
åã€ã³ãã¯ã·ã³ã°
æ¢åã®fessã€ã³ããã¯ã¹ããæ°ããã€ã³ããã¯ã¹ãåäœæããããšãã§ããŸããã€ã³ããã¯ã¹ãããŠããããã¥ã¡ã³ãå 容ã¯å€æŽãããŸããããAnalyzerãèŸæžãªã©ã®ã€ã³ããã¯ã¹ç³»ã®èšå®ãæŽæ°ããæ°ããã€ã³ããã¯ã¹ãäœæããŸãããŸããèŸæžã®åæåãã·ã£ãŒãæ°ãªã©ã倿Žããããšãã§ããŸãã
ããã¥ã¡ã³ãã€ã³ããã¯ã¹ã®ãªããŒã
ããã¥ã¡ã³ãã€ã³ããã¯ã¹ã®ãªããŒããã¿ã³ãã¯ãªãã¯ãããšãAnalyzerãªã©ã®ã€ã³ããã¯ã¹ã®èšå®æ å ±ãåæ ã§ããŸãã
Crawlerã€ã³ããã¯ã¹
.crawlerã€ã³ããã¯ã¹ã«ã¯ã¯ããŒã«äžã®æ å ±ãä¿åãããŸããã¯ããŒã«ã匷å¶çµäºãªã©ãããšãã«æ®ã£ãã¯ããŒã«æ å ±ãåé€ãããå Žåãªã©ã«å©çšããããšãã§ããŸãã
*ã*ã*
ä»åã¯ãã€ã³ããã¯ã¹ã®ç®¡çã«ã€ããŠç޹ä»ããŸãããããã¯ã¢ãããã€ã³ããã¯ã¹ã®ã¡ã³ããã³ã¹ãããéã¯ãã²å©çšããŠã¿ãŠãã ããã
èè 玹ä»
![]() |
è è°· ä¿¡ä» (Shinsuke Sugaya)
Apache PredictionIOã«ãŠãã³ããã¿ãŒå ŒPMCãšããŠæŽ»åããŸããèªèº«ã§ãCodeLibs Projectãç«ã¡äžãããªãŒãã³ãœãŒã¹ã®å šææ€çŽ¢ãµãŒãFessãªã©ã®éçºã«åŸäºã

