<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>밥벌이코딩</title>
    <link>https://babbeolicoding.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Sat, 16 May 2026 11:51:25 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>babbeolicoding</managingEditor>
    <item>
      <title>S3 수명주기 정책</title>
      <link>https://babbeolicoding.tistory.com/127</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVCMiU4NCVFRCU4MiVCNyUyMC0lM0UlMjAlRUElQjQlODAlRUIlQTYlQUMlMjAtJTNFJTIwJUVDJTg4JTk4JUVCJUFBJTg1JTIwJUVDJUEzJUJDJUVBJUI4JUIwJTIwJUVBJUI3JTlDJUVDJUI5JTk5JTIwJUVDJUEwJTk1JUVDJUIxJTg1JTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJjNjZIQjlxbFk2Q0olMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJTSDVOeW1saXB2Mk0lMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJWMHo2RnBSeUxXTEclMjIlN0Q=&quot;&gt;버킷 -&amp;gt; 관리 -&amp;gt; 수명 주기 규칙 정책&lt;/span&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;530&quot; data-origin-height=&quot;272&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kLbmM/dJMcafzlR8s/PtPx8KlNayd5eIRJQIWJhK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kLbmM/dJMcafzlR8s/PtPx8KlNayd5eIRJQIWJhK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kLbmM/dJMcafzlR8s/PtPx8KlNayd5eIRJQIWJhK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkLbmM%2FdJMcafzlR8s%2FPtPx8KlNayd5eIRJQIWJhK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;530&quot; height=&quot;272&quot; data-origin-width=&quot;530&quot; data-origin-height=&quot;272&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTMlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQyU4QSVBNCVFRCU4NiVBMCVFQiVBNiVBQyVFQyVBNyU4MCUyMCVFRCU4MSVCNCVFQiU5RSU5OCVFQyU4QSVBNCUyMCVFQSVCMCU4NCVFQyU5NyU5MCUyMCVFQSVCMCU5RCVFQyVCMiVCNCVFQyU5RCU5OCUyMCVFRCU5OCU4NCVFQyU5RSVBQyUyMCVFQiVCMiU4NCVFQyVBMCU4NCUyMCVFQyVBMCU4NCVFRCU5OSU5OCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyS24zWTJZdE5ZU2VSJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyS2hNWW5pb05DTjRzJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyOWNQckJUVGFpTkdqJTIyJTdE&quot;&gt;스토리지 클래스 간에 객체의 현재 버전 전환&lt;/span&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiglRUQlOTglODQlRUMlOUUlQUMlMjAlRUQlOTklOUMlRUIlQjAlOUMlRUQlOUUlODglMjAlRUMlODIlQUMlRUMlOUElQTklMjAlRUMlQTQlOTElRUMlOUQlQjglMjAnJUVDJUI1JTlDJUVDJThCJUEwJTIwJUVEJThDJThDJUVDJTlEJUJDJyVFQyU5RCU4NCUyMCVFQiU4RCU5NCUyMCVFQyVBMCU4MCVFQiVBMCVCNCVFRCU5NSU5QyUyMCVFQyVBMCU4MCVFQyU5RSVBNSVFQyU4NiU4QyVFQiVBMSU5QyUyMCVFQyU5OCVBRSVFQSVCOCVCMCVFQiU4QSU5NCUyMCVFQyU5RSU5MSVFQyU5NyU4NSVFQyU5RSU4NSVFQiU4QiU4OCVFQiU4QiVBNC4pJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJlOWUyRU1tb2Zsc0ElMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJqRkdvOFpwWmNjOGYlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJIeUhFZkp1TGR5WkYlMjIlN0Q=&quot;&gt;(현재 활발히 사용 중인 '최신 파일'을 더 저렴한 저장소로 옮기는 작업)&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1775134649220&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;- 설명: 자주 쓰지 않는 파일을 S3 Standard(비쌈)에서 Standard-IA(조금 저렴)나 Glacier(매우 저렴)로 자동 이동
