<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>ITHouse</title>
    <link>https://securityholic.tistory.com/</link>
    <description>All technology</description>
    <language>ko</language>
    <pubDate>Sun, 5 Jul 2026 05:05:21 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>leo_____lee</managingEditor>
    <image>
      <title>ITHouse</title>
      <url>https://tistory1.daumcdn.net/tistory/2857978/attach/431a4ec19afa4700b911645e00840b78</url>
      <link>https://securityholic.tistory.com</link>
    </image>
    <item>
      <title>20240924 오늘의 날씨</title>
      <link>https://securityholic.tistory.com/224</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1438&quot; data-origin-height=&quot;1388&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cg3pJh/btsJJKySgkz/grVhgknyXWN1FUGi4hZmRk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cg3pJh/btsJJKySgkz/grVhgknyXWN1FUGi4hZmRk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cg3pJh/btsJJKySgkz/grVhgknyXWN1FUGi4hZmRk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcg3pJh%2FbtsJJKySgkz%2FgrVhgknyXWN1FUGi4hZmRk%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;1438&quot; height=&quot;1388&quot; data-origin-width=&quot;1438&quot; data-origin-height=&quot;1388&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>기타</category>
      <category>날씨</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/224</guid>
      <comments>https://securityholic.tistory.com/224#entry224comment</comments>
      <pubDate>Tue, 24 Sep 2024 10:12:56 +0900</pubDate>
    </item>
    <item>
      <title>오늘의 주가</title>
      <link>https://securityholic.tistory.com/223</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1490&quot; data-origin-height=&quot;1128&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xS6FP/btsJKin63Bz/MAtyK8RsrMpiAeKYEkZOW1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xS6FP/btsJKin63Bz/MAtyK8RsrMpiAeKYEkZOW1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xS6FP/btsJKin63Bz/MAtyK8RsrMpiAeKYEkZOW1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxS6FP%2FbtsJKin63Bz%2FMAtyK8RsrMpiAeKYEkZOW1%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;1490&quot; height=&quot;1128&quot; data-origin-width=&quot;1490&quot; data-origin-height=&quot;1128&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>기타</category>
      <category>주가</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/223</guid>
      <comments>https://securityholic.tistory.com/223#entry223comment</comments>
      <pubDate>Tue, 24 Sep 2024 10:12:18 +0900</pubDate>
    </item>
    <item>
      <title>해외 주식 양도세</title>
      <link>https://securityholic.tistory.com/221</link>
      <description>&lt;ul&gt;
&lt;li&gt;해외주식으로 돈을 벌었으면 직접 세금 신고를 해야한다.&lt;ul&gt;
&lt;li&gt;양도차익 : 주식을 팔았을때 생긴 이익&lt;ul&gt;
&lt;li&gt;국내에서는 따로 양도차익 금액을 내지 않음&lt;/li&gt;
&lt;li&gt;만약 하나의 종목으로 300만원을 벌고 다른 종목으로 200만원을 잃으면 100만원 차익이니 안내도 됨&lt;/li&gt;
&lt;li&gt;세금을 줄이려면 손실이 있는것을 그냥 팔아버리고 다시 산다.&lt;/li&gt;
&lt;li&gt;만약 장기투자를 하면 팔고 다시 산다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;배당수익 : 배당을 통해 받은 이익&lt;ul&gt;
&lt;li&gt;국내에서는 배당수익에 대해 15% 정도를 내는데, 따로 세금신고를 안해도 됨&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>금융 &amp;middot; 경제</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/221</guid>
      <comments>https://securityholic.tistory.com/221#entry221comment</comments>
      <pubDate>Tue, 31 May 2022 14:40:44 +0900</pubDate>
    </item>
    <item>
      <title>rasterization</title>
      <link>https://securityholic.tistory.com/220</link>
      <description>&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;3D를 2D로 만드는 기술 중 하나&lt;/li&gt;
