XNUMX๋
์ ์ ์ด๋ฏธ ํฌ์คํ
์ ํ์๋๋ฐ
[
๋๊ตฌ์๊ฒ ๊ด์ฌ์ ๊ฐ์ง ์ ์์ต๋๊น?
์๊ท๋ชจ ํ์์ ๋๋ ํผ์ ์ผํ๋ ๊ฒฝ์ฐ ์ด๋ ๊ทํ์๊ฒ ํฅ๋ฏธ๋ก์ธ ์ ์์ต๋๋ค. ๋ชจ๋ํฐ๋ง ๊ธฐ๋ฅ์ด ์๊ณ ์ค์ ๋ก ํ์ํ์ง ํ์คํ์ง ์์ต๋๋ค. "๋ํ์์ ์ํ" ์ธ๊ธฐ ์๋ ์ง์งํ ๋ชจ๋ํฐ๋ง์ ์๋ํ์ง๋ง ์ด๋ป๊ฒ๋ "์ฑ๊ณตํ์ง ๋ชปํ๊ฑฐ๋" ๊ฑฐ์ ๊ธฐ๋ณธ ๊ตฌ์ฑ์ผ๋ก ์๋ํ๊ณ ์ธ์์ ํฌ๊ฒ ๋ฐ๊พธ์ง ์์์ต๋๋ค. ๋ํ ์ ์ฒด ์ง์(๋๋ ๋ถ์)์ ํ ๋นํ์ฌ ํ๋ฃจ์ ์ต์ ๋ ์๊ฐ ์ด์ ๋ชจ๋ํฐ๋ง ๋์๋ณด๋๋ฅผ ๋ชจ๋ํฐ๋งํ๊ฑฐ๋ ๊ตฌ์ฑํ ๊ณํ์ด ์๋ ๊ฒฝ์ฐ์๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค.
okrr์ด ํน์ดํ ์ด์
๋ค์์ผ๋ก ๋ค๋ฅธ ๋ชจ๋ํฐ๋ง ์์คํ ๊ณผ ๊ตฌ๋ณ๋๋ okerra์ ํฅ๋ฏธ๋ก์ด ๊ธฐ๋ฅ์ ๋ณด์ฌ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
Okerr๋ ํ์ด๋ธ๋ฆฌ๋ ๋ชจ๋ํฐ๋ง์ ๋๋ค
๋ด๋ถ ๋ชจ๋ํฐ๋ง ์ค์๋ ๋ชจ๋ํฐ๋ง ์๋ฒ์ ๋ฐ์ดํฐ(์: ์ฌ์ ๋์คํฌ ๊ณต๊ฐ)๋ฅผ ์ ์กํ๋ "์์ด์ ํธ"๊ฐ ๋ชจ๋ํฐ๋ง๋๋ ์ปดํจํฐ์์ ์คํ๋ฉ๋๋ค. ์ธ๋ถ์ธ ๊ฒฝ์ฐ ์๋ฒ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ๊ฒ์ฌ๋ฅผ ์ํํฉ๋๋ค(์: ํ ๋๋ ์น ์ฌ์ดํธ ๊ฐ์ฉ์ฑ). ๊ฐ ์ ๊ทผ ๋ฐฉ์์๋ ํ๊ณ๊ฐ ์์ต๋๋ค. Okerr๋ ๋ ๊ฐ์ง ์ต์ ์ ๋ชจ๋ ์ฌ์ฉํฉ๋๋ค. ์๋ฒ ๋ด๋ถ ์ ๊ฒ์ ์ด๊ฒฝ๋(30Kb) ์์ด์ ํธ๋ ์์ฒด ์คํฌ๋ฆฝํธ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ์ํ๋๋ฉฐ, ๋คํธ์ํฌ ์ ๊ฒ์ ๊ฐ๊ตญ์ okerr ์ผ์๋ฅผ ํตํด ์ํ๋ฉ๋๋ค.
okrr์ ์ํํธ์จ์ด์ผ ๋ฟ๋ง ์๋๋ผ ์๋น์ค์ด๊ธฐ๋ ํฉ๋๋ค.
๋ชจ๋ ๋ชจ๋ํฐ๋ง์ ์๋ฒ ๋ถ๋ถ์ ๊ท๋ชจ๊ฐ ํฌ๊ณ ๋ณต์กํ๋ฉฐ ์ค์น ๋ฐ ๊ตฌ์ฑ์ด ์ด๋ ต๊ณ ๋ฆฌ์์ค๊ฐ ํ์ํฉ๋๋ค. okrr์ ์ฌ์ฉํ๋ฉด ์์ฒด ๋ชจ๋ํฐ๋ง ์๋ฒ(๋ฌด๋ฃ, ์คํ ์์ค)๋ฅผ ์ค์นํ ์๋ ์๊ณ , ํด๋ผ์ด์ธํธ ๋ถ๋ถ๋ง ์ฌ์ฉํ๊ณ ์๋ฒ ์๋น์ค๋ฅผ ์ฌ์ฉํ ์๋ ์์ต๋๋ค. ๋ํ ๋ฌด๋ฃ์ ๋๋ค.
๋ชจ๋ํฐ๋ง์ ํตํด ์๋ฒ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ขฐ์ฑ ๋ถ์กฑ์ ๋ณด์ํ๊ณ ์ํํ ์ ์๋ค๋ฉด ์ฒ ํ์ ์ธ ์ง๋ฌธ์ด ๋ฐ์ํฉ๋๋ค. ์ฆ, ๊ฒฝ๋น์์ ๋๊ตฌ์ ๋๊น? ๋ฌธ์ ๊ฐ ์ด๋ค ์ด์ ๋ก๋ ๋ณ๋๋ก ๋๋ ๋ค๋ฅธ ๋ฆฌ์์ค์ ํจ๊ป "์ฃฝ์" ๊ฒฝ์ฐ(์: ๋ฐ์ดํฐ ์ผํฐ ์ฑ๋์ด ์ค๋จ๋ ๊ฒฝ์ฐ) ๋ชจ๋ํฐ๋ง์ ํตํด ๋ฌธ์ ์ ๋ํด ์ด๋ป๊ฒ ์ ์ ์์ต๋๊น? ์ธ๋ถ ์๋น์ค okrr์ ์ฌ์ฉํ๋ฉด ์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋ฉ๋๋ค. ์๋ฒ๊ฐ ์๋ ์ ์ฒด ๋ฐ์ดํฐ ์ผํฐ์ ์ ์์ด ๋ค์ด์ค์ง ์๊ฑฐ๋ ์ข๋น์ ๊ณต๊ฒฉ์ ๋ฐ๋ ๊ฒฝ์ฐ์๋ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ๊ฒ ๋ฉ๋๋ค.
๋ฌผ๋ก oker ์๋ฒ ์์ฒด๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ๋ ์ํ์ด ์์ต๋๋ค. ์ด๋ ์ฌ์ค์ ๋๋ค(์์๋ค์ํผ ์์ ์ฑ์ 90%๋ ํญ์ ๊ฐ๋จํ๊ฒ "๋ฌด๋ฃ"๋ก ์ป์ ์ ์์ผ๋ฉฐ, 99%๋ ์ต์ํ์ ๋ ธ๋ ฅ์ผ๋ก ์ป์ ์ ์์ผ๋ฉฐ ์ดํ 99.9๊ฐ๋ ๋ชจ๋ ๊ธฐํ๊ธ์์ ์ผ๋ก ๋ ์ด๋ ค์์ก์ต๋๋ค.) ๊ทธ๋ฌ๋ ์ฒซ์งธ, ์ด๋ฐ ์ผ์ด ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ ๋ฎ๊ณ ๋์งธ, ์๋ฒ์ ๋ฌธ์ ์ ์ผ์นํ๋ ๊ฒฝ์ฐ์๋ง ๋ฌธ์ ๊ฐ ๋์ ๋์ง ์์ ์ ์์ต๋๋ค. 99.9%์ ์ ๋ขฐ๋๊ฐ ์๊ณ 0.1%(๋๋ฌด ๋์ง ์์ ์ซ์)์ธ ๊ฒฝ์ฐ ๊ฐ์ง๋์ง ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ํ๋ฅ ์ 0.1%/0.0001% = XNUMX%์ ๋๋ค. ๊ฑฐ์ ๋ ธ๋ ฅ์ด๋ ๋น์ฉ ์์ด XNUMX๊ฐ์ XNUMX๋ฅผ ์ ๋ขฐ์ฑ์ ์ถ๊ฐํ๋ ๊ฒ์ ๋งค์ฐ ์ข์ต๋๋ค!
์๋น์คํ ๋ชจ๋ํฐ๋ง์ ๋ ๋ค๋ฅธ ์ฅ์ ์ ํธ์คํ ์ ๊ณต์ ์ฒด๋ ์น ์คํ๋์ค๊ฐ okrr ์๋ฒ๋ฅผ ์ค์นํ๊ณ ์ ๋ฃ ๋๋ ๋ฌด๋ฃ ์ถ๊ฐ ์๋น์ค๋ก ํด๋ผ์ด์ธํธ์ ๋ํ ์ก์ธ์ค๋ฅผ ์ ๊ณตํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ๊ฒฝ์์ ์ฒด์๋ ํธ์คํ ๊ณผ ์น์ฌ์ดํธ๋ง ์์ง๋ง ๊ท์ฌ๋ ๋ชจ๋ํฐ๋ง ๊ธฐ๋ฅ์ ๊ฐ์ถ ์์ ์ ์ธ ํธ์คํ ์ ๋ณด์ ํ๊ณ ์์ต๋๋ค.
Okerr๋ ์งํ์ ๊ดํ ๊ฒ์ ๋๋ค.
ํ์๊ธฐ๋ "์ ๊ตฌ"์ ๋๋ค. ๋ น์(OK) ๋๋ ๋นจ๊ฐ์(ERR)์ ๋ ๊ฐ์ง ์ฃผ์ ์ํ๊ฐ ์์ต๋๋ค. ํ๋ก์ ํธ์๋ ์ฌ๋ฌ ๊ทธ๋ฃนํ๋(์: ์๋ฒ๋ณ) ํ์๊ธฐ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ํ๋ก์ ํธ์ ๋ฉ์ธ ํ์ด์ง์์ ๋ชจ๋ ๊ฒ์ด ๋ น์์ผ๋ก ํ์๋๊ฑฐ๋(๋ซ์ ์ ์์) ๋นจ๊ฐ์์ผ๋ก ์ผ์ ธ ์์ ์ด ํ์ํ ํญ๋ชฉ์ด ์ฆ์ ํ์๋ฉ๋๋ค. ์ด๋ฌํ ์ํ ์ฌ์ด๋ฅผ ์ ํํ ๋ ๊ฒฝ๊ณ ๊ฐ ์ ์ก๋ฉ๋๋ค. ํ๋ฃจ์ ํ ๋ฒ ์ค์ ํ๋ ๋์ ํ๋ก์ ํธ ์์ฝ์ด ์ ์ก๋ฉ๋๋ค.
๊ฐ okrr ํ์๊ธฐ์๋ ์ํ๋ฅผ ๋ณ๊ฒฝํ๋ ์กฐ๊ฑด์ด ๋ด์ฅ๋์ด ์์ต๋๋ค(Zabbix์์๋ ์ด๋ฅผ ํธ๋ฆฌ๊ฑฐ๋ผ๊ณ ํฉ๋๋ค). ์๋ฅผ ๋ค์ด ๋ก๋ ํ๊ท ์ 2 ์ดํ์ฌ์ผ ํฉ๋๋ค(๋ฌผ๋ก ๊ตฌ์ฑ ๊ฐ๋ฅ). ๊ทธ๋ฆฌ๊ณ ๊ฐ ๋ด๋ถ ๊ฒ์ฌ(๋ก๋ ํ๊ท , ๋์คํฌ ์์ ๋ฑ)์ ๋ํด ๊ฐ์ ์ฅ์น๊ฐ ์์ต๋๋ค. ์ด๋ค ์ด์ ๋ก๋ ์ฝ์๋ ์๊ฐ์ ์ฑ๊ณต์ ์ธ ํ์ธ์ ๋ฐ์ง ๋ชปํ ๊ฒฝ์ฐ ์ค๋ฅ๊ฐ ๊ธฐ๋ก๋๊ณ ๊ฒฝ๊ณ ๊ฐ ์ ์ก๋ฉ๋๋ค.
์ฐ๋ฆฌ์ ์ผ๋ฐ์ ์ธ ์ ๋ฌด ํจํด์ ์์นจ์ ์ด๋ฉ์ผ์ ํ์ธํ๊ณ , ๋ค๋ฅธ ํธ์ง๋ค ์ค์์ ์์ฝ์ ๋ณด๋ ๊ฒ์ ๋๋ค(์ผ์ ์์ํ ๋ ์ผ์ ์ ์ก์ต๋๋ค). ๋ชจ๋ ๊ฒ์ด ์ ์์ด๋ฉด ๋ค๋ฅธ ์ค์ํ ์์ ์ ์ํํฉ๋๋ค(๊ทธ๋ฌ๋ ์์ ์ ์ํด okerra ๋์๋ณด๋๋ฅผ ๋น ๋ฅด๊ฒ ์ดํด๋ณด๊ณ ํ์ฌ ๋ชจ๋ ๊ฒ์ด ๋ น์์ธ์ง ํ์ธํ ์ ์์ต๋๋ค). ๊ฒฝ๊ณ ๊ฐ ๋์ฐฉํ๋ฉด ์ฐ๋ฆฌ๋ ๋์ํฉ๋๋ค.
๋ฌผ๋ก ๋จ์ํ "์ ๋ณด" ํ์๊ธฐ๋ฅผ ์ ์งํ๋ ๊ฒ๋ ๊ฐ๋ฅํ์ง๋ง(๋ชจ๋ํฐ๋ง์์ ๋คํธ์ํฌ ๊ทธ๋ฆผ์ ๋ณด๊ธฐ ์ํด) ์๋ ๋ชจ๋ํฐ๋ง ๋ฐ ๊ฒฝ๊ณ ์ ์ก์ ์ํ ํ์๊ธฐ๋ฅผ ๊ฐ๋จํ๊ณ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ์์ฑํ๊ธฐ ์ํด ๋ชจ๋ ์์ ์ด ์ํ๋ฉ๋๋ค.
okrr์ ์ค์ ํ๋ ๋ชฉ์ ์ ๊ฒฝ๊ณ ์ ์์ผ๋ฏ๋ก XNUMX๋ถ ์์ ํ์๊ธฐ๋ฅผ ๋ง๋ค ์ ์๊ณ XNUMX๋ ๋์ "์ ์๊ธฐ"ํ ์ ์์ผ๋ฉฐ ์ ๋ฐ์ดํธ๋ฅผ ์๋ฝํ ์ ์์ผ๋ฉฐ XNUMX๋ ํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ์ผ์ง๊ณ ์ ์ก๋ฉ๋๋ค. ๊ฒฝ๊ณ . ์งํ๋ฅผ ๋ง๋๋ ๋ฐ XNUMX๋ถ์ ํฌ์ํ ์๊ฐ๋ถํฐ ๋ค๋ฅธ ์ฌ๋๋ณด๋ค ๋จผ์ ๋ฌธ์ ์ ๋ํด ์ฆ์ ์๊ฒ ๋์์ต๋๋ค. ๋๊ตฐ๊ฐ๊ฐ ์์์ฐจ๋ฆฌ๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ๊ณ ์ณค์ ์๋ ์์ต๋๋ค. ๋นจ๋ฆฌ ์ผ์ด๋ ๊ฒ์ ๋จ์ด์ง ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋์ง ์์ต๋๋ค!
ะะตะทะพะฟะฐัะฝะพััั
์ ๋ขฐ์ฑ์ ๋์ด๊ธฐ ์ํด ๋ชจ๋ํฐ๋ง์ ์ค์ ํ๋ค๋ฉด ์ํ๊น์ด ์ผ์ด๊ฒ ์ง๋ง, ๊ฒฐ๊ณผ์ ์ผ๋ก ์ด๋ฅผ ํตํด ๋คํธ์ํฌ๋ฅผ ํตํด ๊ณต๊ฒฉ์ ๋ฐ๊ฒ ๋๊ณ , ๊ฐ์ข
๋ชจ๋ํฐ๋ง ๋๊ตฌ์๋ ๋คํธ์ํฌ ์ทจ์ฝ์ ์ด ๊ฝค ๋ง์ด ์กด์ฌํฉ๋๋ค(
์์ด์ ํธ(ํจํค์ง์ okerrmod
์ ์ฒด ๋ชจ๋ํฐ๋ง ๋ฒ์
์ด์ ์ฐ๋ฆฌ์ ๊ท์น์ okrr๋ก๋ถํฐ ๋ชจ๋ ๊ธฐ์ ์ ๋ฌธ์ ์ ๋ํด ๋ฐฐ์ฐ๋ ๊ฒ์ ๋๋ค. ๊ฐ์๊ธฐ ๊ท์น์ ์๋ฐํ ๊ฒฝ์ฐ(okerr์ ๋ฐ์์ด ์๋ฐํ๊ฑฐ๋(๊ฐ๋ฅํ ๊ฒฝ์ฐ) ์ด๋ฏธ ๋ฐ์ํ์์ ๊ฒฝ๊ณ ํ์ง ์์์ต๋๋ค), okrr์ ๊ฒ์ฌ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์ธ๋ถ ์ ๊ฒ
๋งค์ฐ ์ผ๋ฐ์ ์ธ ์ธํธ:
- ํ
- http ์ํ
- SSL ์ธ์ฆ์์ ์ ํจ์ฑ๊ณผ ์ต์ ์ฑ์ ํ์ธํฉ๋๋ค(๋ง๋ฃ๊ฐ ์๋ฐํ๋ฉด ๊ฒฝ๊ณ ํฉ๋๋ค).
- TCP ํฌํธ์ ๋ฐฐ๋๋ฅผ ์ฝ๋๋ค.
- http grep(ํ์ด์ง์ ํน์ ํ ์คํธ๊ฐ ํฌํจ๋์ด์๋ ์ ๋จ)
- sha1 ํด์๋ฅผ ์ฌ์ฉํ์ฌ ํ์ด์ง ๋ณ๊ฒฝ ์ฌํญ์ ํฌ์ฐฉํฉ๋๋ค.
- DNS(DNS ๋ ์ฝ๋์๋ ํน์ ๊ฐ์ด ์์ด์ผ ํจ)
- WHOIS(๋๋ฉ์ธ์ด ๊ณง ์์๋ ๊ฒฝ์ฐ ๊ฒฝ๊ณ ํฉ๋๋ค)
- ์ํฐ์คํธ DNSBL(50๊ฐ ์ด์์ ์ํฐ์คํธ ๋ธ๋๋ฆฌ์คํธ์ ๋ํด ํธ์คํธ๋ฅผ ๋์์ ํ์ธ)
๋ด๋ถ ์ ๊ฒ
๋ํ ์๋นํ ํ์ค์ ์ธ ์ธํธ์ ๋๋ค(๊ทธ๋ฌ๋ ์ฝ๊ฒ ํ์ฅ ๊ฐ๋ฅ).
- df (์ฌ์ ๋์คํฌ ๊ณต๊ฐ)
- ๋ถํ ํ๊ท
- opentcp(TCP ์ฒญ์ทจ ์์ผ ์ด๊ธฐ - ๋ฌด์ธ๊ฐ๊ฐ ์์๋๊ฑฐ๋ ์ถฉ๋ํ๋ฉด ์๋ฆผ)
- ๊ฐ๋ ์๊ฐ - ์๋ฒ์ ๊ฐ๋ ์๊ฐ์ ๋๋ค. ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ ์๋ฆผ์ ๋ณด๋ ๋๋ค(์: ์๋ฒ๊ฐ ๊ณผ๋ถํ๋จ).
- ํด๋ผ์ด์ธํธ_IP
- dirsize - ์๊ฒฉํ ์ ํ์ ์ ์ฉํ์ง ์๊ณ ๊ฐ์ ๋จธ์ rootfs๊ฐ ํ์ฉ๋ ํฌ๊ธฐ๋ฅผ ์ด๊ณผํ๋ ๊ฒฝ์ฐ์ ์ฌ์ฉ์ ํ ๋๋ ํฐ๋ฆฌ์ ํฌ๊ธฐ๋ฅผ ์ถ์ ํ๋ ๋ฐ ์ฌ์ฉํฉ๋๋ค.
- ๋น์ด ์์ ๋ฐ ๋น์ด ์์ง ์์ - ๋น์ด ์์ด์ผ ํ๋(๋๋ ๋น์ด ์์ง ์์์ผ ํ๋) ํ์ผ์ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ์๋ฅผ ๋ค์ด okrr ์๋ฒ ์์ฒด์ ์ค๋ฅ ๋ก๊ทธ๋ ๋น์ด ์์ด์ผ ํ๋ฉฐ, ๊ทธ ์์ ํ ์ค์ด๋ผ๋ ์์ผ๋ฉด ์๋ฆผ์ ๋ฐ์์ ํ์ธํ๊ฒ ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ฉ์ผ ์๋ฒ์ mail.log๋ ๋น์ด ์์ผ๋ฉด ์ ๋ฉ๋๋ค(๊ต์ฒด ํ N๋ถ). ๋๋ก๋ ์์คํ ์ ๋ฐ์ดํธ ํ logrotate๊ฐ rsyslog๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๋ค์ ์์ํ ์ ์์ ๋ ๋น์ด ์์์ต๋๋ค.
- linecount - ํ์ผ์ ์ค ์(์: wc -l) ์ค๋ฅ ๋ก๊ทธ๊ฐ ๊ณ์ ์ปค์ง ์ ์์ง๋ง ์๋๊ฐ ๋๋ฆฐ ๊ฒฝ์ฐ(์: Googlebot์ด ์ผ๋ถ ๋ซํ ํ์ด์ง์ ๋๋ฌํ๋ ๊ฒฝ์ฐ) ๋น์ด ์์์ ๋ณด๋ค ๋ถ๋๋ฝ๊ฒ ๋์ฒดํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉํฉ๋๋ค. 2๋ถ๋น 20์ค ์ ํ์ด ์์ต๋๋ค. ๋ ๋์ผ๋ฉด ๊ฒฝ๊ณ ๊ฐ ํ์๋ฉ๋๋ค.
ํฅ๋ฏธ๋ก์ด ๋ด๋ถ ์ ๊ฒ
์ง๊ธ๊น์ง '๋๊ฐ์ '์ผ๋ก ์ฝ์๋ค๋ฉด ์ด์ ์ข ๋ ์ฃผ์ ๊น๊ฒ ์ฝ๋ ๊ฒ์ด ๋ ์ฌ๋ฏธ์์ ๊ฒ์ ๋๋ค.
๋ฐฑ์
๋๋ ํฐ๋ฆฌ์ ๋ฐฑ์ ์ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ๋ฐฑ์ ํ์ผ์ ์ด๋ฆ์ "ServerName-20200530.tar.gz"์ ๊ฐ์ต๋๋ค. okrr์ ๊ฐ ์๋ฒ์ ๋ํด ํ์๊ธฐ ServerName-DATE.tar.gz๊ฐ ์์ฑ๋ฉ๋๋ค(์ค์ ๋ ์ง๋ "DATE" ํ์ผ๋ก ๋ณ๊ฒฝ๋ฉ๋๋ค). ์๋ก์ด ๋ฐฑ์ ์ ์กด์ฌ ์ฌ๋ถ์ ํฌ๊ธฐ๋ ๋ชจ๋ํฐ๋ง๋ฉ๋๋ค(์: ์ด์ ๋ฐฑ์ ์ 90% ๋ฏธ๋ง์ผ ์ ์์).
์ ๋ฐฑ์ ์ ์์ฑํ์ฌ ์ด ๋๋ ํฐ๋ฆฌ์ ์ ์ฅํ ํ ์ถ์ ์ ์์ํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํฉ๋๊น? ์๋ฌด๊ฒ๋ ์๋! ์ด๋ ๋ค์๊ณผ ๊ฐ์ ์ด์ ๋ก "์๋ฌด ๊ฒ๋" ํ์ง ์์ ๋ ๋งค์ฐ ํธ๋ฆฌํ ์ ๊ทผ ๋ฐฉ์์ ๋๋ค.
- "์๋ฌด๊ฒ๋ ํ์ง ์๋ ๊ฒ"์ ๊ฝค ๋น ๋ฅด๋ฉฐ ์๊ฐ์ ์ ์ฝํด ์ค๋๋ค.
- '์๋ฌด๊ฒ๋ ํ์ง ์๋ ๊ฒ'์ ์๋ ๊ฒ์ ์ด๋ ต๋ค
- ์ค๋ฅ๋ก ์ธํด "์๋ฌด๊ฒ๋ ์๋ชป"ํ์ง ์๋ ๊ฒ์ ์ด๋ ต์ต๋๋ค. ๊ฐ์ฅ ํ์คํ ๋ฐฉ๋ฒ์ ์์ต๋๋ค
๊ฐ์๊ธฐ ์๋ก์ด ๋ฐฑ์ ํ์ผ์ด ํ์๋์ง ์์ผ๋ฉด ๊ฒฝ๊ณ ๊ฐ ํ์๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์๋ฒ ์ค ํ๋๋ฅผ ๋นํ์ฑํํ๊ณ ๋ ์ด์ ๋ฐฑ์ ์ด ์์ด์ผ ํ๋ ๊ฒฝ์ฐ ํ์๊ธฐ๋ฅผ ์ญ์ ํด์ผ ํฉ๋๋ค(์น ์ธํฐํ์ด์ค๋ฅผ ํตํด ๋๋ API๋ฅผ ํตํด ์ ธ์์).
maxfilesz
๊ฐ์ฅ ํฐ ํ์ผ์ ํฌ๊ธฐ๋ฅผ ์ถ์ ํฉ๋๋ค(์ผ๋ฐ์ ์ผ๋ก: /var/log/*). ์ด๋ฅผ ํตํด ๋ฌด์ฐจ๋ณ ์ํธ ๋์ ์ด๋ ์๋ฒ๋ฅผ ํตํ ์คํธ ์ ์ก๊ณผ ๊ฐ์ ์์ธกํ ์ ์๋ ๋ฌธ์ ๋ฅผ ํฌ์ฐฉํ ์ ์์ต๋๋ค.
์คํ ์ํ/์คํ ๋ผ์ธ
์ด๋ ์๋ฒ์์ ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ ์คํํ๊ธฐ ์ํ ๋ ๊ฐ์ง ์ค์ํ ํ๋ก์ ๋ชจ๋์
๋๋ค. Runstatus๋ ํ๋ก๊ทธ๋จ ์ข
๋ฃ ์ฝ๋๋ฅผ ํ์๊ธฐ์ ๋ณด๊ณ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, okrr์ ์์คํ
์๋น์ค๊ฐ ์คํ ์ค์ธ์ง ํ์ธํ๋ ๋ชจ๋์ ์๊ตฌํ์ง ์์ต๋๋ค. ์ด๋ runstatus๋ฅผ ํตํด ์ํ๋ฉ๋๋ค(์๋ ์ฐธ์กฐ). Runline - ํ๋ก๊ทธ๋จ์ด ์์ฑํ๋ ๋ผ์ธ์ ์๋ฒ์ ๋ณด๊ณ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, temp_RUN="cat /sys/class/thermal/thermal_zone0/temp"
์ฐ๋ฆฌ ์๋ฒ์ Runline ๊ตฌ์ฑ์์๋ ํ๋ก์ธ์ ์จ๋์ ํจ๊ป servername:temp ํ์๊ธฐ๋ฅผ ์์ฑํฉ๋๋ค.
SQL
MySQL์ ์ซ์ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ํ์๊ธฐ์ ๋ณด๊ณ ํฉ๋๋ค. ๊ฐ๋จํ ๊ฒฝ์ฐ์๋ ์๋ฅผ ๋ค์ด "SELECT 1"์ ์ํํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด DBMS๊ฐ ์ ์ฒด์ ์ผ๋ก ์๋ํ๋์ง ํ์ธํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ํจ์ฌ ๋ ํฅ๋ฏธ๋ก์ด ์์ฉ ํ๋ก๊ทธ๋จ์ ์๋ฅผ ๋ค์ด ์จ๋ผ์ธ ์์ ์ ์ฃผ๋ฌธ ์๋ฅผ ์ถ์ ํ๋ ๊ฒ์ ๋๋ค. ์๊ฐ๋น ์ฃผ๋ฌธ์ด 100๊ฐ ์ด์์ธ ๊ฒ์ ์๊ณ ์๋ค๋ฉด ์ต์ ํ๋๋ฅผ 100๊ฐ ๋๋ 80๊ฐ๋ก ์ค์ ํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ค ๊ฐ์๊ธฐ ๋งค์ถ์ด ๋จ์ด์ง๋ฉด ์๋ฆผ์ ๋ฐ๊ณ ํ์ ํ ์ ์์ต๋๋ค.
์ด๋ค ์์ธกํ ์ ์๋ ์ด์ ๋ก ์ด๋ฐ ์ผ์ด ๋ฐ์ํ๋์ง๋ ์ค์ํ์ง ์์ต๋๋ค.
- ์๋ฒ๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ(์ ์์ด ๋๊ฒผ๊ฑฐ๋ ๋คํธ์ํฌ๊ฐ ์์) ํ์๊ธฐ๊ฐ "์ฉ์๋ค"๋ ์ฌ์ค ๋๋ฌธ์ ๊ฒฝ๊ณ ๊ฐ ๋ฐ์ํ์ต๋๋ค.
- ์๋ฒ์ ๋ญ๊ฐ๊ฐ ๊ณผ๋ถํ๋์ด ์๋์ด ๋๋ฆฌ๊ฑฐ๋ ํจํท์ด ์์ค๋์ด ์ฌ์ฉ์์๊ฒ ๋ถํธํจ์ ์ฃผ๊ณ ๊ตฌ๋งค๋ ํ์ง ์๊ณ ๋ ๋ฉ๋๋ค.
- ์๋ฒ๊ฐ ์คํธ ๋ชฉ๋ก์ ํฌํจ๋์ด ์์ด ํด๋น ์๋ฒ์์ ๋ณด๋ธ ๋ฉ์ผ์ด ํ์ฉ๋์ง ์์ผ๋ฉฐ ์ฌ์ฉ์๊ฐ ๋ฑ๋กํ ์ ์์ต๋๋ค.
- ๊ด๊ณ ์บ ํ์ธ ์์ฐ์ด ์์ง๋์ด ๋ฐฐ๋๊ฐ ํ์ ํ์ง ์์ต๋๋ค.
์ด์ ๋ ๋ค์ํ ์ ์์ผ๋ฉฐ ๋ชจ๋ ์ฌ์ ์ ์์ธกํ ์ ์๊ณ ๊ธฐ์ ์ ์ผ๋ก ์ถ์ ๋ ์ด๋ ต์ต๋๋ค. ๊ทธ๋ฌ๋ ์ต์ข ๋งค๊ฐ๋ณ์(์ฃผ๋ฌธ)๋ฅผ ํธ๋ฆฌํ๊ฒ ๋ชจ๋ํฐ๋งํ๊ณ ์ด๋ฅผ ํตํด ์ํฉ์ด ์์ฌ์ค๋ฝ๊ณ ์ฒ๋ฆฌํ ๊ฐ์น๊ฐ ์๋์ง ํ๋จํ ์ ์์ต๋๋ค.
๋ ผ๋ฆฌ์ ์งํ
๋ชจ๋์ ํตํด ๋ถ์ธ ํํ์(Python ๊ตฌ๋ฌธ)์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋ฎ๊ณผ ๋ฐค์ ๋ ๊ฐ์ง ํ์๊ธฐ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ๋ ๋ค "๋ฌด์"์ผ๋ก ์ค์ ํฉ๋๋ค(๊ฒฝ๋ณด๋ฅผ ๋ณด๋ด์ง ์์). ๊ทธ๋ฆฌ๊ณ 20:00 ์ด์ ์๋ ์ฃผ๊ฐ ํ์๊ธฐ๊ฐ ์ ์์ด์ด์ผ ํ๊ณ , 20:00 ์ดํ์๋ ์ผ๊ฐ ํ์๊ธฐ๊ฐ ์ ์์ด์ด์ผ ํ๋ ๋ ผ๋ฆฌ์ ํ์๊ธฐ๋ฅผ ์์ฑํ์ญ์์ค.
๋ ผ๋ฆฌ์ ์งํ๋ฅผ ์ฌ์ฉํ๋ ๋ ๋ค๋ฅธ ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ๋จ๊ณ์ ํ๋. ์๋ฅผ ๋ค์ด, ํ๋ก์ ํธ ๊ด๋ฆฌ์๋ ๊ฒฝ๊ณ ๊ตฌ๋ ์ ์ทจ์ํ์ง๋ง(๊ทธ๋ ๊ทธ๋ ๊ฒ ํ ํ์๊ฐ ์์ผ๋ฉฐ ๊ด๋ฆฌ์๋ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ์ ์๋ตํด์ผ ํจ) ํ๋ก์ ํธ์ ํ์๊ธฐ๊ฐ ํ ๋น๋ ์๊ฐ ๋ด์ ์์ ๋์ง ์์ผ๋ฉด ๋นจ๊ฐ์์ผ๋ก ๋ฐ๋๋ ๋ ผ๋ฆฌ์ ํ์๊ธฐ๋ฅผ ๊ตฌ๋ ํฉ๋๋ค.
๋ํ ์ถ๊ทผ์๊ฐ์ ์๋ฒฝ 3์๋ถํฐ 5์๊น์ง๋ก ์ค์ ํ ์๋ ์๋ค. ์ด ์๊ฐ ๋์ ์๋ฒ์ ์ฌ์ดํธ๊ฐ ์ถฉ๋ํ๋๋ผ๋ ์ฐ๋ฆฌ๋ ์๊ดํ์ง ์์ต๋๋ค. ํ์ง๋ง 5์์๋ ์ผ์ ํด์ผ ํด์. ๋ค๋ฅธ ์๊ฐ์ ์๋ํ์ง ์์ผ๋ฉด ๊ฒฝ๊ณ ํ์ญ์์ค. ๋ ผ๋ฆฌ์ ํ์๊ธฐ๋ฅผ ์ฌ์ฉํ๋ฉด ์๋ฒ ์ค๋ณต์ฑ์ ๊ณ ๋ คํ ์๋ ์์ต๋๋ค. ์น ์๋ฒ๊ฐ 00๊ฐ ์๋ ๊ฒฝ์ฐ ๊ด๋ฆฌ์๋ ์ธ์ ๋ ์ง 5~1๊ฐ์ ์๋ฒ๋ฅผ ๋ ์ ์์ต๋๋ค. ๋จ, ์ ํฌ์ ์ฐธ์ฌํ๋ ์๋ฒ๊ฐ 2๊ฐ ์ค 3๊ฐ ๋ฏธ๋ง์ผ ๊ฒฝ์ฐ ๊ฒฝ๊ณ ๊ฐ ๋ฐ์ํฉ๋๋ค.
์์ ์๋ ์ ์์ ์ธ ๊ธฐ๋ฅ์ด ์๋๋ฉฐ ํ์ฑํ ๋ฐ ๊ตฌ์ฑ์ด ํ์ํ ์ผ๋ถ ๊ธฐ๋ฅ์ด ์๋๋๋ค. Okerra์๋ ์ด๋ฌํ ๊ธฐ๋ฅ์ด ๋ชจ๋ ํฌํจ๋์ด ์์ง ์์ง๋ง ์ด ๊ธฐ๋ฅ์ ๊ตฌํํ ์ ์๋ ๋ ผ๋ฆฌ ๋ชจ๋์ด ์์ต๋๋ค. (๋๋ต ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์ ์ฌํฉ๋๋ค. ์ฐ์ ์ฐ์ฐ์๊ฐ ์๋ ๊ฒฝ์ฐ 20% VAT๋ฅผ ๊ณ์ฐํ๊ธฐ ์ํ ํน์ ํจ์๊ฐ ํ์ํ์ง ์์ต๋๋ค. ์ธ์ด์์ ์ธ์ ๋ ์ง ์ค์ค๋ก ํ ์ ์์ผ๋ฉฐ ํ์์ ๋ง๊ฒ ๋ง๋ค ์ ์์ต๋๋ค.)
Logic Indicator๋ ์๋ง๋ okrr์์ ์๋์ ์ผ๋ก ๋ณต์กํ ๋ช ์ ๋๋ ์ฃผ์ ์ค ํ๋์ผ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ์ข์ ์์์ ํ์ํ ๋๊น์ง ์ด๋ฅผ ๋ง์คํฐํ ํ์๊ฐ ์๋ค๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ๋์์ ์์คํ ์์ฒด๋ฅผ ๋งค์ฐ ๋จ์ํ๊ฒ ์ ์งํ๋ฉด์ ๊ธฐ๋ฅ์ ํฌ๊ฒ ํ์ฅํฉ๋๋ค.
์์ ๋ง์ ์ํ ์ถ๊ฐํ๊ธฐ
๋๋ oker๊ฐ ๋ชจ๋ ๊ฒฝ์ฐ์ ๋ํด ์์ฒ ๊ฐ์ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ง ์ํ ์ธํธ๊ฐ ์๋๋ผ ๋ฌด์๋ณด๋ค๋ ์์ ๋ง์ ์ํ๋ฅผ ๋ง๋ค ์ ์๋ ๊ฐ๋จํ ๊ธฐ๋ฅ์ ๊ฐ์ถ ๊ฐ๋จํ ์์ง์ด๋ผ๋ ์์ด๋์ด๋ฅผ ์ ๋ฌํ๊ณ ์ถ์ต๋๋ค. okerr์์ ์์ ๋ง์ ๊ฒ์ฌ๋ฅผ ๋ง๋๋ ๊ฒ์ ํด์ปค, ์์คํ ๊ณต๋ ๊ฐ๋ฐ์ ๋๋ ์ต์ํ ๊ณ ๊ธ okerr ์ฌ์ฉ์์ ์์ ์ด ์๋์ง๋ง ํ ๋ฌ ์ ์ ์ฒ์์ผ๋ก Linux๋ฅผ ์ค์นํ ๋ชจ๋ ๊ด๋ฆฌ์์๊ฒ๋ ์คํ ๊ฐ๋ฅํ ์์ ์ ๋๋ค.
์ต์ ์๊ธ ํ์ธ์ ๋ชจ๋์ ํตํด ์ด๋ฃจ์ด์ง๋๋ค.
๊ตฌ์ฑ์ ์ด ์ค
true_OK=/bin/true
๋จ ํ ์ค - ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ์ฐ๋ฆฌ๋ ์ด๋ฏธ ์กฐ๊ธ ์์ต๋๋ค ํ์ฅํ๋ค ๊ธฐ๋ฅ ํ์ธ.
๊ทธ๋ฌํ ๊ฒ์ฌ์๋ ์ด๋ฏธ ๊ทธ๋งํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ๊ฐ์๊ธฐ ์๋ฒ๊ฐ ์ถฉ๋ํ๋ฉด okrr ์๋ฒ์ ํด๋น ํ์๊ธฐ๊ฐ ์ ์์ ์ ๋ฐ์ดํธ๋์ง ์์ผ๋ฉฐ ์๊ฐ์ด ์ง๋๋ฉด ๊ฒฝ๊ณ ๊ฐ ๋ํ๋ฉ๋๋ค.
์ด ๊ฒ์ฌ๋ apache2 ์๋ฒ๊ฐ ์ถฉ๋ํ์์ ์๋ ค์ค๋๋ค(๊ธ์, ๋น์ ์ ๊ฒฐ์ฝ ์์ง ๋ชปํฉ๋๋ค...):
apache_OK="systemctl is-active --quiet apache2"
๋ฐ๋ผ์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ๊ตฌ์ฌํ๊ณ ์ต์ํ ์ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ ์ ์๋ค๋ฉด ์ด๋ฏธ ์์ฒด ๊ฒ์ฌ๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
๋ ์ด๋ ต์ต๋๋ค. ์ด๋ค ์ธ์ด๋ก๋ okrrmod์ฉ ๋ชจ๋์ ์ง์ ์์ฑํ ์ ์์ต๋๋ค. ๊ฐ์ฅ ๊ฐ๋จํ ๊ฒฝ์ฐ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
#!/usr/bin/python3
print("STATUS: OK")
๋ง์ด ์ด๋ ต์ง ์๋์? ๋ชจ๋์ ์์ฒด์ ์ผ๋ก ๊ฒ์ฌ๋ฅผ ์ํํ๊ณ ๊ฒฐ๊ณผ๋ฅผ STDOUT์ผ๋ก ์ถ๋ ฅํด์ผ ํฉ๋๋ค. ๋ ๋ณต์กํ ๋ชจ๋์ ์๋ฅผ ๋ค์ด ๋ค์์ ์ ๊ณตํฉ๋๋ค.
$ okerrmod --dump df
NAME: pi:df-/
TAGS: df
METHOD: numerical|maxlim=90
DETAILS: 49.52%, 13.9G/28.2G used, 13.0G free
STATUS: 49.52
NAME: pi:df-/boot
TAGS: df
METHOD: numerical|maxlim=90
DETAILS: 84.32%, 53.1M/62.9M used, 9.9M free
STATUS: 84.32
์ฌ๋ฌ ์งํ๋ฅผ ํ ๋ฒ์ ์ ๋ฐ์ดํธํ๊ณ (๋น ์ค๋ก ๊ตฌ๋ถ) ํ์ํ ๊ฒฝ์ฐ ์์ฑํ๋ฉฐ ํ์ธ ์ธ๋ถ ์ ๋ณด์ ๋์๋ณด๋์์ ํ์ํ ์งํ๋ฅผ ์ฝ๊ฒ ์ฐพ์ ์ ์๋ ํ๊ทธ๋ฅผ ํ์ํฉ๋๋ค.
ํ ๋ ๊ทธ๋จ
ํ
๋ ๊ทธ๋จ ๋ด์ด ์์ต๋๋ค
์ํ ํ์ด์ง
์ค๋๋ ์ํ ํ์ด์ง๋ IT, ์ ๋ขฐ์ฑ์ ๋ํ ์ฑ ์๊ฐ ์๋ ํ๋, ๊ณ ๊ฐ/์ฌ์ฉ์๋ฅผ ์กด์คํ๋ ํ๋๋ฅผ ๊ฐ์ถ ๋ชจ๋ ๋น์ฆ๋์ค์ ๊ฑฐ์ ํ์ ์์์ ๋๋ค.
์ํฉ์ ์์ํด ๋ณด์ธ์. ์ฌ์ฉ์๊ฐ ๋ฌด์ธ๊ฐ๋ฅผ ํ๊ณ ์ถ๊ณ , ์ ๋ณด๋ฅผ ๋ณด๊ฑฐ๋ ์ฃผ๋ฌธํ๊ณ ์ถ์ดํ๋๋ฐ ๋ฌด์ธ๊ฐ๊ฐ ์๋ํ์ง ์๋ ๊ฒฝ์ฐ์ ๋๋ค. ๊ทธ๋ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง, ๋ฌธ์ ๊ฐ ๋๊ตฌ ํธ์ ์๋์ง, ์ธ์ ํด๊ฒฐ๋ ์ง ๋ชจ๋ฆ ๋๋ค. ์ด์ฉ๋ฉด ๊ทํ์ ํ์ฌ๊ฐ ๋จ์ํ ๊ธฐ๋ฅํ์ง ์๋ ์น์ฌ์ดํธ๋ฅผ ๊ฐ๊ณ ์๋ ๊ฒ์ ์๋๊น์? ์๋๋ฉด XNUMX๊ฐ์ ์ ์ ๊ณ ์ฅ์ด ๋ฌ๊ณ XNUMX๋ ์์ ๊ณ ์ณ์ง๊น์? ํ์ง๋ง ์ง๊ธ ๋์ฅ๊ณ ๋ฅผ ์ฌ์ผํ๋๋ฐ ์ด๋ฏธ ์นดํธ์ ๋ค์ด ์์ต๋๋ค... ๊ทธ๋ฆฌ๊ณ ์ฌ๋์ด ๋น์ ์๊ฒ ๋ญ๊ฐ ๋ฌธ์ ๊ฐ ์๋ค๋ ๊ฒ์ ์๊ฒ๋๋ฉด ์์ ํ ๋ค๋ฅธ ๋ฌธ์ ์ ๋๋ค (์ ์ด๋ ๋ฌธ์ ๊ฐ ๊ทธ์ ํธ์ด ์๋๋ผ๋ ๊ฒ์ ๋ถ๋ช ํฉ๋๋ค). ๋ฌธ์ ๊ฐ ๋ฐ๊ฒฌ๋์ด ์ด๋ฏธ ์์ ์ค์ด๋ฉฐ ๋๋ต์ ์ธ ์์ ์๊ฐ์ ์ ์ด ๋์์ ์๋ ์์ต๋๋ค. ์ฌ์ฉ์๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋๋ฉด ๊ตฌ๋ ํ๊ณ ์ด๋ฉ์ผ ์๋ฆผ์ ๋ฐ์ ์ ์์ผ๋ฉฐ ์ํ๋ ๋๋ก(๋์ฅ๊ณ ๊ตฌ์ ) ํ ์ ์์ต๋๋ค.
๋ฌธ์ ์ ๋ค์ดํ์์ ๋๊ตฌ์๊ฒ๋ ๋ฐ์ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฌ์ฉ์์ ํํธ๋๋ ์ด์ ๋ํ ์ ๊ทผ ๋ฐฉ์์ ์์ด์ ๋ณด๋ค ํฌ๋ช ํ๊ณ ์ฑ ์๊ฐ ์๋ ์ฌ๋๋ค์ ๋ ์ ๋ขฐํฉ๋๋ค.
์ฌ๊ธฐ์
์ฅ์ ์กฐ์น
๊ธ์ด ๋ ๊ธธ์ด์ง์ง ์๊ธฐ ์ํด ์ด์ ๊ธ์ ๋ค์ ํ๋ฒ ์ฐธ๊ณ ํ๊ฒ ์ต๋๋ค.
๋ฎ์ ์์คํ ์๊ตฌ ์ฌํญ
okrr ์๋ฒ์ ๊ฒฝ์ฐ RAM์ด 2GB ์ด์์ธ ์์คํ
์ ์ฌ์ฉํฉ๋๋ค. ๋คํธ์ํฌ ์ผ์์ ๊ฒฝ์ฐ 512Mb์ด๋ฉด ์ถฉ๋ถํฉ๋๋ค. ํด๋ผ์ด์ธํธ ๋ถ๋ถ์ ์ผ๋ฐ์ ์ผ๋ก ๊ฑฐ์ XNUMX์
๋๋ค. (๋น๋ ๋ดํฌ
์ด๊ฒ์ ๊ณ ๋ คํ๋ฉด ์๋ง๋ okrr ์ผ ๊ฒ์ ๋๋ค. ๊ฐ์ฅ ๋ฌด๋ฃ Zabbix๋ Nagios์ ๊ฐ์ ๋ค๋ฅธ ๋ฌด๋ฃ ์คํ ์์ค ์์คํ ์ ์ฌ์ฉํ๋๋ผ๋ ์ฌ๊ธฐ์ ๋ฆฌ์์ค(์๋ฒ)๋ฅผ ํ ๋นํด์ผ ํ๋๋ฐ ์ด๊ฒ์ด ์ด๋ฏธ ๋์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ํ ์ผ๋ถ ์๋ฒ ์ ์ง ๊ด๋ฆฌ๊ฐ ์ฌ์ ํ ํ์ํฉ๋๋ค. okrr์ ์ฌ์ฉํ๋ฉด ์ด ๋ถ๋ถ์ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ๋๋ ๊ฐ์ฅ ๋ง์์ ๋๋ ๊ฒ์ ๋ฐ๋ผ ์ด๋ฅผ ์ ๊ฑฐํ๊ณ ์์ฒด ์๋ฒ๋ฅผ ์ฌ์ฉํ ํ์๊ฐ ์์ต๋๋ค.
API ๋ฐ ๋ ์ ์ํํธ์จ์ด๋ก์ ํตํฉ
๋จ์ํ๊ณ ๊ฐ๋ฐฉ์ ์ธ ์ํคํ
์ฒ. okrr์๋ ๊ฝค ๊ฐ๋จํ ๊ฒ์ด ์์ต๋๋ค
#!/bin/sh
for indicator in `okerrclient --api-filter sslcert`
do
echo set location for $indicator
okerrclient --api-set location=ru retest=1 --name $indicator
done
ํด๋ผ์ด์ธํธ ๋ชจ๋์ด ์์ด๋ ์ปฌ์ ํตํด์๋ง ํ์๊ธฐ๋ฅผ ์ ๋ฐ์ดํธํ ์ ์์ต๋๋ค.
# short and nice (using okerrupdate and config file)
$ okerrupdate MyIndicator OK
# only curl is enough!
$ curl -d 'textid=MyProject&name=MyIndicator&secret=MySecret&status=OK' https://bravo.okerr.com/
ํ๋ก๊ทธ๋จ์์ ์ง์ ํ์๊ธฐ๋ฅผ ์ ๋ฐ์ดํธํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, okrr์ด ์คํ ์ค์์ ์ ์ ์๋๋ก ํํธ๋นํธ ์ ํธ๋ฅผ ๋ณด๋ด๊ณ ์ถฉ๋ํ๊ฑฐ๋ ๋ฉ์ถ ๊ฒฝ์ฐ ๊ฒฝ๋ณด๋ฅผ ๋ฐ์์ํต๋๋ค. ๊ทธ๊ฑด ๊ทธ๋ ๊ณ , okerr ๊ตฌ์ฑ ์์๊ฐ ๋ฐ๋ก ๊ทธ ์ผ์ ํฉ๋๋ค. okerr๋ ์์ฒด์ ์ผ๋ก ๋ชจ๋ํฐ๋งํ๋ฉฐ ๊ฑฐ์ ๋ชจ๋ ๋ชจ๋์ ๋ฌธ์ ๊ฐ ๊ฐ์ง๋์ด ๋ฌธ์ ์ ๋ํ ๊ฒฝ๊ณ ๋ฅผ ์์ฑํฉ๋๋ค. (๊ทธ๋ฆฌ๊ณ ์ด "๊ฑฐ์"์ ๊ฒฝ์ฐ - ๋ค๋ฅธ ์๋ฒ์์ ๊ต์ฐจ ํ์ธ๋ฉ๋๋ค)
ํ ๋ ๊ทธ๋จ ๋ด์ ์ฝ๋(๊ฐ์ฒด)๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
from okerrupdate import OkerrProject, OkerrExc
op = OkerrProject()
uptimei = op.indicator("{}:telebot_uptime".format(hostname))
...
uptimei.update('OK', 'pid: {} Uptime: {} cmds: {}'.format(
os.getpid(), dhms(uptime), commands_cnt))
Python ํ๋ก๊ทธ๋จ์์ ํ์๊ธฐ๋ฅผ ์
๋ฐ์ดํธํ๊ธฐ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์ต๋๋ค.
okrr์ด ์ฐ๋ฆฌ๋ฅผ ๋๋ ๋ฐฉ๋ฒ
์ค์ปค๋ ์ฐ๋ฆฌ์ ์ถ์ ๋ณํ์์ผฐ์ต๋๋ค. ๋ฌผ๋ก . ์๋ง๋ ๋ค๋ฅธ ๋ชจ๋ํฐ๋ง ์์คํ ๋ ๋์ผํ ์์ ์ ์ํํ ์ ์์ง๋ง oker๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํ๋ ๊ฒ์ ์ฐ๋ฆฌ์๊ฒ ์ฝ๊ณ ๊ฐ๋จํ๋ฉฐ ํ์ํ ๋ชจ๋ ๊ธฐ๋ฅ์ ๊ฐ์ถ๊ณ ์์ต๋๋ค(์์๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค). ๊ทธ๋ฐ๋ฐ ๋๋ฝ๋ ๊ธฐ๋ฅ์ด ์์ผ๋ฉด ๋ฌผ์ด๋ณด์ธ์. ์ถ๊ฐํ๊ฒ ์ต๋๋ค. (์ฝ์ํ์ง๋ ์์ง๋ง okrr์ด ์ค์ ๊ท๋ชจ ํ๋ก์ ํธ์ ๊ฐ์ฅ ์ ํฉํ ๋ชจ๋ํฐ๋ง ์์คํ ์ด ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.) ์๋๋ฉด ์ง์ ์ถ๊ฐํ๋ ๊ฒ์ด ๋ ์ข์ต๋๋ค. ์ฝ์ต๋๋ค.
์ฐ๋ฆฌ๋ "์ผ๋ผ์ ๋ชจ๋ ๋ฌธ์ ์ ๋ํด ๋ฐฐ์ด๋ค"๋ ์์น์ ๋ฐ๋ผ ์ํํ์ต๋๋ค. okrr์์ ์์ง ๋ชปํ ๋ฌธ์ ๊ฐ ๊ฐ์๊ธฐ ๋ฐ์ํ๋ฉด okrr์ ๊ฒ์ฌ๋ฅผ ์ถ๊ฐํฉ๋๋ค. (์ด ๊ฒฝ์ฐ "์ฐ๋ฆฌ"๋ ๊ณต๋ ๊ฐ๋ฐ์๊ฐ ์๋ ์์คํ ์ฌ์ฉ์๋ฅผ ์๋ฏธํฉ๋๋ค.) ์ฒ์์๋ ์ด๋ฐ ์ผ์ด ํํ์ง๋ง ์ง๊ธ์ ๋งค์ฐ ๋๋ฌผ์ด์ก์ต๋๋ค.
๋ชจ๋ํฐ๋ง
okrr์ ํตํด ์ฐ๋ฆฌ๋ ๋ชจ๋ ์๋ฒ์ ๋ก๊ทธ ํฌ๊ธฐ๋ฅผ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ๋ฌผ๋ก ๋์ผ๋ก ๋ก๊ทธ์ ๋ชจ๋ ์ค์ ์ ์คํ๊ฒ ์ฝ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ์ง๋ง ๋จ์ํ ์ฑ์ฅ๋ฅ ์ ๋ชจ๋ํฐ๋งํ๋ ๊ฒ๋ง์ผ๋ก๋ ์ด๋ฏธ ๋ง์ ๊ฒ์ ์ป์ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ์ฐ๋ฆฌ๋ ์คํธ ๋ฉ์ผ๋ง๊ณผ ๋ฌด์ฐจ๋ณ ์ํธ ๊ฒ์์ ๋ฐ๊ฒฌํ์ผ๋ฉฐ, ์ผ๋ถ ์์ฉ ํ๋ก๊ทธ๋จ์ด "๋ฏธ์น" ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ฌ ๊ณ์ํด์ ๋ฐ๋ณตํฉ๋๋ค(๋ก๊ทธ์ ๋ช ์ค์ ์ถ๊ฐํ ๋๋ง๋ค). ).
SSL ์ธ์ฆ์. ์ถ์๋์๋ง์ ๊ฑฐ์ ๋ฐ๋ก a2okerr.py
โ ์๋ฒ์ ์ฌ๋ฌ ๊ฐ์ ์๋ก์ด ์ฌ์ดํธ๊ฐ ๋ํ๋๋ฉด ์๋์ผ๋ก oker์ ๋ํ๋ฉ๋๋ค. ์ด๋ค ์ด์ ๋ก ๊ฐ์๊ธฐ ์ธ์ฆ์๊ฐ ๊ฐฑ์ ๋์ง ์์ผ๋ฉด ์ธ์ฆ์๊ฐ ๋ง๋ฃ๋๊ธฐ XNUMX์ฃผ ์ ์ ์ฐ๋ฆฌ๋ ์ด๋ฅผ ์๊ณ ์์ผ๋ฉฐ ์ ์
๋ฐ์ดํธ๋์ง ์๋์ง ์์๋ผ ๊ฒ์
๋๋ค. a2certbot.py
๋์ผํ ํจํค์ง์์ - ์ด๊ฒ์ ๋ง์ ๋์์ด ๋ฉ๋๋ค(๊ฐ์ฅ ๊ฐ๋ฅ์ฑ์ด ๋์ ๋ฌธ์ ๋ฅผ ์ฆ์ ํ์ธํ๊ณ ์ ํ์ธ๋ ๋ด์ฉ๊ณผ ๋ฌธ์ ๊ฐ ์์ ๊ฐ๋ฅ์ฑ์ด ๊ฐ์ฅ ๋์ ์์น๋ฅผ ๊ธฐ๋กํฉ๋๋ค).
์ฐ๋ฆฌ๋ ๋ชจ๋ ๋๋ฉ์ธ์ ๋ง๋ฃ ๋ ์ง๋ฅผ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ๋ํ ๋ฉ์ผ์ ๋ณด๋ด๋ ๋ชจ๋ ๋ฉ์ผ ์๋ฒ๋ 50๊ฐ ์ด์์ ๋ค์ํ ๋ธ๋๋ฆฌ์คํธ์ ๋น๊ตํ์ฌ ๊ฒ์ฌ๋ฉ๋๋ค. (๊ทธ๋ฆฌ๊ณ ๋๋ก๋ ๊ทธ๊ฒ๋ค์ ๋น ์ง๊ธฐ๋ ํฉ๋๋ค). ๊ทธ๋ฐ๋ฐ ๊ตฌ๊ธ ๋ฉ์ผ ์๋ฒ๋ ๋ธ๋๋ฆฌ์คํธ์ ์ฌ๋ผ ์๋ค๋ ์ฌ์ค์ ์๊ณ ๊ณ์ จ๋์? ์์ฒด ํ ์คํธ๋ฅผ ์ํด ๋ชจ๋ํฐ๋ง๋๋ ์๋ฒ์ mail-wr1-f54.google.com์ ์ถ๊ฐํ๋๋ฐ ์ฌ์ ํ SORBS ๋ธ๋๋ฆฌ์คํธ์ ์์ต๋๋ค! (์ด๊ฒ์ "์คํจ๋จธ ๋ฐฉ์ง"์ ๊ฐ์น์ ๊ดํ ๊ฒ์ ๋๋ค)
๋ฐฑ์ - ๋๋ ์ด๋ฏธ okrr๋ก ๋ฐฑ์ ์ ๋ชจ๋ํฐ๋งํ๋ ๊ฒ์ด ์ผ๋ง๋ ์ฌ์ด์ง ์์์ ์ผ์ต๋๋ค. ํ์ง๋ง ์ฐ๋ฆฌ๋ ์๋ฒ์ ์ต์ ๋ฐฑ์ ๊ณผ Amazon Glacier์ ์ ๋ก๋ํ๋ ๋ฐฑ์ (oker๋ฅผ ์ฌ์ฉํ๋ ๋ณ๋์ ์ ํธ๋ฆฌํฐ ์ฌ์ฉ)์ ๋ชจ๋ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ ์ต๋๋ค. ๋๋๋ก ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค. ๊ทธ๋ค์ด ์ง์ผ๋ณด๊ณ ์์๋ ๊ฒ๋ ๋น์ฐํฉ๋๋ค.
์ฐ๋ฆฌ๋ ์์ค์ปฌ๋ ์ด์ ํ์๊ธฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด๋ค ๋ฌธ์ ๊ฐ ์ค๋ซ๋์ ํด๊ฒฐ๋์ง ์์๋์ง ๋ณด์ฌ์ค๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ์์ ๋ ์ด๋ค ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋ ๋๋๋ก ๊ทธ ๋ฌธ์ ๋ฅผ ์์ด๋ฒ๋ฆด ์ ์์ต๋๋ค. ์์ค์ปฌ๋ ์ด์ ์ ์์ ์ ๋ชจ๋ํฐ๋งํ๋ ๊ฒฝ์ฐ์๋ ์ข์ ์๋ฆผ์ด ๋ฉ๋๋ค.
์ ๋ฐ์ ์ผ๋ก ์ฐ๋ฆฌ ์์ ์ ์ง์ด ํ ๋จ๊ณ ๋ ๋์์ก๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ค์ดํ์์ด ๊ฑฐ์ ์๊ณ (ํด๋ผ์ด์ธํธ๊ฐ ๋์น์ฑ ์๊ฐ๋ ์๊ณ ๊ทธ๋ฅ ์ฟ!), ์์ ๋์ด ์ค์ด๋ค๊ณ ์์ ํ๊ฒฝ๋ ์ฐจ๋ถํด์ก์ต๋๋ค. ์ฐ๋ฆฌ๋ ํ ์ดํ๋ก ๊ตฌ๋ฉ์ ๋ฉ์ฐ๋ ๋น์์์ ์์ ๋ง์ ๋ฌธ์ ๋ฅผ ๋ฏธ๋ฆฌ ์์ธกํ๊ณ ์๋ฐฉํ ์๊ฐ์ด ์๋ ์ฐจ๋ถํ๊ณ ์ ์คํ ์์ ์ผ๋ก ์ ํํ์ต๋๋ค. ๋ฐ์ํ ๋ฌธ์ ๋ ์์ ํ๊ธฐ๊ฐ ๋ ์ฌ์์ก์ต๋๋ค. ์ฒซ์งธ, ๊ณ ๊ฐ์ด ํจ๋์ ๋น ์ง๊ธฐ ์ ์ ๋ฌธ์ ์ ๋ํด ์์๋ด๊ณ , ๋์งธ, ๋ฌธ์ ๊ฐ ์ต๊ทผ ์์ ๊ณผ ๊ด๋ จ๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ๋ฐ์ํฉ๋๋ค(ํ ๊ฐ์ง ์์ ์ ์ํํ๋ ๋์ ๋ค๋ฅธ ์์ ์ด ์ค๋จ๋์์ต๋๋ค). ๊ทธ๋์ ๋จ๊ฒ์ต๋๋ค. ํ์ ์ด ์ฒ๋ฆฌํ๊ธฐ๊ฐ ๋ ์ฝ์ต๋๋ค.
๊ทธ๋ฐ๋ฐ ๋ ๋ค๋ฅธ ์ฌ๊ฑด์ด ์์๋๋ฐ..
์ธ๊ธฐ ์๋ Debian 9(Stretch)์์ phpmyadmin๊ณผ ๊ฐ์ ์ธ๊ธฐ ํจํค์ง๊ฐ ์ฌ์ ํ (์๊ฐ์ ๋์!) ์ทจ์ฝํ ์ํ์ ์๋ค๋ ๊ฒ์ ์๊ณ ๊ณ์
จ์ต๋๊น? (
๋น์ทํ ์ํฉ์ด ๋ ๋ฐ์ํ์ต๋๋ค. SSH์ ์ทจ์ฝ์ ์ดํ ๋ชจ๋ ์๋ฒ๋ฅผ ์ ๋ฐ์ดํธํด์ผ ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์์ ์ ์ค์ ํ ๋ ์คํ์ ์ ์ดํด์ผ ํฉ๋๋ค. (๋ถํ๋ค์ ์คํดํ๊ณ , ์์ด๋ฒ๋ฆฌ๊ณ , ํผ๋์ค๋ฌ์ํ๊ณ , ์ค์ํ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค.) ๋ฐ๋ผ์ ๋จผ์ ๋ชจ๋ ์๋ฒ์ okrr์ SSH ๋ฒ์ ํ์ธ์ ์ถ๊ฐํ๊ณ , okrr์ ํตํด ์ ๋ฐ์ดํธ๊ฐ ๋ชจ๋ ์๋ฒ์ ์ถ์๋์๋์ง ํ์ธํ์ต๋๋ค. (ํธ๋ฆฌํฉ๋๋ค! ์ด ์ ํ์ ํ์๊ธฐ๋ฅผ ์ ํํ๋๋ฐ ์ด๋ค ์๋ฒ์ ์ด๋ค ๋ฒ์ ์ด ์๋์ง ์ฆ์ ํ์ธํ ์ ์์ต๋๋ค.) ๋ชจ๋ ์๋ฒ์์ ์์ ์ด ์๋ฃ๋์๋ค๊ณ ํ์ ํ๋ฉด ํ์๊ธฐ๋ฅผ ์ ๊ฑฐํ์ต๋๋ค.
ํน์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค๊ฐ ์ ์ ๋ก ์ฌ๋ผ์ง๋ ์ํฉ์ด ๋ช ๋ฒ ๋ฐ์ํ์ต๋๋ค. (์๋ง๋ ๋ชจ๋์๊ฒ ์น์ํ ๊น์?) ๋น์ ์ด ์์์ฐจ๋ฆด ๋์ฏค์๋, ํ์ธํ ๊ฒ์ด ์๋ฌด๊ฒ๋ ์์ ๋์ฏค์๋ ๋ชจ๋ ๊ฒ์ด ์ด๋ฏธ ์ ์๋ํ๊ณ ์๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฐ๋ฐ ๋ ๋ ๊นจ์ง๋๋ค. ์๋ฅผ ๋ค์ด Amazon Marketplace(MWS)์ ์ ๋ก๋ํ ์ ํ์์ ์ด๋ฐ ์ผ์ด ๋ฐ์ํ์ต๋๋ค. ์ด๋ค ์์ ์์ ๋ก๋๋ ์ฌ๊ณ ๊ฐ ์๋ชป๋์์ต๋๋ค(์ํ ์๋ ๋ฐ ๊ฐ๊ฒฉ์ด ์๋ชป๋จ). ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ์์ ๋์ต๋๋ค. ํ์ง๋ง ๊ทธ๊ฒ์ ํ์ ํ๊ธฐ ์ํด์๋ ๋ฌธ์ ๋ฅผ ๋ฐ๋ก ์์๋ด๋ ๊ฒ์ด ์ค์ํ์ต๋๋ค. ์์ฝ๊ฒ๋ MWS๋ ๋ชจ๋ Amazon ์๋น์ค์ ๋ง์ฐฌ๊ฐ์ง๋ก ์กฐ๊ธ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ํญ์ ๋ ์ด ์์์ง๋ง ๊ทธ๋๋ ๋ฌธ์ ์ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ์คํฌ๋ฆฝํธ ์ฌ์ด์ ์ฐ๊ด์ฑ์ ์ต์ํ ๋๋ต์ ์ผ๋ก ํ์ ํ ์ ์์์ต๋๋ค. okrr์ ์ฐ๊ฒฐํ๊ณ ์ฆ์ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ์ ํ์ธํ์ต๋๋ค.)
์ต๊ทผ ์ฐ๋ฆฌ ๊ณ ๊ฐ์ด ์ฌ์ฉํ๋ ํฌ๊ณ ๊ฐ๋น์ผ ์ ๋ฝ ํธ์คํ ์ ์ฒด๊ฐ ํฅ๋ฏธ๋ก์ด ์ฌ๋ก๋ฅผ ์ปฌ๋ ์ ์ ์ถ๊ฐํ์ต๋๋ค. ๊ฐ์๊ธฐ ๋ชจ๋ ์๋ฒ๊ฐ ๋ ์ด๋์์ ์ฌ๋ผ์ก์ต๋๋ค! ์ฒซ์งธ, ๊ณ ๊ฐ ์์ ์ด (okerra๋ณด๋ค ๋น ๋ฆ ๋๋ค!) ์์ ์ด ์์ ํ๊ณ ์๋ ์ฌ์ดํธ๊ฐ ์ด๋ฆฌ์ง ์๋ ๊ฒ์ ๋ฐ๊ฒฌํ๊ณ ์ด์ ๋ํ ํฐ์ผ์ ๋ง๋ค์์ต๋๋ค. ํ์ง๋ง ํ ์ฌ์ดํธ๋ง ๋ค์ด๋ ๊ฒ์ด ์๋๋ผ ๋ชจ๋ ์ฌ์ดํธ๊ฐ ๋ค์ด๋์์ต๋๋ค! (๋ํ์ค, ์ฐ๋ฆฌ๋ ๋ชจ๋ ๊ฒ์ ๋ฒ๋ ธ์ด์!) ์ฌ๊ธฐ์์ Okerr๋ ์์ ์๊ฒ ๋ถ์ด ์ผ์ง ๋ชจ๋ ์งํ๊ฐ ํฌํจ๋ ๊ธด ๋ฐ ๋ฉ์ ๋ณด๋ด๊ธฐ ์์ํ์ต๋๋ค. ๊ณตํฉ, ๊ณตํฉ, ์ฐ๋ฆฌ๋ ์์ ๊ทธ๋ฆฌ๋ฉฐ ๋ฌ๋ฆฝ๋๋ค(๊ทธ ๋ฐ์ ๋ฌด์์ ํ ์ ์์ต๋๊น?). ๊ทธ๋ฐ ๋ค์ ๋ชจ๋ ๊ฒ์ด ์์นํ์ต๋๋ค. ๋ฐ์ดํฐ ์ผํฐ์๋ ์ ๊ธฐ์ ์ธ ์ ์ง ๊ด๋ฆฌ(์๋ ์ ํ ๋ฒ)๊ฐ ์์๋ ๊ฒ์ผ๋ก ๋ฐํ์ก์ผ๋ฉฐ ๋น์ฐํ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ์์ผ ํ์ต๋๋ค. ํ์ง๋ง ๊ทธ๋ค์๊ฒ ์ด๋ค ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋๋ฐ ๊ทธ๋ค์ ์ฐ๋ฆฌ์๊ฒ ๊ฒฝ๊ณ ํ์ง ์์์ต๋๋ค. ์, ์ฌ์ฅ๋ง๋น๊ฐ ๋ ๋ง์ด ๋ฐ์ํ๊ณ ์ฌ์ฅ๋ง๋น๊ฐ ๋ ๋ฐ์ํฉ๋๋ค. ํ์ง๋ง ๋ชจ๋ ๊ฒ์ด ๋ณต์๋ ํ์๋ ๋ชจ๋ ๊ฒ์ ๋ค์ ํ์ธํด์ผ ํฉ๋๋ค! ๋ด ์์ผ๋ก ์ด๋ป๊ฒ ํ์์ง ์์์ด ์ ๊ฐ๋ค์. Okerr๋ ๋ช ๋ถ ์์ ๋ชจ๋ ๊ฒ์ ํ ์คํธํ์ต๋๋ค. ๋๋ถ๋ถ์ ์๋ฒ๋ ์ผ์์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ง๋ง ์๋ํ๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ์ผ๋ถ๋ ๊ณผ๋ถํ๊ฐ ๊ฑธ๋ ธ์ง๋ง ์ญ์ ๊ทธ๋์ผ ํ๋ ๋๋ก ์ผ์ด์ฐ์ต๋๋ค. ๋ชจ๋ ์์ค ์ค์์ ์ฐ๋ฆฌ๋ ๋ ๊ฐ์ ๋ฐฑ์ ์ ์์์ต๋๋ค. ์๊ด์ ๋ฐ๋ฅด๋ฉด ์ด ๋ฐฑ์ ์ ์ ์ฒด ๋ฐ๋๋๊ฐ ์งํ๋๋ ๋์ ์์ฑ๋๊ณ ๋ก๋๋์ด์ผ ํ์ต๋๋ค. ๋๋ ๊ทธ๊ฒ์ ๋ง๋๋ ๋ฐ ์ ๊ฒฝ ์ฐ์ง๋ ์์๊ณ ํ๋ฃจ ๋ง์ ๋ชจ๋ ๊ฒ์ด ์ ์์ด๊ณ ๋ฐฑ์ ์ด ๋ํ๋ฌ๋ค๋ ๊ฒฝ๊ณ ๊ฐ ๋์ฐฉํ์ต๋๋ค. ๋๋ ์ด ์๋ฅผ ์ ๋ง ์ข์ํฉ๋๋ค. ์๋ํ๋ฉด okrr์ ์ฐ๋ฆฌ๊ฐ ์ฌ์ ์ ์๊ฐ์กฐ์ฐจ ํ์ง ์์๋ ์ํฉ์์ ๋งค์ฐ ์ ์ฉํ๋ค๋ ๊ฒ์ด ๋ฐํ์ก๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ด ๋ชจ๋ํฐ๋ง์ ๋ชฉ์ ์ ๋๋ค. ์ฆ ์์ธกํ ์ ์๋ ๊ฒ์ ์ ํญํ๋ ๊ฒ์ ๋๋ค.
Okerr ์ผ์์ ๊ฒฝ์ฐ ๊ฐ์ฅ ์ ๋ ดํ ํธ์คํ
์ ์ฌ์ฉํฉ๋๋ค(ํ์ง๊ณผ ์ ๋ขฐ์ฑ์ด ์ค์ํ์ง ์์ ๊ฒฝ์ฐ ์๋ก๋ฅผ ๋ณด์ฅํฉ๋๋ค). ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ต๊ทผ ๋งค์ฐ ์ข์ ํธ์คํ
๊ณผ ๋งค์ฐ ์ ๋ ดํ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ๋ฒค์น๋งํฌ๋ ์ ๋ง ํ๋ฅญํฉ๋๋ค. ํ์ง๋ง... ๋๋ก๋ ๊ฐ์ ๋จธ์ ์์ ๋๊ฐ๋ ์ฐ๊ฒฐ์ด ๋ค๋ฅธ(์ด์) IP์์ ์ด๋ฃจ์ด์ง๋ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ๊ธฐ์ . Client_ip ๋ชจ๋
๊ธ์์, ํ ๊ฐ์ง ๋ โ VPS ํธ์คํ ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ํญ์ ์ ๋ ดํ ํธ์คํ (hetzner, ovh, scaleway)์ ์ฌ์ฉํฉ๋๋ค. ๋ฒค์น๋งํฌ์ ์์ ์ฑ ์ธก๋ฉด์์ ์ ๋ง ๋ง์์ ๋ญ๋๋ค. ์ฐ๋ฆฌ๋ ๋ํ ๋ค๋ฅธ ํ๋ก์ ํธ์ ํจ์ฌ ๋ ๋น์ผ Amazon EC2๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ทธ๋์ okrr ๋๋ถ์ ์ฐ๋ฆฌ๋ ์ฐ๋ฆฌ ์์ ์ ์๊ฒฌ์ ๊ฐ๊ฒ ๋์์ต๋๋ค. ๋ ๋ค ๋์ด์ง๋ค. ๊ทธ๋ฆฌ๊ณ ์ค๋ ๊ด์ฐฐ ๊ธฐ๊ฐ ๋์ hetzner์ ๊ฐ์ ์ ๋ ดํ ํธ์คํ ์ด EC2๋ณด๋ค ๋์ ๋๊ฒ ๋ ์์ ์ ์ธ ๊ฒ์ผ๋ก ํ๋ช ๋์๋ค๊ณ ๋ ๋งํ์ง ์๊ฒ ์ต๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ๋ค๋ฅธ Amazon ๊ธฐ๋ฅ์ ๋ฌถ์ฌ ์์ง ์๋ค๋ฉด ์ ๋ ๋ง์ ๋น์ฉ์ ์ง๋ถํฉ๋๊น? ๐
๋ค์์ ๋ญ์ง?
์ด ๋จ๊ณ์์ ์์ง Okerr๋ก๋ถํฐ ๊ฒ์ ๋จน์ง ์์๋ค๋ฉด ์๋ํด ๋ณด์ธ์! ํด๋น ๋งํฌ๋ก ๋ฐ๋ก ์ด๋ํ์ค ์ ์์ต๋๋ค
๋ฑ๋ก ํ์๋ ๊ต์ก์ ๋ฐ์์ผ ํฉ๋๋ค(๋ณ๋ก ์ด๋ ต์ง ์์ ๋ช ๊ฐ์ง ๊ต์ก ์์ ์ํ). ์ด๊ธฐ ์ ํ์ ๋งค์ฐ ์์ง๋ง ๊ต์ก์ด๋ ๋จ์ผ ์๋ฒ์๋ ์ถฉ๋ถํฉ๋๋ค. ํ๋ จ์ ์๋ฃํ๋ฉด ํ๋(์: ์ต๋ ์งํ ์)๊ฐ ๋์ด๋ฉ๋๋ค.
๋ฌธ์์์ - ์ฐ์
์ฌ๊ฐํ๊ฒ ์ฌ์ฉํ๊ณ ์๋๋ฐ ์ด๋ฌํ ์ฆ๊ฐ๋ ์ ํ์ด ์ถฉ๋ถํ์ง ์์ ๊ฒฝ์ฐ ์ง์ํ์ ๋ฌธ์ํ์๋ฉด (๋ฌด๋ฃ๋ก) ๋๋ ค๋๋ฆฌ๊ฒ ์ต๋๋ค.
๊ทํ์ ์๋ฒ์ okrr ์๋ฒ๋ฅผ ์ค์นํ์๊ฒ ์ต๋๊น? ์ฌ๊ธฐ
์ฐ๋ฆฌ๋ ์ด ํ๋ก์ ํธ๊ฐ ์ฑ๊ณตํ์ฌ ์ฐ๋ฆฌ ๋๋ถ์ ์ธ์์ด ๋์ฑ ์ ๋ขฐํ ์ ์๊ฒ ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋ฌด๋ฃ ์ํํธ์จ์ด์ ์๋น์ค ๋๋ถ์ ์ธ์์ ๋์ฑ ์น๊ทผํด์ก๊ณ , ๋์ฑ ์ญ๋์ ์ผ๋ก ๋ฐ์ ํ๊ณ ์์ต๋๋ค. ์์ค๋ ๋ฌด๋ฃ github์ ์ ์ฅํ ์ ์์ผ๋ฉฐ ๋ฉ์ผ์ ๊ฒฝ์ฐ ๋ฌด๋ฃ Gmail์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋ฌด๋ฃ๋ก ์ฌ์ฉํฉ๋๋ค
์ถ์ฒ : habr.com