- 특징: 파일은 그대로 목록에 보이지만, 뒤에서 저장되는 물리적인 위치만 변경&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;669&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ccnjz1/dJMcabX0KEJ/G41avWVk5yPPL098R33FsK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ccnjz1/dJMcabX0KEJ/G41avWVk5yPPL098R33FsK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ccnjz1/dJMcabX0KEJ/G41avWVk5yPPL098R33FsK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fccnjz1%2FdJMcabX0KEJ%2FG41avWVk5yPPL098R33FsK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;669&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;669&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTMlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQyU4QSVBNCVFRCU4NiVBMCVFQiVBNiVBQyVFQyVBNyU4MCUyMCVFRCU4MSVCNCVFQiU5RSU5OCVFQyU4QSVBNCUyMCVFQSVCMCU4NCVFQyU5NyU5MCUyMCVFQSVCMCU5RCVFQyVCMiVCNCVFQyU5RCU5OCUyMCVFQyU5RCVCNCVFQyVBMCU4NCUyMCVFQiVCMiU4NCVFQyVBMCU4NCUyMCVFQyVBMCU4NCVFRCU5OSU5OCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIycG5VTk5aQzhVQjdSJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyd2dFZ2FlVVlodVhYJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIycW9hd3J3emp4bTczJTIyJTdE&quot;&gt;스토리지 클래스 간에 객체의 이전 버전 전환&lt;/span&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiglRUMlODglOTglRUMlQTAlOTUlRUIlOTAlOTglRUElQjElQjAlRUIlODIlOTglMjAlRUMlODIlQUQlRUMlQTAlOUMlRUIlOTAlOTglRUMlOTYlQjQlMjAnJUVCJTkyJUE0JUVCJUExJTlDJTIwJUVCJUIwJTgwJUVCJUEwJUE0JUVCJTgyJTlDJTIwJUVBJUIzJUJDJUVBJUIxJUIwJTIwJUVCJUIyJTg0JUVDJUEwJTg0JyVFQiU5MyVBNCVFQyU5RCU4NCUyMCVFQyVBMCU4MCVFQiVBMCVCNCVFRCU5NSU5QyUyMCVFQyVBMCU4MCVFQyU5RSVBNSVFQyU4NiU4QyVFQiVBMSU5QyUyMCVFQyU5OCVBRSVFQSVCOCVCMCVFQiU4QSU5NCUyMCVFQyU5RSU5MSVFQyU5NyU4NSVFQyU5RSU4NSVFQiU4QiU4OCVFQiU4QiVBNC4pJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJKZFFiZkxMQnFNWGUlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJpdmM4Q1VQVDU0clYlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJnRjA2QmZDTTlMOVYlMjIlN0Q=&quot;&gt;(수정되거나 삭제되어 '뒤로 밀려난 과거 버전'들을 저렴한 저장소로 옮기는 작업)&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1775134681237&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;- 설명: 버전 관리가 켜진 버킷에서만 작동하며, 구버전 파일들을 Glacier 같은 아카이브 저장소로 이동
- 용도: &quot;과거 이력 데이터는 거의 볼 일이 없으니 가장 싼 곳에 보관하고 싶을 때&quot; 사용&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bNX7bU/dJMcaaY5lKd/g8XFzLJaCvkVFGJ1NSElG0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bNX7bU/dJMcaaY5lKd/g8XFzLJaCvkVFGJ1NSElG0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bNX7bU/dJMcaaY5lKd/g8XFzLJaCvkVFGJ1NSElG0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbNX7bU%2FdJMcaaY5lKd%2Fg8XFzLJaCvkVFGJ1NSElG0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;673&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;673&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTMlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQSVCMCU5RCVFQyVCMiVCNCVFQyU5RCU5OCUyMCVFRCU5OCU4NCVFQyU5RSVBQyUyMCVFQiVCMiU4NCVFQyVBMCU4NCUyMCVFQiVBNyU4QyVFQiVBMyU4QyUyMChFeHBpcmF0aW9uKSUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyMFF1VzZ1QW1aaTNqJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyOGtwRFZGNlV0SmNyJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyQmtRbG4zempUM2IxJTIyJTdE&quot;&gt;객체의 현재 버전 만료 (Expiration)&lt;/span&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiglRUMlODIlQUMlRUMlOUElQTklRUMlOUUlOTAlRUElQjAlODAlMjAlRUIlQjMlQjQlRUIlOEElOTQlMjAnJUVDJUI1JTlDJUVDJThCJUEwJTIwJUVEJThDJThDJUVDJTlEJUJDJyVFQyU5RCU4NCUyMCVFQiVBQSVBOSVFQiVBMSU5RCVFQyU5NyU5MCVFQyU4NCU5QyUyMCVFQyU4OCVBOCVFQSVCOCVCMCVFQSVCMyVBMCUyMCclRUMlOUQlQjQlRUMlQTAlODQlMjAlRUIlQjIlODQlRUMlQTAlODQnJTIwJUVDJTgzJTgxJUVEJTgzJTlDJUVCJUExJTlDJTIwJUVCJUE3JThDJUVCJTkzJUFEJUVCJThCJTg4JUVCJThCJUE0LiklMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmVpT01sU3A3WElmSCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMko4OWNMU2hIUTFqbCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMlZHaEJYZTRJZzRKUSUyMiU3RA==&quot;&gt;(사용자가 보는 '최신 파일'을 목록에서 숨기고 '이전 버전' 상태로 만듭니다.)&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1775134708407&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;- 동작: 파일에 **'삭제 마커'**를 붙입니다. 일반적인 조회 시에는 파일이 삭제된 것처럼 보이지 않음
- 핵심: 실제 데이터가 바로 지워지는 것이 아니라 '논리적 삭제' 상태(버전 표시를 누르면 복구 가능)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;700&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cjtfWf/dJMcagE2twt/g00m8evLV3fiRiQQ1JGh8K/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cjtfWf/dJMcagE2twt/g00m8evLV3fiRiQQ1JGh8K/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cjtfWf/dJMcagE2twt/g00m8evLV3fiRiQQ1JGh8K/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcjtfWf%2FdJMcagE2twt%2Fg00m8evLV3fiRiQQ1JGh8K%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;700&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;700&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFRCU5NSVCNCVFQiU4QiVCOSUyMCVFQyU5RSU5MSVFQyU5NyU4NSVFQyU5RCVCNCUyMCVFQyVBNyU4NCVFRCU5NiU4OSVFQiU5MCU5OCVFQiVBOSVCNCUyMFMzJUVDJTk3JTkwJUVDJTg0JTlDJUVCJThBJTk0JTIwJUVDJTk1JTg0JUVCJUFDJUI0JUVCJTlGJUIwJTIwJUVCJUE2JUFDJUVDJThBJUE0JUVEJThBJUI4JUVBJUIwJTgwJTIwJUVCJUIzJUI0JUVDJTlEJUI0JUVDJUE3JTgwJTIwJUVDJTk1JThBJUVDJTlEJThDJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJ1ZEtwc2twT005VUMlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJKakJDanFZcWJQUEUlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJMVUZHVW9kTVRpaDklMjIlN0Q=&quot;&gt;해당 작업이 진행되면 S3에서는 아무런 리스트가 보이지 않음&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;727&quot; data-origin-height=&quot;332&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l7Bwg/dJMcafe4EXa/kohiduMlRuNsyehwOOA6C0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l7Bwg/dJMcafe4EXa/kohiduMlRuNsyehwOOA6C0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l7Bwg/dJMcafe4EXa/kohiduMlRuNsyehwOOA6C0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl7Bwg%2FdJMcafe4EXa%2FkohiduMlRuNsyehwOOA6C0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;727&quot; height=&quot;332&quot; data-origin-width=&quot;727&quot; data-origin-height=&quot;332&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVCMiU4NCVFQyVBMCU4NCVFRCU5MSU5QyVFQyU4QiU5QyVFQiVBNSVCQyUyMCVFQiU4OCU4NCVFQiVBNSVCNCVFQiVBOSVCNCUyMCVFRCU5NSVCNCVFQiU4QiVCOSUyMCVFRCU4QyU4QyVFQyU5RCVCQyVFQyU5RCVCNCUyMCVFQiVCMyVCNCVFQyU5RSU4NCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyTG80ODh5MmNQeG1jJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIydWc2N2Z1QXFkSW5nJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyRFV6TmsweXZhNmgyJTIyJTdE&quot;&gt;버전표시를 누르면 해당 파일이 보임&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div data-key=&quot;jyF7J95GfN7l&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVCMiU4NCVFQyVBMCU4NCVFRCU5MSU5QyVFQyU4QiU5QyVFQiVBNSVCQyUyMCVFQiU4OCU4NCVFQiVBNSVCNCVFQiVBOSVCNCUyMCVFRCU5NSVCNCVFQiU4QiVCOSUyMCVFRCU4QyU4QyVFQyU5RCVCQyVFQyU5RCVCNCUyMCVFQiVCMyVCNCVFQyU5RSU4NCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNDFySHEwMGJzUDNsJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyMk0ySXNvN1BTN25GJTIyJTdEJTJDJTdCJTIyb2JqZWN0JTIyJTNBJTIyYmxvY2slMjIlMkMlMjJ0eXBlJTIyJTNBJTIycGFyYWdyYXBoJTIyJTJDJTIyaXNWb2lkJTIyJTNBZmFsc2UlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJ0ZXh0JTIyJTJDJTIybGVhdmVzJTIyJTNBJTVCJTdCJTIyb2JqZWN0JTIyJTNBJTIybGVhZiUyMiUyQyUyMnRleHQlMjIlM0ElMjIlRUMlODIlQUQlRUMlQTAlOUMlMjAlRUIlQTclODglRUMlQkIlQTQlRUElQjAlODAlMjAlRUMlOUUlODglRUIlOEElOTQlMjAlRUQlOEMlOEMlRUMlOUQlQkMlRUMlOUQlODQlMjAlRUMlODQlQTAlRUQlODMlOUQlRUQlOTUlQjQlRUMlODQlOUMlMjAlRUMlODIlQUQlRUMlQTAlOUMlRUIlQTUlQkMlMjAlRUMlQTclODQlRUQlOTYlODklRUQlOTUlOTglRUIlQTklQjQlMjAlRUMlOUQlQjQlRUMlQTAlODQlMjAlRUQlOEMlOEMlRUMlOUQlQkMlRUMlOUQlQjQlMjBTMyVFQyU5NyU5MCVFQyU4NCU5QyUyMCVFQiVCMyVCNCVFQyU5RSU4NCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIycVhEMngxb01aMmhPJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyVGNRbWt1OG1RTVBpJTIyJTdEJTJDJTdCJTIyb2JqZWN0JTIyJTNBJTIyYmxvY2slMjIlMkMlMjJ0eXBlJTIyJTNBJTIycGFyYWdyYXBoJTIyJTJDJTIyaXNWb2lkJTIyJTNBZmFsc2UlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJ0ZXh0JTIyJTJDJTIybGVhdmVzJTIyJTNBJTVCJTdCJTIyb2JqZWN0JTIyJTNBJTIybGVhZiUyMiUyQyUyMnRleHQlMjIlM0ElMjIlRUMlQTAlODQlRUMlQjIlQjQlMjAlRUIlQjMlQjUlRUMlOUIlOTAlRUMlOUQlODQlMjAlRUQlOTUlQTAlRUIlOTUlOEMlRUIlOEElOTQlMjBBV1MlMjBDTEklRUIlQTUlQkMlMjAlRUMlODIlQUMlRUMlOUElQTklRUQlOTUlQjQlRUMlODQlOUMlMjAlRUQlOTUlQjQlRUMlOTUlQkMlRUQlOTUlQTglMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMkFITWpsU2dvRHBwNiUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMk1HWnYzdWR5NlA0MCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMkJmc25tMktSSXdTcyUyMiU3RA==&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div data-key=&quot;MGZv3udy6P40&quot;&gt;
&lt;div data-block-content=&quot;MGZv3udy6P40&quot;&gt;&lt;figure class=&quot;imageblock alignRight&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;845&quot; data-origin-height=&quot;479&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LAqa7/dJMb990dGAp/QetQbiWEILbpFsgMYA7pZk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LAqa7/dJMb990dGAp/QetQbiWEILbpFsgMYA7pZk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LAqa7/dJMb990dGAp/QetQbiWEILbpFsgMYA7pZk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLAqa7%2FdJMb990dGAp%2FQetQbiWEILbpFsgMYA7pZk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;845&quot; height=&quot;479&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;845&quot; data-origin-height=&quot;479&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTMlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQSVCMCU5RCVFQyVCMiVCNCVFQyU5RCU5OCUyMCVFQyU5RCVCNCVFQyVBMCU4NCUyMCVFQiVCMiU4NCVFQyVBMCU4NCUyMCVFQyU5OCU4MSVFQSVCNSVBQyUyMCVFQyU4MiVBRCVFQyVBMCU5QyUyMChOb25jdXJyZW50JTIwVmVyc2lvbiUyMEV4cGlyYXRpb24pJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI0dW5vRHJIdXQyQ2UlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJQRGZTS1J3eGF2aFAlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJiVVVJVFZrNXJvSUMlMjIlN0Q=&quot;&gt;객체의 이전 버전 영구 삭제 (Noncurrent Version Expiration)&lt;/span&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiglRUIlQUElQTklRUIlQTElOUQlRUMlOTclOTAlRUMlODQlOUMlMjAlRUMlODIlQUMlRUIlOUQlQkMlRUMlQTAlQjglMjAnJUVDJTlEJUI0JUVDJUEwJTg0JTIwJUVCJUIyJTg0JUVDJUEwJTg0JyUyMCVFRCU4MyVBRCVFQyU5NyU5MCUyMCVFQyU4OCVBOCVFQyU5NiVCNCUyMCVFQyU5RSU4OCVFQiU4QSU5NCUyMCVFQiU4RCVCMCVFQyU5RCVCNCVFRCU4NCVCMCVFQiVBNSVCQyUyMCVFQyU4QiVBNCVFQyVBMCU5QyVFQiVBMSU5QyUyMCVFQyU5OSU4NCVFQyVBMCU4NCVFRCU5RSU4OCUyMCVFQyVBNyU4MCVFQyU5QSVCMCVFQiU4QSU5NCUyMCVFQyU5RSU5MSVFQyU5NyU4NSVFQyU5RSU4NSVFQiU4QiU4OCVFQiU4QiVBNC4pJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzQVFwemhyOEdMWDklMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJwSU1MVjZwVU9IVlElMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJtemMyYVNxcFhxVHolMjIlN0Q=&quot;&gt;(목록에서 사라져 '이전 버전' 탭에 숨어 있는 데이터를 실제로 완전히 지우는 작업)&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1775134780676&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;동작: 지정한 기간이 지나면 S3 저장소에서 데이터를 물리적으로 제거
핵심: 이 작업이 실행되어야 실제로 스토리지 비용이 줄어듭니다. 한번 지워지면 복구가 불가능&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;693&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ttXL5/dJMcadVMj7v/u728a2WSaIKj3RzL7OSNbk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ttXL5/dJMcadVMj7v/u728a2WSaIKj3RzL7OSNbk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ttXL5/dJMcadVMj7v/u728a2WSaIKj3RzL7OSNbk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FttXL5%2FdJMcadVMj7v%2Fu728a2WSaIKj3RzL7OSNbk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;693&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;693&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTMlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVBNyU4QyVFQiVBMyU4QyVFQiU5MCU5QyUyMCVFQSVCMCU5RCVFQyVCMiVCNCUyMCVFQyU4MiVBRCVFQyVBMCU5QyUyMCVFQiVBNyU4OCVFQyVCQiVBNCUyMCVFQiU5OCU5MCVFQiU4QSU5NCUyMCVFQyU5OSU4NCVFQiVBMyU4QyVFQiU5MCU5OCVFQyVBNyU4MCUyMCVFQyU5NSU4QSVFQyU5RCU4MCUyMCVFQiVBOSU4MCVFRCU4QiVCMCVFRCU4QyU4QyVFRCU4QSVCOCUyMCVFQyU5NyU4NSVFQiVBMSU5QyVFQiU5MyU5QyUyMCVFQyU4MiVBRCVFQyVBMCU5QyUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyU3lrNHhZZ3NweTZsJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyemROTGhhY012NDh4JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyc0dDbnlub2NGWXc1JTIyJTdE&quot;&gt;만료된 객체 삭제 마커 또는 완료되지 않은 멀티파트 업로드 삭제&lt;/span&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTMlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVBNyU4QyVFQiVBMyU4QyVFQiU5MCU5QyUyMCVFQSVCMCU5RCVFQyVCMiVCNCUyMCVFQyU4MiVBRCVFQyVBMCU5QyUyMCVFQiVBNyU4OCVFQyVCQiVBNCUyMCVFQiU5OCU5MCVFQiU4QSU5NCUyMCVFQyU5OSU4NCVFQiVBMyU4QyVFQiU5MCU5OCVFQyVBNyU4MCUyMCVFQyU5NSU4QSVFQyU5RCU4MCUyMCVFQiVBOSU4MCVFRCU4QiVCMCVFRCU4QyU4QyVFRCU4QSVCOCUyMCVFQyU5NyU4NSVFQiVBMSU5QyVFQiU5MyU5QyUyMCVFQyU4MiVBRCVFQyVBMCU5QyUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyU3lrNHhZZ3NweTZsJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyemROTGhhY012NDh4JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyc0dDbnlub2NGWXc1JTIyJTdE&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiglRUIlOEQlQjAlRUMlOUQlQjQlRUQlODQlQjAlRUElQjAlODAlMjAlRUMlQTclODAlRUMlOUIlOEMlRUMlQTclODAlRUElQjMlQTAlMjAlRUIlODIlQTglRUMlOUQlODAlMjAnJUVDJUIwJThDJUVBJUJBJUJDJUVBJUI4JUIwJyVFQiU5MyVBNCVFQyU5RCU4NCUyMCVFQyVBMCU5NSVFQiVBNiVBQyVFRCU5NSU5OCVFQiU4QSU5NCUyMCVFQyVCMiVBRCVFQyU4NiU4QyUyMCVFQyU5RSU5MSVFQyU5NyU4NSVFQyU5RSU4NSVFQiU4QiU4OCVFQiU4QiVBNC4pJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJOa2hSWFhSMWpkVGIlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJoVHoxVmFVNW4ybjclMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJSWTVrSVlURktwSzAlMjIlN0Q=&quot;&gt;(데이터가 지워지고 남은 '찌꺼기'들을 정리하는 청소 작업)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1775134809153&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;만료된 객체 삭제 마커 삭제: 데이터는 이미 영구 삭제되고 '삭제 마커(포스트잇)'만 덜렁 남은 경우, 이 마커까지 지워야 목록이 깔끔해짐
완료되지 않은 멀티파트 업로드 삭제: 파일을 올리다가 인터넷 끊김 등으로 중단된 '업로드 조각'들을 삭제. 이 조각들도 용량을 차지하며 비용이 나오기 때문에 반드시 체크해야 함.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;634&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsfm9O/dJMcahDTDEU/TKQL27yFRsgMYB0JD1W0h1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsfm9O/dJMcahDTDEU/TKQL27yFRsgMYB0JD1W0h1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsfm9O/dJMcahDTDEU/TKQL27yFRsgMYB0JD1W0h1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbsfm9O%2FdJMcahDTDEU%2FTKQL27yFRsgMYB0JD1W0h1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;634&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;634&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>AWS</category>
      <category>S3</category>
      <category>수명주기</category>
      <category>정책</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/127</guid>
      <comments>https://babbeolicoding.tistory.com/127#entry127comment</comments>
      <pubDate>Thu, 2 Apr 2026 22:10:47 +0900</pubDate>
    </item>
    <item>
      <title>Kubernetes Envoy로 Header 로깅하기 (Ingress 연동)</title>
      <link>https://babbeolicoding.tistory.com/126</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;구조는 아래 이미지와 같다.&lt;/span&gt;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt; 호출 &amp;rarr; Ingress &amp;rarr; Envoy Service &amp;rarr; Envoy Pod(로그 기록) &amp;rarr; Backend Service &amp;rarr; Pod &lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1536&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nW4MQ/dJMcadA3DBo/byQ9BCP2Ws8ZLUVynrgYaK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nW4MQ/dJMcadA3DBo/byQ9BCP2Ws8ZLUVynrgYaK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nW4MQ/dJMcadA3DBo/byQ9BCP2Ws8ZLUVynrgYaK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnW4MQ%2FdJMcadA3DBo%2FbyQ9BCP2Ws8ZLUVynrgYaK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;393&quot; height=&quot;590&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1536&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;테스트용 백앤드 서비스 생성&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;pre id=&quot;code_1772461441837&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;kubectl create deployment service-1 --image=nginx --replicas=1
