เดŸเต†เดฑเดพเดซเต‹เตผเดฎเตผ - เด•เต‹เดกเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเตผ

เดŸเต†เดฑเดพเดซเต‹เตผเดฎเตผ - เด•เต‹เดกเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเตผ
เด’เดฐเต เดชเดดเดฏ เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป เดžเดพเตป เดŽเดดเตเดคเดฟเดฏ เดชเตเดคเดฟเดฏ CLI เดŸเต‚เดณเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเต‹เดŸเต เดชเดฑเดฏเดพเตป เดžเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต.

เดชเตเดฐเดถเตเดจเด‚

Devops/Cloud/IT เด•เดฎเตเดฎเตเดฏเต‚เดฃเดฟเดฑเตเดฑเดฟเดฏเดฟเตฝ เดŸเต†เดฑเดพเดซเต‹เด‚ เดตเดณเดฐเต†เด•เตเด•เดพเดฒเดฎเดพเดฏเดฟ เด’เดฐเต เดฎเดพเดจเดฆเดฃเตเดกเดฎเดพเดฃเต. เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเตผ เด•เต‹เดกเดพเดฏเดฟ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดพเดฐเตเดฏเด‚ เดตเดณเดฐเต† เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดตเตเด‚ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดตเตเดฎเดพเดฃเต. เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเตฝ เดจเดฟเดฐเดตเดงเดฟ เด†เดนเตเดฒเดพเดฆเด™เตเด™เดณเตเดฃเตเดŸเต, เด•เต‚เดŸเดพเดคเต† เดจเดฟเดฐเดตเดงเดฟ เดซเต‹เตผเด•เตเด•เตเด•เดณเตเด‚ เดฎเต‚เตผเดšเตเดšเดฏเตเดณเตเดณ เด•เดคเตเดคเดฟเด•เดณเตเด‚ เดฑเดพเด•เตเด•เตเด•เดณเตเด‚ เด‰เดฃเตเดŸเต.
เดŸเต†เดฑเดพเดซเต‹เด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดคเดฟเดฏ เด•เดพเดฐเตเดฏเด™เตเด™เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเดจเตเด‚ เด…เดต เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเดจเตเด‚ เดฎเดพเดฑเตเดฑเดพเดจเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเดจเตเด‚ เดตเดณเดฐเต† เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต. เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเดฒเต‚เดŸเต† เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเดคเตเดค, เด•เตเดฒเต—เดกเดฟเตฝ เดตเดฒเดฟเดฏ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเต—เด•เดฐเตเดฏเด™เตเด™เดณเตเดณเตเดณเดตเตผ เดŽเดจเตเดคเต เดšเต†เดฏเตเดฏเดฃเด‚? เดฎเตเดดเตเดตเตป เด•เตเดฒเต—เดกเตเด‚ เดตเต€เดฃเตเดŸเตเด‚ เดŽเดดเตเดคเตเด•เดฏเตเด‚ เดตเต€เดฃเตเดŸเตเด‚ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดŽเด™เตเด™เดจเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เดšเต†เดฒเดตเต‡เดฑเดฟเดฏเดคเตเด‚ เดธเตเดฐเด•เตเดทเดฟเดคเดฎเดฒเตเดฒเดพเดคเตเดคเดคเตเดฎเดพเดฃเต.
2 เดœเต‹เดฒเดฟเด•เดณเดฟเตฝ เดžเดพเตป เดˆ เดชเตเดฐเดถเตเดจเด‚ เดจเต‡เดฐเดฟเดŸเตเดŸเต, เดŸเต†เดฑเดพเดซเต‹เด‚ เดซเดฏเดฒเตเด•เดณเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดŽเดฒเตเดฒเดพเด‚ Git-เตฝ เด†เดฏเดฟเดฐเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดฎเตเดชเต‹เดดเดพเดฃเต เดเดฑเตเดฑเดตเตเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เด‰เดฆเดพเดนเดฐเดฃเด‚, เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 250+ เดฌเด•เตเด•เดฑเตเดฑเตเด•เตพ เด‰เดฃเตเดŸเต, เด…เดต เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเตฝ เด•เตˆเด•เตŠเดฃเตเดŸเต เดŽเดดเตเดคเดพเตป เดงเดพเดฐเดพเดณเด‚.
เด‰เดฃเตเดŸเต เด‡เดทเตเดฏเต‚ เด‡เดฑเด•เตเด•เตเดฎเดคเดฟ เด‰เดฃเตเดŸเดพเด•เตเดฎเต†เดจเตเดจ เดชเตเดฐเดคเต€เด•เตเดทเดฏเต‹เดŸเต† 2014เตฝ เด…เดŸเดšเตเดš เดŸเต†เดฑเดพเดซเต‹เด‚ 2016 เดฎเตเดคเตฝ.

