{"id":7349,"date":"2022-12-30T15:27:32","date_gmt":"2022-12-30T06:27:32","guid":{"rendered":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7349"},"modified":"2023-01-11T12:05:29","modified_gmt":"2023-01-11T03:05:29","slug":"kubernetes-ingress-nginx-%eb%94%94%eb%b2%84%ea%b9%85%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7349","title":{"rendered":"Kubernetes &#8211; ingress-nginx \ub514\ubc84\uae45\ud558\uae30"},"content":{"rendered":"<h1>Kubernetes &#8211; ingress-nginx \ub514\ubc84\uae45\ud558\uae30<\/h1>\n<p>argocd \ub97c \uc608\uc81c\ub85c ingress-nginx \ub514\ubc84\uae45\ud558\ub294 \ubc29\ubc95\uc744 \uc815\ub9ac\ud574 \ubd05\ub2c8\ub2e4.<\/p>\n<h2>\uc815\ub9d0 ingress-nginx \ubb38\uc81c\uc77c\uae4c?<\/h2>\n<p>ingress-nginx \ub97c \uc758\uc2ec\ud558\uae30 \uc804\uc5d0 \uba3c\uc800 \uc11c\ube44\uc2a4\ub294 \uc815\uc0c1\uc801\uc73c\ub85c \uc791\ub3d9\uc911\uc778\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n<h3>CNI \uc791\ub3d9 \ud14c\uc2a4\ud2b8<\/h3>\n<p>Ready \uc0c1\ud0dc\uc778\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">kubectl get nodes\nNAME          STATUS   ROLES           AGE   VERSION\nes-search01   Ready    control-plane   12d   v1.26.0\nes-search02   Ready    control-plane   12d   v1.26.0\nes-search03   Ready    control-plane   12d   v1.26.0\nes-search04   Ready    &lt;none&gt;          12d   v1.26.0\nes-search05   Ready    &lt;none&gt;          12d   v1.26.0<\/code><\/pre>\n<h4>Calico<\/h4>\n<pre><code class=\"language-bash\">curl -L https:\/\/github.com\/projectcalico\/calico\/releases\/download\/v3.24.5\/calicoctl-linux-amd64 -o calicoctl\nchmod 700 calicoctl\nsudo mv calicoctl \/usr\/bin\/<\/code><\/pre>\n<pre><code class=\"language-bash\">sudo calicoctl node status\nCalico process is running.\n\nIPv4 BGP status\n+--------------+-------------------+-------+------------+-------------+\n| PEER ADDRESS |     PEER TYPE     | STATE |   SINCE    |    INFO     |\n+--------------+-------------------+-------+------------+-------------+\n| 172.16.0.202 | node-to-node mesh | up    | 2023-01-10 | Established |\n| 172.16.0.203 | node-to-node mesh | up    | 2023-01-10 | Established |\n| 172.16.0.204 | node-to-node mesh | up    | 2023-01-10 | Established |\n| 172.16.0.205 | node-to-node mesh | up    | 2023-01-10 | Established |\n+--------------+-------------------+-------+------------+-------------+\n\nIPv6 BGP status\nNo IPv6 peers found.<\/code><\/pre>\n<h4>flannel<\/h4>\n<pre><code class=\"language-bash\">ip -4 a | grep inet\n    inet 127.0.0.1\/8 scope host lo\n    inet 192.168.122.77\/24 brd 192.168.122.255 scope global dynamic eth0\n    inet 18.16.29.0\/16 scope global flannel.1\n    inet 18.16.29.1\/24 scope global docker0<\/code><\/pre>\n<h4>weave<\/h4>\n<pre><code class=\"language-bash\">kubectl get pods --all-namespaces\n    NAMESPACE     NAME              READY     STATUS    RESTARTS   AGE\n    [...]\n    kube-system   weave-net-4mylt   2\/2       Running   0          18m\n    kube-system   weave-net-dwueb   2\/2       Running   0          18m\n    kube-system   weave-net-tj1xv   2\/2       Running   0          18m<\/code><\/pre>\n<h3>Pod \uc811\uc18d \ud14c\uc2a4\ud2b8<\/h3>\n<h4>master node<\/h4>\n<pre><code class=\"language-bash\">kubectl get pods -n argocd -o wide\nNAME                                                READY   STATUS    RESTARTS   AGE   IP              NODE          NOMINATED NODE   READINESS GATES\nargocd-server-66fcf976bf-zhk2c                      1\/1     Running   0          97m   192.168.140.8   es-search05   &lt;none&gt;           &lt;none&gt;<\/code><\/pre>\n<h4>worker node<\/h4>\n<p>Pod \uc811\uc18d\uc740 worker node \uc5d0\uc11c\ub9cc \uac00\ub2a5\ud569\ub2c8\ub2e4.<br \/>\n\ub3c4\ucee4 \uc774\ubbf8\uc9c0\uc0c1\uc758 \ud3ec\ud2b8\ub97c \ubbf8\ub9ac \ud655\uc778\ud574 \ub193\uc2b5\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">curl http:\/\/192.168.140.8:8080\/<\/code><\/pre>\n<p>\ub9ac\ud134\uc774 \uc624\uba74 \uc815\uc0c1\uc785\ub2c8\ub2e4.<\/p>\n<h3>\uc11c\ube44\uc2a4 \ub514\ubc84\uae45<\/h3>\n<h4>master node<\/h4>\n<pre><code class=\"language-bash\">kubectl get svc -n argocd -o wide\nNAME                                      TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                      AGE   SELECTOR\nargocd-server                             ClusterIP   10.103.116.185   &lt;none&gt;        80\/TCP,443\/TCP               21h   app.kubernetes.io\/name=argocd-server<\/code><\/pre>\n<h4>worker node<\/h4>\n<p>\uc11c\ube44\uc2a4 \uc811\uc18d\ub3c4 worker node \uc5d0\uc11c\ub9cc \uac00\ub2a5\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">curl http:\/\/10.103.116.185\/<\/code><\/pre>\n<p>\ub9ac\ud134\uc774 \uc624\uba74 \uc815\uc0c1\uc785\ub2c8\ub2e4.<\/p>\n<h3>\ubc29\ud654\ubcbd \ucabd \ub514\ubc84\uae45<\/h3>\n<p>\uc678\ubd80\uc5d0\uc11c \uc811\uc18d\uc744 \uc2dc\ub3c4\ud574 \ubd05\ub2c8\ub2e4.<\/p>\n<p>\ud558\ub2e4\ubabb\ud574 nginx \uc624\ub958 \ud398\uc774\uc9c0 \uc870\ucc28 \uc548\ub098\uc624\uba74 \ubc29\ud654\ubcbd \ubb38\uc81c \ub610\ub294 ingress-nginx \uc124\uc815 \uc790\uccb4\uac00 \ubb38\uc81c\uc785\ub2c8\ub2e4.<\/p>\n<p>\ub354\ubd88\uc5b4 nginx \uc624\ub958 \ud398\uc774\uc9c0\uac00 \ub098\uc624\uae34 \ud558\ub294\ub370 \ud55c\ucc38 \uac78\ub824 \ub098\uc624\uba74 \uc5ed\uc2dc\ub098 \ubc29\ud654\ubcbd \ubb38\uc81c\uc785\ub2c8\ub2e4.<br \/>\n\uc774 \uacbd\uc6b0\ub294 A \uc11c\ubc84\ub9cc \ubc29\ud654\ubcbd \uc624\ud508\ud558\uace0 B \uc11c\ubc84\ub294 \uc5f4\uc9c0 \uc54a\uc558\ub294\ub370 Pod \uac00 B \uc11c\ubc84\uc5d0 \uc788\uc5b4\uc11c \ub9c9\ud788\ub294 \ucf00\uc774\uc2a4\uc785\ub2c8\ub2e4.<\/p>\n<h2>ingress-nginx \uc0b4\ud3b4\ubcf4\uae30<\/h2>\n<p><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=6780\">\uc5ec\uae30<\/a> \ub97c \ucc38\uc870\ud558\uc5ec ingress-nginx \uac00 \uad6c\uc131\ub41c \uc0c1\ud0dc\uc785\ub2c8\ub2e4.<\/p>\n<p><code>argocd-server:80 (192.168.140.8:8080)<\/code> \uc640 \uac19\uc774 \uc815\ud655\ud788 \uc11c\ube44\uc2a4 \ud3ec\ud2b8\uc640 Pod \ud3ec\ud2b8\ub97c \ud45c\uc2dc\ud558\uace0 \uc788\uc73c\uba74 \uc815\uc0c1\uc774\ub77c\uace0 \ubcf4\uba74 \ub429\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">kubectl describe ing ingress-argocd -n argocd\nName:             ingress-argocd\nLabels:           &lt;none&gt;\nNamespace:        argocd\nAddress:          172.16.0.101,172.16.0.102,172.16.0.103,172.16.0.104,172.16.0.105\nIngress Class:    &lt;none&gt;\nDefault backend:  &lt;default&gt;\nTLS:\n  argocd-argocd-svc-cluster-local terminates argocd.argocd.svc.cluster.local\nRules:\n  Host                             Path  Backends\n  ----                             ----  --------\n  argocd.argocd.svc.cluster.local\n                                   \/   argocd-server:80 (192.168.140.8:8080)\nAnnotations:                       kubernetes.io\/ingress.class: nginx\nEvents:\n  Type    Reason  Age                From                      Message\n  ----    ------  ----               ----                      -------\n  Normal  Sync    33m (x2 over 33m)  nginx-ingress-controller  Scheduled for sync<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Kubernetes &#8211; ingress-nginx \ub514\ubc84\uae45\ud558\uae30 argocd \ub97c \uc608\uc81c\ub85c ingress-nginx \ub514\ubc84\uae45\ud558\ub294 \ubc29\ubc95\uc744 \uc815\ub9ac\ud574 \ubd05\ub2c8\ub2e4. \uc815\ub9d0 ingress-nginx \ubb38\uc81c\uc77c\uae4c? ingress-nginx \ub97c \uc758\uc2ec\ud558\uae30 \uc804\uc5d0 \uba3c\uc800 \uc11c\ube44\uc2a4\ub294 \uc815\uc0c1\uc801\uc73c\ub85c \uc791\ub3d9\uc911\uc778\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4. CNI \uc791\ub3d9 \ud14c\uc2a4\ud2b8 Ready \uc0c1\ud0dc\uc778\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4. kubectl get nodes NAME STATUS ROLES AGE VERSION es-search01 Ready control-plane 12d v1.26.0 es-search02 Ready control-plane 12d v1.26.0 es-search03 Ready control-plane 12d v1.26.0 es-search04 Ready\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7349\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[],"class_list":["post-7349","post","type-post","status-publish","format-standard","hentry","category-kubernetes"],"_links":{"self":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7349","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7349"}],"version-history":[{"count":16,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7349\/revisions"}],"predecessor-version":[{"id":7431,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7349\/revisions\/7431"}],"wp:attachment":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7349"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=7349"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=7349"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}