kubectl create deployment service-2 --image=nginx --replicas=1
kubectl create deployment service-3 --image=nginx --replicas=1

kubectl expose deployment service-1 --port=80 --target-port=80
kubectl expose deployment service-2 --port=80 --target-port=80
kubectl expose deployment service-3 --port=80 --target-port=80&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Envoy ConfigMap&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;pre id=&quot;code_1772461467293&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apiVersion: v1
kind: ConfigMap
metadata:
  name: envoy-config
  namespace: default
data:
  envoy.yaml: |
    static_resources:
      listeners:
      - name: listener_0
        address:
          socket_address:
            address: 0.0.0.0
            port_value: 15001
        filter_chains:
        - filters:
          - name: envoy.filters.network.http_connection_manager
            typed_config:
              &quot;@type&quot;: type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
              stat_prefix: ingress
              route_config:
                name: ingress_route
                virtual_hosts:
                - name: backend_services
                  domains:
                  - &quot;*&quot;
                  routes:
                  - match:
                      prefix: &quot;/&quot;
                    route:
                      cluster: service-1
              http_filters:
              - name: envoy.filters.http.lua
                typed_config:
                  &quot;@type&quot;: type.googleapis.com/envoy.extensions.filters.http.lua.v3.Lua
                  inline_code: |
                    function envoy_on_request(handle)
                      local headers = handle:headers()
                      local log = &quot;=== REQUEST HEADERS START ===\n&quot;
                      for key, value in pairs(headers) do
                        log = log .. key .. &quot;: &quot; .. value .. &quot;\n&quot;
                      end
                      log = log .. &quot;=== REQUEST HEADERS END ===&quot;
                      handle:logInfo(log)
                    end
              - name: envoy.filters.http.router
                typed_config:
                  &quot;@type&quot;: type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
              access_log:
              - name: envoy.access_loggers.stdout
                typed_config:
                  &quot;@type&quot;: type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog
                  log_format:
                   text_format: |
                    [START]
                    Remote Address: %DOWNSTREAM_REMOTE_ADDRESS%
                    Method: %REQ(:METHOD)%
                    Path: %REQ(:PATH)%
                    User-Agent: %REQ(USER-AGENT)%
                    Content-Type: %REQ(CONTENT-TYPE)%
                    Accept: %REQ(ACCEPT)%
                    Host: %REQ(HOST)%
                    Accept-Language: %REQ(ACCEPT-LANGUAGE)%
                    Content-Length: %REQ(CONTENT-LENGTH)%
                    Referrer: %REQ(REFERRER)%
                    Cookie: %REQ(COOKIE)%
                    X-Forwarded-For: %REQ(X-FORWARDED-FOR)%
                    X-Real-IP: %REQ(X-REAL-IP)%
                    Status: %RESP(:STATUS)%
                    TTTT Header: %REQ(tttt)%
                    Transfer-Encoding: %RESP(TRANSFER-ENCODING)%
                    Bytes Received: %BYTES_RECEIVED%
                    Bytes Sent: %BYTES_SENT%
                    Duration: %DURATION%
                    Requested Server Name: %REQUESTED_SERVER_NAME%
                    [END]

      clusters:
      - name: service-1
        connect_timeout: 1s
        type: STRICT_DNS
        lb_policy: ROUND_ROBIN
        load_assignment:
          cluster_name: service-1
          endpoints:
          - lb_endpoints:
            - endpoint:
                address:
                  socket_address:
                    address: service-1.default.svc.cluster.local
                    port_value: 80&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; Envoy Deployment &amp;amp; Service &lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1772461484231&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apiVersion: apps/v1