เดชเตŠเดคเตเดตเต‡, เดŽเดฒเตเดฒเดพเด‚ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตฝ เด•เดพเดฃเตเดจเตเดจเดคเต เดชเต‹เดฒเต† เดตเดฒเดคเตเดคเตเดจเดฟเดจเตเดจเต เด‡เดŸเดคเตเดคเต‹เดŸเตเดŸเต เดฎเดพเดคเตเดฐเด‚

เดฎเตเดจเตเดจเดฑเดฟเดฏเดฟเดชเตเดชเต: เดฐเดšเดฏเดฟเดคเดพเดตเต เดคเดจเตเดฑเต† เดœเต€เดตเดฟเดคเดคเตเดคเดฟเดจเตเดฑเต† เดชเด•เตเดคเดฟ เดฑเดทเตเดฏเดฏเดฟเตฝ เดคเดพเดฎเดธเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เดฑเดทเตเดฏเตป เดญเดพเดทเดฏเดฟเตฝ เด•เตเดฑเดšเตเดšเต เดŽเดดเตเดคเตเดจเตเดจเต. เด…เด•เตเดทเดฐ เดคเต†เดฑเตเดฑเตเด•เตพ เดธเต‚เด•เตเดทเดฟเด•เตเด•เตเด•.

เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เตพ