&lt;li&gt;가장 대중방법중 하나로, 다른 방법으로는 ray tracing 방식이 있다.&lt;/li&gt;
&lt;li&gt;rasterization은 존재하는 모든 오브젝트에 좌표를 할당한다&lt;/li&gt;
&lt;li&gt;픽셀, 또는 비트맵으로 만든다고도 볼 수 있다.&lt;/li&gt;
&lt;li&gt;특정 픽셀이 해당되냐 아니냐를 외적등의 계산으로 구한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;참고 : 3D 가 만들어지는 방법
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;3D는 (x,y,z) 로 이루어진 점 3개로 이루어짐
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;실제로는 vertex(좌표) 와 index(좌표 인덱스 3개 모음)으로 이루어짐&lt;/li&gt;
&lt;li&gt;점 3개, 즉 삼각형의 모임이 3D 모형이 됨&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML/3D</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/220</guid>
      <comments>https://securityholic.tistory.com/220#entry220comment</comments>
      <pubDate>Mon, 16 May 2022 23:06:23 +0900</pubDate>
    </item>
    <item>
      <title>쿠버네티스 서비스</title>
      <link>https://securityholic.tistory.com/219</link>
      <description>&lt;h1&gt;쿠버네티스 서비스란&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;쿠버네티스 네트워크이다.&lt;/li&gt;
&lt;li&gt;api 서비스이다.&lt;/li&gt;
&lt;li&gt;service는 쿠버네티스에 동일한 레이블을 가진 파드들을 하나의 ip로 묶어서 관리를 요청한다.&lt;ul&gt;
&lt;li&gt;쿠버네티스는 동일한 레이블을 갖고 있는 pod를 하나의 virtual ip로 묶는다.&lt;/li&gt;
&lt;li&gt;virtual ip는 로드밸런스 ip가 된다.&lt;/li&gt;
&lt;li&gt;즉 이러한것이 만들어지도록 요청하는것이 쿠버네티스 서비스이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;서바스 타입&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;cluster ip&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;기본 cluspte의 역할로 로드밸런서 ip를 만듦&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;예제&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kind: Service
metadata:
name: ${name}
spec:
type: ClusterIP
clusterIP: ${ip}
selector:
app: ${app}
ports:
- protocol: TCP
port: ${virtual ip port}
targetPort: ${pod port}&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;node port&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;cluster ip 기능에 추가로 포트까지 지원함&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;즉 로드밸런서 ip에 포트까지 붙일 수 있도록 지원&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;외부에서 들어올수 있는 노드의 포트가 열림&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;워커 노드가 1,2,3이 있고 각각에 pod가 하나씩 있을때&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;2번 워커노드의 열린 포트로 클라이언트가 요청을 하면&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;해당 워커노드가 로드밸런싱을 하여 1,2,3번의 내부 pod 중 하나로 요청을 보내준다.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kind: Service
metadata:
name: ${name}
spec:
type: NodePort
clusterIP: ${ip}
selector:
app: ${app}
ports:
- protocol: TCP
port: ${virtual ip port}
targetPort: ${pod port}
nodePort : ${node port}&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;loadbalaner&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;클러스터 Ip 에 추가로 실제 로드밸런서 장비의 포트와 virtual 로드밸런서 포트를 연결&lt;/li&gt;
&lt;li&gt;물리 로드밸런서가 node port 로 요청을 전달&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;external Name&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;네이밍 서비스를 만든다.&lt;/li&gt;
&lt;li&gt;dns 서비스를 클러스터 내부안에서 지원해준다.&lt;/li&gt;
&lt;li&gt;보통 외부 서버로 요청을 연결하는 경우에 사용한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;확인해보기&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ip : lb ip&lt;/li&gt;
&lt;li&gt;endpoints : 실제 연결되는 ip&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;kubectl describe svc clusterip-service&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;서바스 중단&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;kubectl delete service -all&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;헤드리스 서비스&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;clusterip가 없는 서비스로 단일 진입점이 따로 필요 없을때 사용됨&lt;/li&gt;
&lt;li&gt;하지만 endpoint로는 묶어줌&lt;/li&gt;
&lt;li&gt;pod들의 endpoint를 dns resolving service 쓸 수 있도록 함&lt;/li&gt;
&lt;li&gt;즉 pod하나하나에 대한 dns를 core dns에 등록하여 각각 쓸 수 있음&lt;pre&gt;&lt;code&gt;apiVersion: v1
kind: Service
metadata:
name: ${name}
spec:
type: ClusterIP
clusterIP: None #이부분으로 사실상 헤드리스 서비스 명시!&lt;/code&gt;&lt;/pre&gt;###kube-procy&lt;/li&gt;
&lt;li&gt;쿠버네티스의 백엔드를 구현&lt;/li&gt;
&lt;li&gt;즉 clusert ip를 쓰면, 실제로는 실제 각 노드별로 iptables가 있어서, 이게 요청을 받으면 각 내부 pod중 한개로 전달하는 방식이다.&lt;/li&gt;
&lt;li&gt;그래서 실제 노드에서 iptables확인해보면 iptables가 찍힌다.&lt;/li&gt;
&lt;li&gt;node port를 쓰는 경우 해당 포트를 리슨함&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>쿠버네티스</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/219</guid>
      <comments>https://securityholic.tistory.com/219#entry219comment</comments>
      <pubDate>Sun, 17 Apr 2022 23:49:12 +0900</pubDate>
    </item>
    <item>
      <title>ha 쿠버네티스(multimaster 쿠버네티스)</title>
      <link>https://securityholic.tistory.com/218</link>
      <description>&lt;ul&gt;