kind: Deployment
metadata:
  name: envoy
spec:
  replicas: 1
  selector:
    matchLabels:
      app: envoy
  template:
    metadata:
      labels:
        app: envoy
    spec:
      containers:
      - name: envoy
        image: envoyproxy/envoy:v1.29-latest
        args: [&quot;--config-path&quot;, &quot;/etc/envoy/envoy.yaml&quot;]
        ports:
        - containerPort: 15001
        volumeMounts:
        - name: config
          mountPath: /etc/envoy
      volumes:
      - name: config
        configMap:
          name: envoy-config
---
apiVersion: v1
kind: Service
metadata:
  name: envoy
spec:
  selector:
    app: envoy
  ports:
  - port: 15001
    targetPort: 15001&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ingress에서 특정 경로만 Envoy로 라우팅&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1772461504243&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: test-ingress
  annotations:
    nginx.ingress.kubernetes.io/use-regex: &quot;true&quot;
spec:
  ingressClassName: nginx
  rules:
  - host: test.local
    http:
      paths:
      - path: /test1(/|$)(.*)
        pathType: ImplementationSpecific
        backend:
          service:
            name: envoy
            port:
              number: 15001
      - path: /test2(/|$)(.*)
        pathType: ImplementationSpecific
        backend:
          service:
            name: service-2
            port:
              number: 80
      - path: /test3(/|$)(.*)
        pathType: ImplementationSpecific
        backend:
          service:
            name: service-3
            port:
              number: 80&lt;/code&gt;&lt;/pre&gt;</description>
      <category>Kubernetes/envoy</category>
      <category>envoy</category>
      <category>header</category>
      <category>Ingress</category>
      <category>log</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/126</guid>
      <comments>https://babbeolicoding.tistory.com/126#entry126comment</comments>
      <pubDate>Mon, 2 Mar 2026 23:29:41 +0900</pubDate>
    </item>
    <item>
      <title>ingress-nginx canary 설정</title>
      <link>https://babbeolicoding.tistory.com/125</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMmNhbmFyeSUyMCVFMiU4NyU5MiUyMCVFRCU4QSVCOSVFQyVBMCU5NSUyMHBvZCVFQyU5NyU5MCUyMCVFQyU4NCVBNCVFQyVBMCU5NSVFRCU5NSU5QyUyMHdlaWdodCVFQiVBNyU4QyVFRCU4MSVCQyVFQyU5RCU5OCUyMCVFQiVCOSU4NCVFQyU5QyVBOCVFQiVBNyU4QyUyMCVFRCU5OCVCOCVFQyVCNiU5QyVFRCU5NSU5OCVFQSVCMiU4QyUyMCVFRCU5NSU5OCVFQiU4QSU5NCUyMCVFQSVCOCVCMCVFQiU4QSVBNSUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYWhRZ3N0alNjNWw5JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyRnFCS2tsc0duUDUxJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyWWFXYXlxczg1MnRoJTIyJTdE&quot;&gt;canary &amp;rArr; 특정 pod에 설정한 weight만큼의 비율만 호출하게 하는 기능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTMlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMmluZ3Jlc3MlMjAlMkIlMjBkZXBsb3klMjAlMkIlMjBzdmMlRUElQjAlODAlMjAlRUMlQjYlOTQlRUElQjAlODAlRUIlQTElOUMlMjAlRUQlOTUlODQlRUMlOUElOTQlRUQlOTUlQTglMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjd0R2xVUTFuTjNhQSUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMm52dGtPWkJ5RTJONyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjFCM3I4Z3Y4cUV3RSUyMiU3RA==&quot;&gt;ingress + deploy + svc 조합이 2개가 필요함&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;pre id=&quot;code_1772460249760&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;       [Ingress - Stable / Canary]
                     |
          ┌──────────┴──────────┐
          |                     |
         90%                   10%
          |                     |
   [test-service]     [test-canary-service]
          |                     |
    [Stable Pod1]          [Canary Pod1]
    
    
    
    