1. AWS-เดจเต เดฑเต†เดกเดฟเดฎเต†เดฏเตโ€Œเดกเต, เดชเดดเดฏ เดธเตŠเดฒเตเดฏเต‚เดทเดจเตเด•เตพ เด‰เดฃเตเดŸเต เดŸเต†เดฑเดพเดซเต‹เตผเดฎเดฟเด‚เด—เต. เด…เดคเดฟเดฒเต‚เดŸเต† เดŽเดจเตเดฑเต† 250+ เดฌเด•เตเด•เดฑเตเดฑเตเด•เตพ เดŽเดŸเตเด•เตเด•เดพเตป เดถเตเดฐเดฎเดฟเดšเตเดšเดชเตเดชเต‹เตพ, เด…เดตเดฟเดŸเต† เดŽเดฒเตเดฒเดพเด‚ เดฎเต‹เดถเดฎเดพเดฃเต†เดจเตเดจเต เดŽเดจเดฟเด•เตเด•เต เดฎเดจเดธเตเดธเดฟเดฒเดพเดฏเดฟ. AWS เดตเดณเดฐเต†เด•เตเด•เดพเดฒเดฎเดพเดฏเดฟ เดงเดพเดฐเดพเดณเด‚ เดชเตเดคเดฟเดฏ เด“เดชเตเดทเดจเตเด•เตพ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต, เดชเด•เตเดทเต‡ เดŸเต†เดฑเดพเดซเต‹เตผเดฎเดฟเด‚เด—เดฟเดจเต เด…เดตเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด…เดฑเดฟเดฏเดฟเดฒเตเดฒ, เดชเตŠเดคเตเดตเต† เด‡เดคเต เดฎเดพเดฃเดฟเด•เตเดฏเดฎเดพเดฃเต เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเต เดตเดฟเดฐเดณเดฎเดพเดฏเดฟ เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต. เดตเตˆเด•เตเดจเตเดจเต‡เดฐเด‚ 2 เดฎเดฃเดฟเด•เตเด•เต เดถเต‡เดทเด‚ เดžเดพเตป เด…เดฏเดšเตเดšเต เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดตเดฒเดฟเด•เตเด•เตเด• เด…เดตเดฟเดŸเต† เด•เต‚เดŸเตเดคเตฝ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เดšเต‡เตผเด•เตเด•เดพเตป, เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดชเดฐเดฟเดนเดพเดฐเด‚ เด’เดŸเตเดŸเตเด‚ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒเต†เดจเตเดจเต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดฟ.
เดŸเต†เดฑเดพเดซเต‹เตผเดฎเดฟเด‚เด—เต เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต: เด‡เดคเต AWS SDK-เดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑ เดŽเดŸเตเด•เตเด•เตเด•เดฏเตเด‚ เด’เดฐเต เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเดฟเดฒเต‚เดŸเต† tf, tfstate เดŽเดจเตเดจเดฟเดต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.
เด‡เดตเดฟเดŸเต† 3 เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเต:
1. เด…เดชเตเดกเต‡เดฑเตเดฑเตเด•เดณเดฟเตฝ เดŽเดชเตเดชเต‹เดดเตเด‚ เด•เดพเดฒเดคเดพเดฎเดธเด‚ เด‰เดฃเตเดŸเดพเด•เตเด‚
2. tf เดซเดฏเดฒเตเด•เตพ เดšเดฟเดฒเดชเตเดชเต‹เตพ เดคเด•เตผเดจเตเดจเต เดชเตเดฑเดคเตเดคเตเดตเดฐเตเด‚
3. tfstate tf-เตฝ เดจเดฟเดจเตเดจเต เดตเต†เดตเตเดตเต‡เดฑเต† เดถเต‡เด–เดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เดŽเดฒเตเดฒเดพเดฏเตเดชเตเดชเต‹เดดเตเด‚ เด’เดคเตเดคเตเดšเต‡เดฐเตเด•เดฏเตเดฎเดฟเดฒเตเดฒ
เดชเตŠเดคเตเดตเต‡, เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒเต†เดจเตเดจเต `เดŸเต†เดฑเดพเดซเต‹เด‚ เดชเตเดฒเดพเตป' เดชเดฑเดฏเตเดจเตเดจ เด’เดฐเต เดซเดฒเด‚ เดฒเดญเดฟเด•เตเด•เดพเตป เดชเตเดฐเดฏเดพเดธเดฎเดพเดฃเต

2. เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเดฒเต† เด’เดฐเต เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เด•เดฎเดพเตปเดกเดพเดฃเต `เดŸเต†เดฑเดพเดซเต‹เด‚ เด‡เดฑเด•เตเด•เตเดฎเดคเดฟ`. เด…เดคเต†เด™เตเด™เดจเต†เดฏเดพเดฃเต เดชเตเดฐเดตเดฐเตเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต?
เดจเดฟเด™เตเด™เตพ เดฑเดฟเดธเต‹เดดเตเดธเดฟเดจเตเดฑเต† เดชเต‡เดฐเตเด‚ เดคเดฐเดตเตเด‚ เด‰เดณเตเดณ เด’เดฐเต เดถเต‚เดจเตเดฏเดฎเดพเดฏ TF เดซเดฏเตฝ เดŽเดดเตเดคเตเด•, เดคเตเดŸเตผเดจเตเดจเต `เดŸเต†เดฑเดพเดซเต‹เด‚ เด‡เดฎเตเดชเต‹เตผเดŸเตเดŸเต' เดฑเตบ เดšเต†เดฏเตเดคเต เดฑเดฟเดธเต‹เดดเตเดธเต เดเดกเดฟ เดจเตฝเด•เตเด•. terraform เดฆเดพเดคเดพเดตเดฟเดจเต† เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเด•เดฏเตเด‚ เดกเดพเดฑเตเดฑ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด’เดฐเต tfstate เดซเดฏเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.
เด‡เดตเดฟเดŸเต† 3 เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเต:
1. เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต tfstate เดซเดฏเตฝ เดฎเดพเดคเตเดฐเดฎเต‡ เดฒเดญเดฟเด•เตเด•เต‚, tf เดถเต‚เดจเตเดฏเดฎเดพเดฃเต, เดจเดฟเด™เตเด™เตพ เด…เดคเต เดธเตเดตเดฎเต‡เดงเดฏเดพ เดŽเดดเตเดคเตเด•เดฏเต‹ tfstate-เตฝ เดจเดฟเดจเตเดจเต เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเต‹ เดตเต‡เดฃเด‚
2. เด’เดฐเต เดธเดฎเดฏเด‚ เด’เดฐเต เดฑเดฟเดธเต‹เดดเตเดธเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเดพเดคเตเดฐเดฎเต‡ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเต‚, เดŽเดฒเตเดฒเดพ เดตเดฟเดญเดตเด™เตเด™เดณเต†เดฏเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ. 250+ เดฌเด•เตเด•เดฑเตเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเดพเตป เดตเต€เดฃเตเดŸเตเด‚ เดŽเดจเตเดคเตเดšเต†เดฏเตเดฏเดฃเด‚?
3. เดจเดฟเด™เตเด™เตพ เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เดเดกเดฟ เด…เดฑเดฟเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต - เด…เดคเดพเดฏเดคเต, เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เดฒเดฟเดธเตเดฑเตเดฑเต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจ เด•เต‹เดกเดฟเตฝ เดจเดฟเด™เตเด™เตพ เด…เดคเต เดชเตŠเดคเดฟเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต
เดชเตŠเดคเตเดตเต‡, เดซเดฒเด‚ เดญเดพเด—เดฟเด•เดตเตเด‚ เดจเดจเตเดจเดพเดฏเดฟ เดธเตเด•เต†เดฏเดฟเตฝ เดšเต†เดฏเตเดฏเตเดจเตเดจเดฟเดฒเตเดฒ

เดŽเดจเตเดฑเต† เดคเต€เดฐเตเดฎเดพเดจเด‚