&lt;li&gt;여러대의 control plane으로 구성&lt;/li&gt;
&lt;li&gt;세대중에 한대가 다운되더라도 운영 가능(고 가용성)&lt;/li&gt;
&lt;li&gt;보통 홀수로 이용&lt;/li&gt;
&lt;li&gt;로드밸런서가 control plane을 선택하여 요청을 보냄(즉 worker노드가 마스터로 무언갈 보낼때 로드밸런서를 통해 감)&lt;/li&gt;
&lt;li&gt;여러대의 conrol plane 간에는 동기회를 진행&lt;/li&gt;
&lt;li&gt;nginx로 로드밸런싱을 하는경우 upstream stream_backend를 이용&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>쿠버네티스</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/218</guid>
      <comments>https://securityholic.tistory.com/218#entry218comment</comments>
      <pubDate>Tue, 5 Apr 2022 06:58:10 +0900</pubDate>
    </item>
    <item>
      <title>job/cronjob</title>
      <link>https://securityholic.tistory.com/217</link>
      <description>&lt;h1&gt;job&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;job controller &lt;ul&gt;
&lt;li&gt;보통 다른 컨트롤러들은 pod를 죽이면 계속 수행됨&lt;/li&gt;
&lt;li&gt;하지만 pod가 기능 수행을 완료하면 굳이 계속 수행될 필요가 없을 수 있음&lt;/li&gt;
&lt;li&gt;기능이 수행되면 상태가 completed가 된다. 따로 지우지는 않는다.&lt;/li&gt;
&lt;li&gt;pod가 삭제되면 내부 로그를 알 수 없기 때문에 따로 지우지는 않는다.&lt;/li&gt;
&lt;li&gt;restartPolicy 설정을 통해 실패시 사용할 정책을 지정할 수있다.&lt;/li&gt;
&lt;li&gt;backoffLimit으로 restartPolicy 보조&lt;/li&gt;
&lt;li&gt;replicas대신 completions을 사용, 다만 컨테이너 수가 아니라 실행 횟수임&lt;/li&gt;
&lt;li&gt;유지갯수는 parallelism으로 설정&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;cronjob&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;job을 제어하여 작업예약을 지원한다&lt;/li&gt;
&lt;li&gt;crontab이랑 비슷함&lt;/li&gt;
&lt;li&gt;사실상 job definition에 schedule만 추가한다&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>쿠버네티스</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/217</guid>
      <comments>https://securityholic.tistory.com/217#entry217comment</comments>
      <pubDate>Mon, 4 Apr 2022 23:20:11 +0900</pubDate>
    </item>
    <item>
      <title>StatefulSet</title>
      <link>https://securityholic.tistory.com/216</link>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;p&gt;pod의 상태를 유지해주는 컨트롤러 &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;pod의 이름 보장&lt;ul&gt;
&lt;li&gt;기존에 다른 컨트롤러를 쓰면 ${pod_name}-${hash} 로 생성됨&lt;/li&gt;
&lt;li&gt;StatefulSet은 이와 다르게 이름을 보장함&lt;/li&gt;
&lt;li&gt;${pod_name}-1,${pod_name}-2,${pod_name}-3 이렇게 만들 수 있음&lt;/li&gt;
&lt;li&gt;만약 2가 삭제되면 2를 생성함, 즉 이름의 형태는 전체적으로 보장이 된다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;scale statefulset 으로 replicas를 조정할 수 있다.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kubectl scale statefulset ${} --replicas=${}&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;scale out을 하는경우 0,1,2,3 이면 3,2,1,0 순으로 삭제된다.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;rollingupdate 가능&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kubectl edit statefulsets.apps ${}&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;roolout 가능&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kubectl rollout undo statefulset ${}&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>쿠버네티스</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/216</guid>
      <comments>https://securityholic.tistory.com/216#entry216comment</comments>
      <pubDate>Mon, 4 Apr 2022 22:26:25 +0900</pubDate>
    </item>
    <item>
      <title>daemonset</title>
      <link>https://securityholic.tistory.com/215</link>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;p&gt;노드에서 pod가 한개씩 실행되도록 보장&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;노드에서 pod가 하나씩 실행되는 경우는 각 노드의 물리장비를 모니터링하는 경우등에 사용됨&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;daemonset은 replicas를 따로 지정하지 않아도 자동으로 node당 하나씩 수행된다.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;daemonset은 rolling update 가능하다.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;daemonset 로그 확인&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kubectl get daemonsets.apps&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;daemonset 수정&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;하나를 완료하고 완료되면 다른 pod를 완료하고 ... 이런식으로 롤링 업데이트&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kubectl edit daemonsets.apps ${pod-name}&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;롤백&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kubectl rollout undo daemonset ${pod}&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>쿠버네티스</category>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/215</guid>
      <comments>https://securityholic.tistory.com/215#entry215comment</comments>
      <pubDate>Mon, 4 Apr 2022 22:06:43 +0900</pubDate>
    </item>
    <item>
      <title>Deployment</title>
      <link>https://securityholic.tistory.com/214</link>
      <description>&lt;ul&gt;