- Ingress
 : Stable/Canary용 Ingress가 각각 1개씩 존재
 : Host/Path는 동일할 수 있음

- Service
 : Stable: test-service &amp;rarr; Stable Pods
 : Canary: test-canary-service &amp;rarr; Canary Pods

- 트래픽 비율
 : Ingress의 **canary annotation weight**로 분배 (예: 90% Stable, 10% Canary)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTElMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMmluZ3Jlc3MlMjAlRUMlODQlQTQlRUMlQTAlOTUlMjAlRUIlQjAlQTklRUIlQjIlOTUlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMkp2MzJicW05ZGVpWiUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMkVldWcwMnhyUkN2UyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMkcwUGNpMHRGb2R1aCUyMiU3RA==&quot;&gt;ingress 설정 방법&lt;/span&gt; &lt;/b&gt;&lt;/h4&gt;
&lt;pre id=&quot;code_1772460270303&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;nginx.ingress.kubernetes.io/canary: &quot;true&quot;
nginx.ingress.kubernetes.io/canary-weight: &quot;10&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Kubernetes/canary</category>
      <category>Canary</category>
      <category>ingress-nginx</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/125</guid>
      <comments>https://babbeolicoding.tistory.com/125#entry125comment</comments>
      <pubDate>Mon, 2 Mar 2026 23:12:23 +0900</pubDate>
    </item>
    <item>
      <title>TLS 지원 버전 체크 방법</title>
      <link>https://babbeolicoding.tistory.com/124</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;특정 서비스를 호출할 때 해당 서비스에서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어떤 버전의 TLS를 지원하냐에 따라 개발을 달리해야 할 때가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특정 서비스에서 TLS 지원이 가능한 범위를 확인하기 위해선 아래 명령어를 통해 확인이 가능하다.&lt;/p&gt;
&lt;pre id=&quot;code_1770437051650&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#TLS 1.0 확인
openssl s_client -connect {domain}:{port} -tls1

#TLS 1.1 확인
openssl s_client -connect {domain}:{port} -tls1_1

#TLS 1.2 확인
openssl s_client -connect {domain}:{port} -tls1_2

#TLS 1.3 확인
openssl s_client -connect {domain}:{port} -tls1_3&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;호출했을 때 결과값을 통해서 지원 가능한 버전 확인이 가능하다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1079&quot; data-origin-height=&quot;427&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Tf40s/dJMcabJSPUk/KJVQKTWQbjJMh9FTV5JqRK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Tf40s/dJMcabJSPUk/KJVQKTWQbjJMh9FTV5JqRK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Tf40s/dJMcabJSPUk/KJVQKTWQbjJMh9FTV5JqRK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTf40s%2FdJMcabJSPUk%2FKJVQKTWQbjJMh9FTV5JqRK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1079&quot; height=&quot;427&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1079&quot; data-origin-height=&quot;427&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Linux</category>
      <category>openssl</category>
      <category>TLS</category>
      <category>tls1.0</category>
      <category>tls1.1</category>
      <category>tls1.2</category>
      <category>tls1.3</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/124</guid>
      <comments>https://babbeolicoding.tistory.com/124#entry124comment</comments>
      <pubDate>Sat, 7 Feb 2026 13:09:08 +0900</pubDate>
    </item>
    <item>
      <title>elastic container registry 이미지 pull 권한 주는 방법</title>
      <link>https://babbeolicoding.tistory.com/123</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;1. Node에 AmazonEC2ContainerRegistryReadOnly 권한을 추가&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(단 &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMmVrcyVFQyU5OSU4MCUyMGVjciVFQyU5RCVCNCUyMCVFQSVCMCU5OSVFQyU5RCU4MCUyMCVFQSVCMyU4NCVFQyVBMCU5NSVFQyU5NyU5MCUyMCVFQyU5RSU4OCVFQiU4QSU5NCUyMCVFQSVCMiVCRCVFQyU5QSVCMCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyWUM1Q21FeHVDQmRUJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIydmNLdUlzcTRJMmVwJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyMmQ0NTFBT1VkQlR1JTIyJTdE&quot;&gt;eks와 ecr이 같은 계정에 있는 경우만 가능하다)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;228&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cPnbXO/dJMcabC5N6Q/k3QMtObG3sFvZP1JkN3tk0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cPnbXO/dJMcabC5N6Q/k3QMtObG3sFvZP1JkN3tk0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cPnbXO/dJMcabC5N6Q/k3QMtObG3sFvZP1JkN3tk0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcPnbXO%2FdJMcabC5N6Q%2Fk3QMtObG3sFvZP1JkN3tk0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;228&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;228&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;2. Secret 생성 후 deployment에 연결&lt;/h4&gt;
&lt;pre id=&quot;code_1770294272603&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;kubectl create secret generic aws-registry     --from-file=.dockerconfigjson=/home/kuber/config.json     --type=kubernetes.io/dockerconfigjson