เด†เดตเดถเตเดฏเด•เดคเด•เตพ:
1. เดตเดฟเดญเดตเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ tf, tfstate เดซเดฏเดฒเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดŽเดฒเตเดฒเดพ เดฌเด•เตเด•เดฑเตเดฑเตเด•เดณเตเด‚/เดธเต†เด•เตเดฏเต‚เดฐเดฟเดฑเตเดฑเดฟ เด—เตเดฐเต‚เดชเตเดชเต/เดฒเต‹เดกเต เดฌเดพเดฒเตปเดธเดฑเตเด‚ เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตโ€Œเดคเต, เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒเต†เดจเตเดจเต 'เดŸเต†เดฑเดพเดซเต‹เด‚ เดชเตเดฒเดพเตป' เดคเดฟเดฐเดฟเด•เต† เดจเตฝเด•เดฟ
2. เดจเดฟเด™เตเด™เตพเด•เตเด•เต 2 GCP + AWS เด•เตเดฒเต—เดกเตเด•เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต
3. ะ“ะปะพะฑะฐะปัŒะฝะพะต ั€ะตัˆะตะฝะธั ะบะพั‚ะพั€ะพะต ะปะตะณะบะพ ะพะฑะฝะพะฒะปัั‚ัŒ ะบะฐะถะดั‹ะน ั€ะฐะท ะธ ะฝะต ั‚ั€ะฐั‚ะธั‚ัŒ ะฒั€ะตะผั ะฝะฐ ะบะฐะถะดั‹ะน ั€ะตััƒั€ั ะฟะพ 3 ะดะฝั ั€ะฐะฑะพั‚ั‹
4. เด“เดชเตเดชเตบ เดธเต‹เดดเตเดธเต เด†เด•เตเด•เตเด• - เดŽเดฒเตเดฒเดพเดตเตผเด•เตเด•เตเด‚ เด’เดฐเต‡ เดชเตเดฐเดถเตเดจเด‚

เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เด—เต‹ เดญเดพเดท เดŽเดจเดฟเด•เตเด•เดฟเดคเต เด‡เดทเตเดŸเดฎเดพเดฏเดคเต, เด•เต‚เดŸเดพเดคเต† เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ HCL เดซเดฏเดฒเตเด•เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‡เดคเดฟเดฒเตเดฃเตเดŸเต + เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเตฝ เดงเดพเดฐเดพเดณเด‚ เด•เต‹เดกเตเด•เตพ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเด•เตเด‚

เดชเดพเดค

เด†เดฆเตเดฏเด‚ เดถเตเดฐเดฎเดฟเด•เตเด•เตเด•
เดžเดพเตป เด’เดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดชเดคเดฟเดชเตเดชเดฟเตฝ เด†เดฐเด‚เดญเดฟเดšเตเดšเต. เด†เดตเดถเตเดฏเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเดจเดพเดฏเดฟ SDK เดตเดดเดฟ เด•เตเดฒเต—เดกเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเด•เดฏเตเด‚ เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเดจเตเดณเตเดณ เดซเต€เตฝเดกเตเด•เดณเดพเด•เตเด•เดฟ เดฎเดพเดฑเตเดฑเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดธเต†เด•เตเดฏเต‚เดฐเดฟเดฑเตเดฑเดฟ เด—เตเดฐเต‚เดชเตเดชเดฟเดจเต† เดฎเดพเดคเตเดฐเด‚ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเดพเดจเตเดณเตเดณ 1.5 เดฆเดฟเดตเดธเด‚ เดŽเดจเดฟเด•เตเด•เต เด‡เดทเตเดŸเดชเตเดชเต†เดŸเดพเดคเตเดคเดคเดฟเดจเดพเตฝ เดˆ เดถเตเดฐเดฎเด‚ เดธเตเดฐเด•เตเดทเดพ เด—เตเดฐเต‚เดชเตเดชเดฟเตฝ เด‰เดŸเดจเดŸเดฟ เดฎเดฐเดฟเดšเตเดšเต (เด’เดชเตเดชเด‚ เดงเดพเดฐเดพเดณเด‚ เดตเดฟเดญเดตเด™เตเด™เดณเตเด‚ เด‰เดฃเตเดŸเต). เดตเดณเดฐเต†เด•เตเด•เดพเดฒเด‚, เดคเตเดŸเตผเดจเตเดจเต เดซเต€เตฝเดกเตเด•เตพ เดฎเดพเดฑเตเดฑเดพเด‚/เดšเต‡เตผเด•เตเด•เดพเด‚

เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดถเตเดฐเดฎเด‚
เดตเดฟเดตเดฐเดฟเดšเตเดš เด†เดถเดฏเดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด‡เดตเดฟเดŸเต†. เดŽเดŸเตเดคเตเดคเต tfstate tf เด†เด•เตเด•เดฟ เดฎเดพเดฑเตเดฑเตเด•. เดŽเดฒเตเดฒเดพ เดกเดพเดฑเตเดฑเดฏเตเด‚ เด‰เดฃเตเดŸเต, เดซเต€เตฝเดกเตเด•เตพ เด’เดจเตเดจเตเดคเดจเตเดจเต†เดฏเดพเดฃเต. เดชเดฒ เดตเดฟเดญเดตเด™เตเด™เตพเด•เตเด•เตเด‚ เดซเตเตพ tfstate เดŽเด™เตเด™เดจเต† เดฒเดญเดฟเด•เตเด•เตเด‚?? เด‡เดตเดฟเดŸเต†เดฏเดพเดฃเต `เดŸเต†เดฑเดพเดซเต‹เด‚ เดฑเดฟเดซเตเดฐเดทเต` เด•เดฎเดพเตปเดกเต เดฐเด•เตเดทเดพเดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเต†เดคเตเดคเดฟเดฏเดคเต. terraform tfstate-เดฒเต† เดŽเดฒเตเดฒเดพ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตเด‚ เดŽเดŸเตเด•เตเด•เตเด•เดฏเตเด‚, ID เดตเดดเดฟ, เด…เดตเดฏเดฟเดฒเต† เดกเดพเดฑเตเดฑ เดชเตเดฑเดคเตเดคเต†เดŸเตเด•เตเด•เตเด•เดฏเตเด‚ เดŽเดฒเตเดฒเดพเด‚ tfstate-เดฒเต‡เด•เตเด•เต เดŽเดดเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด…เดคเดพเดฏเดคเต, เดชเต‡เดฐเตเด•เดณเตเด‚ เดเดกเดฟเด•เดณเตเด‚ เดฎเดพเดคเตเดฐเดฎเตเดณเตเดณ เด’เดฐเต เดถเต‚เดจเตเดฏเดฎเดพเดฏ tfstate เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเด•, `terraform refresh` เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•, เดคเตเดŸเตผเดจเตเดจเต เดจเดฎเตเด•เตเด•เต เดฎเตเดดเตเดตเตป tfstates เดฒเดญเดฟเด•เตเด•เตเด‚. เดนเต‚เดฑเต‡!
เด‡เดจเดฟ เดจเดฎเตเด•เตเด•เต tfstate เดฒเต‡เด•เตเด•เต tf เดŽเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เด•เตบเดตเต†เตผเดŸเตเดŸเตผ เดŽเดดเตเดคเตเดจเตเดจ เด†เดตเตผเดคเตเดคเดจ เด…เดถเตเดฒเต€เดฒเด‚ เดšเต†เดฏเตเดฏเดพเด‚. tfstate เด’เดฐเดฟเด•เตเด•เดฒเตเด‚ เดตเดพเดฏเดฟเด•เตเด•เดพเดคเตเดคเดตเตผเด•เตเด•เต, เด‡เดคเต JSON เด†เดฃเต, เดชเด•เตเดทเต‡ เดชเตเดฐเดคเตเดฏเต‡เด•เดฎเดพเดฃเต.
เด…เดคเดฟเดจเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดญเดพเด—เด™เตเด™เตพ เด‡เดคเดพ

 "attributes": {
                            "id": "default/backend-logging-load-deployment",
                            "metadata.#": "1",
                            "metadata.0.annotations.%": "0",
                            "metadata.0.generate_name": "",
                            "metadata.0.generation": "24",
                            "metadata.0.labels.%": "1",
                            "metadata.0.labels.app": "backend-logging",
                            "metadata.0.name": "backend-logging-load-deployment",
                            "metadata.0.namespace": "default",
                            "metadata.0.resource_version": "109317427",
                            "metadata.0.self_link": "/apis/apps/v1/namespaces/default/deployments/backend-logging-load-deployment",
                            "metadata.0.uid": "300ecda1-4138-11e9-9d5d-42010a8400b5",
                            "spec.#": "1",
                            "spec.0.min_ready_seconds": "0",
                            "spec.0.paused": "false",
                            "spec.0.progress_deadline_seconds": "600",
                            "spec.0.replicas": "1",
                            "spec.0.revision_history_limit": "10",
                            "spec.0.selector.#": "1",

เด‡เดคเตเดฃเตเดŸเต:
1. เดเดกเดฟ - เดธเตเดŸเตเดฐเดฟเด‚เด—เต
2. เดฎเต†เดฑเตเดฑเดพเดกเดพเดฑเตเดฑ - เดตเดฒเดฟเดชเตเดชเด‚ 1 เดจเตเดฑเต† เด’เดฐเต เดถเตเดฐเต‡เดฃเดฟเดฏเตเด‚ เด…เดคเดฟเตฝ เดคเดพเดดเต† เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดซเต€เตฝเดกเตเด•เดณเตเดณเตเดณ เด’เดฐเต เดตเดธเตเดคเตเดตเตเด‚
3. spec - เดตเดฒเดฟเดชเตเดชเด‚ 1 เดจเตเดฑเต† เดนเดพเดทเต, เด•เต€, เด…เดคเดฟเดฒเต† เดฎเต‚เดฒเตเดฏเด‚
เดšเตเดฐเตเด•เตเด•เดคเตเดคเดฟเตฝ, เดฐเดธเด•เดฐเดฎเดพเดฏ เด’เดฐเต เดซเต‹เตผเดฎเดพเดฑเตเดฑเต, เดŽเดฒเตเดฒเดพเด‚ เดชเดฒ เดคเดฒเด™เตเด™เดณเดฟเดฒเตเดณเตเดณ เด†เดดเดคเตเดคเดฟเดฒเตเดณเตเดณเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚

                   "spec.#": "1",
                            "spec.0.min_ready_seconds": "0",
                            "spec.0.paused": "false",
                            "spec.0.progress_deadline_seconds": "600",
                            "spec.0.replicas": "1",
                            "spec.0.revision_history_limit": "10",
                            "spec.0.selector.#": "1",
                            "spec.0.selector.0.match_expressions.#": "0",
                            "spec.0.selector.0.match_labels.%": "1",
                            "spec.0.selector.0.match_labels.app": "backend-logging-load",
                            "spec.0.strategy.#": "0",
                            "spec.0.template.#": "1",
                            "spec.0.template.0.metadata.#": "1",
                            "spec.0.template.0.metadata.0.annotations.%": "0",
                            "spec.0.template.0.metadata.0.generate_name": "",
                            "spec.0.template.0.metadata.0.generation": "0",
                            "spec.0.template.0.metadata.0.labels.%": "1",
                            "spec.0.template.0.metadata.0.labels.app": "backend-logging-load",
                            "spec.0.template.0.metadata.0.name": "",
                            "spec.0.template.0.metadata.0.namespace": "",
                            "spec.0.template.0.metadata.0.resource_version": "",
                            "spec.0.template.0.metadata.0.self_link": "",
                            "spec.0.template.0.metadata.0.uid": "",
                            "spec.0.template.0.spec.#": "1",
                            "spec.0.template.0.spec.0.active_deadline_seconds": "0",
                            "spec.0.template.0.spec.0.container.#": "1",
                            "spec.0.template.0.spec.0.container.0.args.#": "3",

เดชเตŠเดคเตเดตเต‡, เด†เตผเด•เตเด•เต†เด™เตเด•เดฟเดฒเตเด‚ เด’เดฐเต เด…เดญเดฟเดฎเตเด–เดคเตเดคเดฟเดจเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เต เดชเตเดฐเดถเตโ€Œเดจเด‚ เดตเต‡เดฃเดฎเต†เด™เตเด•เดฟเตฝ, เดˆ เดŸเดพเดธเตโ€Œเด•เตเด•เดฟเดจเดพเดฏเดฟ เด’เดฐเต เดชเดพเดดเตโ€Œเดธเตผ เดŽเดดเตเดคเดพเตป เด…เดตเดฐเต‹เดŸเต เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเด• :)
เดฌเด—เตเด•เตพ เด‡เดฒเตเดฒเดพเดคเต† เด’เดฐเต เดชเดพเดดเตเดธเตผ เดŽเดดเตเดคเดพเดจเตเดณเตเดณ เดจเดฟเดฐเดตเดงเดฟ เดถเตเดฐเดฎเด™เตเด™เตพเด•เตเด•เต เดถเต‡เดทเด‚, เดŸเต†เดฑเดพเดซเต‹เด‚ เด•เต‹เดกเดฟเตฝ เด…เดคเดฟเดจเตเดฑเต† เด’เดฐเต เดญเดพเด—เด‚ เดžเดพเตป เด•เดฃเตเดŸเต†เดคเตเดคเดฟ, เดเดฑเตเดฑเดตเตเด‚ เดชเตเดฐเดงเดพเดจเดชเตเดชเต†เดŸเตเดŸ เดญเดพเด—เด‚. เด•เต‚เดŸเดพเดคเต† เดŽเดฒเตเดฒเดพเด‚ เดถเดฐเดฟเดฏเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฏเดฟ เดคเต‹เดจเตเดจเดฟ