&lt;li&gt;Replicaset의 부모로 Replicaset 을 제어, Replicaset은 pod를 제어&lt;/li&gt;
&lt;li&gt;롤링 업데이트를 위해 만들어줌&lt;ul&gt;
&lt;li&gt;서비스 중단없이 업데이트를 이룸&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;사용할때 kind를 Replicaset,Deployment 둘중 하나를 사용한것 외에는 크게 달라지는 점은 없다.&lt;/li&gt;
&lt;li&gt;롤링업데이트 방법&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;kubectl set image deployment &amp;lt;deploy_name&amp;gt; &amp;lt;container_name&amp;gt;=&amp;lt;new_versiong_image&amp;gt;
kubectl set image deployment &amp;lt;deploy_name&amp;gt; &amp;lt;container_name&amp;gt;=&amp;lt;new_versiong_image&amp;gt; -- record&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;롤백&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;kubectl rollout undo deploy  
kubectl rollout history deployment&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;만약 3개짜리 pod를 쓰고 있는데 update를 하면 1개의 pod를 업데이트(그동안 2개가 서비스), 그다음 2개의 pod를 업데이트,,,전부 업데이트,,, 이런식으로 된다&lt;/li&gt;
&lt;li&gt;업데이트 기록 로그 확인(yaml파일의 spec의 revisionHistoryLimit 갯수로 기록 로그 저장 갯수 제한 가능)&lt;ul&gt;
&lt;li&gt;rollout의 resume , pause등을 통해 업데이트를 중단하고 재개할 수 있다.&lt;/li&gt;
&lt;li&gt;undo 명령어를 통해 이전 버전으로 돌아갈 수 있다.&lt;/li&gt;
&lt;li&gt;to-revision 명령어로 특정 버전을 찍고 돌아갈 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;kubectl rollout history deploymen ${name} deployment.apps/${name} REVISION CHANGE-CAUSE 1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;업데이트 기록이 나오게 하려면 생성할때 --record를 쓴다&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;kubectl create -f ${name} --record

deployment.apps/${name} created

kubectl rollout history deployment ${name}

deployment.apps/${name}  
REVISION CHANGE-CAUSE  
1 kubectl create --filename= ${name} --record=true&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;spec의 rolling update&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;spec:  
progressDeadlineSeconds: 100  
revisionHistoryLimit: 10  
strategy:  
rollingUpdate:  
maxSurge: 25%  
maxUnavailable: 25%  
type: RollingUpdate  
replicas: 3&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;이렇게 된 경우 3(레플리카 갯수)*0.25 = 0.75, 반올림하여 1인데,&lt;/li&gt;
&lt;li&gt;그러면 3개중에 1개의 여유를 업데이트 할 때 갖을 수 있다.&lt;/li&gt;
&lt;li&gt;그러면 3개(업데이트 안됨)+1(업데이트 됨)=&amp;gt;2개+2개=&amp;gt;1개+3개=&amp;gt;3개 이런식으로 업뎃이 진행된다&lt;/li&gt;
&lt;li&gt;kubectl apply -f 명령어를 이용해 업데이트를 진행할 수 있다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <author>leo_____lee</author>
      <guid isPermaLink="true">https://securityholic.tistory.com/214</guid>
      <comments>https://securityholic.tistory.com/214#entry214comment</comments>
      <pubDate>Mon, 4 Apr 2022 06:57:18 +0900</pubDate>
    </item>
  </channel>
</rss>