이런식으로 secret을 만들어서 사용하면 됨&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>AWS</category>
      <category>AWS</category>
      <category>Container</category>
      <category>deployment</category>
      <category>ecr</category>
      <category>Registry</category>
      <category>secret</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/123</guid>
      <comments>https://babbeolicoding.tistory.com/123#entry123comment</comments>
      <pubDate>Thu, 5 Feb 2026 21:25:50 +0900</pubDate>
    </item>
    <item>
      <title>Bucket {s3-name} already has continuous backup enabled for another vault Backup job failed.</title>
      <link>https://babbeolicoding.tistory.com/122</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;S3&amp;nbsp;온디맨드&amp;nbsp;백업&amp;nbsp;진행&amp;nbsp;시&amp;nbsp;아래&amp;nbsp;오류가&amp;nbsp;발생 &lt;br /&gt;Bucket &lt;b&gt;{s3-name}&lt;/b&gt; already has continuous backup enabled for another vault Backup job failed.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;415&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dBkGJC/dJMcah4llCd/L7gSQ8Nk4ilWmhZfKk3U1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dBkGJC/dJMcah4llCd/L7gSQ8Nk4ilWmhZfKk3U1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dBkGJC/dJMcah4llCd/L7gSQ8Nk4ilWmhZfKk3U1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdBkGJC%2FdJMcah4llCd%2FL7gSQ8Nk4ilWmhZfKk3U1k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;415&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;415&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 오류 메시지 내용은&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 S3 버킷은 &lt;br /&gt;이미 다른 Backup Vault에 연속 백업(Continuous backup / PITR) 이 활성화돼 있기 때문에&lt;br /&gt;새 온디맨드 백업을 다른 Vault로 또 걸려고 하니까 거절되고 결과&amp;nbsp;상태가&amp;nbsp;&amp;ldquo;만료됨(Expired)&amp;rdquo;&amp;nbsp;으로&amp;nbsp;뜬&amp;nbsp;것&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 S3가 포함된 백업 룰에서 Enable continuous backups for point-in-time recovery (PITR) 부분을&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;체크해제해도 되지만 전체 적용되므로 해당되는 S3만 연속 복구 시점의 연결을 해제함&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;831&quot; data-origin-height=&quot;145&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bTemkR/dJMcagEnWFt/NGGvQ5frbX4cDBlWxY21LK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bTemkR/dJMcagEnWFt/NGGvQ5frbX4cDBlWxY21LK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bTemkR/dJMcagEnWFt/NGGvQ5frbX4cDBlWxY21LK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbTemkR%2FdJMcagEnWFt%2FNGGvQ5frbX4cDBlWxY21LK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;831&quot; height=&quot;145&quot; data-origin-width=&quot;831&quot; data-origin-height=&quot;145&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVCMCVCMSVFQyU5NyU4NSUyMCVFQiVCMyVCQyVFRCU4QSVCOCUyMCUzRSUyMCVFQiVCMyVCNSVFQSVCNSVBQyUyMCVFQyU4QiU5QyVFQyVBMCU5MCUyMCVFRCU5OSU5NSVFQyU5RCVCOCUyMCUzRSUyMCVFRCU5NSVCNCVFQiU4QiVCOSUyMFMzJTIwJUVEJTk5JTk1JUVDJTlEJUI4JTIwJUVCJUIwJThGJTIwJUVDJTlFJTkxJUVDJTk3JTg1JTIwJUVDJTgyJUFEJUVDJUEwJTlDJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJ4ZHVBM2d0WXlCWkslMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJzUjN6N3hXb3pXaFElMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJJcFRYOGp4Q2dLbTclMjIlN0Q=&quot;&gt;백업 볼트 &amp;gt; 복구 시점 확인 &amp;gt; 해당 S3 확인 및 작업 삭제&lt;/span&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVCMCVCMSVFQyU5NyU4NSUyMCVFQiVCMyVCQyVFRCU4QSVCOCUyMCUzRSUyMCVFQiVCMyVCNSVFQSVCNSVBQyUyMCVFQyU4QiU5QyVFQyVBMCU5MCUyMCVFRCU5OSU5NSVFQyU5RCVCOCUyMCUzRSUyMCVFRCU5NSVCNCVFQiU4QiVCOSUyMFMzJTIwJUVEJTk5JTk1JUVDJTlEJUI4JTIwJUVCJUIwJThGJTIwJUVDJTlFJTkxJUVDJTk3JTg1JTIwJUVDJTgyJUFEJUVDJUEwJTlDJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJ4ZHVBM2d0WXlCWkslMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJzUjN6N3hXb3pXaFElMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJJcFRYOGp4Q2dLbTclMjIlN0Q=&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;650&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VrXvG/dJMcagj3j0K/8UkQV10GrOn3FSlr58PSR0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VrXvG/dJMcagj3j0K/8UkQV10GrOn3FSlr58PSR0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VrXvG/dJMcagj3j0K/8UkQV10GrOn3FSlr58PSR0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVrXvG%2FdJMcagj3j0K%2F8UkQV10GrOn3FSlr58PSR0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;650&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;650&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVCMyVCNSVFQSVCNSVBQyUyMCVFQyU4QiU5QyVFQyVBMCU5MCUyMCVFQyU5NyVCMCVFQSVCMiVCMCUyMCVFRCU5NSVCNCVFQyVBMCU5QyUyMCVFQyU4NCVBMCVFRCU4MyU5RCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyTnE1ZzZPYmNWMUczJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyTVNoZ0xab2RSbHNNJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyR0F3dHFkWUU2cVlYJTIyJTdE&quot;&gt;복구 시점 연결 해제 선택&lt;/span&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQiVCMyVCNSVFQSVCNSVBQyUyMCVFQyU4QiU5QyVFQyVBMCU5MCUyMCVFQyU5NyVCMCVFQSVCMiVCMCUyMCVFRCU5NSVCNCVFQyVBMCU5QyUyMCVFQyU4NCVBMCVFRCU4MyU5RCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyTnE1ZzZPYmNWMUczJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyTVNoZ0xab2RSbHNNJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyR0F3dHFkWUU2cVlYJTIyJTdE&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;595&quot; data-origin-height=&quot;377&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wW05O/dJMcaaYro0U/VFZFPI7o2uXQp5AdxQwUm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wW05O/dJMcaaYro0U/VFZFPI7o2uXQp5AdxQwUm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wW05O/dJMcaaYro0U/VFZFPI7o2uXQp5AdxQwUm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwW05O%2FdJMcaaYro0U%2FVFZFPI7o2uXQp5AdxQwUm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;595&quot; height=&quot;377&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;595&quot; data-origin-height=&quot;377&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQyU5RCVCNCVFRCU5QiU4NCUyMCVFQyU5OCVBOCVFQiU5NCU5NCVFQiVBNyVBOCVFQiU5MyU5QyUyMCVFQiVCMCVCMSVFQyU5NyU4NSVFQyU5RCU4NCUyMCVFQyVBNyU4NCVFRCU5NiU4OSVFRCU5NSU5OCVFQiVBOSVCNCUyMCVFQyVBMCU5NSVFQyU4MyU4MSVFQyVBMCU4MSVFQyU5QyVCQyVFQiVBMSU5QyUyMCVFQiVCMCVCMSVFQyU5NyU4NSVFQyU5RCVCNCUyMCVFQyU5OSU4NCVFQiVBMyU4QyVFQiU5MCVBOCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyZHg3eFpjVmhzb0xhJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyaUVuZWo3Y0t5NThCJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyV3VzTzhMOHI1a1doJTIyJTdE&quot;&gt;이후 온디맨드 백업을 진행하면 정상적으로 백업이 완료됨&lt;/span&gt;&lt;/p&gt;</description>
      <category>AWS</category>
      <category>AWS</category>
      <category>backup</category>
      <category>ondemand</category>
      <category>S3</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/122</guid>
      <comments>https://babbeolicoding.tistory.com/122#entry122comment</comments>
      <pubDate>Sun, 1 Feb 2026 11:10:18 +0900</pubDate>
    </item>
    <item>
      <title>Load balancers access log 남기는 방법</title>
      <link>https://babbeolicoding.tistory.com/121</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;EC2 &amp;gt; Load balancers &amp;gt; Action &amp;gt; Edit load balancer atributes&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;509&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/68ILB/dJMcahwtXgr/kub2p5fKgbXBEt5kHNPlIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/68ILB/dJMcahwtXgr/kub2p5fKgbXBEt5kHNPlIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/68ILB/dJMcahwtXgr/kub2p5fKgbXBEt5kHNPlIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F68ILB%2FdJMcahwtXgr%2Fkub2p5fKgbXBEt5kHNPlIK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;509&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;509&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;S3 URI 입력&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;803&quot; data-origin-height=&quot;254&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bFhy7n/dJMcahwtXgp/BVPNKWNeKvfNCloGXJ3o1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bFhy7n/dJMcahwtXgp/BVPNKWNeKvfNCloGXJ3o1K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bFhy7n/dJMcahwtXgp/BVPNKWNeKvfNCloGXJ3o1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbFhy7n%2FdJMcahwtXgp%2FBVPNKWNeKvfNCloGXJ3o1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;803&quot; height=&quot;254&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;803&quot; data-origin-height=&quot;254&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;해당 LB 선택 후 엑세르 로그 S3 위치 부분에 위에서 설정한 S3가 연결되어 있는지 확인&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;2112&quot; data-origin-height=&quot;747&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Sd7la/dJMcabpuG4M/A1Ovdqg5sHOkJvteeUiKJ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Sd7la/dJMcabpuG4M/A1Ovdqg5sHOkJvteeUiKJ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Sd7la/dJMcabpuG4M/A1Ovdqg5sHOkJvteeUiKJ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSd7la%2FdJMcabpuG4M%2FA1Ovdqg5sHOkJvteeUiKJ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2112&quot; height=&quot;747&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;2112&quot; data-origin-height=&quot;747&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>AWS</category>
      <category>AccessLog</category>
      <category>LB</category>
      <category>lblog</category>
      <category>loadbalancers</category>
      <category>S3</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/121</guid>
      <comments>https://babbeolicoding.tistory.com/121#entry121comment</comments>
      <pubDate>Wed, 28 Jan 2026 16:54:00 +0900</pubDate>
    </item>
    <item>
      <title>EC2 이미지 생성(ami 생성)</title>
      <link>https://babbeolicoding.tistory.com/120</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;현재 사용 중인 EC2를 통해서 AMI를 생성할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이미지 생성&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot; data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFQyU5RCVCOCVFQyU4QSVBNCVFRCU4NCVCNCVFQyU4QSVBNCUyMCVFQyU4NCVBMCVFRCU4MyU5RCUyMC0lM0UlMjAlRUMlOUUlOTElRUMlOTclODUlMjAtJTNFJTIwJUVDJTlEJUI0JUVCJUFGJUI4JUVDJUE3JTgwJTIwJUVCJUIwJThGJTIwJUVEJTg1JTlDJUVEJTk0JThDJUVCJUE2JUJGJTIwLSUzRSUyMCVFQyU5RCVCNCVFQiVBRiVCOCVFQyVBNyU4MCUyMCVFQyU4MyU5RCVFQyU4NCVCMSUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyd1pFaG1vcktEZ1gyJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyR1VXM3VFeDZBZGJzJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyTFBCczBNQ0pCMElyJTIyJTdE&quot;&gt;인스턴스 선택 -&amp;gt; 작업 -&amp;gt; 이미지 및 템플릿 -&amp;gt; 이미지 생성 &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;311&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QQOw6/dJMcaiWpyFi/O7KarI8A5TniUQFkK9GVYK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QQOw6/dJMcaiWpyFi/O7KarI8A5TniUQFkK9GVYK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QQOw6/dJMcaiWpyFi/O7KarI8A5TniUQFkK9GVYK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQQOw6%2FdJMcaiWpyFi%2FO7KarI8A5TniUQFkK9GVYK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;311&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;311&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div&gt;