เดฎเต‚เดจเตเดจเต เดถเตเดฐเดฎเด‚
เดŸเต†เดฑเดพเดซเต‹เด‚ เดฆเดพเดคเดพเด•เตเด•เตพ เด•เตเดฒเต—เดกเต API-เดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตเด‚ เดฏเตเด•เตเดคเดฟเดฏเตเด‚ เด…เดŸเด™เตเด™เดฟเดฏ เด•เต‹เดกเต เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจ เดฌเตˆเดจเดฑเดฟเด•เดณเดพเดฃเต. เด“เดฐเต‹ เด•เตเดฒเต—เดกเดฟเดจเตเด‚ เด…เดคเดฟเดจเตเดฑเต‡เดคเดพเดฏ เดฆเดพเดคเดพเดตเต เด‰เดฃเตเดŸเต, เดŸเต†เดฑเดพเดซเต‹เด‚ เดคเดจเตเดจเต† เดฐเดฃเตเดŸเต เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด…เดคเดฟเดจเตเดฑเต† RPC เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ เดตเดดเดฟ เดฎเดพเดคเตเดฐเดฎเต‡ เด…เดตเดฐเต† เดตเดฟเดณเดฟเด•เตเด•เต‚.
เด‡เดชเตเดชเต‹เตพ เดžเดพเตป เดŸเต†เดฑเดพเดซเต‹เด‚ เดฆเดพเดคเดพเด•เตเด•เดณเต† RPC เด•เต‹เดณเตเด•เตพ เดตเดดเดฟ เดจเต‡เดฐเดฟเดŸเตเดŸเต เดฌเดจเตเดงเดชเตเดชเต†เดŸเดพเตป เดคเต€เดฐเตเดฎเดพเดจเดฟเดšเตเดšเต. เด‡เดคเต เดฎเดจเต‹เดนเดฐเดฎเดพเดฏเดฟ เดฎเดพเดฑเตเด•เดฏเตเด‚ เดŸเต†เดฑเดพเดซเต‹เด‚ เดฆเดพเดคเดพเด•เตเด•เดณเต† เดชเตเดคเดฟเดฏเดตเดฏเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดฑเตเด•เดฏเตเด‚ เด•เต‹เดกเต เดฎเดพเดฑเตเดฑเดพเดคเต† เดคเดจเตเดจเต† เดชเตเดคเดฟเดฏ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เดจเต‡เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดคเต. tfstate เดฒเต† เดŽเดฒเตเดฒเดพ เดซเต€เตฝเดกเตเด•เดณเตเด‚ tf-เตฝ เด†เดฏเดฟเดฐเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเดฟเดฒเตเดฒ, เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเด™เตเด™เดจเต† เด•เดฃเตเดŸเต†เดคเตเดคเดพเดจเดพเด•เตเด‚? เด‡เดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดฆเดพเดคเดพเดตเดฟเดจเต‹เดŸเต เดšเต‹เดฆเดฟเดšเตเดšเดพเตฝ เดฎเดคเดฟ. เดคเตเดŸเตผเดจเตเดจเต เดชเดคเดฟเดตเต เดชเดฆเดชเตเดฐเดฏเต‹เด—เด™เตเด™เตพ เด•เต‚เดŸเตเดŸเดฟเดšเตเดšเต‡เตผเด•เตเด•เตเดจเตเดจ เดฎเดฑเตเดฑเตŠเดฐเต เด†เดตเตผเดคเตเดคเดจ เด…เดถเตเดฒเต€เดฒเด‚ เด†เดฐเด‚เดญเดฟเดšเตเดšเต, เด†เดดเดคเตเดคเดฟเตฝ เดŽเดฒเตเดฒเดพ เดคเดฒเด™เตเด™เดณเดฟเดฒเตเด‚ tfstate เด‰เดณเตเดณเดฟเดฒเต† เดซเต€เตฝเดกเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดคเดฟเดฐเดฏเตเดจเตเดจเต.

