Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Prometheus setup with long term storage
Search
Ryotaro Tamura
July 22, 2019
Programming
6k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Prometheus setup with long term storage
Ryotaro Tamura
July 22, 2019
More Decks by Ryotaro Tamura
See All by Ryotaro Tamura
BlockNoteとDuckDB-WASMでつくる、ブラウザ内データ分析環境の設計
tokibi
0
130
nanafshiを使って簡単に作るFUSEの動的ファイル
tokibi
0
620
monotips #3 - fzfる
tokibi
0
170
IAMロールはどこから来て、どこへ行くのか / Where do IAM rolls come from and where to go?
tokibi
2
2.7k
Other Decks in Programming
See All in Programming
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
620
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
120
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
160
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
280
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
170
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
240
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
680
What's New in Android 2026
veronikapj
0
230
Google Apps Script で Ruby を動かす
kawahara
0
110
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
560
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
Android CLI
fornewid
0
190
Featured
See All Featured
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
570
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
3
370
Documentation Writing (for coders)
carmenintech
77
5.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
GraphQLとの向き合い方2022年版
quramy
50
15k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Transcript
ాଜཾଠ(.01FQBCP *OD $MPVE/BUJWF%BZT5PLZP 1SPNFUIFVTTFUVQ XJUIMPOHUFSNTUPSBHF
γχΞΤϯδχΞ ాଜཾଠ!@UPLJCJ ϗεςΟϯάࣄۀ෦ϗεςΟϯάάϧʔϓϚωʔδυΫϥυνʔϜ
࣍ wϝτϦΫεͷظอଘʹऔΓΜͩഎܠ w1SPNFUIFVTͷ࣌ܥྻσʔλϕʔεʹؔ͢Δղઆ wظอଘͷखஈͱݕ౼ w 3FNPUF4UPSBHF w 5IBOPT w5IBOPTӡ༻ධՁ
എܠ
None
-0-*101ϚωʔδυΫϥυ wίϯςφϕʔεͷϗεςΟϯάαʔϏε w!NBUTVNPUPSZͷߟҊͨ͠'BTU$POUBJOFSΞʔΩςΫνϟΛݩʹ։ൃ wϦΫΤετܖػͰίϯςφ͕ىಈ wϦΫΤετͷདྷͳ͍ίϯςφҰఆظؒͰఀࢭ͢Δ wߴूੵ
ϝτϦΫεͷඞཁੑ wΦʔτεέʔϧػೳͷఏڙ wϢʔβڥͷϦιʔεར༻ঢ়گαʔϏεଆͰࢹ wඞཁʹԠͯ͡ίϯςφΛ૿ͯ͠ෛՙࢄΛࢼΈΔ wϢʔβ͕ઃఆ͢ΔͷΦʔτεέʔϧͷՄ൱ͷΈ w՝ۚࠜڌͱͳΔࣈͷఏڙ wϢʔβͷٻֹۚίϯςφͷىಈճΛݩʹܾఆ͢Δ wεέʔϧͨ࣌͠ࠁཧ༝ͷఏࣔ
None
1SPNFUIFVT wαʔϏεڥϢʔβڥͷ྆ํͰࢹʹ1SPNFUIFVTΛ༻ wOPEF@FYQPSUFS DBEWJTPS NUBJM FUD wϝτϦΫεͷऩूࣗମಛʹͳ͘ӡ༻த wҰํͰ wΫϥελϦϯάϨϓϦέʔγϣϯͷػೳఏڙ͍ͯ͠ͳ͍ wσΟεΫϊʔυোͷٱੑجຊతʹείʔϓ֎
ࠔͬͨ͜ͱ wσΟεΫϊʔυͷোͷٱੑ wߏΛऔ͍ͬͯͯɺͦΕͧΕͷ1SPNFUIFVTݸผʹಈ࡞͢Δ wෳϊʔυͰ͕ൃੜ͢ΔͱશͳσʔλΛ࣋ͭϊʔυ͕ଘࡏ͠ͳ͘ͳΔ
ࠔͬͨ͜ͱ wΦʔτεέʔϧͷਫ਼Λ্͍͛ͨ wΑΓଟ͘ͷϝτϦοΫΛɺΑΓִ͍ؒͰऩू͍ͨ͠ wϝϞϦͷར༻ྔ͕ͲΜͲΜ૿͍͑ͯ͘ w͋Δఔ·ͰεέʔϧΞοϓՄೳ w͍ͣΕΫϥελϩʔϧผʹ1SPNFUIFVTΛࢄ͍ͨ͠
ඞཁͳͷ wෳͷ1SPNFUIFVTͷ্ʹߏங͞ΕͨάϩʔόϧϏϡʔ wظؒʹͬͯϝτϦοΫΛอଘ͢ΔετΞ wߴՄ༻ wߴٱ
1SPNFUIFVTͷ ࣌ܥྻσʔλϕʔεʹ͍ͭͯ
5JNF4FSJFT
5JNF4FSJFT w5JNF w࣌ؒͷܦաʹͬͯFYQPSUFS͔Βͷऩू͕࣮ࢪ͞ΕΔʹ૿Ճ wऩूִؒϝτϦοΫʹΑͬͯҟͳΔ w4FSJFT wऩू͢ΔϝτϦοΫʹ༩͞ΕͨϥϕϧͷΈ߹Θ͕ͤҰக͢Δͷ wFYQPSUFSͷ૿ݮͷଞʹɺΠϯελϯεͷ૿ݮʹΑͬͯมಈ w4BNQMF w5JNFͱ4FSJFTͷަࠩ ϝτϦοΫͷ࠷খ୯Ґ
5JNF4FSJFT http_requests_total{instance="webproxy-1", code="200", method="get", path="/"} http_requests_total{instance=“webproxy-1", code="200", method="get", path=“/status"} http_requests_total{instance="webproxy-3",
code="200", method="get", path="/status"} {__name__="http_requests_total", instance="webproxy-1", code="200", method="get", path="/"} {__name__="http_requests_total", instance="webproxy-1", code="200", method="get", path=“/status"} {__name__="http_requests_total", instance="webproxy-3", code="200", method="get", path="/status"} ϝτϦοΫͷ໊લ෦తʹϥϕϧ ϥϕϧऩूͨ͠ϝτϦοΫʹ༩͞Εͨใ
#MPDL
#MPDL wऩूͨ͠σʔλҰఆִؒͰ#MPDLͱݺΕΔཧతͳմʹ·ͱΊΒΕΔ
#MPDL w#MPDLʹ)FBE#MPDLͱͦΕҎ֎ͷछྨ͕ଘࡏ͢Δ
#MPDL w)FBE#MPDL wϝϞϦ্ʹଘࡏ͢Δ w།ҰهՄೳͳ#MPDL w#MPDL wҰఆظ͕ؒܦաͯ͠σΟεΫ্ʹӬଓԽ͞Εͨͷ wهෆՄ wมߋ͕Ճ͑ΒΕΔͷ$PNQBDUJPOͱআ࣌ͷΈ ޙड़
ӬଓԽ w8"- 8SJUF"IFBE-PH w1SPNFUIFVTऩूͨ͠σʔλΛॳΊʹ)FBE#MPDLʹॻ͖ࠐΉ wϝϞϦ্ʹ͋ΔͷͰҟৗऴྃͰ༧ظͤͣشൃ͢ΔՄೳੑ͕͋Δ wσʔλͷࣦΛ͙ͨΊʹ8"-ϑΝΠϧஞ࣍ॻ͖ࠐΈ wѹॖߦΘͣ3BXσʔλͷ··ͳͷͰαΠζେ͖Ί w࠶ىಈ࣌ʹ8"-ϑΝΠϧͷ༰ΛϝϞϦʹల։͢Εϓϩηε͕ऴྃͨ͠ ࣌ͷঢ়ଶʹΔ
ӬଓԽ w#MPDL wҰఆظؒ σϑΥϧτͰ࣌ؒ Ͱ)FBE#MPDLΛσΟεΫ্ʹӬଓԽ wҎԼͷσʔλΛؚΉ wNFUBKTPO#MPDLͷϝλใ wJOEFYϥϕϧͱ͔ΒDIVOLͷϙδγϣϯΛಛఆ͢ΔసஔΠϯσοΫε wDIVOL֤4FSJFTͷαϯϓϧΛ·ͱΊͨͷ wUPNCTUPOFTআ͞ΕͨϝτϦΫεͷσʔλ
wͦΕͧΕͷ#MPDLશʹಠཱͨ࣌͠ܥྻσʔλϕʔεͱͯ͠ৼΔ͏
ӬଓԽ #MPDLͷߏ NFUBKTPOͷ༰
*OEFY w֤#MPDLͷதͰ4FSJFTʹݻ༗ͷ*%ׂ͕ΓৼΒΕ͍ͯΔ http_requests_total{instance="webproxy-1", code="200", method="get", path="/"} http_requests_total{instance=“webproxy-1", code="200", method="get", path=“/status"}
http_requests_total{instance="webproxy-3", code="200", method="get", path="/status"} ID: 4 ID: 5 ID: 10 w*OEFYϥϕϧͱͷશΈ߹ΘͤʹରԠ͢ΔιʔτࡁΈͷ*%ϦετΛ࣋ͭ code=“200”: [ 3, 4, 5, 8, 10 ... ] path=“/“: [ 2, 4, 100, 901 ... ] path=“/status”: [ 5, 10, 11, 125, 12099 ... ] ...
code=“200”: [ 3, 4, 5, 8, 10 ... ] path=“/“:
[ 2, 4, 100, 901 ... ] path=“/status”: [ 5, 10, 11, 125, 12099 ... ] *OEFY w*OEFYϥϕϧͱͷશΈ߹ΘͤʹରԠ͢ΔιʔτࡁΈϦετΛ࣋ͭ w1SPN2-Ͱࢦఆ͞ΕͨϥϕϧͷϦετΛऔಘͯ͠ڞ௨͢Δ*%Λಛఆ PromQL: http_requests_total{code=“200”, path=“/status“} code=“200”: [ 3, 4, 5, 8, 10 ... ] path=“/status”: [ 5, 10, 11, 125, 12099 ... ] intersect: [ 5, 10 ]
1SPN2-࣮ߦ࣌ͷେ·͔ͳྲྀΕ ࢦఆظؒͷσʔλΛؚΉ#MPDLΛNFUBKTPO Λࢀরͯ͠ಛఆ *OEFY͔Β݅ʹҰக͢Δ4FSJFTͷ*%Λಛఆ 4FSJFTͷ*%͔Β$IVOLͷϙδγϣϯΛಛఆ͠ ͯαϯϓϧΛऔಘ
ରͷશ#MPDL͔Βಘͨ݁ՌΛϚʔδ #MPDL୯ମͰΫΤϦͷ࣮ߦʹ ඞཁͳใ͕શͯἧ͍ͬͯΔ
$PNQBDUJPO wӬଓԽ͞Εͨ#MPDLΛఆظతʹ·ͱΊΔ࡞ۀ wతΫΤϦͷޮԽ wΫΤϦ࣮ߦ࣌ෳͷ#MPDL͔ΒσʔλΛऔಘͯ͠Ϛʔδ͢Δ wظؒʹΔΫΤϦΫΤϦͷ߹ɺ͜ͷ࡞ۀΛେྔͷ#MPDLʹରͯ͠ߦ͏ͷ Ͱޮ͕ѱ͍
$PNQBDUJPO
$PNQBDUJPO
3FUFOUJPO wอ࣋ظؒΛ͑ͨ#MPDLআ͞ΕΔ
༨ஊNNBQ w1SPNFUIFVTͷԾϝϞϦ ཧϝϞϦ(# ԾϝϞϦ(#
༨ஊNNBQ wશ#MPDLͷJOEFYͱDIVOL͕ԾϝϞϦۭؒʹϚοϐϯά͞Ε͍ͯΔ
༨ஊNNBQ wΫΤϦ࣮ߦͰ#MPDLΛࢀরͨ࣌͠ʹ04͕σΟεΫ͔ΒϖʔδΛಡΈࠐΉ wଞͷ༻్͕ཧϝϞϦΛѹഭͨ࣌͠04ͷஅͰϖʔδ͕͍ग़͞ΕΔ w04ʹϝϞϦͷཧΛҕͶ͍ͯΔ
ظอଘͷखஈͱݕ౼
3FNPUF4UPSBHF
3FNPUF4UPSBHFޙड़ͷཧ༝͔Β ༻͠ͳ͔ͬͨͨΊϦϑΝϨϯεతͳ༰Ͱ͢
3FNPUF4UPSBHF wαʔυύʔςΟͷ֎෦ετϨʔδʹऩूͨ͠αϯϓϧΛॻ͖ࠐΈಡΈࠐΈ wετϨʔδ͕3FNPUF8SJUF3FBEͷ)551ϦΫΤετʹωΠςΟϒͰରԠ͠ ͍ͯΔ߹ΤϯυϙΠϯτΛࢦఆ͢Δ͚ͩ wରԠ͍ͯ͠ͳ͍߹อଘՄೳͳܗࣜʹม͢ΔΞμϓλʔΛ༻ IUUQTQSPNFUIFVTJPEPDTQSPNFUIFVTMBUFTUTUPSBHFSFNPUFTUPSBHFJOUFHSBUJPOT
3FNPUF4UPSBHF wετϨʔδʹΑͬͯXSJUFͷΈՄೳ ͳͷ wXSJUFͷΈͷετϨʔδ1SPN2-Λ αϙʔτ͍ͯ͠ͳ͍ͷͰɺετϨʔ δ͕ରԠ͢ΔΫΤϦͰࢀর͢Δ IUUQTQSPNFUIFVTJPEPDTPQFSBUJOHJOUFHSBUJPOTSFNPUFFOEQPJOUTBOETUPSBHF
3FNPUF4UPSBHFΛஅ೦ͨ͠ཧ༝ wW·Ͱͷ wऩू͞ΕͨαϯϓϧΛ3FNPUF8SJUFͷΩϡʔʹόοϑΝ͍ͯͨ͠ wΩϡʔʹαϯϓϧ͕ཷ·ΔͱϝϞϦΛফඅ͍ͯ͘͠ wΩϡʔ͔ΒᷓΕͨσʔλૹ৴͞ΕͣʹࣦΘΕΔ
3FNPUF4UPSBHFΛஅ೦ͨ͠ཧ༝ w3FNPUF4UPSBHFͷԠԆμϯൃੜ࣌ͷϝϞϦফඅྔ wࢲୡͷڥͰ࣌ؒʹऩू͢Δαϯϓϧίϯςφ 4FSJFT ͷ૿ݮ ʹΑͬͯมಈ͢ΔͨΊ༧ଌ͕͍͠ wΩϡʔ͕େ͖͗͢Δͱ࠷େϝϞϦফඅྔ͕૿͑ͯ00.Λى͜͢Մೳੑ͕͋Δ wΩϡʔ͕খ͗͢͞Δͱαϯϓϧ͕ᷓΕͯσʔλ͕ࣦΘΕΔ wԽ͞Εͨ1SPNFUIFVTಉִؒ͡Ͱಉ͡ϝτϦΫεΛऩू͢Δ wಉ͡ઃఆͰಈ͘1SPNFUIFVTͰಉ࣌ʹ00.͕ൃੜ͢ΔՄೳੑ͕ߴͦ͏
wσʔλ͕શ͘ऩूͰ͖ͳ͍λΠϛϯά͕ൃੜ͢Δ͔
8"-CBTFESFNPUFXSJUF wW͔Βಋೖ wWҎલऩूͨ͠αϯϓϧΛΤϯΩϡʔ wWҎ߱8"-͔Βஞ࣍ಡΈऔͬͯΤϯΩϡʔ w8"-ͷϙΠϯλΛอ࣋͠ɺॻ͖ࠐΈͷޭʹԊͬͯϙΠϯλΛલʹਐΊΔ w1SPNFUIFVTͷϝϞϦΛେ͖͘ফඅ͢Δ༻్͕ݮͬͨ w)FBE#MPDL wΫΤϦ࣮ߦ࣌ʹσΟεΫ͔Βϩʔυ͞ΕΔϖʔδ w3FNPUF8SJUF2VFVF
8"-CBTFESFNPUFXSJUF WҎલ WҎ߱
8"-CBTFESFNPUFXSJUF
$PSUFYͷհ
$PSUFY w1SPNFUIFVTͷͨΊͷετϨʔδ w)PSJ[POUBMMZTDBMBCMF w)JHIMZ"WBJMBCMF w.VMUJUFOBOU w-POHUFSNTUPSBHF IUUQTHJUIVCDPNDPSUFYQSPKFDUDPSUFYCMPCNBTUFSJNHTMPHPQOH
IUUQTHJUIVCDPNDPSUFYQSPKFDUDPSUFYCMPCNBTUFSEPDTBSDIJUFDUVSFQOH
$PSUFY wओཁͳίϯϙʔωϯτͷհ w%JTUSJCVUPS w*OHFTUFS w2VFSZ'SPOUFOE w2VFSJFS
IUUQTHJUIVCDPNDPSUFYQSPKFDUDPSUFYCMPCNBTUFSEPDTBSDIJUFDUVSFQOH
%JTUSJCVUPS w3FNPUF8SJUF࣌ͷ࠷લஈʹҐஔ͢ΔαʔϏε wࢄϋογϡςʔϒϧΛ༻͍ͯ*OHFTUFSʹϦΫΤετΛৼΓ͚Δ wϋογϡϦϯά$POTVMʹอଘ wϋογϡؔʹ͞ΕΔཁૉͲͪΒ͔ࢦఆՄೳ wϝτϦοΫ໊ ςφϯτ*% w4FSJFTͷશϥϕϧ ςφϯτ*% wޙऀͷํ͕ࢄ͍͕͢͠ɺΫΤϦ࣮ߦ࣌ʹෳͷ*OHFTUFSʹ߹͕ͤඞཁ
wεςʔτϨεͰਫฏʹεέʔϧ͢Δ
IUUQTHJUIVCDPNDPSUFYQSPKFDUDPSUFYCMPCNBTUFSEPDTBSDIJUFDUVSFQOH
*OHFTUFS w%JTUSJCVUPS͔Βड͚औͬͨαϯϓϧΛ$IVOLTUPSFʹอଘ͢Δ w*OEFY%ZOBNP%# #JHUBCMF $BTTBOESB w$IVOL%ZOBNP%# #JHUBCMF $BTTBOESB ($4 4
wաڈ࣌ؒͷαϯϓϧΛอ࣋͢ΔηϛεςʔτϑϧͳαʔϏε wۙͷσʔλಡΈࠐΈͷߴԽ w$IVOLTUPSFͷॻ͖ࠐΈ૿෯Λճආ 8SJUFEFBNQMJpDBUJPO wϊʔυجຊతʹಠཱͯ͠ಈ࡞͢Δ͕ɺϩʔϦϯάΞοϓσʔτ࣌ͷΈྫ֎త ʹάϧʔϓ͔Βग़Δϊʔυ͕ࢀՃ͢ΔϊʔυʹΠϯϝϞϦͷσʔλΛసૹ͢Δ
ॻ͖ࠐΈ૿෯ wྫ%ZOBNP%#ͷ8$6 8SJUF$BQBDJUZ6OJU w8$6͋ͨΓ,#·Ͱͷॻ͖ࠐΈ͕ඵؒճՄೳ wςʔϒϧʹରͯ͠8$6ͷΛࢦఆ͢Δ ར༻ྉۚʹӨڹ w,#ͷॻ͖ࠐΈΛճͰߦ͏߹8$6Λফඅ͢Δ wॻ͖ࠐΈαΠζͷΓ্͛ΒΕΔ
,#ˠ,# wখ͍͞αΠζͷσʔλΛࡉ͔͘ॻ͖ࠐΜͰ͍Δͱ8$6ΛΑΓଟ͘ফඅ͢Δ w,#Λճॻ͖ࠐΉͱ8$6ফඅ w,#ʹ·ͱΊͯճͰॻ͖ࠐΉͱ8$6ফඅ
IUUQTHJUIVCDPNDPSUFYQSPKFDUDPSUFYCMPCNBTUFSEPDTBSDIJUFDUVSFQOH
2VFSJFS w1SPN2-Λ࣮ࡍʹධՁͯ͠αϯϓϧΛऔಘ͢ΔαʔϏε wۙͷσʔλ*OHFTUFS͔Βऔಘ wݹ͍σʔλ$IVOLTUPSF͔Βऔಘ wެࣜͷυΩϡϝϯτʹߦ͙Β͍͔͠આ໌͕ॻ͔Ε͍ͯͳ͍
IUUQTHJUIVCDPNDPSUFYQSPKFDUDPSUFYCMPCNBTUFSEPDTBSDIJUFDUVSFQOH
2VFSZ'SPOUFOE w0QUJPOBMͳαʔϏεͰɺΫΤϦ࣮ߦ࣌ͷޮԽΛਤΔ w2VFVFJOHࣦഊͨ͠ΫΤϦͷϦτϥΠ 2VFSJFSͷෛՙࢄ w4QMJUUJOHظؒͷΫΤϦΛ୯Ґʹղ֤ͯ͠2VFSJFSʹྲྀ͢ w୯Ұͷ2VFSJFSͷภΓΛͳͯ͘͠00.ͷൃੜΛࢭ w֤2VFSJFS͔Βड͚औͬͨ݁ՌϚʔδ͞ΕΔ w$BDIJOHΫΤϦ݁ՌͷΩϟογϡ wಉ༷ͷΫΤϦΛ࠶࣮ߦ͢Δࡍલճ࣮ߦ͍ͯ͠ͳ͍࣌ؒͷΈऔಘͯ͠ ΩϟογϡͱϚʔδ
5IBOPT
5IBOPT w1SPNFUIFVTͷ#MPDLಠཱͨ͠ σʔλϕʔεͱͯ͠ৼΔ͏ wͰϩʔΧϧετϨʔδʹແͯ͘ ྑ͍ͷͰʁ w#MPDLΛΦϒδΣΫτετϨʔδʹ ίϐʔ͢Δ w1SPNFUIFVTͱΦϒδΣΫτετ Ϩʔδ্ͷσʔλʹରͯ͠ಁաతʹ ΫΤϦΛ࣮ߦ͢ΔڥΛߏங
IUUQTHJUIVCDPNUIBOPTJPUIBOPTCMPCNBTUFSEPDTJNH 5IBOPTMPHP@GVMMNFEJVNQOH
IUUQTHJUIVCDPNJNQSPCBCMFFOHUIBOPTCMPCNBTUFSEPDTJNHBSDIKQH
5IBOPT wओཁίϯϙʔωϯτͷղઆ w4JEFDBS w$PNQBDUPS w4UPSF(BUFXBZ w2VFSJFS w3VMFS
IUUQTHJUIVCDPNJNQSPCBCMFFOHUIBOPTCMPCNBTUFSEPDTJNHBSDIKQH
4JEFDBS w1SPNFUIFVTͷ4JEFDBSͱͯ͠ಈ͘ϓϩηε w4IJQQFS w#MPDLΛΦϒδΣΫτετϨʔδʹΞοϓϩʔυ wJOEFY DIVOLͦͷ·· wNFUBKTPOʹ5IBOPTಛ༗ͷใΛՃ w4UPSF"1* w2VFSJFS͔ΒͷϦΫΤετʹԠͯ͡ϩʔΧϧͷ1SPNFUIFVTʹΫΤϦΛ࣮ߦ
IUUQTHJUIVCDPNJNQSPCBCMFFOHUIBOPTCMPCNBTUFSEPDTJNHBSDIKQH
4JEFDBS ϩʔΧϧͷNFUBKTPO ΦϒδΣΫτετϨʔδͷNFUBKTPO
IUUQTHJUIVCDPNJNQSPCBCMFFOHUIBOPTCMPCNBTUFSEPDTJNHBSDIKQH
$PNQBDUPS w$PNQBDUJPO w4JEFDBS࡞͞Εͨ#MPDLΛग़དྷΔ͚ͩૣ͘Ξοϓϩʔυ͢Δ wϩʔΧϧͰߦΘΕΔ$PNQBDUJPOͷΈ͔Β֎ΕΔ wΦϒδΣΫτετϨʔδͷ#MPDLʹಉ༷ͷॲཧΛ࣮ࢪ͢Δϓϩηε͕ඞཁ w%PXOTBNQMJOH w ࣌ؒͷ ݻఆ Ͱ#MPDLͷμϯαϯϓϦϯάΛߦ͏
w࣌ؒͷ֤ूܭ $PVOU 4VN .BY .JO $PVOUFS Λอଘ
IUUQTHJUIVCDPNJNQSPCBCMFFOHUIBOPTCMPCNBTUFSEPDTJNHBSDIKQH
4UPSF(BUFXBZ w4UPSF"1* wΦϒδΣΫτετϨʔδͷσʔλΛࢀর͢ΔΤϯυϙΠϯτ w4JEFDBSͷ4UPSF"1*ͱಉ͡ΠϯλʔϑΣʔε
IUUQTHJUIVCDPNJNQSPCBCMFFOHUIBOPTCMPCNBTUFSEPDTJNHBSDIKQH
2VFSJFS w2VFSZ"1* wάϩʔόϧϏϡʔΛఏڙ͢Δίϯϙʔωϯτ w1SPNFUIFVTYʹޓੑͷ͋Δ2VFSZ"1*Λެ։ w֤4UPSF"1*ͷσʔλΛݩʹΫΤϦΛධՁ͢Δ w4UPSFىಈ࣌ʹࢦఆ͢Δ͔ɺ%/4 'JMFϕʔεͰαʔϏεσΟεΧόϦ w%FEVQMJDBUJPO w֤4UPSF"1*͔Βऔಘͨ͠σʔλΛϨϓϦΧϥϕϧΛݩʹॏෳഉআ͢Δ
2VFSJFS ۙͷσʔλ աڈͷσʔλ ଞͷ5IBOPT Ϋϥελͷσʔλ
2VFSJFS w2VFSJFSͷࢀর͢Δ4UPSF͕4UPSF(BUFXBZ͚ͩͷঢ়ଶͰಈ͔ͯ͠ΈΔͱ
2VFSJFS w2VFSJFSͷࢀর͢Δ4UPSF͕4UPSF(BUFXBZ͚ͩͷঢ়ଶͰಈ͔ͯ͠ΈΔͱ #MPDLʹͳ͍ͬͯͳ͍ ۙͷσʔλݟ͑ͳ͍ 4JEFDBSͷࢀরΛՃ͢ ΔͱશͳάϥϑʹͳΔ
%FEVQMJDBUJPO w1SPNFUIFVTͷઃఆʹFYUFSOBM@MBCFMTΛՃ w5IBOPT2VFSJFSىಈίϚϯυͰॏෳഉআ༻ͷϥϕϧΛࢦఆ
%FEVQMJDBUJPO up{job="prometheus",env="2",cluster="1",replica="A"} 1 up{job="prometheus",env="2",cluster="1",replica="B"} 1 up{job="prometheus",env="2",cluster="2",replica="A"} 1 up{job="prometheus",env="2",cluster="1"} 1 up{job="prometheus",env="2",cluster="2"}
1 ϨϓϦΧϥϕϧҎ֎ͷϥϕϧ͕શͯ ಉ͡αϯϓϧ͚ͭͩΛ͢
IUUQTHJUIVCDPNJNQSPCBCMFFOHUIBOPTCMPCNBTUFSEPDTJNHBSDIKQH
3VMFS w5IBOPTΫϥελͷσʔλʹରͯ͠SFDPSEJOHBMFSUͷϧʔϧΛద༻͍ͨ͠ ߹ʹ༻ w2VFSJFSܦ༝Ͱఆظతʹ1SPN2-ΛධՁ͢Δίϯϙʔωϯτ w1SPNFUIFVTͷϩʔΧϧʹσʔλΔͷͰطଘͷϧʔϧ͑Δ wϩʔΧϧͷσʔλ͚ͩͰෆेͳ߹ʹ3VMFSΛ༻ wͭͷΫϥελͷͭͰҟৗ͕ൃੜͨ͠ͱ͖ʹΞϥʔτΛൃՐ͍ͤͨ͞ wϩʔΧϧετϨʔδͷอ࣋ظؒΛ͑ΔൣғͷσʔλΛରʹ͍ͨ͠ wFUD
5IBOPTͷӡ༻ධՁ
ӡ༻ίετ w5IBOPTͷίϯϙʔωϯτ΄ͱΜͲεςʔτΛ࣋ͨͳ͍ w$PNQBDUPSҎ֎؆୯ʹԽՄೳ wϑϧϚωʔδυͷΦϒδΣΫτετϨʔδΛ༻͢Δ߹ӡ༻ίετ͕ඇৗ ʹ͍ w࣌Ͱ($4 4 "[VSF4UPSBHF͕4UBCMF wIUUQTHJUIVCDPNUIBOPTJPUIBOPTCMPCNBTUFSEPDTTUPSBHFNE
ΫΤϦͷ࣮ߦ wΦϒδΣΫτετϨʔδʹ#MPDLΛஔ͘ͱɺϑΝΠϧͷμϯϩʔυ͕ඞཁͰ ΫΤϦͷ࣮ߦ͕͘ͳΔͷͰ wରظ͕ؒఔͳΒ΄ͱΜͲԆײ͡ΒΕͳ͍ ମײ w4UPSF(BUFXBZ#MPDLͷ*OEFYΛϩʔΧϧʹΩϟογϡ͢Δ wΦϒδΣΫτετϨʔδ͔Βຖճऔಘ͠ͳ͍ͷͰ$IVOLͷಛఆߴ w#MPDLͷσʔλ$PNQBDUJPOͷ࣌Ҏ֎ෆมͳͷͰΩϟογϡ͍͢͠ w$IVOLͷऔಘ࣌ϑΝΠϧશମΛμϯϩʔυ͢Δඞཁͳ͍
wόΠτ୯ҐͰൣғࢦఆͯ͠μϯϩʔυՄೳ
খ࢝͘͞ΊΔ w͍͖ͳΓશͯͷίϯϙʔωϯτΛ͍࢝ΊΔඞཁͳ͍ w͠Խ͞Εͨ1SPNFUIFVT͕ࠓͷڥʹ͋ΔͳΒ wͱΓ͋͑ͣ#MPDLΞοϓϩʔυͷઃఆೖΕͣʹ4JEFDBSΛಈ͔ͯ͠ΈΔ w2VFSJFSܦ༝Ͱࢀর͢Ε྆ऀͷҧ͍Λҙࣝ͢Δඞཁ͕ͳ͘ͳΔ
খ࢝͘͞ΊΔ wظอଘ͕ඞཁͳΒΦϒδΣΫτετϨʔδʹ#MPDLͷΞοϓϩʔυΛ։࢝
খ࢝͘͞ΊΔ w$PNQBDUPSΛՃͯ͠ఆظతʹ$PNQBDUJPO%PXOTBNQMJOH3FUFOUJPO
খ࢝͘͞ΊΔ w4UPSF(BUFXBZΛՃͯ͠2VFSJFS͔Βࢀর͢ΕάϩʔόϧϏϡʔͷ
ҙ w1SPNFUIFVTΛશʹεςʔτϨεʹͰ͖ΔΘ͚Ͱͳ͍ w4JEFDBS͕ΞοϓϩʔυͰ͖ΔͷӬଓԽ͞Εͨ#MPDLͷΈ wۙ࣌ؒఔͷσʔλ1SPNFUIFVTͷϩʔΧϧετϨʔδʹ͔͠ଘࡏ͠ͳ͍ wΦϓγϣϯͰ#MPDLԽͷλΠϛϯάΛม͑Δ͜ͱͰ͖Δ wTUPSBHFUTECNJOCMPDLEVSBUJPOI wTUPSBHFUTECNBYCMPDLEVSBUJPOI w5IBOPTW͔Β৽͘͠3FDFJWFSίϯϙʔωϯτ͕Ճ wFYQFSJNFOUBM
IUUQTHJUIVCDPNUIBOPTJPUIBOPTCMPCNBTUFSEPDTQSPQPTBMTBQQSPWFE@UIBOPTSFNPUF SFDFJWFNEUFDIOJDBMTVNNBSZPGUIBOPTSFDFJWFSDPNQPOFOU
3VMFSͷϦεΫ w3VMFS͕1SPN2-ΛධՁ͢Δܦ࿏ࢄ͍ͯ͠Δ w3VMFS2VFSJFS4UPSF"1* wΫΤϦ࣮ߦͷ৴པੑ͕͍ͷͰΫϦςΟΧϧͳΞϥʔτͷධՁʹΘͳ͍ wඞཁʹഭΒΕͳ͚Ε1SPNFUIFVTͷϩʔΧϧϧʔϧΛ͓͢͢Ί͢Δ
·ͱΊ
5IBOPT w·ͣ4JEFDBSͱ2VFSJFSΛೖΕΔ͚ͩͰϝϦοτ͋Δ wΦϒδΣΫτετϨʔδؔ࿈ͷઃఆඞཁʹͳͬͨλΠϛϯάͰՃ wϑϧϚωʔδυͳΦϒδΣΫτετϨʔδΛ͑ӡ༻ίετ͍
3FNPUF4UPSBHF w3FNPUF8SJUF͕8"-CBTFEʹͳͬͯඇৗʹ͍͘͢ͳͬͨ w1SPNFUIFVTଆͷઃఆѹతʹ3FNPUF8SJUFͷํָ͕ wઃఆϑΝΠϧʹΤϯυϙΠϯτΛه͢Δ͚ͩ wϦΞϧλΠϜੑߴ͍
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ࠷৽ͷ࠾༻ใΛνΣοΫˠ !QC@SFDSVJU