<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>i-zro.log</title>
        <link>https://velog.io/</link>
        <description>나영</description>
        <lastBuildDate>Fri, 07 Jul 2023 05:55:59 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>i-zro.log</title>
            <url>https://images.velog.io/images/i-zro/profile/0aceb20a-1364-4823-a401-bf0f9a261d13/social.jpeg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. i-zro.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/i-zro" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[[aws] vgw, tgw, dgw]]></title>
            <link>https://velog.io/@i-zro/aws-vgw-tgw-dgw</link>
            <guid>https://velog.io/@i-zro/aws-vgw-tgw-dgw</guid>
            <pubDate>Fri, 07 Jul 2023 05:55:59 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/i-zro/post/1d8f84fa-0390-4b33-9b6d-c66d39446812/image.png" alt=""></p>
<p><a href="https://sharplee7.tistory.com/132">https://sharplee7.tistory.com/132</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[aws] nat gateway]]></title>
            <link>https://velog.io/@i-zro/aws-nat-gateway</link>
            <guid>https://velog.io/@i-zro/aws-nat-gateway</guid>
            <pubDate>Fri, 07 Jul 2023 05:20:58 GMT</pubDate>
            <description><![CDATA[<p>NAT 게이트웨이는 NAT(Network Address Translation, 네트워크 주소 변환) 서비스입니다. 프라이빗 서브넷의 인스턴스가 VPC 외부의 서비스에 연결할 수 있지만 외부 서비스에서 이러한 인스턴스와의 연결을 시작할 수 없도록 NAT 게이트웨이를 사용할 수 있습니다. </p>
<p>즉, 외부 서비스에서 프라이빗 서브넷의 인스턴스로 접근할 수 없게 하되, 프라이빗 서브넷의 인스턴스에서는 외부 서비스로 접근할 수 있게 해주는 서비스 입니다.</p>
<p><img src="https://velog.velcdn.com/images/i-zro/post/ef13052b-a65e-43cc-a19d-cd9ab6e005cd/image.png" alt=""></p>
<p>네트워크 주소 변환(Network Address Translation, 줄여서 NAT)은 IP 패킷의 TCP/UDP 포트 숫자와 소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술을 말한다.</p>
<p>NAT를 이용하는 이유는 대개 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위함이다.</p>
<p>Internet 접속이 가능한 Public Subnet에 NAT Gateway를 생성해두고, Private Subnet이 외부 인터넷으로 나아갈 경우에만 사용하도록 라우팅을 추가해주는 것이다.</p>
<p>public 서브넷과 private 서브넷은 같은 VPC안에 있으면 서로 통신할수있다는 점을 이용하여, NAT 게이트웨이를 생성해주면 마치 대리기사 역할처럼 public 서브넷이 외부 인터넷 데이터를 private 서브넷에게 대신 전달해주게 된다.</p>
<p>NAT Gateway는 내부에서 외부로의 접속만 가능하며 외부에서 NAT Gateway를 이용하여 접속하는 것은 불가능하다는 특징을 가지고 있다. 따라서 NAT Gateway를 이용하면 외부 인터넷 연결에 의한 보안 문제도 일석이조로 해결할 수 있게 된다.</p>
<p><img src="https://velog.velcdn.com/images/i-zro/post/aa337703-fc74-4772-93c2-b9fc2b3a8d70/image.png" alt=""></p>
<ul>
<li>private 에서 private(온프레미스) 통신 : <a href="https://zigispace.net/1102">https://zigispace.net/1102</a></li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[테라폼 중 git 커밋 합치기]]></title>
            <link>https://velog.io/@i-zro/%ED%85%8C%EB%9D%BC%ED%8F%BC-%EC%A4%91-git-%EC%BB%A4%EB%B0%8B-%ED%95%A9%EC%B9%98%EA%B8%B0</link>
            <guid>https://velog.io/@i-zro/%ED%85%8C%EB%9D%BC%ED%8F%BC-%EC%A4%91-git-%EC%BB%A4%EB%B0%8B-%ED%95%A9%EC%B9%98%EA%B8%B0</guid>
            <pubDate>Thu, 22 Jun 2023 00:15:13 GMT</pubDate>
            <description><![CDATA[<p>git rebase -i HEAD<del>2 또는 git rebase -i HEAD</del>3을 실행한 후에, 편집기에서 나타나는 목록에서 두 번째 커밋 앞에 있는 &#39;pick&#39;을 &#39;squash&#39; 또는 &#39;s&#39;로 변경합니다. 그러면 이전 커밋과 합쳐집니다.</p>
<p>방금 언급한 명령의 실행 결과를 바탕으로, 아래와 같이 편집해야 합니다:</p>
<p>bash
Copy code
pick 41962c3 import vpc &amp; subnet &amp; change tags, change directory
squash 7660bdd change with code review
이렇게 하고 저장하고 편집기를 닫으면, Git은 두 커밋의 커밋 메시지를 합쳐서 새로운 커밋 메시지를 작성하라는 메시지를 표시합니다. 이 새로운 커밋 메시지를 작성하고 저장하고 편집기를 닫으면, 두 커밋이 하나로 합쳐진 새로운 커밋이 생성됩니다.</p>
<p>합쳐진 커밋은 원래 두 커밋의 변경 사항을 모두 포함하고, 이 커밋은 두 원래 커밋의 부모가 됩니다. 이렇게 하면 원래 두 커밋이 하나의 커밋으로 합쳐집니다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[다른 브랜치에 잘못 변경하고 있었을 때]]></title>
            <link>https://velog.io/@i-zro/%EB%8B%A4%EB%A5%B8-%EB%B8%8C%EB%9E%9C%EC%B9%98%EC%97%90-%EC%9E%98%EB%AA%BB-%EB%B3%80%EA%B2%BD%ED%95%98%EA%B3%A0-%EC%9E%88%EC%97%88%EC%9D%84-%EB%95%8C</link>
            <guid>https://velog.io/@i-zro/%EB%8B%A4%EB%A5%B8-%EB%B8%8C%EB%9E%9C%EC%B9%98%EC%97%90-%EC%9E%98%EB%AA%BB-%EB%B3%80%EA%B2%BD%ED%95%98%EA%B3%A0-%EC%9E%88%EC%97%88%EC%9D%84-%EB%95%8C</guid>
            <pubDate>Fri, 02 Jun 2023 01:36:24 GMT</pubDate>
            <description><![CDATA[<p>User
(로컬) 현재 브랜치(main)에서 변경하고 있었는데 해당 변경사항들을 새로운 브랜치에 적용하는 형태로 브랜치 생성후에 원래 변경하고 있던 main 브랜치에 pr 날리기?
ChatGPT
네, 맞습니다. 현재 브랜치(main)에서 변경하고 있는 작업을 새로운 브랜치로 이동시키고, 원래 작업하던 main 브랜치에 대한 Pull Request를 생성하는 것은 일반적인 작업 흐름입니다. 다음은 해당 절차입니다:</p>
<p>현재 브랜치(main)에서 변경하고 있는 작업을 커밋합니다. 변경한 파일을 스테이징하고, 커밋을 만들어 작업 내용을 저장합니다. 명령어 예시: git add . (변경된 파일들을 스테이징), git commit -m &quot;현재 브랜치 작업 내용&quot;.</p>
<p>현재 브랜치(main)에서 새로운 브랜치를 생성합니다. 새로운 브랜치는 원래 작업하던 브랜치의 변경 사항을 적용할 목적으로 만듭니다. 명령어 예시: git checkout -b &lt;새로운 브랜치 이름&gt;.</p>
<p>현재 브랜치(main)에서 새로운 브랜치로 변경 사항을 이동시킵니다. 변경한 내용을 적용하기 위해 현재 브랜치(main)에서 새로운 브랜치로 변경 사항을 이동시킵니다. 명령어 예시: git cherry-pick &lt;커밋 해시&gt; (커밋 해시는 현재 브랜치의 변경 사항의 커밋 해시를 사용합니다). 이 단계를 반복하여 모든 필요한 변경 사항을 새로운 브랜치로 이동시킵니다.</p>
<p>새로운 브랜치에서 변경한 작업을 커밋합니다. 변경한 파일을 스테이징하고, 커밋을 만듭니다. 필요한 만큼 커밋을 생성하고 작업을 진행합니다. 명령어 예시: git add . (변경된 파일들을 스테이징), git commit -m &quot;새로운 브랜치 작업 내용&quot;.</p>
<p>새로운 브랜치를 원격 저장소에 푸시합니다. 새로운 브랜치를 원격 저장소에 공유해야 합니다. 명령어 예시: git push origin &lt;새로운 브랜치 이름&gt;.</p>
<p>원래 작업하던 main 브랜치에서 Pull Request를 생성합니다. 원래 작업하던 main 브랜치로 이동한 후, 원격 저장소의 웹 인터페이스에서 &quot;New Pull Request&quot; 또는 유사한 버튼을 클릭하여 Pull Request를 생성합니다. 변경 사항에 대한 요약 및 설명을 제공하고, 관련된 리뷰어를 지정합니다.</p>
<p>위의 단계를 따르면, 현재 브랜치(main)에서 새로운 브랜치로 변경 사항을 이동시키고, 변경 사항을 포함한 새로운 브랜치에 대한 Pull Request를 생성할 수 있습니다. 이를 통해 변경 사항을 검토하고 병합(Merge)할 수 있습니다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[테라폼 심볼릭 링크로 재사용]]></title>
            <link>https://velog.io/@i-zro/%ED%85%8C%EB%9D%BC%ED%8F%BC-%EC%8B%AC%EB%B3%BC%EB%A6%AD-%EB%A7%81%ED%81%AC%EB%A1%9C-%EC%9E%AC%EC%82%AC%EC%9A%A9</link>
            <guid>https://velog.io/@i-zro/%ED%85%8C%EB%9D%BC%ED%8F%BC-%EC%8B%AC%EB%B3%BC%EB%A6%AD-%EB%A7%81%ED%81%AC%EB%A1%9C-%EC%9E%AC%EC%82%AC%EC%9A%A9</guid>
            <pubDate>Fri, 02 Jun 2023 01:31:50 GMT</pubDate>
            <description><![CDATA[<p>ln -s &lt;실제 파일 경로&gt; &lt;링크 경로&gt; 명령을 사용하여 심볼릭 링크를 생성합니다. 예를 들어, ln -s ../provider.tf provider.tf 명령을 사용하여 상위 디렉토리의 provider.tf 파일을 현재 디렉토리에 심볼릭 링크로 생성할 수 있습니다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[AWS 콘솔에서 SSH 클라이언트 버튼 / 연결이 안보인다]]></title>
            <link>https://velog.io/@i-zro/AWS-%EC%BD%98%EC%86%94%EC%97%90%EC%84%9C-SSH-%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8-%EB%B2%84%ED%8A%BC-%EC%97%B0%EA%B2%B0%EC%9D%B4-%EC%95%88%EB%B3%B4%EC%9D%B8%EB%8B%A4</link>
            <guid>https://velog.io/@i-zro/AWS-%EC%BD%98%EC%86%94%EC%97%90%EC%84%9C-SSH-%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8-%EB%B2%84%ED%8A%BC-%EC%97%B0%EA%B2%B0%EC%9D%B4-%EC%95%88%EB%B3%B4%EC%9D%B8%EB%8B%A4</guid>
            <pubDate>Sun, 28 May 2023 00:47:55 GMT</pubDate>
            <description><![CDATA[<p>22번 포트가 안 열린 것</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[CKA Ingress]]></title>
            <link>https://velog.io/@i-zro/CKA-Ingress</link>
            <guid>https://velog.io/@i-zro/CKA-Ingress</guid>
            <pubDate>Tue, 23 May 2023 14:59:20 GMT</pubDate>
            <description><![CDATA[<ul>
<li>Ingress는 외부로부터 서버 내부로 유입되는 네트워크 트래픽을 의미.</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[[리눅스] 찾기 관련 명령어]]></title>
            <link>https://velog.io/@i-zro/%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%B0%BE%EA%B8%B0-%EA%B4%80%EB%A0%A8-%EB%AA%85%EB%A0%B9%EC%96%B4</link>
            <guid>https://velog.io/@i-zro/%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%B0%BE%EA%B8%B0-%EA%B4%80%EB%A0%A8-%EB%AA%85%EB%A0%B9%EC%96%B4</guid>
            <pubDate>Tue, 23 May 2023 11:47:32 GMT</pubDate>
            <description><![CDATA[<h3 id="치환">치환</h3>
<ul>
<li>sed &#39;s/찾는단어/바꿀단어/g&#39; 파일명</li>
<li>vim에서 esc 후 <code>:%s/찾는단어/바꿀단어/g</code></li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[230523 PLAN]]></title>
            <link>https://velog.io/@i-zro/230523-PLAN</link>
            <guid>https://velog.io/@i-zro/230523-PLAN</guid>
            <pubDate>Mon, 22 May 2023 16:14:40 GMT</pubDate>
            <description><![CDATA[<h1 id="today">Today</h1>
<pre><code># Base Rules

- Continue to add the tasks for this today.
- Briefly jot down the daily plans here, while documenting actual achievements and routines in detail on a paper planner.
</code></pre><ul>
<li>CKA 부족 부분 연습<ul>
<li><input checked="" disabled="" type="checkbox"> kodekloud Practice Test Application Failure</li>
<li>kodekloudPractice Test Control Plane Failure</li>
<li>kodekloudPractice Test Worker Node Failure</li>
<li>kodekloudPractice Test - Troubleshoot Network</li>
<li>Practice Test - Explore Environment</li>
<li>Practice Test CNI</li>
<li>Practice Test - Deploy Network Solution</li>
<li>Practice Test - Networking Weave</li>
<li>Practice Test Service Networking</li>
<li>Practice Test CoreDNS in Kubernetes</li>
<li>Practice Test - CKA - Ingress Networking - 1</li>
<li>Practice Test - CKA - Ingress Networking - 2</li>
</ul>
</li>
</ul>
<h1 id="weekly">Weekly</h1>
<pre><code># Base Rules

- Continue to add the tasks for this week.</code></pre><ul>
<li><code>5/22</code> Official Leave</li>
<li>CKA 부족 부분 연습</li>
<li>CKA test success</li>
<li><code>5/26</code> 여수</li>
</ul>
<h1 id="monthly">Monthly</h1>
<pre><code># Base Rules

- Continue to add the tasks for this month(5).
</code></pre><h1 id="lifelong">Lifelong</h1>
<ul>
<li>Be a mentor to those in need.</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[CKA Trouble Shooting]]></title>
            <link>https://velog.io/@i-zro/CKA-Trouble-Shooting</link>
            <guid>https://velog.io/@i-zro/CKA-Trouble-Shooting</guid>
            <pubDate>Mon, 22 May 2023 16:10:07 GMT</pubDate>
            <description><![CDATA[<hr>
<h1 id="application">Application</h1>
<ol>
<li><p>svc 확인 (이름, nodeport, port, targetport 확인 등)</p>
</li>
<li><p>deployment 확인 (ex) mysql 앱 사용자 및 비밀번호 등 수정)</p>
</li>
<li><p>pod 확인 (ex)mysql pod 자체 환경변수의 비밀번호 설정)</p>
</li>
</ol>
<hr>
<h2 id="1">1</h2>
<p><img src="https://velog.velcdn.com/images/i-zro/post/2053909c-5367-4503-a77c-17e7d11289f9/image.png" alt=""></p>
<ul>
<li>k get svc -A</li>
</ul>
<p><img src="https://velog.velcdn.com/images/i-zro/post/5874b35c-ee47-489e-ac02-3ca625840d43/image.png" alt=""></p>
<ul>
<li>위 그림과 비교해서 svc 이름만 다른 것을 알 수 있음 =&gt; yaml로 받아서 name만 바꿔서 다시 apply 해주면 됨.</li>
</ul>
<h2 id="2">2</h2>
<p><img src="https://velog.velcdn.com/images/i-zro/post/a2361464-cdeb-4232-a547-9dcd2920b597/image.png" alt=""></p>
<ul>
<li>k get svc -A</li>
</ul>
<h3 id="헷갈리는-nodeport-port-targetport-정리">헷갈리는 nodeport, port, targetport 정리</h3>
<ul>
<li><p>NodePort </p>
<ul>
<li>외부에서 접속하기 위해 사용하는 포트</li>
</ul>
</li>
<li><p>port</p>
<ul>
<li>Cluster 내부에서 사용할 Service 객체의 포트</li>
</ul>
</li>
<li><p>targetPort</p>
<ul>
<li>Service객체로 전달된 요청을 Pod(deployment)로 전달할때 사용하는 포트</li>
</ul>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/i-zro/post/f351fae9-3ade-4ba5-9137-314e1b3962de/image.png" alt=""></p>
<ul>
<li>어쨌든 문제로 돌아가서, 위 문제에서는 mysql-service에서 어플리케이션 3306으로 다시 들어가야 하니까 targetport를 3306으로 해주어야 함.</li>
</ul>
<hr>
<h1 id="controlplane">Controlplane</h1>
<ol>
<li>schduling 등에 에러가 있다. -&gt; kube-system 네임 스페이스의 pod 확인해서 이상있는 지 확인.</li>
<li>이상 있으면 k logs -n kube-system 파드이름으로 무슨 문제인지 확인</li>
<li>/etc/kubernetes/manifests 경로로 가서 오류 수정</li>
</ol>
<hr>
<h2 id="3">3</h2>
<p>deployment의 scaling up을 했지만 pod scaling up 안 되는 상황이면, 다른 이상이 없다면 kube-system 쪽 pod를 봐준다 -&gt; 이상이 있는 pod가 있다 -&gt; 그렇다면 controller쪽 이상 (scheduling이 안 되고 있을 수 있기 때문)</p>
<p><code>k logs -n kube-system kube-controller-manager-controlplane</code></p>
<p>의 명령어로 문제가 있다면 어떤 문제가 있는 지 확인 가능하고, 해당 문제를 고쳐준다.</p>
<p>(이 경우엔 kube-scheduler 문제여서, /etc/kubernetes/manifest의 kube-scheduler.conf에서 틀린 문자열을 고쳐줬다.)</p>
<h2 id="4">4</h2>
<ul>
<li>manager-controlplane 파드가 고장나 있어서 log를 봤다.</li>
</ul>
<pre><code>root@controlplane:/etc/kubernetes/manifests# kubectl -n kube-system logs kube-controller-manager-controlplane
I0916 13:17:27.452539       1 serving.go:348] Generated self-signed cert in-memory
unable to load client CA provider: open /etc/kubernetes/pki/ca.crt: no such file or directory
</code></pre><ul>
<li>위와 같이, pki 디렉토리가 잘못 잡혀있다는 오류였다. 이 경우, 파일은 제대로 있다면 hostPath가 다르게 잡혀있는 것이다.</li>
</ul>
<p><img src="https://velog.velcdn.com/images/i-zro/post/01ddd2a3-18f7-46b3-915b-7d0ce27c6eb6/image.png" alt=""></p>
<ul>
<li>위와같이, yaml 파일에서 잘못잡혀있어서 올바르게 수정해주면 된다.</li>
</ul>
<hr>
<h1 id="worker-nodes">Worker Nodes</h1>
<ol>
<li>ssh node</li>
<li>journalctl -u kubelet -f 해서 경우의 수를 본다.</li>
</ol>
<ul>
<li>단순히 systemctl start kubelet</li>
<li>파일 글자오류</li>
<li>/etc/kubernetes/kubelet.conf port 오류</li>
</ul>
<hr>
<h2 id="1-1">1.</h2>
<ul>
<li>journalctl -u kubelet -f
May 23 08:22:00 node01 kubelet[2053]: I0523 08:22:00.194377    2053 reconciler_common.go:253] &quot;operationExecutor.VerifyControllerAttachedVolume started for volume &quot;xtables-lock&quot; (UniqueName: &quot;kubernetes.io/host-path/8c8b5124-2404-4fd7-87b8-2581cf01b11d-xtables-lock&quot;) pod &quot;kube-flannel-ds-q2sbf&quot; (UID: &quot;8c8b5124-2404-4fd7-87b8-2581cf01b11d&quot;) &quot; pod=&quot;kube-flannel/kube-flannel-ds-q2sbf&quot;
May 23 08:22:00 node01 kubelet[2053]: I0523 08:22:00.194432    2053 reconciler_common.go:253] &quot;operationExecutor.VerifyControllerAttachedVolume started for volume &quot;kube-api-access-js7sj&quot; (UniqueName: &quot;kubernetes.io/projected/8c8b5124-2404-4fd7-87b8-2581cf01b11d-kube-api-access-js7sj&quot;) pod &quot;kube-flannel-ds-q2sbf&quot; (UID: &quot;8c8b5124-2404-4fd7-87b8-2581cf01b11d&quot;) &quot; pod=&quot;kube-flannel/kube-flannel-ds-q2sbf&quot;
  -&gt; systemctl start kubelet</li>
</ul>
<h2 id="2-1">2.</h2>
<ul>
<li>journalctl -u kubelet -f</li>
<li><ul>
<li>Logs begin at Tue 2023-05-23 08:05:45 EDT. --
Dec 29 14:32:36 node01 kubelet[4670]: E1229 14:32:36.331403    4670 run.go:74] &quot;command failed&quot; err=&quot;failed to construct kubelet dependencies: unable to load client CA file /etc/kubernetes/pki/WRONG-CA-FILE.crt: open /etc/kubernetes/pki/WRONG-CA-FILE.crt: no such file or directory&quot;</li>
</ul>
</li>
<li><blockquote>
<p>읽어보니 뭔가 CA FILE이 없대서 해당 경로 yaml 들어가서 ca 파일 잡아줌.</p>
</blockquote>
</li>
</ul>
<h2 id="3-1">3.</h2>
<ul>
<li>journalctl -u kubelet -f
May 23 08:32:12 node01 kubelet[5637]: E0523 08:32:12.511600    5637 kubelet_node_status.go:92] &quot;Unable to register node with API server&quot; err=&quot;Post &quot;<a href="https://controlplane:6553/api/v1/nodes%5C&quot;">https://controlplane:6553/api/v1/nodes\&quot;</a>: dial tcp 192.24.230.12:6553: connect: connection refused&quot; node=&quot;node01&quot;
May 23 08:32:13 node01 kubelet[5637]: E0523 08:32:13.501902    5637 event.go:276] Unable to write event: &#39;&amp;v1.Event{TypeMeta:v1.TypeMeta{Kind:&quot;&quot;, APIVersion:&quot;&quot;}, ObjectMeta:v1.ObjectMeta{Name:&quot;node01.1761c5a55d5d6ac2&quot;, GenerateName:&quot;&quot;, Namespace:&quot;default&quot;, SelfLink:&quot;&quot;, UID:&quot;&quot;, ResourceVersion:&quot;&quot;, Generation:0, CreationTimestamp:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), DeletionTimestamp:<nil>, DeletionGracePeriodSeconds:(<em>int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ManagedFields:[]v1.ManagedFieldsEntry(nil)}, InvolvedObject:v1.ObjectReference{Kind:&quot;Node&quot;, Namespace:&quot;&quot;, Name:&quot;node01&quot;, UID:&quot;node01&quot;, APIVersion:&quot;&quot;, ResourceVersion:&quot;&quot;, FieldPath:&quot;&quot;}, Reason:&quot;Starting&quot;, Message:&quot;Starting kubelet.&quot;, Source:v1.EventSource{Component:&quot;kubelet&quot;, Host:&quot;node01&quot;}, FirstTimestamp:time.Date(2023, time.May, 23, 8, 30, 49, 639955138, time.Local), LastTimestamp:time.Date(2023, time.May, 23, 8, 30, 49, 639955138, time.Local), Count:1, Type:&quot;Normal&quot;, EventTime:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), Series:(</em>v1.EventSeries)(nil), Action:&quot;&quot;, Related:(*v1.ObjectReference)(nil), ReportingController:&quot;&quot;, ReportingInstance:&quot;&quot;}&#39;: &#39;Post &quot;<a href="https://controlplane:6553/api/v1/namespaces/default/events&quot;">https://controlplane:6553/api/v1/namespaces/default/events&quot;</a>: dial tcp 192.24.230.11:6553: connect: connection refused&#39;(may retry after sleeping)</li>
</ul>
<p>-&gt; 6553 6443으로 고쳐주기 (vim /etc/kubernetes/kubelet.conf)</p>
<hr>
<h1 id="network">Network</h1>
<ol>
<li>k get pods -A 해서 잘못된 pod log 봐주기</li>
</ol>
<hr>
<ul>
<li>1번은 CNI 뭐 업데이트 하는 문제였는데 솔직히 뭔지 모르겠어서 그냥 넘어가는 걸로 했다.</li>
</ul>
<h2 id="2-2">2.</h2>
<ul>
<li>proxy pod log 봐서 conf 고치기<ul>
<li>알고보면 daemonset이어서 k edit ds -n kube-system kube-proxy 해서 config쪽 파일 잘못된 것 고침</li>
</ul>
</li>
</ul>
<pre><code>k -n kube-system logs kube-proxy-wd9hl 
E0523 13:45:01.349109       1 run.go:74] &quot;command failed&quot; err=&quot;failed complete: open /var/lib/kube-proxy/configuration.conf: no such file or directory&quot;</code></pre>]]></description>
        </item>
        <item>
            <title><![CDATA[230522 PLAN]]></title>
            <link>https://velog.io/@i-zro/230522-PLAN</link>
            <guid>https://velog.io/@i-zro/230522-PLAN</guid>
            <pubDate>Sun, 21 May 2023 12:02:41 GMT</pubDate>
            <description><![CDATA[<h1 id="today">Today</h1>
<pre><code># Base Rules

- Continue to add the tasks for this today.
- Briefly jot down the daily plans here, while documenting actual achievements and routines in detail on a paper planner.
</code></pre><ul>
<li>Official Leave (Health Cheak-Up)</li>
<li>20 ~ 22 CKA</li>
</ul>
<h1 id="weekly">Weekly</h1>
<pre><code># Base Rules

- Continue to add the tasks for this week.</code></pre><ul>
<li><code>5/22</code> Official Leave</li>
<li>CKA test success</li>
</ul>
<h1 id="monthly">Monthly</h1>
<pre><code># Base Rules

- Continue to add the tasks for this month(5).
</code></pre><h1 id="lifelong">Lifelong</h1>
<ul>
<li>Be a mentor to those in need.</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[Jenkins Groovy script stage 실행시간 제한]]></title>
            <link>https://velog.io/@i-zro/stage-%EC%8B%A4%ED%96%89%EC%8B%9C%EA%B0%84-%EC%A0%9C%ED%95%9C</link>
            <guid>https://velog.io/@i-zro/stage-%EC%8B%A4%ED%96%89%EC%8B%9C%EA%B0%84-%EC%A0%9C%ED%95%9C</guid>
            <pubDate>Sun, 14 May 2023 17:39:05 GMT</pubDate>
            <description><![CDATA[<p>stage 안에</p>
<p>options { timeout(time: 10, unit: &#39;MINUTES&#39;) }</p>
<p>블록으로 해당 stage이 실행시간을 10분으로 설정 가능</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[mkdir -p]]></title>
            <link>https://velog.io/@i-zro/mkdir-p</link>
            <guid>https://velog.io/@i-zro/mkdir-p</guid>
            <pubDate>Fri, 12 May 2023 02:08:26 GMT</pubDate>
            <description><![CDATA[<p>mkdir -p 옵션을 사용할 경우에는 </p>
<p>존재하지 않는 중간의 디렉토리를 자동을 생성해 준다.</p>
<p>예를 들면 아래 명령어를 입력하면 에러가 난다.</p>
<p>mkdir f1/f2/f3</p>
<blockquote>
<p>mkdir: f1/f2: No such file or directory</p>
</blockquote>
<p>하지만 mkdir -p 옵션을 이용하면 중간 디렉토리 역시 자동으로 생성해 준다.</p>
<blockquote>
<p>mkdir -p f1/f2/f3</p>
</blockquote>
<p>성공적으로 수행!</p>
<p>즉, mkdir -p 옵션은 안전하게 파일 경로를 생성해 준다.</p>
<p>출처: <a href="https://wotres.tistory.com/entry/mkdir-p-%EC%98%B5%EC%85%98%EC%9D%B4%EB%9E%80">https://wotres.tistory.com/entry/mkdir-p-%EC%98%B5%EC%85%98%EC%9D%B4%EB%9E%80</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[OnDemand, Schedule, Daemon 배치 차이]]></title>
            <link>https://velog.io/@i-zro/OnDemand-Schedule-Daemon-%EB%B0%B0%EC%B9%98-%EC%B0%A8%EC%9D%B4</link>
            <guid>https://velog.io/@i-zro/OnDemand-Schedule-Daemon-%EB%B0%B0%EC%B9%98-%EC%B0%A8%EC%9D%B4</guid>
            <pubDate>Fri, 12 May 2023 01:22:14 GMT</pubDate>
            <description><![CDATA[<ul>
<li><p>배치작업은, 데이터를 실시간으로 처리하는게 아니라, 일괄적으로 모아서 처리하는 작업을 의미한다. 가령, 하루동안 쌓인 데이터를 배치작업을 통해 특정 시간에 한꺼번에 처리하는 경우가 이에 해당한다.</p>
</li>
<li><p>배치 프로그램을 이용하면 사용자가 적을때 컴퓨터 자원을 이용할 수 있게 해서 자원 이용률과 효율을 높여준다.</p>
</li>
</ul>
<h3 id="ondemand-배치">ondemand 배치</h3>
<p>요청이 있을 때만 실행되는 배치 작업</p>
<ul>
<li>예를 들어, 사용자가 웹 페이지에서 &quot;실행&quot; 버튼을 누르면 해당 배치 작업이 실행되도록 할 수 있다.</li>
</ul>
<h3 id="schedule-배치">schedule 배치</h3>
<p>일정에 따라 주기적으로 실행되는 배치 작업</p>
<ul>
<li>예를 들어, 매일 밤 12시에 데이터베이스를 백업하는 배치 작업이 있다면 이것은 schedule 배치에 해당된다.</li>
</ul>
<h3 id="daemon-배치">daemon 배치</h3>
<p>항상 실행 중인 배치 작업</p>
<ul>
<li>일반적으로 데몬 프로세스는 서버가 시작될 때 시작되고, 서버가 종료될 때까지 계속해서 실행 된다. 데몬 프로세스는 일반적으로 백그라운드에서 실행되며, 주기적으로 작업을 수행한다. 예를 들어, 로그 파일을 지속적으로 모니터링하고, 새로운 로그 메시지를 처리하는 데몬 프로세스가 있다면 이것은 daemon 배치에 해당한다.</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[컴활 1급 실기 내용 정리 3 (피벗테이블, 중복 된 항목 제거, 부분합 및 정렬)]]></title>
            <link>https://velog.io/@i-zro/%EC%BB%B4%ED%99%9C-1%EA%B8%89-%EC%8B%A4%EA%B8%B0-%EB%82%B4%EC%9A%A9-%EC%A0%95%EB%A6%AC-%ED%94%BC%EB%B2%97%ED%85%8C%EC%9D%B4%EB%B8%94-%EC%A4%91%EB%B3%B5-%EB%90%9C-%ED%95%AD%EB%AA%A9-%EC%A0%9C%EA%B1%B0-%EB%B6%80%EB%B6%84%ED%95%A9-%EB%B0%8F-%EC%A0%95%EB%A0%AC</link>
            <guid>https://velog.io/@i-zro/%EC%BB%B4%ED%99%9C-1%EA%B8%89-%EC%8B%A4%EA%B8%B0-%EB%82%B4%EC%9A%A9-%EC%A0%95%EB%A6%AC-%ED%94%BC%EB%B2%97%ED%85%8C%EC%9D%B4%EB%B8%94-%EC%A4%91%EB%B3%B5-%EB%90%9C-%ED%95%AD%EB%AA%A9-%EC%A0%9C%EA%B1%B0-%EB%B6%80%EB%B6%84%ED%95%A9-%EB%B0%8F-%EC%A0%95%EB%A0%AC</guid>
            <pubDate>Mon, 07 Mar 2022 14:17:24 GMT</pubDate>
            <description><![CDATA[<h2 id="피벗-테이블">피벗 테이블</h2>
<p><img src="https://images.velog.io/images/i-zro/post/bf8a5978-245c-43d5-85af-29b0adc4db55/image.png" alt="">
▶ 피벗 테이블 보고서의 레이아웃과 위치는 &lt;그림&gt;을 참조하여 설정하고, 보고서 레이아웃을 개요형식으로 표시하시오.</p>
<p><img src="https://images.velog.io/images/i-zro/post/bc4fdbda-f2d6-4591-9c48-e440dba30abf/image.png" alt=""></p>
<ul>
<li>피벗 테이블 만들 범위 잡고 삽입 &gt; 피벗 테이블</li>
</ul>
<p>▶ 직위를 ‘페이지’로, 부서코드는 ‘행’으로 처리하고, 
<img src="https://images.velog.io/images/i-zro/post/fe1ea851-87fc-4b8a-85e6-8adbeed54af8/image.png" alt=""></p>
<p>▶ ‘데이터’는 전산이론, 전산실기의 평균을 계산
<img src="https://images.velog.io/images/i-zro/post/780dc750-886a-4cb9-b9da-d70d072c2061/image.png" alt="">
값에서 값 필드 설정 선택</p>
<ul>
<li>개요 형식은 디자인 탭의 보고서 레이아웃에서 설정
<img src="https://images.velog.io/images/i-zro/post/9a931eaf-6802-46bf-a874-772f6f5f6826/image.png" alt=""></li>
</ul>
<p>▶ 부서코드의 첫 문자가 ‘G’인 자료는 ‘관리본부’로, ‘T’인 경우에는 ‘기술본부’로 그룹을 작성하시오.</p>
<ul>
<li>그룹
<img src="https://images.velog.io/images/i-zro/post/e24419f8-1de7-4ef8-b190-9ca9a216a3b5/image.png" alt=""></li>
</ul>
<h3 id="개요-형식과-테이블-형식-차이">개요 형식과 테이블 형식 차이</h3>
<ul>
<li>개요형식
<img src="https://images.velog.io/images/i-zro/post/836bacc8-e57d-4c05-86bf-a905e54775c0/image.png" alt=""></li>
<li>테이블 형식
<img src="https://images.velog.io/images/i-zro/post/b230a197-c9c4-42d1-abb5-e009d6f3e9f4/image.png" alt=""></li>
</ul>
<p>▶ 완성된 피벗 테이블 보고서는 보고서 서식의 ‘보고서1’ 형식으로 지정하시오.
<img src="https://images.velog.io/images/i-zro/post/e5a9f070-7ea9-443a-874f-ce9b7798dd3b/image.png" alt="">
리본 메뉴에 없는 자동 서식 추가
<img src="https://images.velog.io/images/i-zro/post/1006aec4-4991-4dcd-8e93-0c785175dc2c/image.png" alt="">
(추가 된 모습)</p>
<ul>
<li><p>자동 서식 &gt; 보고서 1
<img src="https://images.velog.io/images/i-zro/post/6cd2c48c-33e2-46b6-b48e-4f95359f1330/image.png" alt=""></p>
</li>
<li><p>부분합 표시 안함
<img src="https://images.velog.io/images/i-zro/post/4a99730d-ad92-44c8-9e95-a73202f35443/image.png" alt=""></p>
</li>
</ul>
<p>▶ 데이터 열에 표시되는 각 평균 점수들은 값 필드 설정의 표시형식 - 숫자형을 이용하여 소수 2자리로 표시하시오.</p>
<ul>
<li><p>숫자 하나 클릭하고 값 필드 설정
<img src="https://images.velog.io/images/i-zro/post/165da175-8ec7-4200-ba7f-fe4c40f4f4ed/image.png" alt=""></p>
</li>
<li><p>표시 형식 클릭
<img src="https://images.velog.io/images/i-zro/post/1390a290-cbfa-4b74-bfe7-974c1535ee76/image.png" alt=""></p>
</li>
</ul>
<p><img src="https://images.velog.io/images/i-zro/post/89be83aa-45b7-479f-9480-439298d3311b/image.png" alt=""></p>
<p><img src="https://images.velog.io/images/i-zro/post/08312f35-76c7-4ab2-b7bd-8b83615b3f30/image.png" alt=""></p>
<h2 id="중복-된-항목-제거">중복 된 항목 제거</h2>
<p>▶ 데이터 도구를 이용하여 [표1]에서 ‘성명’, ‘성별’, ‘생년월일’ 열을 기준으로 중복된 값이 입력된 셀을 포함하는 행을 삭제하시오.</p>
<ul>
<li><p>범위 선택 후 데이터 &gt; 중복 된 항목 제거 클릭
<img src="https://images.velog.io/images/i-zro/post/7589a7ce-76ce-4bce-8f56-4fc4c58ff6ad/image.png" alt=""></p>
</li>
<li><p>기준 열 선택
<img src="https://images.velog.io/images/i-zro/post/fff59d7e-3522-47f1-8d6e-26b8773d101f/image.png" alt=""></p>
</li>
<li><p>완료 형태
<img src="https://images.velog.io/images/i-zro/post/d115ab16-6c39-4f1a-8d13-27e5d50ba4cc/image.png" alt=""></p>
</li>
</ul>
<p>▶ [부분합] 기능을 이용하여 [표1]에서 ‘반’별 ‘출석일수’의 평균을 계산한 후 ‘성별’별 ‘성명’의 개수를 계산하시오.</p>
<ul>
<li><p>반을 기준으로 오름차순으로 정렬하고, 반이 동일한 경우 성별을 기준으로 오름차순 정렬하시오.</p>
</li>
<li><p>평균과 개수는 위에 명시된 순서대로 처리하시오.</p>
</li>
<li><p>부분합 이전에 정렬 먼저 : 데이터 &gt; 정렬
<img src="https://images.velog.io/images/i-zro/post/5ddd3d22-0515-44df-9f55-68fc2a906cd7/image.png" alt=""></p>
</li>
<li><p>항목 선택 후 데이터 &gt; 부분합
<img src="https://images.velog.io/images/i-zro/post/660492bd-0cdc-4e03-ac55-4de7e17e4f81/image.png" alt=""></p>
</li>
</ul>
<p><img src="https://images.velog.io/images/i-zro/post/cf89e936-7a8b-427d-8547-c572d87710ea/image.png" alt=""></p>
<h4 id="또-부분합-블록은-끝까지-잡기--새로운-값으로-대치-해제">또 부분합 (블록은 끝까지 잡기!) &amp; 새로운 값으로 대치 해제!!!</h4>
<p><img src="https://images.velog.io/images/i-zro/post/4de2a70e-a0bc-4dc9-ae1a-3951963c0562/image.png" alt=""></p>
<p><img src="https://images.velog.io/images/i-zro/post/e0f3c1a1-37cc-4e49-897d-7ec4091df5f3/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[컴활 1급 실기 내용 정리 (고급 필터, 조건부 서식, 달러 개념, 시트 보호)]]></title>
            <link>https://velog.io/@i-zro/%EC%BB%B4%ED%99%9C-1%EA%B8%89-%EC%8B%A4%EA%B8%B0-%EB%82%B4%EC%9A%A9-%EC%A0%95%EB%A6%AC-%EA%B3%A0%EA%B8%89-%ED%95%84%ED%84%B0</link>
            <guid>https://velog.io/@i-zro/%EC%BB%B4%ED%99%9C-1%EA%B8%89-%EC%8B%A4%EA%B8%B0-%EB%82%B4%EC%9A%A9-%EC%A0%95%EB%A6%AC-%EA%B3%A0%EA%B8%89-%ED%95%84%ED%84%B0</guid>
            <pubDate>Sun, 06 Mar 2022 08:16:30 GMT</pubDate>
            <description><![CDATA[<h2 id="고급필터">고급필터</h2>
<p>▶ 직위가 과장이거나, 직위가 사원이고 점수가 80 이상인 자료의 이름, 부서명, 직위, 점수, 평가 열만 순서대로 표시하시오.</p>
<ul>
<li><p>직위가 과장
<img src="https://images.velog.io/images/i-zro/post/b001c5f7-c0eb-4e5e-8f6c-46150ee0e02c/image.png" alt=""></p>
</li>
<li><p>이거나, 직위가 사원이고 점수가 80 이상인
<img src="https://images.velog.io/images/i-zro/post/e5e035cb-7707-446a-89c1-0204e47efcfc/image.png" alt=""></p>
</li>
</ul>
<h4 id="같은-표현">같은 표현</h4>
<p><img src="https://images.velog.io/images/i-zro/post/076769a6-09c9-4d15-a4ed-b13e183cfc6d/image.png" alt=""></p>
<ul>
<li>이름, 부서명, 직위, 점수, 평가 열만 순서대로 표시</li>
</ul>
<ol>
<li>출력해야할 열 이름 표시
<img src="https://images.velog.io/images/i-zro/post/b82a56f5-a9f1-4a4d-8faa-c00469ba8a3b/image.png" alt=""></li>
<li>필드명 + 데이터 영역 드래그
<img src="https://images.velog.io/images/i-zro/post/9f79d61f-910b-485e-b5a4-63d575dc0c57/image.png" alt=""></li>
<li>데이터 &gt; 고급 클릭
<img src="https://images.velog.io/images/i-zro/post/324e3520-faf8-4bcc-9dee-7499b0e2154f/image.png" alt=""></li>
<li>데이터 영역(= 필드명 까지 드래그), 조건 영역, 필드 영역(-&gt; 복사위치) 각각 드래그
<img src="https://images.velog.io/images/i-zro/post/00df1867-4847-42b5-973c-01e836fcdea0/image.png" alt=""></li>
<li>완료형태
<img src="https://images.velog.io/images/i-zro/post/48b31f30-0d3e-46d8-a305-118e1eabbc84/image.png" alt=""></li>
</ol>
<h2 id="조건부-서식">조건부 서식</h2>
<h4 id="데이터-탭의-일을-할-때에는-필드명까지-잡아주고-아닐-때는-데이터-영역만-블록설정">데이터 탭의 일을 할 때에는 필드명까지 잡아주고, 아닐 때는 데이터 영역만 블록설정</h4>
<p>ex) 조건부 서식은 데이터 탭이 아니라 홈 탭에 있으니까 데이터 영역만 블록
<img src="https://images.velog.io/images/i-zro/post/3a11a175-4d7e-4769-95f1-f3280eac89bc/image.png" alt=""></p>
<p>▶ [A2:L23] 영역에 대해서 ‘업무수행’이 80 미만이고, ‘영어듣기’가 70 미만인 행 전체에 대해서 글꼴 스타일은 ‘기울임꼴’, 글꼴 색을 ‘빨강’으로 적용하는 조건부 서식을 작성하시오.</p>
<ol>
<li><p>영역 드래그 후 홈 &gt; 조건부 서식 &gt; 새 규칙
<img src="https://images.velog.io/images/i-zro/post/8a3c2d9a-4c58-436e-a852-ab31aa4134f7/image.png" alt=""></p>
</li>
<li><p>수식을 사용하여 서식을 지정할 셀 결정 클릭 후 규칙 만들어주기
<img src="https://images.velog.io/images/i-zro/post/7d37aec9-5450-4a19-bee2-c4040d6a9263/image.png" alt=""></p>
</li>
</ol>
<ul>
<li><p>‘업무수행’이 80 미만
<img src="https://images.velog.io/images/i-zro/post/6cb9c3fe-eb4a-4dc6-a440-0812bbd8aa3e/image.png" alt=""></p>
</li>
<li><p>‘영어듣기’가 70 미만
<img src="https://images.velog.io/images/i-zro/post/91b3467d-3678-4280-a085-099e95bc0526/image.png" alt=""></p>
</li>
<li><p>이고
<img src="https://images.velog.io/images/i-zro/post/4200ad54-9489-48e1-8043-27c9ed70961f/image.png" alt=""></p>
</li>
</ul>
<h3 id="달러-개념">달러 개념</h3>
<ul>
<li><p>$F : F열을 보겠다.</p>
</li>
<li><p>$2 : 2행만 보겠다.</p>
</li>
<li><p>$F2 : F열만 볼건데, 2행부터 보겠다.
<img src="https://images.velog.io/images/i-zro/post/85d19e37-1200-45ea-91ab-a0521e90a87a/image.png" alt=""></p>
</li>
<li><p>서식 적용
<img src="https://images.velog.io/images/i-zro/post/083cf168-6b4a-4517-9a33-f3368c4d909b/image.png" alt=""></p>
</li>
</ul>
<ol>
<li>완료형태
<img src="https://images.velog.io/images/i-zro/post/ec8c2171-c28e-44c3-ba1c-894880cbad2c/image.png" alt=""></li>
</ol>
<h2 id="시트-보호">시트 보호</h2>
<p>▶ [L2:L23] 영역에만 셀 잠금을 적용한 후 잠긴 셀의 내용과 워크시트를 보호하시오.</p>
<ul>
<li>기본적으로 잠금은 모든 셀에 적용 되어 있음</li>
</ul>
<ol>
<li><p>전체 선택하고 마우스 오른쪽 클릭 &gt; 셀 서식 &gt; 보호에서 잠금 체크박스 해제
<img src="https://images.velog.io/images/i-zro/post/cdbbadd7-ba95-427f-92c9-e3f7b5be7b9d/image.png" alt=""></p>
</li>
<li><p>원하는 영역만 잠금
<img src="https://images.velog.io/images/i-zro/post/a55115e7-5509-46d5-8db4-76118f50f478/image.png" alt=""></p>
</li>
</ol>
<p>▶ 잠기지 않은 셀의 선택은 허용하고, 잠긴 셀의 선택은 허용하지 마시오.</p>
<ol>
<li><p>검토 &gt; 시트 보호 클릭
<img src="https://images.velog.io/images/i-zro/post/92a64522-0a75-4a65-aa79-cf44d58777cc/image.png" alt=""></p>
</li>
<li><p>잠기지 않은 셀의 선택은 허용, 잠긴 셀 선택 허용하지 말라
<img src="https://images.velog.io/images/i-zro/post/abfe9bc1-43e5-48cd-a8c7-70dd04a58ce7/image.png" alt=""></p>
</li>
</ol>
]]></description>
        </item>
        <item>
            <title><![CDATA[quaternion 개념 정리]]></title>
            <link>https://velog.io/@i-zro/quaternion-%EA%B0%9C%EB%85%90-%EC%A0%95%EB%A6%AC</link>
            <guid>https://velog.io/@i-zro/quaternion-%EA%B0%9C%EB%85%90-%EC%A0%95%EB%A6%AC</guid>
            <pubDate>Wed, 29 Dec 2021 14:34:15 GMT</pubDate>
            <description><![CDATA[<p><a href="https://blog.naver.com/PostView.naver?blogId=jidon333&amp;logNo=220888484986&amp;parentCategoryNo=&amp;categoryNo=&amp;viewDate=&amp;isShowPopularPosts=false&amp;from=postView">https://blog.naver.com/PostView.naver?blogId=jidon333&amp;logNo=220888484986&amp;parentCategoryNo=&amp;categoryNo=&amp;viewDate=&amp;isShowPopularPosts=false&amp;from=postView</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[quaternion 표현을 파이썬으로 구현한 것]]></title>
            <link>https://velog.io/@i-zro/quaternion-%ED%91%9C%ED%98%84%EC%9D%84-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9C%BC%EB%A1%9C-%EA%B5%AC%ED%98%84%ED%95%9C-%EA%B2%83</link>
            <guid>https://velog.io/@i-zro/quaternion-%ED%91%9C%ED%98%84%EC%9D%84-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9C%BC%EB%A1%9C-%EA%B5%AC%ED%98%84%ED%95%9C-%EA%B2%83</guid>
            <pubDate>Wed, 29 Dec 2021 14:33:59 GMT</pubDate>
            <description><![CDATA[<p><a href="https://ingun37.wordpress.com/2013/07/02/quaternion-%ED%9A%8C%EC%A0%84%EC%9D%84-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9C%BC%EB%A1%9C-%EA%B5%AC%ED%98%84%ED%95%9C%EA%B2%83/">https://ingun37.wordpress.com/2013/07/02/quaternion-%ED%9A%8C%EC%A0%84%EC%9D%84-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9C%BC%EB%A1%9C-%EA%B5%AC%ED%98%84%ED%95%9C%EA%B2%83/</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[마크다운 시 표 편하게 만들 수 있는 사이트]]></title>
            <link>https://velog.io/@i-zro/%EB%A7%88%ED%81%AC%EB%8B%A4%EC%9A%B4-%EC%8B%9C-%ED%91%9C-%ED%8E%B8%ED%95%98%EA%B2%8C-%EB%A7%8C%EB%93%A4-%EC%88%98-%EC%9E%88%EB%8A%94-%EC%82%AC%EC%9D%B4%ED%8A%B8</link>
            <guid>https://velog.io/@i-zro/%EB%A7%88%ED%81%AC%EB%8B%A4%EC%9A%B4-%EC%8B%9C-%ED%91%9C-%ED%8E%B8%ED%95%98%EA%B2%8C-%EB%A7%8C%EB%93%A4-%EC%88%98-%EC%9E%88%EB%8A%94-%EC%82%AC%EC%9D%B4%ED%8A%B8</guid>
            <pubDate>Wed, 29 Dec 2021 14:27:08 GMT</pubDate>
            <description><![CDATA[<p><a href="https://www.tablesgenerator.com/markdown_tables#">https://www.tablesgenerator.com/markdown_tables#</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[계획적으로 좀 해보기]]></title>
            <link>https://velog.io/@i-zro/%EA%B3%84%ED%9A%8D%EC%A0%81%EC%9C%BC%EB%A1%9C-%EC%A2%80-%ED%95%B4%EB%B3%B4%EA%B8%B0</link>
            <guid>https://velog.io/@i-zro/%EA%B3%84%ED%9A%8D%EC%A0%81%EC%9C%BC%EB%A1%9C-%EC%A2%80-%ED%95%B4%EB%B3%B4%EA%B8%B0</guid>
            <pubDate>Tue, 21 Dec 2021 18:09:54 GMT</pubDate>
            <description><![CDATA[<h2 id="211222">21.12.22</h2>
<p>HBT 이론
<a href="https://ddangeun.tistory.com/25">https://ddangeun.tistory.com/25</a></p>
]]></description>
        </item>
    </channel>
</rss>