เด…เดตเดธเดพเดจเด‚, เดŽเดฒเตเดฒเดพ เดŸเต†เดฑเดพเดซเต‹เด‚ เดฆเดพเดคเดพเด•เตเด•เตพเด•เตเด•เตเด‚ เดชเตŠเดคเตเดตเดพเดฏ เด’เดฐเต เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเต—เด•เดฐเตเดฏเดฎเตเดณเตเดณ เด’เดฐเต เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฏ CLI เดŸเต‚เตพ เดžเด™เตเด™เตพเด•เตเด•เต เดฒเดญเดฟเดšเตเดšเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเดณเตเดชเตเดชเดคเตเดคเดฟเตฝ เดชเตเดคเดฟเดฏเตŠเดฐเต†เดฃเตเดฃเด‚ เดšเต‡เตผเด•เตเด•เดพเดจเดพเด•เตเด‚. เด•เต‚เดŸเดพเดคเต†, เดตเดฟเดญเดตเด™เตเด™เตพ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด•เตเดฑเดšเตเดšเต เด•เต‹เดกเต เดŽเดŸเตเด•เตเด•เตเด‚. เด•เต‚เดŸเดพเดคเต† เดตเดฟเดญเดตเด™เตเด™เตพ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เด•เดฃเด•เตเดทเดจเตเด•เตพ เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เดŽเดฒเตเดฒเดพเดคเตเดคเดฐเด‚ เดจเดจเตเดฎเด•เดณเตเด‚. เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดŽเดฒเตเดฒเดพเด‚ เดตเดฟเดตเดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดพเดคเตเดค เดจเดฟเดฐเดตเดงเดฟ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต.
เดžเดพเตป เด† เดฎเตƒเด—เดคเตเดคเดฟเดจเต เดŸเต†เดฑเดพเดซเต‹เดฎเตผ เดŽเดจเตเดจเต เดชเต‡เดฐเดฟเดŸเตเดŸเต.

