- ÇöÀç À§Ä¡
- home > ÄÄÇ»ÅÍ¡¤ICT¡¤¾îÇÐ > ÄÄÇ»ÅÍ¡¤IT µµ¼ > OS(¿î¿µÃ¼Á¦) > ¸®´ª½º Ä¿³Î À̾߱â(DevOps¿Í SE¸¦ À§ÇÑ)(ÇÁ·Î±×·¡¹ÖÀλçÀÌÆ®)[ÀλçÀÌÆ®]
Ä¿³ÎÀº ¿À·£ ¼¼¿ù ±â´ÉÀÌ Ãß°¡µÇ°í °³¼±µÇ¾î ¿À¸é¼ ¿Ïº®ÇÏ°Ô ÀÌÇØÇϱâ Èûµé Á¤µµ·Î ¹æ´ëÇØÁ³´Ù. ÇÏÁö¸¸ º¯ÇÏÁö ¾Ê´Â ±âº» ±â´ÉµéÀÌ ÀÖ´Ù. ÀÌ·± ±Ù°£ÀÌ µÇ´Â ±â´É¿¡ ´ëÇÑ ÀÌÇظ¦ ¹ÙÅÁÀ¸·Î ½Ã½ºÅÛÀÇ ¹®Á¦¸¦ ÆľÇÇÏ°í ÇØ°áÇÏ´Â °ÍÀÌ ½Ã½ºÅÛ ¿£Áö´Ï¾î¸µÀÇ ±âº»À̶ó ÇÒ ¼ö ÀÖ´Ù. ¡º¸®´ª½º Ä¿³Î À̾߱⡻´Â ¸®´ª½º ¼¹ö¸¦ °ü¸®ÇÒ ¶§ ¸¸³¯ ¼ö ÀÖ´Â ¹®Á¦Á¡µé°ú À̸¦ ÇØ°áÇÏ´Â ¹æ¹ýÀ» Á¦½ÃÇÏ°í ÀÖ´Ù. ÀúÀÚ´Â Çö¾÷¿¡¼ °æÇèÇÑ ´Ù¾çÇÑ »óȲ°ú ¹®Á¦¸¦ ¹ÙÅÁÀ¸·Î Çϵå¿þ¾î Á¤º¸¸¦ ¾Ë¾Æ³»´Â µ¥ À¯¿ëÇÑ ¸í·É¾î, Á¤º¸¸¦ Çؼ®ÇÏ´Â ¹æ¹ý, ¾ÖÇø®ÄÉÀÌ¼Ç Å×½ºÆ®¿Í Æ©´×±îÁö ½Ç¹«¿¡¼ ±Ã±ÝÇÒ ¹ýÇÑ ³»¿ëÀ» ¼³¸íÇÑ´Ù.
ÀúÀÚ: °Áø¿ì
1Àå ½Ã½ºÅÛ ±¸¼º Á¤º¸ È®ÀÎÇϱâ
1.1 Ä¿³Î Á¤º¸ È®ÀÎÇϱâ
1.2 CPU Á¤º¸ È®ÀÎÇϱâ
1.3 ¸Þ¸ð¸® Á¤º¸ È®ÀÎÇϱâ
1.4 µð½ºÅ© Á¤º¸ È®ÀÎÇϱâ
1.5 ³×Æ®¿öÅ© Á¤º¸ È®ÀÎÇϱâ
1.6 ¿ä¾à
2Àå topÀ» ÅëÇØ »ìÆ캸´Â ÇÁ·Î¼¼½º Á¤º¸µé
2.1 ½Ã½ºÅÛÀÇ »óÅ »ìÇDZâ
2.2 VIRT, RES, SHR ..?
2.3 VIRT¿Í RES ±×¸®°í Memory CommitÀÇ °³³ä
2.4 ÇÁ·Î¼¼½ºÀÇ »óÅ º¸±â
2.5 ÇÁ·Î¼¼½ºÀÇ ¿ì¼±¼øÀ§
2.6 ¿ä¾à
3Àå Load Average¿Í ½Ã½ºÅÛ ºÎÇÏ
3.1 Load AverageÀÇ Á¤ÀÇ
3.2 Load Average °è»ê °úÁ¤
3.3 CPU Bound vs I/O Bound
3.4 vmstatÀ¸·Î ºÎÇÏÀÇ Á¤Ã¼ È®ÀÎÇϱâ
3.5 Load Average°¡ ½Ã½ºÅÛ¿¡ ³¢Ä¡´Â ¿µÇâ
3.6 Case Study - OS ¹öÀü°ú Load Average
3.7 ¿ä¾à
4Àå free ¸í·ÉÀÌ ¼û±â°í ÀÖ´Â °Íµé
4.1 ¸Þ¸ð¸® »ç¿ë·® È®ÀÎÇϱâ
4.2 buffers¿Í cached ¿µ¿ª
4.3 /proc/meminfo Àбâ
4.4 slab ¸Þ¸ð¸® ¿µ¿ª
4.5 Case Study - Slab ¸Þ¸ð¸® ´©¼ö
4.6 ¿ä¾à
5Àå swap, ¸Þ¸ð¸® Áõ¼³ÀÇ Æ÷ÀÎÆ®
5.1 swap ¿µ¿ª
5.2 ¹öµð ½Ã½ºÅÛ
5.3 ¸Þ¸ð¸® ÀçÇÒ´ç °úÁ¤
5.4 vm.swappiness¿Í vm.vfs_cache_pressure
5.5 ¸Þ¸ð¸® Áõ¼³ÀÇ Æ÷ÀÎÆ®
5.6 Case Study - gdb¸¦ ÀÌ¿ëÇؼ ¸Þ¸ð¸® ´©¼ö Àâ±â
5.7 ¿ä¾à
6Àå NUMA, ¸Þ¸ð¸® °ü¸®ÀÇ »õ·Î¿î ¼¼°è
6.1 NUMA ¾ÆÅ°ÅØó
6.2 ¸®´ª½º¿¡¼ÀÇ NUMA È®ÀÎ
6.3 ¸Þ¸ð¸® ÇÒ´ç Á¤Ã¥º° Ư¡
6.4 numad¸¦ ÀÌ¿ëÇÑ ¸Þ¸ð¸® ÇÒ´ç °ü¸®
6.5 vm.zone_reclaim_mode Ä¿³Î ÆĶó¹ÌÅÍ
6.6 NUMA ¾ÆÅ°ÅØóÀÇ ¸Þ¸ð¸® ÇÒ´ç Á¤Ã¥°ú ¿öÅ©·Îµå
6.7 ¿ä¾à
7Àå TIME_WAIT ¼ÒÄÏÀÌ ¼ºñ½º¿¡ ¹ÌÄ¡´Â ¿µÇâ
7.1 TCP Åë½Å °úÁ¤
7.2 TIME_WAIT ¼ÒÄÏÀÇ ¹®Á¦Á¡
7.3 Ŭ¶óÀ̾ðÆ®¿¡¼ÀÇ TIME_WAIT
7.4 net.ipv4.tcp_tw_reuse
7.5 ConnectionPool ¹æ½Ä »ç¿ëÇϱâ
7.6 ¼¹ö ÀÔÀå¿¡¼ÀÇ TIME_WAIT ¼ÒÄÏ
7.7 net.ipv4.tcp_tw_recycle
7.8 keepalive »ç¿ëÇϱâ
7.9 TIME_WAIT »óÅÂÀÇ Á¸Àç ÀÌÀ¯
7.10 Case Study - nginx upstream¿¡¼ ¹ß»ýÇÏ´Â TIME_WAIT
7.11 ¿ä¾à
8Àå TCP Keepalive¸¦ ÀÌ¿ëÇÑ ¼¼¼Ç À¯Áö
8.1 TCP Keepalive¶õ
8.2 TCP KeepaliveÀÇ ÆĶó¹ÌÅ͵é
8.3 TCP Keepalive¿Í Á»ºñ Ä¿³Ø¼Ç
8.4 TCP Keepalive¿Í HTTP Keepalive
8.5 Case Study - MQ ¼¹ö¿Í ·Îµå ¹ë·±¼
8.6 ¿ä¾à
9Àå TCP ÀçÀü¼Û°ú ŸÀӾƿô
9.1 TCP ÀçÀü¼Û°ú RTO
9.2 ÀçÀü¼ÛÀ» °áÁ¤ÇÏ´Â Ä¿³Î ÆĶó¹ÌÅÍ
9.3 ÀçÀü¼Û ÃßÀûÇϱâ
9.4 RTO_MIN °ª º¯°æÇϱâ
9.5 ¾ÖÇø®ÄÉÀÌ¼Ç Å¸ÀӾƿô
9.6 ¿ä¾à
10Àå dirty page°¡ I/O¿¡ ³¢Ä¡´Â ¿µÇâ
10.1 dirty page¶õ
10.2 dirty page °ü·Ã Ä¿³Î ÆĶó¹ÌÅÍ
10.3 ¹é±×¶ó¿îµå µ¿±âÈ
10.4 dirty page ¼³Á¤°ú I/O ÆÐÅÏ
10.5 ¿ä¾à
11Àå I/O ÀÛ¾÷ÀÌ Áö³ª°¡´Â °ü¹®, I/O ½ºÄÉÁÙ·¯
11.1 I/O ½ºÄÉÁÙ·¯ÀÇ Çʿ伺
11.2 I/O ½ºÄÉÁÙ·¯ ¼³Á¤
11.3 cfq I/O ½ºÄÉÁÙ·¯
11.4 deadline I/O ½ºÄÉÁÙ·¯
11.5 noop I/O ½ºÄÉÁÙ·¯
11.6 cfq¿Í deadlineÀÇ ¼º´É Å×½ºÆ®
11.7 I/O ¿öÅ©·Îµå »ìÆ캸±â
11.8 ¿ä¾à
12Àå ¾ÖÇø®ÄÉÀÌ¼Ç ¼º´É ÃøÁ¤°ú Æ©´×
12.1 ¾ÖÇø®ÄÉÀÌ¼Ç ¸¸µé±â
12.2 ¼º´É Å×½ºÆ® ½ÃÀÛ
12.3 CPU ¼º´É ÃÖÀûÈÇϱâ
12.4. ³×Æ®¿öÅ© ¼ÒÄÏ ÃÖÀûÈÇϱâ
12.5 nginx¸¦ ÅëÇØ reverse proxy ¼³Á¤Çϱâ
12.6. ¿ä¾à
Appendix A Ä¿³Î µð¹ö±ëÀ» À§ÇÑ Ä¿³Î ÄÄÆÄÀÏ
A.1 Ä¿³Î ¼Ò½º ÄÄÆÄÀÏÇϱâ
A.2 printk() ÇÔ¼ö Ãß°¡Çϱâ
A.3 printk() ÇÔ¼ö·Î Load Average °è»ê °úÁ¤ »ìÆ캸±â
A.4 ¿ä¾à
Appendix B strace¸¦ ÅëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼®
B.1 straceÀÇ ±âº» »ç¿ë¹ý
B.2 hostname ¸í·É ºÐ¼®Çϱâ
B.3 ¿ä¾à
Appendix C tcpdump¿Í ¿ÍÀ̾î»þÅ©¸¦ ÅëÇÑ TCP ÆÐŶ ºÐ¼®
C.1 tcpdumpÀÇ »ç¿ë¹ý
C.2 ¿ÍÀ̾î»þÅ© »ç¿ë¹ý
C.3 ¿ä¾à
1.1 Ä¿³Î Á¤º¸ È®ÀÎÇϱâ
1.2 CPU Á¤º¸ È®ÀÎÇϱâ
1.3 ¸Þ¸ð¸® Á¤º¸ È®ÀÎÇϱâ
1.4 µð½ºÅ© Á¤º¸ È®ÀÎÇϱâ
1.5 ³×Æ®¿öÅ© Á¤º¸ È®ÀÎÇϱâ
1.6 ¿ä¾à
2Àå topÀ» ÅëÇØ »ìÆ캸´Â ÇÁ·Î¼¼½º Á¤º¸µé
2.1 ½Ã½ºÅÛÀÇ »óÅ »ìÇDZâ
2.2 VIRT, RES, SHR ..?
2.3 VIRT¿Í RES ±×¸®°í Memory CommitÀÇ °³³ä
2.4 ÇÁ·Î¼¼½ºÀÇ »óÅ º¸±â
2.5 ÇÁ·Î¼¼½ºÀÇ ¿ì¼±¼øÀ§
2.6 ¿ä¾à
3Àå Load Average¿Í ½Ã½ºÅÛ ºÎÇÏ
3.1 Load AverageÀÇ Á¤ÀÇ
3.2 Load Average °è»ê °úÁ¤
3.3 CPU Bound vs I/O Bound
3.4 vmstatÀ¸·Î ºÎÇÏÀÇ Á¤Ã¼ È®ÀÎÇϱâ
3.5 Load Average°¡ ½Ã½ºÅÛ¿¡ ³¢Ä¡´Â ¿µÇâ
3.6 Case Study - OS ¹öÀü°ú Load Average
3.7 ¿ä¾à
4Àå free ¸í·ÉÀÌ ¼û±â°í ÀÖ´Â °Íµé
4.1 ¸Þ¸ð¸® »ç¿ë·® È®ÀÎÇϱâ
4.2 buffers¿Í cached ¿µ¿ª
4.3 /proc/meminfo Àбâ
4.4 slab ¸Þ¸ð¸® ¿µ¿ª
4.5 Case Study - Slab ¸Þ¸ð¸® ´©¼ö
4.6 ¿ä¾à
5Àå swap, ¸Þ¸ð¸® Áõ¼³ÀÇ Æ÷ÀÎÆ®
5.1 swap ¿µ¿ª
5.2 ¹öµð ½Ã½ºÅÛ
5.3 ¸Þ¸ð¸® ÀçÇÒ´ç °úÁ¤
5.4 vm.swappiness¿Í vm.vfs_cache_pressure
5.5 ¸Þ¸ð¸® Áõ¼³ÀÇ Æ÷ÀÎÆ®
5.6 Case Study - gdb¸¦ ÀÌ¿ëÇؼ ¸Þ¸ð¸® ´©¼ö Àâ±â
5.7 ¿ä¾à
6Àå NUMA, ¸Þ¸ð¸® °ü¸®ÀÇ »õ·Î¿î ¼¼°è
6.1 NUMA ¾ÆÅ°ÅØó
6.2 ¸®´ª½º¿¡¼ÀÇ NUMA È®ÀÎ
6.3 ¸Þ¸ð¸® ÇÒ´ç Á¤Ã¥º° Ư¡
6.4 numad¸¦ ÀÌ¿ëÇÑ ¸Þ¸ð¸® ÇÒ´ç °ü¸®
6.5 vm.zone_reclaim_mode Ä¿³Î ÆĶó¹ÌÅÍ
6.6 NUMA ¾ÆÅ°ÅØóÀÇ ¸Þ¸ð¸® ÇÒ´ç Á¤Ã¥°ú ¿öÅ©·Îµå
6.7 ¿ä¾à
7Àå TIME_WAIT ¼ÒÄÏÀÌ ¼ºñ½º¿¡ ¹ÌÄ¡´Â ¿µÇâ
7.1 TCP Åë½Å °úÁ¤
7.2 TIME_WAIT ¼ÒÄÏÀÇ ¹®Á¦Á¡
7.3 Ŭ¶óÀ̾ðÆ®¿¡¼ÀÇ TIME_WAIT
7.4 net.ipv4.tcp_tw_reuse
7.5 ConnectionPool ¹æ½Ä »ç¿ëÇϱâ
7.6 ¼¹ö ÀÔÀå¿¡¼ÀÇ TIME_WAIT ¼ÒÄÏ
7.7 net.ipv4.tcp_tw_recycle
7.8 keepalive »ç¿ëÇϱâ
7.9 TIME_WAIT »óÅÂÀÇ Á¸Àç ÀÌÀ¯
7.10 Case Study - nginx upstream¿¡¼ ¹ß»ýÇÏ´Â TIME_WAIT
7.11 ¿ä¾à
8Àå TCP Keepalive¸¦ ÀÌ¿ëÇÑ ¼¼¼Ç À¯Áö
8.1 TCP Keepalive¶õ
8.2 TCP KeepaliveÀÇ ÆĶó¹ÌÅ͵é
8.3 TCP Keepalive¿Í Á»ºñ Ä¿³Ø¼Ç
8.4 TCP Keepalive¿Í HTTP Keepalive
8.5 Case Study - MQ ¼¹ö¿Í ·Îµå ¹ë·±¼
8.6 ¿ä¾à
9Àå TCP ÀçÀü¼Û°ú ŸÀӾƿô
9.1 TCP ÀçÀü¼Û°ú RTO
9.2 ÀçÀü¼ÛÀ» °áÁ¤ÇÏ´Â Ä¿³Î ÆĶó¹ÌÅÍ
9.3 ÀçÀü¼Û ÃßÀûÇϱâ
9.4 RTO_MIN °ª º¯°æÇϱâ
9.5 ¾ÖÇø®ÄÉÀÌ¼Ç Å¸ÀӾƿô
9.6 ¿ä¾à
10Àå dirty page°¡ I/O¿¡ ³¢Ä¡´Â ¿µÇâ
10.1 dirty page¶õ
10.2 dirty page °ü·Ã Ä¿³Î ÆĶó¹ÌÅÍ
10.3 ¹é±×¶ó¿îµå µ¿±âÈ
10.4 dirty page ¼³Á¤°ú I/O ÆÐÅÏ
10.5 ¿ä¾à
11Àå I/O ÀÛ¾÷ÀÌ Áö³ª°¡´Â °ü¹®, I/O ½ºÄÉÁÙ·¯
11.1 I/O ½ºÄÉÁÙ·¯ÀÇ Çʿ伺
11.2 I/O ½ºÄÉÁÙ·¯ ¼³Á¤
11.3 cfq I/O ½ºÄÉÁÙ·¯
11.4 deadline I/O ½ºÄÉÁÙ·¯
11.5 noop I/O ½ºÄÉÁÙ·¯
11.6 cfq¿Í deadlineÀÇ ¼º´É Å×½ºÆ®
11.7 I/O ¿öÅ©·Îµå »ìÆ캸±â
11.8 ¿ä¾à
12Àå ¾ÖÇø®ÄÉÀÌ¼Ç ¼º´É ÃøÁ¤°ú Æ©´×
12.1 ¾ÖÇø®ÄÉÀÌ¼Ç ¸¸µé±â
12.2 ¼º´É Å×½ºÆ® ½ÃÀÛ
12.3 CPU ¼º´É ÃÖÀûÈÇϱâ
12.4. ³×Æ®¿öÅ© ¼ÒÄÏ ÃÖÀûÈÇϱâ
12.5 nginx¸¦ ÅëÇØ reverse proxy ¼³Á¤Çϱâ
12.6. ¿ä¾à
Appendix A Ä¿³Î µð¹ö±ëÀ» À§ÇÑ Ä¿³Î ÄÄÆÄÀÏ
A.1 Ä¿³Î ¼Ò½º ÄÄÆÄÀÏÇϱâ
A.2 printk() ÇÔ¼ö Ãß°¡Çϱâ
A.3 printk() ÇÔ¼ö·Î Load Average °è»ê °úÁ¤ »ìÆ캸±â
A.4 ¿ä¾à
Appendix B strace¸¦ ÅëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼®
B.1 straceÀÇ ±âº» »ç¿ë¹ý
B.2 hostname ¸í·É ºÐ¼®Çϱâ
B.3 ¿ä¾à
Appendix C tcpdump¿Í ¿ÍÀ̾î»þÅ©¸¦ ÅëÇÑ TCP ÆÐŶ ºÐ¼®
C.1 tcpdumpÀÇ »ç¿ë¹ý
C.2 ¿ÍÀ̾î»þÅ© »ç¿ë¹ý
C.3 ¿ä¾à