Mercurial > hg > Papers > 2023 > kiyama-sigos
changeset 2:1bbcab1a480b
update
author | kiyama <e185758@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 16 Apr 2023 13:04:36 +0900 |
parents | 086e312e3822 |
children | 2cfd26fe7b62 |
files | .DS_Store Paper/.DS_Store Paper/fig/chatsystem.drawio Paper/fig/chatsystem.png Paper/fig/chatsystem.svg Paper/kiyama-sigos.aux Paper/kiyama-sigos.log Paper/kiyama-sigos.pdf Paper/kiyama-sigos.synctex.gz Paper/kiyama-sigos.tex Paper/tex/.DS_Store Paper/tex/ie-monitoring-construction.log Paper/tex/ie-monitoring-construction.tex Paper/tex/ie-monitoring-design.tex Paper/tex/intro.tex Paper/tex/monitoring.tex Paper/tex/problem.tex Paper/tex/spec/.DS_Store Paper/tex/summary.tex Paper/tex/technology-overview.tex |
diffstat | 19 files changed, 83 insertions(+), 258 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/fig/chatsystem.drawio Sun Apr 16 13:04:36 2023 +0900 @@ -0,0 +1,1 @@ +<mxfile host="app.diagrams.net" modified="2023-04-15T17:31:52.961Z" agent="5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36" version="20.8.5" etag="1V5FZ23ZoS8dicAIEKZD" type="device"><diagram id="RyfY7gbOkjtqVIeOmG32" name="ページ1">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</diagram></mxfile> \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/fig/chatsystem.svg Sun Apr 16 13:04:36 2023 +0900 @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than diagrams.net --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="371px" height="272px" viewBox="-0.5 -0.5 371 272" content="<mxfile host="app.diagrams.net" modified="2023-04-15T17:32:03.077Z" agent="5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36" version="20.8.5" etag="_YM9mYoI-Qq1CuNjd8YC" type="device"><diagram id="RyfY7gbOkjtqVIeOmG32" name="ページ1">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</diagram></mxfile>" style="background-color: rgb(255, 255, 255);"><defs/><g><ellipse cx="65" cy="197.5" rx="7.5" ry="7.5" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 65 205 L 65 230 M 65 210 L 50 210 M 65 210 L 80 210 M 65 230 L 50 250 M 65 230 L 80 250" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 257px; margin-left: 65px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">管理者</div></div></div></foreignObject><text x="65" y="269" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">管理者</text></switch></g><path d="M 50 190 L 50.04 126.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 50.04 121.12 L 53.54 128.12 L 50.04 126.37 L 46.54 128.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 80.04 120 L 80 183.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 80 188.88 L 76.5 181.88 L 80 183.63 L 83.5 181.88 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 0 0 L 150 0 L 150 130 L 0 130 Z" fill="none" stroke="#5a6c86" stroke-miterlimit="10" pointer-events="none"/><path d="M 9.02 12.33 L 9.02 13.08 L 15.99 13.08 L 15.99 12.33 Z M 9.02 9.28 L 9.02 10.03 L 15.99 10.03 L 15.99 9.28 Z M 9.02 6.24 L 9.02 6.99 L 15.99 6.99 L 15.99 6.24 Z M 7.64 3.73 C 7.43 3.73 7.27 3.9 7.27 4.11 L 7.27 21.5 C 7.27 21.71 7.43 21.87 7.64 21.87 L 17.37 21.87 C 17.58 21.87 17.75 21.71 17.75 21.5 L 17.75 4.11 C 17.75 3.9 17.58 3.73 17.37 3.73 Z M 8.02 4.48 L 17 4.48 L 17 21.12 L 8.02 21.12 Z M 0 25 L 0 0 L 25 0 L 25 25 Z" fill="#5a6c86" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 118px; height: 1px; padding-top: 7px; margin-left: 32px;"><div data-drawio-colors="color: #5A6C86; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(90, 108, 134); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">クラウドサーバー</div></div></div></foreignObject><text x="32" y="19" fill="#5A6C86" font-family="Helvetica" font-size="12px">クラウドサーバー</text></switch></g><image x="44.5" y="34.5" width="60" height="60" xlink:href="data:image/png;base64,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" preserveAspectRatio="none"/><rect x="35" y="90" width="80" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 105px; margin-left: 75px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">mattermost</div></div></div></foreignObject><text x="75" y="109" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">mattermost</text></switch></g><path d="M 105 50 L 213.63 50" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 218.88 50 L 211.88 53.5 L 213.63 50 L 211.88 46.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 220 0 L 370 0 L 370 110 L 220 110 Z" fill="none" stroke="#5a6c86" stroke-miterlimit="10" pointer-events="none"/><path d="M 229.02 12.33 L 229.02 13.08 L 235.99 13.08 L 235.99 12.33 Z M 229.02 9.28 L 229.02 10.03 L 235.99 10.03 L 235.99 9.28 Z M 229.02 6.24 L 229.02 6.99 L 235.99 6.99 L 235.99 6.24 Z M 227.64 3.73 C 227.44 3.73 227.27 3.9 227.27 4.11 L 227.27 21.5 C 227.27 21.71 227.44 21.87 227.64 21.87 L 237.37 21.87 C 237.58 21.87 237.75 21.71 237.75 21.5 L 237.75 4.11 C 237.75 3.9 237.58 3.73 237.37 3.73 Z M 228.02 4.48 L 237 4.48 L 237 21.12 L 228.02 21.12 Z M 220 25 L 220 0 L 245 0 L 245 25 Z" fill="#5a6c86" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 118px; height: 1px; padding-top: 7px; margin-left: 252px;"><div data-drawio-colors="color: #5A6C86; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(90, 108, 134); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">基幹サーバー</div></div></div></foreignObject><text x="252" y="19" fill="#5A6C86" font-family="Helvetica" font-size="12px">基幹サーバー</text></switch></g><path d="M 235 35 L 355 35 L 355 95 L 235 95 L 235 35 Z" fill="rgb(255, 255, 255)" stroke="none" pointer-events="all"/><path d="M 240 40 L 240 90 L 240 90 L 350 90 L 350 40 L 240 40" fill="none" stroke="none" pointer-events="all"/><path d="M 235 35 L 355 35 L 355 95 L 235 95 L 235 35 Z" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="265" y="35" width="60" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 50px; margin-left: 266px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">server</div></div></div></foreignObject><text x="295" y="54" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">server</text></switch></g><rect x="115" y="25" width="90" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 40px; margin-left: 160px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">GET・POST</div></div></div></foreignObject><text x="160" y="44" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">GET・POST</text></switch></g><path d="M 220 80 L 111.37 80" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 106.12 80 L 113.12 76.5 L 111.37 80 L 113.12 83.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="150" y="80" width="60" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 95px; margin-left: 180px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">POST</div></div></div></foreignObject><text x="180" y="99" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">POST</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg> \ No newline at end of file
--- a/Paper/kiyama-sigos.aux Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/kiyama-sigos.aux Sun Apr 16 13:04:36 2023 +0900 @@ -12,32 +12,13 @@ \@writefile{toc}{\contentsline {subsection}{\numberline {2.5}{Loki}}{2}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {2.6}{Promtail}}{2}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {2.7}{Grafana}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.8}{Zabbix}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.9}{Mattermost}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.10}{コンテナ型}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.11}{Docker}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.12}{Podman}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.13}{ハイパーバイザー型}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.14}{KVM}}{2}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3}\hskip 1zw{現在の監視システムの問題点}}{3}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {4}\hskip 1zw{監視システムの構成}}{3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}{監視システム}}{3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}{サービス監視}}{3}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces monitoring}}{3}\protected@file@percent } -\providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}} -\newlabel{fig:monitoring-system}{{1}{3}} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces monitoring-system}}{3}\protected@file@percent } -\newlabel{fig:prometheus-expr}{{2}{3}} -\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces grafana-prometheus}}{3}\protected@file@percent } -\newlabel{fig:grafana-prometheus}{{3}{3}} -\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}{ログ収集}}{3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.4}{アラート送信}}{4}\protected@file@percent } -\newlabel{src:loki-alert}{{1}{4}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {1}lokiのアラートルールファイル}{4}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {5}\hskip 1zw{対話型アラート編集システムの構築}}{4}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}{構成}}{4}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces mattermostからアラートを編集}}{4}\protected@file@percent } -\newlabel{fig:mattermost-slash}{{4}{4}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.8}{Mattermost}}{2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.9}{コンテナ型}}{2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.10}{Docker}}{2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.11}{Podman}}{2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.12}{ハイパーバイザー型}}{2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.13}{KVM}}{2}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {3}\hskip 1zw{システム管理の問題点}}{2}\protected@file@percent } \citation{*} \bibstyle{ipsjsort} \bibdata{reference} @@ -48,14 +29,14 @@ \bibcite{promtail}{5} \bibcite{alertmanager}{6} \bibcite{Prometheus}{7} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}{コマンド一覧}}{5}\protected@file@percent } -\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces アラートルール変更時の入力内容\relax }}{5}\protected@file@percent } -\newlabel{tb:wmcon}{{1}{5}} -\@writefile{toc}{\contentsline {section}{\numberline {6}\hskip 1zw{今後の課題}}{5}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}{監視システムの運用}}{5}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}{監視システムの冗長化}}{5}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3}{必要なログ・アラートの選択}}{5}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.4}{gitlab,作業ログツールとの連携}}{5}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {7}\hskip 1zw{まとめ}}{5}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {8}\hskip 1zw{まとめ}}{5}\protected@file@percent } -\newlabel{ipsj@lastpage}{{}{5}} +\@writefile{toc}{\contentsline {section}{\numberline {4}\hskip 1zw{メッセージングコマンドを使用した手法の提案}}{3}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces monitoring}}{3}\protected@file@percent } +\providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}} +\newlabel{fig:chat-system}{{1}{3}} +\@writefile{toc}{\contentsline {section}{\numberline {5}\hskip 1zw{実装方法}}{3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}{構成}}{3}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {6}\hskip 1zw{今後の課題}}{3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}{}}{3}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {7}\hskip 1zw{まとめ}}{3}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {8}\hskip 1zw{まとめ}}{3}\protected@file@percent } +\newlabel{ipsj@lastpage}{{}{3}}
--- a/Paper/kiyama-sigos.log Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/kiyama-sigos.log Sun Apr 16 13:04:36 2023 +0900 @@ -1,4 +1,4 @@ -This is e-pTeX, Version 3.14159265-p3.8.3-191112-2.6 (utf8.euc) (TeX Live 2020) (preloaded format=platex 2020.4.26) 15 APR 2023 17:50 +This is e-pTeX, Version 3.14159265-p3.8.3-191112-2.6 (utf8.euc) (TeX Live 2020) (preloaded format=platex 2020.4.26) 16 APR 2023 13:00 entering extended mode restricted \write18 enabled. file:line:error style messages enabled. @@ -4673,9 +4673,9 @@ (./tex/intro.tex LaTeX Font Info: Font shape `JT1/utfj/m/0' will be -(Font) scaled to size 9.24725pt on input line 22. +(Font) scaled to size 9.24725pt on input line 21. LaTeX Font Info: Font shape `JY1/utfj/m/0' will be -(Font) scaled to size 9.24725pt on input line 22. +(Font) scaled to size 9.24725pt on input line 21. ) LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined @@ -4700,40 +4700,40 @@ (Font) scaled to size 9.24725pt on input line 3. LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 8. +(Font) using `JY1/hmc/bx/n' instead on input line 9. LaTeX Font Info: Font shape `JT1/hmc/m/n' will be -(Font) scaled to size 7.53018pt on input line 8. +(Font) scaled to size 7.53018pt on input line 9. LaTeX Font Info: Font shape `JY1/hmc/m/n' will be -(Font) scaled to size 7.53018pt on input line 8. +(Font) scaled to size 7.53018pt on input line 9. LaTeX Font Info: Font shape `JT1/hmc/m/n' will be -(Font) scaled to size 6.84561pt on input line 8. +(Font) scaled to size 6.84561pt on input line 9. LaTeX Font Info: Font shape `JY1/hmc/m/n' will be -(Font) scaled to size 6.84561pt on input line 8. +(Font) scaled to size 6.84561pt on input line 9. (I search kanjifont definition file: . . ) (I search font definition file: . . . . . . . ) LaTeX Font Info: Trying to load font information for OMS+txsy on input line -8. +9. (/usr/local/texlive/2020/texmf-dist/tex/latex/txfonts/omstxsy.fd File: omstxsy.fd 2000/12/15 v3.1 ) -LaTeX Font Info: Trying to load font information for T1+txsy on input line 8 +LaTeX Font Info: Trying to load font information for T1+txsy on input line 9 . -LaTeX Font Info: No file T1txsy.fd. on input line 8. +LaTeX Font Info: No file T1txsy.fd. on input line 9. LaTeX Font Warning: Font shape `T1/txsy/m/n' undefined -(Font) using `T1/cmr/m/n' instead on input line 8. - -LaTeX Font Info: Trying to load font information for OT1+ptm on input line 8 +(Font) using `T1/cmr/m/n' instead on input line 9. + +LaTeX Font Info: Trying to load font information for OT1+ptm on input line 9 . (/usr/local/texlive/2020/texmf-dist/tex/latex/psnfss/ot1ptm.fd File: ot1ptm.fd 2001/06/04 font definitions for OT1/ptm. ) LaTeX Font Info: Font shape `JT1/hmc/m/n' will be -(Font) scaled to size 8.8993pt on input line 8. +(Font) scaled to size 8.8993pt on input line 9. LaTeX Font Info: Font shape `JY1/hmc/m/n' will be -(Font) scaled to size 8.8993pt on input line 8. +(Font) scaled to size 8.8993pt on input line 9. [1 @@ -4772,23 +4772,19 @@ LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 47. - - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 51. +(Font) using `JY1/hmc/bx/n' instead on input line 46. LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 55. +(Font) using `JY1/hmc/bx/n' instead on input line 50. LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 61. +(Font) using `JY1/hmc/bx/n' instead on input line 56. LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 65. +(Font) using `JY1/hmc/bx/n' instead on input line 60. ) @@ -4803,12 +4799,12 @@ LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined (Font) using `JY1/hmc/bx/n' instead on input line 81. -[2] +(./tex/monitoring.tex LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 81. - -(./tex/monitoring.tex) +(Font) using `JY1/hmc/bx/n' instead on input line 4. + +[2]) LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined (Font) using `JY1/hmc/bx/n' instead on input line 84. @@ -4822,39 +4818,9 @@ (Font) using `JY1/hmc/bx/n' instead on input line 84. (./tex/ie-monitoring-design.tex - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 4. - -File: fig/monitoring-system.png Graphic file (type bmp) -<fig/monitoring-system.png> - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 20. - -File: fig/prometheus-expr.png Graphic file (type bmp) -<fig/prometheus-expr.png> -File: fig/grafana-prometheus.png Graphic file (type bmp) -<fig/grafana-prometheus.png> - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 47. - - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 52. - -[3] - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 53. - -LaTeX Font Info: Trying to load font information for T1+lmtt on input line 5 -9. -(/usr/local/texlive/2020/texmf-dist/tex/latex/lm/t1lmtt.fd -File: t1lmtt.fd 2009/10/30 v1.6 Font defs for Latin Modern +File: fig/chatsystem.png Graphic file (type bmp) +<fig/chatsystem.png> ) -(./src/loki-alert.yml)) LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined (Font) using `JY1/hmc/bx/n' instead on input line 87. @@ -4870,18 +4836,7 @@ (./tex/ie-monitoring-construction.tex LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 4. - -File: fig/mmslash-command.png Graphic file (type bmp) -<fig/mmslash-command.png> - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 17. - -[4] - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 18. +(Font) using `JY1/hmc/bx/n' instead on input line 3. ) @@ -4901,18 +4856,6 @@ LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined (Font) using `JY1/hmc/bx/n' instead on input line 3. - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 7. - - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 10. - - -LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined -(Font) using `JY1/hmc/bx/n' instead on input line 13. - ) LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined @@ -4960,18 +4903,23 @@ LaTeX Font Warning: Font shape `JY1/hmc/b/n' undefined (Font) using `JY1/hmc/bx/n' instead on input line 102. -[5] (./kiyama-sigos.aux) +[3] + +Package caption Warning: Unused \captionsetup[lstlisting] on input line 50. +See the caption package documentation for explanation. + +(./kiyama-sigos.aux) LaTeX Font Warning: Some font shapes were not available, defaults substituted. ) Here is how much of TeX's memory you used: - 10059 strings out of 481140 - 145578 string characters out of 5917417 - 573717 words of memory out of 5000000 - 25912 multiletter control sequences out of 15000+600000 - 641868 words of font info for 180 fonts, out of 8000000 for 9000 + 9648 strings out of 481140 + 141536 string characters out of 5917417 + 530717 words of memory out of 5000000 + 25515 multiletter control sequences out of 15000+600000 + 640909 words of font info for 177 fonts, out of 8000000 for 9000 929 hyphenation exceptions out of 8191 - 41i,11n,51p,521b,1363s stack positions out of 5000i,500n,10000p,200000b,80000s - -Output written on kiyama-sigos.dvi (5 pages, 37056 bytes). + 41i,11n,51p,501b,985s stack positions out of 5000i,500n,10000p,200000b,80000s + +Output written on kiyama-sigos.dvi (3 pages, 22120 bytes).
--- a/Paper/kiyama-sigos.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/kiyama-sigos.tex Sun Apr 16 13:04:36 2023 +0900 @@ -78,13 +78,13 @@ \section{技術概要} \input{tex/technology-overview.tex} % 技術概要 -\section{現在の監視システムの問題点} +\section{システム管理の問題点} \input{tex/monitoring.tex} -\section{監視システムの構成} +\section{メッセージングコマンドを使用した手法の提案} \input{tex/ie-monitoring-design.tex}% 提案手法の設計 -\section{対話型アラート編集システムの構築} +\section{実装方法} \input{tex/ie-monitoring-construction.tex}% 提案手法の構築 \section{今後の課題}
--- a/Paper/tex/ie-monitoring-construction.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/tex/ie-monitoring-construction.tex Sun Apr 16 13:04:36 2023 +0900 @@ -1,43 +1,3 @@ - -監視システム運用の際に発生するアラートルールの属人化を防ぐためのスラッシュコマンドを用いたアラートルールの編集方法を提案する. +%実装方法 \subsection{構成} -監視システムと同一のサーバーにAPIサーバーを立てmattermostから送信された -GET,POST リクエストに対し処理を行う。図\ref{fig:mattermost-slash}に構成図を示す. -\\ -\begin{figure}[htbp] - \begin{center} - \includegraphics[width=80mm]{fig/mmslash-command.png} - \caption[mattermostからアラートを編集]{構成図.} - \label{fig:mattermost-slash} - \end{center} -\end{figure} -\\ -mattermost のスラッシュコマンドは/から始まるコマンドを打つ事でGET/POSTリクエストが送ることができる.また引数にはPOSTリクエストのBodyを指定することが出来る.提案手法ではスラッシュコマンドに作成したWEB APIのURLを紐付けた. - -\subsection{コマンド一覧} -以下で本研究で作成したコマンドの説明を行う. -想定している操作は全てアラートルールの編集に関するものでありそれぞれ第一引数によって処理を分けている.\\ -それらの処理の一覧を以下に示す。 - -\begin{table}[htb] - \begin{center} - \caption{アラートルール変更時の入力内容} - \begin{tabular}{c|l} \hline - add \$alertname \$label \$pattern \$time & ルール追加 \\ \hline - list & ルール一覧取得 \\ \hline - delete & ルール削除 \\ \hline - \end{tabular} - \label{tb:wmcon} - \end{center} -\end{table} - -アラートルールを追加する場合は/alert add \$alertname \$label \$pattern \$timeを入力する.\\ -引数の意味はそれぞれ\$alertnameはアラートが送信される時のアラート名,\$labelはアラートに紐付いているラベル,\$patternはログに含まれていた際にカウントする文字列,\$timeはアラートを送信する周期を指定している.\\ - -/alert list は登録したアラートルールを表示する. -上記のコマンドは引数なしでコマンドを入力すると登録されているアラート名のみが表示される. -アラートルール全体の詳細が見たい場合はlistの後ろにallコマンドを入力することで確認することが出来る. -また, アラートルールの詳細が見たい場合はlistの後ろにアラート名を入力することで指定したアラートルールのみが表示できる. - -また, アラートルールを削除したい場合はdeleteコマンドを打つ事によってアラートルールが削除される. \ No newline at end of file
--- a/Paper/tex/ie-monitoring-design.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/tex/ie-monitoring-design.tex Sun Apr 16 13:04:36 2023 +0900 @@ -1,59 +1,9 @@ - -サービスでは学科システムのシステムの監視やログの収集を行う.この監視システムの構成を図に示し.概要を以下で説明する. +システムの管理をmattermost のスラッシュコマンドを通して実行する. スラッシュコマンドとは /から始まるコマンドを実行することで特定の処理を実行できる.本稿では学科で管理しているシステムの状態を確認できる機能を提供するhttpサーバーを立て,それにGET/POSTリクエストを送信することで処理を行う.図\ref{fig:chat-system}に構成図を示す. -\subsection{監視システム} -本実験では全ての監視システムをコンテナ上に構築しており,docker-compose.yml ファイルからpodmanでコンテナを作成する形を取っている. -また,各サービス間の通信は各コンテナにipを振るのではなくコンテナ名を指定することで行っている. - -サービスの死活監視はprometheus,ログ収集はloki,それらのデータ可視化はgrafana,アラート送信はalertmanagerを用いて構築している.システム監視の構成を図\ref{fig:monitoring-system}に示す. exporter,alertmanagerはprometheusのコンポーネントとなっており,exporterで各サービスのメトリック情報をprometheusに対して送信している. また,prometheus の独自のクエリ言語であるpromQLで設定した条件を満たした際にalertmanagerに対してアラートを送信する. - -使用するクエリ言語がlogQLに変更しているがlokiもpromethrus同様にログを収集し,アラートを送信している. \begin{figure}[ht] \begin{center} - \includegraphics[width=80mm]{fig/monitoring-system.png} - \caption[monitoring]{構成図.} - \label{fig:monitoring-system} - \end{center} -\end{figure} - - -\subsection{サービス監視} -各サービスのリソース・死活監視はpromethrusを用いて行っている. -prometheusは収集したデータをブラウザで表示する機能を持っている. -図\ref{fig:prometheus-expr}に各expoterサーバーからprometheusに集めた情報をブラウザを通じて表示する様子の一例を示す. -\begin{figure}[htbp] - \begin{center} - \includegraphics[width=80mm]{fig/prometheus-expr.png} - \caption[monitoring-system]{promethrusでのグラフを用いたデータの可視化.} - \label{fig:prometheus-expr} + \includegraphics[width=80mm]{fig/chatsystem.png} + \caption[monitoring]{システム構成図.} + \label{fig:chat-system} \end{center} -\end{figure} -\\ - -しかし,prometheusのグラフでは表示のカスタマイズや可視化したダッシュボードの登録, ログイン認証をサポートしていない. そこでデータの可視化はgrafanaを用いた. -また, これらのダッシュボードは自身でカスタムしたりgrafanaに登録されてあるダッシュボードをインポートすることで,よく使用する情報を登録することが可能である. 以下の図\ref{fig:grafana-prometheus}がgrafanaのダッシュボードの例である. -このように複数の情報を可視化することができる. -\\ -\begin{figure}[htbp] - \begin{center} - \includegraphics[width=80mm]{fig/grafana-prometheus.png} - \caption[grafana-prometheus]{grafanaでカスタムされたダッシュボード.} - \label{fig:grafana-prometheus} - \end{center} -\end{figure} -\\ - - -\subsection{ログ収集} -障害が発生したサーバーがアクセス可能であればログを確認することはできるが,何らかの原因でアクセス出来ない場合はログを確認する手段がない.そこで各サーバーのログを収集する事でサーバーの死活状態に関わらず原因調査が可能である. また,grafanaではlogQLを用いて絞り込みが出来る為特定までにかかるコストが低くなると考える. -提案システムでは, ログ収集にはlokiを用いている. loki自体に収集したログを表示する 機能は無く,grafnaと連携してログの可視化を行う. -また,lokiとgrafanaでのログの可視化でも一般的には,カスタムダッシュボードを使用して可視化を行う. -%\section{研究目的} - -\subsection{アラート送信} -システムのリソース状態や死活状態,ログ情報は安定してシステムを運用する上で把握しておくべき情報である.しかし, 人間が24時間365日稼働しているシステムを監視し続けるのは現実的ではない.その為指定したログが出力されたりサービスが停止した際に管理者に通知する仕組みが必要でありそれがアラート機能である. -また,prometheus,loki共に設定ファイルにalertmanagerのURを記入することで連 -携が可能である. またアラートルールのファイル形式についてgrafanaの公式サイトは「Loki alerting rules are exactly the same, except they use LogQL for their expressions. 」[3]と明言しており, 使用するQLを除いてアラートルールの記述方法は変わらない事からここではlokiのアラートルールのみを紹介する. -ソースコード4.2がlokiのアラートルールファイルである.このコードの7行目がアラートを制御する部分であり5分周期でログの有無を確認しログが生成されていたらalertmanagerにクエリを送信するようなコードになっている. - -\lstinputlisting[label=src:loki-alert,caption=lokiのアラートルールファイル]{src/loki-alert.yml} +\end{figure} \ No newline at end of file
--- a/Paper/tex/intro.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/tex/intro.tex Sun Apr 16 13:04:36 2023 +0900 @@ -4,7 +4,6 @@ %システム管理全体について サービスを運用する中でシステム障害は発生するものである.これらの障害を事前に防いだり,対応するには普段からシステムの状態を確認できることが望ましい.しかし,運用しているサービスの状態を調べるにはサーバーへのログインの手間や情報を取得するためのサービスの理解やコマンド操作が必要になってくる.こういった管理者の負担を軽減する仕組みが必要である. \\ - % 学科システムについて 琉球大学工学部工学科知能情報コースには約300名の学生と教員にネットワーク接続や仮想サーバーの貸し出しサービスといった授業や研究を円滑に進めるためのシステム(以下より学科システムとする)を24時間365日提供している. これらの学科システムは職員と学生を中心に構成されるシステム管理チームによって管理されている.
--- a/Paper/tex/monitoring.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/tex/monitoring.tex Sun Apr 16 13:04:36 2023 +0900 @@ -1,6 +1,5 @@ - +%現在の監視システムの問題点 +一般にシステムを管理する上で運用するサービスの状態を確認することは重要である.サービスのログを確認したりコマンドを使用し状態を出力することで異常が発生していないかを確認できる.しかし,運用しているサーバーやサービスが複数ある場合,それぞれのサービスが置いてあるサーバーにログインし操作することは手間がかかる.また操作に当たってCLIでのコマンド操作に慣れていない場合人的なミスが発生する可能性がある. -現在学科システムにはシステム監視,ログ収集,アラート送信などの異常検知の設定が十分でなく,システム障害や攻撃の早期発見・事後対応が困難である. -実際に2021年8月にはレンタルサーバーと基幹サーバーで障害が発生した. -その際に 利用者からサーバー上で動作しているサービスが使用出来ないという報告を受けて障害に気づいた.また,該当サーバーが物理故障しており,原因調査の為ログを確認したかったがサーバーにアクセス出来なかった為調査開始に時間がかかった. -また,10月から11月にかけては学科で運用しているGitlabが脆弱性を突かれ攻撃された.実際に攻撃を受ける前に総当たり攻撃が失敗していたりユーザーに対して警告メールが送信されていたが攻撃に使用されているのに気づいたのは報告を受けてからだった. + 現在の学科システムは6台のサーバーから構成されており,4台のサーバーでは生徒・教員が利用する仮想サーバーや知能情報コースのwebサイトなどが動いている.2台のサーバーはオブジェクトストレージとして稼働している.また学科システムは学生主体のシステム管理チームと演習科目を受講している生徒によって管理されている為,CLI上での操作に慣れていないメンバーもいる. +システム管理チームの活動としてscrapboxを用いてタスクを管理し作業ログを残しており,定期的に実行する処理や頻繁に行われる操作を纏めている.しかし似たような作業を行なっているページがあったりscrapboxの検索性の悪さもあり情報を探すことに慣れや知識が必要となる.
--- a/Paper/tex/problem.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/tex/problem.tex Sun Apr 16 13:04:36 2023 +0900 @@ -1,15 +1,3 @@ -本稿で構築した監視システムおよび対話型のアラート編集システムについての課題を挙げていく. - -\subsection{監視システムの運用} -本稿ではコンテナによる構築を行い実際に学科のシステムを監視できたが構築場所が VM上のみとなった.本番環境で動作させるにはクラウドサーバーとオンプレの両方で構 築し冗長性を保つ必要がある. -また収集した情報は監視サーバー上にのみある.その為定期的にディスクサーバーにデータを送信し監視サーバーでは容量が膨らまないようローテーションする必要がある. +本稿で構築したメッセージングを使ったシステムの管理手法についての課題を挙げていく. -\subsection{監視システムの冗長化} -一般的に監視システムを構築する際は冗長化構成を作成しどちらのサーバーがダウンし ても監視し続けられる体制を整える.しかし本研究ではオンプレミスでのみ構築している. その為クラウドにセカンダリを構築することで冗長化を図る必要がある. - -\subsection{必要なログ・アラートの選択} -本稿で提案した手法によりアラートルールの設定を共有しやすくなった.しかしアラートを出すべきログの取捨選択は運用の中で調節していくしかない.そこで異常を検知した際にサービスが正常に動作するかを自動でテストする仕組みを作ることで誤アラートが減ると考える - -\subsection{gitlab,作業ログツールとの連携} -チャットツールからのアラートルール変更を導入した際の問題点として直前の変更履歴は見やすいが過去に遡るのは難しいと感じた. -その為,アラートを編集した際に自動でscrapboxに変更内容の記事をまとめる機能が必要だと感じた. \ No newline at end of file +\subsection{}
--- a/Paper/tex/summary.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/tex/summary.tex Sun Apr 16 13:04:36 2023 +0900 @@ -1,4 +1,4 @@ \section{まとめ} -本稿ではシステムの保守・運用を円滑に行う為に学科システムに監視システムと対話型のアラート編集システムを構築した。 -システム管理チームは教員と学生が中心となっており,学生は学部一年から所属しても4年,もしくは6年で卒業してしまう事から他者に共有できる形でアラートルールを編集する事でチーム全体としての理解が深まると考えた. -今後,本監視システムを本番環境にデプロイし実際に運用する中で問題点を改善していく.またログを管理する際にどのようなログを異常と判断するか,管理者に適切なアラートを出すシステムの構築を行う \ No newline at end of file +本稿ではシステムの保守・運用を円滑に行う為に学科システムにメッセージングを用いたシステム管理システムを構築した。 +システム管理チームは教員と学生が中心となっており,学生は学部一年から所属しても4年,もしくは6年で卒業してしまう事や管理するサービスが複数あることから初学者でも操作しやすく操作が統一されているメッセージングを用いたシステム管理は有効と考えた. +今後,本システムを本番環境にデプロイし実際に運用する中で問題点を改善していく. \ No newline at end of file
--- a/Paper/tex/technology-overview.tex Sat Apr 15 17:50:43 2023 +0900 +++ b/Paper/tex/technology-overview.tex Sun Apr 16 13:04:36 2023 +0900 @@ -34,11 +34,6 @@ 自身でデータを収集をせずデータの可視化を行うためデータソースと組み合わせて使うのが一般的である. データソースとしてPrometheusとlokiを対応しており,LogQLを用いてカスタムしたログ情報を表示することが可能である. -\subsection{Zabbix} -Zabbixはオープンソースの統合監視ソフトウェアである. -多数の監視機能をデフォルトの機能として提供しているほか,サーバー,ネットワーク,サービスを集中監視する為の監視機能,障害検知機能,アラート送信機能,可視化機能を提供している. -また特徴としてエージェントを監視対象にインストールすることなく監視が可能であり,エージェントを使用することでサービスの詳細なステータスの監視も可能となる. - \subsection{Mattermost} オープンソースのセルフホスティング式のチャットサービスである. 類似プロダクトにSlackがあり,差別点としてはサーバーから自身で構築するためチャットに保存期間の上限が無い. @@ -55,7 +50,7 @@ \subsection{Podman} RedHat社が開発したdocker互換のコンテナ管理ツールである. RHEL(Red Hat Enterprise Linux)のversion7.6以降からはdockerのサポートが切れる事からコンテナ管理ツールとして採用された. -またGolangでpodmanを操作できる関数群を提供しており,イメージやコンテナ,ネットワークなどの操作に使用できる機能を提供している. +またGolangでpodmanを操作できる関数群を提供しており,イメージやコンテナ,ネットワークなどの操作に使用できる \subsection{ハイパーバイザー型}