เดซเตˆเดจเตฝ

Terrafomer เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดžเด™เตเด™เตพ เดฐเดฃเตเดŸเต เดฎเต‡เด˜เด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต 500-700 เด†เดฏเดฟเดฐเด‚ เดตเดฐเดฟเด•เตพ tf + tfstate เด•เต‹เดกเต เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต. เด•เต‹เดกเต เด†เดถเดฏเด™เตเด™เตพ เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เดฎเดฟเด•เดšเตเดš เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเดฑเดฟเดฒเต†เดจเตเดจเดชเต‹เดฒเต†, เดชเตˆเดคเตƒเด• เด•เดพเดฐเตเดฏเด™เตเด™เตพ เดŽเดŸเตเด•เตเด•เดพเดจเตเด‚ เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเดฒเต‚เดŸเต† เดฎเดพเดคเตเดฐเด‚ เดธเตเดชเตผเดถเดฟเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เดพเดจเตเด‚ เดžเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดžเตเดžเต. เดจเดฟเด™เตเด™เตพ เด’เดฐเต เดตเดฒเดฟเดฏ เด•เตเดฒเต—เดกเต เดŽเดŸเตเดคเตเดคเต เดŸเต†เดฑเดพเดซเต‹เด‚ เดตเตผเด•เตเด•เตผ เดซเดฏเดฒเตเด•เดณเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ เด’เดฐเต เดŸเต€เดฎเดฟเดฒเต‚เดŸเต† เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด…เดคเต เดตเต†เดฑเตเด‚ เดฎเดพเดจเตเดคเตเดฐเดฟเด•เดฎเดพเดฃเต. เดคเตเดŸเตผเดจเตเดจเต grep/replace/git เดคเตเดŸเด™เตเด™เดฟเดฏเดต.

เดžเดพเตป เด…เดคเต เดšเต€เดชเตเดชเต เดšเต†เดฏเตเดคเต เด…เดŸเตเด•เตเด•เดฟ เดตเต†เดšเตเดšเต, เด…เดจเตเดตเดพเดฆเด‚ เด•เดฟเดŸเตเดŸเดฟ. เดŽเดฒเตเดฒเดพเดตเตผเด•เตเด•เตเดฎเดพเดฏเดฟ เดตเตเดฏเดพเดดเดพเดดเตเดš (02.05.19/XNUMX/XNUMX) GitHub-เตฝ เดฑเดฟเดฒเต€เดธเต เดšเต†เดฏเตเดคเต. github.com/GoogleCloudPlatform/terraformer
เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† 600 เดจเด•เตเดทเดคเตเดฐเด™เตเด™เตพ เดฒเดญเดฟเดšเตเดšเต, เด“เดชเตเดชเตบเดธเตเดฑเตเดฑเดพเด•เตเด•เดฟเดจเตเด‚ เด•เตเดฌเตผเดจเต†เดฑเตเดฑเดฟเดจเตเดฎเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ 2 เดชเตเตพ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ. เดจเดฒเตเดฒ เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚. เดชเตŠเดคเตเดตเต‡, เดชเดฆเตเดงเดคเดฟ เดœเดจเด™เตเด™เตพเด•เตเด•เต เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฃเต
เดŸเต†เดฑเดพเดซเต‹เดฎเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพเดตเดฐเต‡เดฏเตเด‚ เดžเดพเตป เด‰เดชเดฆเต‡เดถเดฟเด•เตเด•เตเดจเตเดจเต, เด‡เดคเดฟเดจเดพเดฏเดฟ เดŽเดฒเตเดฒเดพเด‚ เดฎเดพเดฑเตเดฑเดฟเดฏเต†เดดเตเดคเดฐเตเดคเต.
เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ, เดชเตเดฐเดถเตเดจเด™เตเด™เตพ, เดจเด•เตเดทเดคเตเดฐเด™เตเด™เตพ เดŽเดจเตเดจเดฟเดต เดตเดฒเดฟเดšเตเดšเต†เดฑเดฟเดฏเตเดจเตเดจเดคเดฟเตฝ เดžเดพเตป เดธเดจเตเดคเต‹เดทเดฟเด•เตเด•เตเดจเตเดจเต.

เดกเต†เดฎเต‹
เดŸเต†เดฑเดพเดซเต‹เตผเดฎเตผ - เด•เต‹เดกเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเตผ

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•