&lt;div data-key=&quot;d189a896349b4950a27ea695a179c2d4&quot;&gt;
&lt;div data-block-content=&quot;d189a896349b4950a27ea695a179c2d4&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이미지 정보 입력&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div data-block-content=&quot;d189a896349b4950a27ea695a179c2d4&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; 재부팅 안함 활성화/비활성화 선택&lt;/span&gt;&lt;/div&gt;
&lt;div data-block-content=&quot;d189a896349b4950a27ea695a179c2d4&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;재부팅 안함을 선택하지 않으면 이미지를 뜨고 난 뒤 백업떠진 서버가 재부팅됨&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1370&quot; data-origin-height=&quot;695&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blctsH/dJMcacPtl19/Tci8gw2Qi60QJwuKFOCIW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blctsH/dJMcacPtl19/Tci8gw2Qi60QJwuKFOCIW0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blctsH/dJMcacPtl19/Tci8gw2Qi60QJwuKFOCIW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblctsH%2FdJMcacPtl19%2FTci8gw2Qi60QJwuKFOCIW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1370&quot; height=&quot;695&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1370&quot; data-origin-height=&quot;695&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1368&quot; data-origin-height=&quot;304&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dfcske/dJMcabC0zqN/tux1kwYptCR8uHIo014iQ0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dfcske/dJMcabC0zqN/tux1kwYptCR8uHIo014iQ0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dfcske/dJMcabC0zqN/tux1kwYptCR8uHIo014iQ0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdfcske%2FdJMcabC0zqN%2Ftux1kwYptCR8uHIo014iQ0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1368&quot; height=&quot;304&quot; data-origin-width=&quot;1368&quot; data-origin-height=&quot;304&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot; data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkFNSSUyMCVFQyU4MyU5RCVFQyU4NCVCMSUyMCVFQyVBNCU5MSUyMCVFRCU5OSU5NSVFQyU5RCVCOCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIybDh5bUo1WWxCRjhBJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIySmx0WlRYSjRmbFo4JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyVHRvV3JnOTRkTGpmJTIyJTdE&quot;&gt; AMI 생성 중 확인 &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;177&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bn3vae/dJMcahDc8zu/5ZQDioXqKvzJxkzckaPjV1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bn3vae/dJMcahDc8zu/5ZQDioXqKvzJxkzckaPjV1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bn3vae/dJMcahDc8zu/5ZQDioXqKvzJxkzckaPjV1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbn3vae%2FdJMcahDc8zu%2F5ZQDioXqKvzJxkzckaPjV1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;177&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;177&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot; data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkFNSSUyMCVFQyU4MyU5RCVFQyU4NCVCMSUyMCVFRCU5OSU5NSVFQyU5RCVCOCglRUMlOUQlQjQlRUIlQUYlQjglRUMlQTclODAlMjAlM0MlMjBBTUkpJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJlRDdzSjRYTTN6ZHUlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJEQjluVGRiYlMwMmUlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJ4SExxOVZjWnNESlIlMjIlN0Q=&quot;&gt; AMI 생성 확인&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;147&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xf44u/dJMb99SJ1AG/bc2hiMSNlW3SZDDbjy0JTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xf44u/dJMb99SJ1AG/bc2hiMSNlW3SZDDbjy0JTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xf44u/dJMb99SJ1AG/bc2hiMSNlW3SZDDbjy0JTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fxf44u%2FdJMb99SJ1AG%2Fbc2hiMSNlW3SZDDbjy0JTk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;147&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;147&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;snapshot 생성 확인&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; AMI를 생성하면 자동으로 EC2에서 사용 중인 EBS 스냅샷이 생성된다 &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;146&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bY4fEj/dJMcahDc8zt/01WTKsQ53DByfpd9b53n31/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bY4fEj/dJMcahDc8zt/01WTKsQ53DByfpd9b53n31/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bY4fEj/dJMcahDc8zt/01WTKsQ53DByfpd9b53n31/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbY4fEj%2FdJMcahDc8zt%2F01WTKsQ53DByfpd9b53n31%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1520&quot; height=&quot;146&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1520&quot; data-origin-height=&quot;146&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>AWS</category>
      <category>AMI</category>
      <category>EC2</category>
      <category>SNAPSHOT</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/120</guid>
      <comments>https://babbeolicoding.tistory.com/120#entry120comment</comments>
      <pubDate>Tue, 27 Jan 2026 22:53:53 +0900</pubDate>
    </item>
    <item>
      <title>calico 다중 네트워크 인터페이스 환경</title>
      <link>https://babbeolicoding.tistory.com/119</link>
      <description>&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div data-key=&quot;EkebsxqcdUd6&quot;&gt;
