DevOps - Mooneey/Facebook_Crawling GitHub Wiki
DevOps
- ๊ฐ๋
โข ๋ ๋์ ๋ฒ์์ ์๊ฐ ์์ด๋์ด ์ ๋ฐฉ๋ฒ ๋ฐฉ์์ ์ด์ผ๊ธฐ
โข ๋ณด์ , ํ์
๋ฐฉ์ , ๋ฐ์ดํฐ ๋ถ์๋ฑ์ ์ฌ๋ฌ ๊ฐ์ง ์์๊ฐ ํฌํจ
โข ๊ฐ๋ฐ ํ(Dev)๊ณผ ์ด์ ํ(Ops) ํ ๊ฐ์ ์ํํ๊ณ ์ง์์ ์ธ ์ปค๋ฎค๋์ผ์ด์
, ํ์
, ํตํฉ, ๊ฐ์์ฑ ๋ฐ ํฌ๋ช
์ฑ์ ์ฅ๋ ค
- ํน์ง
โข Cross Functional Team
-๊ฐ ํ๋ก์ธ์ค์(๊ฐ๋ฐ ~ ๋ฐฐํฌ ๋ฐ ํ
์คํธ๊น์ง) ๋ด๋น์๋ค์ ํ๋์ ํ์ผ๋ก ๋ชจ์
์๋น์ค ๊ธฐํ๋ถํฐ ๊ฐ๋ฐ ์ด์ ํ
์คํธ ๋ฐฐํฌ๋ฑ ๋ชจ๋ ์ ํ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ํ๋์ ํ์์ ํ ์ ์๋๋ก ํด์ผ ํ๋ค๋๊ฒ
โข Widely Shared Metrics
-ํ์ ๋ชจ๋๊ฐ ์๊ณ ์๋ ํ๋์ ๊ณต์ ๋ ์งํ๊ฐ ํ์ํ๋ค๋๊ฒ์ด๋ค.
์๋น์ค๋ฅผ ๊ฐ๋ฐ๋ง ํ๋๊ฒ ์๋๋ผ ์๋น์ค๊ฐ ์ด์์์ ์ ๋์๊ฐ๊ณ ์๋์ง
์ฌ์ฉ์์ ๋ฐ์์ ์ด๋ค์ง๋ฅผ ์ธก์ ํ ์ ์๋ ๊ธฐ์ค์ด ํ์ํ๋ค๋ ๊ฒ
โข Automating repetitive tasks
- ๋ฐ๋ณต์ ์ธ ์ผ๋ค์ ์๋ํ(๋น๋-๋ฐฐํฌ-ํ
์คํธ ํ๋ก์ธ์ค๋ฅผ ์๋ํ)
โข Post Mortems
- ์ฅ์ ๋ ์ด์๊ฐ ์์๋ ๊ทธ๊ฑธ ํผ์๋ง ์์ง ๋ง๊ณ ํ์๋ค๊ณผ ๊ณต์ (ํ์ฒ๋ฆฌ)
โข Regular Release
-์งง์ ์ฃผ๊ธฐ์ ์ ๊ธฐ ๋ฐฐํฌ๋ฅผ ํตํด์ ๋น ๋ฅด๊ฒ ์๋น์ค์ ๊ธฐ๋ฅ์ ๊ฐ์ ํ๊ณ ๊ณ ๊ฐ๋ค์ VoC๋ฅผ ๋ฐ์ํด ๋๊ฐ
- ์ฅ์
โข ๋ ์ฐ์ํ ์ ํ์ ๋ ๋น ๋ฅด๊ฒ ์ ๊ณต
โข ๋ ๋น ๋ฅธ ๋ฌธ์ ํด๊ฒฐ ๋ฐ ๋ณต์ก์ฑ ๊ฐ์
โข ํ์ฅ์ฑ ๋ฐ ๊ฐ์ฉ์ฑ ํฅ์
โข ๋ณด๋ค ์์ ์ ์ธ ์ด์ ํ๊ฒฝ
โข ํฅ์๋ ๋ฆฌ์์ค ํ์ฉ๋ฅ
โข ์๋ํ ํฅ์
โข ์์คํ
๊ฒฐ๊ณผ์ ๋ํ ๊ฐ์์ฑ ๊ฐ์
โข ๋ ์๋ํ ํ์
- ๋๊ตฌ
โข ๋ฒ์ ๊ด๋ฆฌ ๋๊ตฌ
- GIT, SUBVERSION
โข ํ๋ก์ ํธ ๊ด๋ฆฌ ๋๊ตฌ
- GitHub์ Issue, Redmine, JIRA
โข ํ
์คํธ ์๋ํ ๋๊ตฌ
- JUnit, PHPUnit, Selenium, AntBot
โข ์ง์์ ํตํฉ ๋๊ตฌ
- Jenkins, Hudson, CircleCI
โข ๊ฐ์ ํ๊ฒฝ ๊ตฌ์ถ ๋๊ตฌ
- Vagrant, Virtualenv, Docker
โข ํ๋ก๋น์ ๋ ๋๊ตฌ
- Ansible, Chef
โข ๋ชจ๋ํฐ๋ง ๋๊ตฌ
- Sensu, Zabbix, Nagios, Bmon
- ์ฌ๋ก
โข ์ง์์ ์ธ ๊ฐ๋ฐ
- DevOps ๋ผ์ดํ์ฌ์ดํด์ ๊ณํ ๋ฐ ์ฝ๋ฉ ๋จ๊ณ์ ๊ฑธ์ณ ์ ์ฉ๋ฉ๋๋ค. ๋ฒ์ ์ ์ด ๋ฉ์ปค๋์ฆ์ด ๊ด๋ จ๋ ์ ์์ต๋๋ค.
โข ์ง์์ ์ธ ํ
์คํธ
- ์ ํ๋ฆฌ์ผ์ด์
์ฝ๋๋ฅผ ์์ฑํ๊ฑฐ๋ ์
๋ฐ์ดํธํ๋ ๋์ ์๋ํ๋๊ณ ์ฌ์ ์์ฝ๋ ์ง์์ ์ธ ์ฝ๋ ํ
์คํธ๋ฅผ ํฌํจํจ
์ด๋ฌํ ํ
์คํธ๋ฅผ ์ํํ๋ฉด ์ฝ๋๋ฅผ ๋ ๋น ๋ฅด๊ฒ ์ด์ ํ๊ฒฝ์ ์ ๊ณตํ ์ ์์
โข ์ง์์ ์ธ ํตํฉ(CI)
- ๊ตฌ์ฑ ๊ด๋ฆฌ(CM) ํด์ ๋ค๋ฅธ ํ
์คํธ ๋ฐ ๊ฐ๋ฐ ํด๊ณผ ํจ๊ป ์ฌ์ฉํ์ฌ ๊ฐ๋ฐ ์ค์ธ ์ฝ๋์ ์ด์ ์ค๋น ์ํ๋ฅผ ์ถ์
ํ
์คํธ์ ๊ฐ๋ฐ ๊ฐ์ ์ ์ํ ํผ๋๋ฐฑ์ ํตํด ์ฝ๋ ๋ฌธ์ ๋ฅผ ์ ์ํ๊ฒ ํ์
ํ๊ณ ํด๊ฒฐํ๋ ์์
์ด ํฌํจ
โข ์ง์์ ์ธ ์ ๊ณต
- ํ
์คํธ ํ ์ฌ์ ์ด์ ๋๋ ์คํ
์ด์ง ํ๊ฒฝ์ผ๋ก ์ฝ๋ ๋ณ๊ฒฝ์ ์ ๊ณตํ๋ ์์
์ ์๋ํ
์ ๊ณต๋ ํ์๋ ์ง์์ด ์ด๋ฌํ ์ฝ๋ ๋ณ๊ฒฝ์ ์ด์ ํ๊ฒฝ์ผ๋ก ์น๊ฒฉํ ์ ์์
โข ์ง์์ ์ธ ๊ตฌ์ถ(CD)
- ์ง์์ ์ธ ์ ๊ณต๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ด ์ฌ๋ก๋ ์ ๊ท ๋๋ ๋ณ๊ฒฝ๋ ์ฝ๋๋ฅผ ์ด์ ๋จ๊ณ๋ก ์๋ ๋ฆด๋ฆฌ์ฆํจ
Docker, Kubernetes ๋ฐ ๊ธฐํ ์ปจํ
์ด๋ ๊ธฐ์ ์ ์ฌ์ฉํ๋ฉด ์๋ก ๋ค๋ฅธ ๊ตฌ์ถ ํ๋ซํผ ๋ฐ ํ๊ฒฝ์์
์ฝ๋์ ์ผ๊ด์ฑ์ ์ ์งํด ์ง์์ ์ธ ๊ตฌ์ถ์ ์ง์ํ ์ ์์
โข ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง
- ์๋ ์ค์ธ ์ฝ๋์ ์ด๋ฅผ ์ง์ํ๋ ๊ธฐ๋ณธ ์ธํ๋ผ์ ๋ํ ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง๊ณผ ๊ด๋ จ
ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ํตํด ๋ฒ๊ทธ ๋๋ ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ํ ํ ๋ค์ ๊ฐ๋ฐ ๋จ๊ณ๋ก ๋๋์๊ฐ
โข ์ฝ๋ํ ์ธํ๋ผ
- ๋ค์ํ DevOps ๋จ๊ณ์์ ์ํํธ์จ์ด ๋ฆด๋ฆฌ์ฆ์ ํ์ํ ์ธํ๋ผ ํ๋ก๋น์ ๋์ ์๋ํํ๋ ๋ฐ ์ฌ์ฉ๋ ์ ์์
๊ฐ๋ฐ์๋ ๊ธฐ์กด ๊ฐ๋ฐ ํด ๋ด์์ ์ธํ๋ผ "์ฝ๋"๋ฅผ ์ถ๊ฐํจ(ex)๊ฐ๋ฐ์๊ฐ Docker, Kubernetes ๋๋ OpenShift์์ ํ์์ ๋ฐ๋ผ
์คํ ๋ฆฌ์ง ๋ณผ๋ฅจ์ ์์ฑ์, ์ด์ ํ์ ์ด ์ฌ๋ก๋ฅผ ํตํด ํ๊ฒฝ ๊ตฌ์ฑ์ ๋ชจ๋ํฐ๋งํ๊ณ , ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ํ๋ฉฐ, ๊ตฌ์ฑ ๋กค๋ฐฑ์ ๊ฐ์ํ