&lt;div data-block-content=&quot;EkebsxqcdUd6&quot;&gt;&lt;span&gt;&lt;span data-key=&quot;fx88Uh7TfND8&quot;&gt;&lt;span data-offset-key=&quot;fx88Uh7TfND8:0&quot;&gt;calico가 비정상적으로 네트워크 인터페이스를 연결하는 경우&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div data-block-content=&quot;EkebsxqcdUd6&quot;&gt;&lt;span&gt;&lt;span data-key=&quot;fx88Uh7TfND8&quot;&gt;&lt;span data-offset-key=&quot;fx88Uh7TfND8:0&quot;&gt; master node에서 worker node에 있는 pod로 연결이 안됨&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div data-block-content=&quot;EkebsxqcdUd6&quot;&gt;&lt;span&gt;&lt;span data-key=&quot;fx88Uh7TfND8&quot;&gt;&lt;span data-offset-key=&quot;fx88Uh7TfND8:0&quot;&gt; pod간 통신이 원활하지 않는 경우가 있다.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;pre id=&quot;code_1769433716264&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;status: conditions: 
- lastTransitionTime: &quot;2025-08-28T02:59:56Z&quot; 
message: 'failing or missing response from https://10.42.16.66:10250/apis/metrics.k8s.io/v1beta1: 
Get &quot;https://10.42.16.66:10250/apis/metrics.k8s.io/v1beta1&quot;: 
net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)' 
reason: FailedDiscoveryCheck status: &quot;False&quot; 
type: Available&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFRCU4QSVCOSVFQyVBMCU5NSUyMCVFQiU4NCVBNCVFRCU4QSVCOCVFQyU5QiU4QyVFRCU4MSVBQyUyMCVFQyU5RCVCOCVFRCU4NCVCMCVFRCU4RSU5OCVFQyU5RCVCNCVFQyU4QSVBNCVFQiVBNyU4QyUyMCVFQyU4MiVBQyVFQyU5QSVBOSUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIySWZjVXVkeGtxZ2JQJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyRFNPQXdjaUh0alpkJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIybzgwZXBSbG9zVkFBJTIyJTdE&quot;&gt;특정 네트워크 인터페이스만 사용&lt;/span&gt; &lt;/b&gt;&lt;/h4&gt;
&lt;pre id=&quot;code_1769433745629&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;nodeAddressAutodetectionV4:
  # 사용할 인터페이스 정규식 표현
  interface: &quot;enp0s3,enp0s4&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFRCU4QSVCOSVFQyVBMCU5NSUyMCVFQiU4NCVBNCVFRCU4QSVCOCVFQyU5QiU4QyVFRCU4MSVBQyUyMCVFQyU5RCVCOCVFRCU4NCVCMCVFRCU4RSU5OCVFQyU5RCVCNCVFQyU4QSVBNCVFQiVBNyU4QyUyMCVFQyVBMCU5QyVFQyU5OSVCOCUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIycjhBY0llRkdKMUhTJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyZ3ptWEUwRmRRelJ2JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIydXNTdjZVMDBxUXE3JTIyJTdE&quot;&gt;특정 네트워크 인터페이스만 제외&lt;/span&gt; &lt;/b&gt;&lt;/h4&gt;
&lt;pre id=&quot;code_1769433763796&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;nodeAddressAutodetectionV4:
  # 제외할 인터페이스 정규식 표현
  skipInterface: &quot;eth.*&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt; &lt;span data-slate-fragment=&quot;JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVFRCU4QSVCOSVFQyVBMCU5NSUyMGlwJTIwJUVCJThDJTgwJUVDJTk3JUFEJUVCJThDJTgwJTIwJUVDJTgyJUFDJUVDJTlBJUE5JTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIxOFlzajNFdzZlR0clMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJHZ0E1ckFUR3A0ckolMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI4clRxZEc3bUU4M2olMjIlN0Q=&quot;&gt;특정 ip 대역대 사용&lt;/span&gt; &lt;/b&gt;&lt;/h4&gt;
&lt;pre id=&quot;code_1769433777336&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;nodeAddressAutodetectionV4:
  cidrs:
  - '192.168.200.0/24'&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고 자료&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://docs.tigera.io/calico/latest/networking/ipam/ip-autodetection&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.tigera.io/calico/latest/networking/ipam/ip-autodetection&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1769433801751&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Configure IP autodetection | Calico Documentation&quot; data-og-description=&quot;Calico IP autodetection ensures the correct IP address is used for routing. Learn how to customize it.&quot; data-og-host=&quot;docs.tigera.io&quot; data-og-source-url=&quot;https://docs.tigera.io/calico/latest/networking/ipam/ip-autodetection&quot; data-og-url=&quot;https://docs.tigera.io/calico/latest/networking/ipam/ip-autodetection&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/xIeWB/dJMb85WNIa1/YDOfjGi5h9ReRelhmWJF90/img.png?width=300&amp;amp;height=309&amp;amp;face=0_0_300_309,https://scrap.kakaocdn.net/dn/inRo7/dJMb8863pu4/W3WWe5JQ9jxxhoqXsKXDlk/img.png?width=300&amp;amp;height=309&amp;amp;face=0_0_300_309&quot;&gt;&lt;a href=&quot;https://docs.tigera.io/calico/latest/networking/ipam/ip-autodetection&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://docs.tigera.io/calico/latest/networking/ipam/ip-autodetection&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/xIeWB/dJMb85WNIa1/YDOfjGi5h9ReRelhmWJF90/img.png?width=300&amp;amp;height=309&amp;amp;face=0_0_300_309,https://scrap.kakaocdn.net/dn/inRo7/dJMb8863pu4/W3WWe5JQ9jxxhoqXsKXDlk/img.png?width=300&amp;amp;height=309&amp;amp;face=0_0_300_309');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Configure IP autodetection | Calico Documentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Calico IP autodetection ensures the correct IP address is used for routing. Learn how to customize it.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;docs.tigera.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Kubernetes/kubernetes 설치</category>
      <category>Calico</category>
      <category>kubernetes</category>
      <category>Node</category>
      <category>POD</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/119</guid>
      <comments>https://babbeolicoding.tistory.com/119#entry119comment</comments>
      <pubDate>Mon, 26 Jan 2026 22:28:49 +0900</pubDate>
    </item>
    <item>
      <title>pem convert to jks</title>
      <link>https://babbeolicoding.tistory.com/118</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;pem -&amp;gt; p12 -&amp;gt; jks 순으로 변환해야 함.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1. pem -&amp;gt; pkcs12 변환&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;- 루트 인증서, 서버 인증서, 개인 키를 이용해서 pkcs12 파일을 생성할 수 있음.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1769085759824&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;openssl pkcs12 -export -in certs/server.crt -inkey private/server.key -out certs/server.p12 -CAfile certs/ca.cert.pem

ex)
certs/server.crt: 서버 인증서.
private/server.key: 서버 개인 키.
certs/ca.cert.pem: 루트 인증서 (중간 인증서가 없으면 루트 인증서만 사용).
certs/server.p12: 생성될 PKCS12 파일.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2.&amp;nbsp;PKCS12&amp;nbsp;-&amp;gt;&amp;nbsp;JKS&amp;nbsp;변환&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;- 생성된 p12 인증서를 java keystore 형식 jks로 변환&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1769085829135&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;keytool -importkeystore -srckeystore certs/server.p12 -srcstoretype PKCS12 -destkeystore certs/server.jks -deststoretype JKS&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;참고사항&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;만약 중간 인증서가 없더라도 루트 인증서와 서버 인증서만 사용해서 PKCS12 파일을 만들 수 있음&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그 후 이 파일을 JKS로 변환하면 된다.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Linux</category>
      <category>jks</category>
      <category>p12</category>
      <category>PEM</category>
      <category>PKCS12</category>
      <category>인증서</category>
      <author>babbeolicoding</author>
      <guid isPermaLink="true">https://babbeolicoding.tistory.com/118</guid>
      <comments>https://babbeolicoding.tistory.com/118#entry118comment</comments>
      <pubDate>Thu, 22 Jan 2026 21:45:38 +0900</pubDate>
    </item>
  </channel>
</rss>