Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

ClusterIP (default)

  • 외부에서접속이 불가하며 Cluster내부에서만 접근 가능한 서비스타입

NodePort

  • NodePort를 통해 외부네트워크에서 접속가능한 서비스타입
  • 운영환경에서는 사용하기에 적절하지 않음

LoadBalancer

  • 3Party LoadBalancer의 도움을 받아 외부에서 접속 가능한 서비스타입

Service Manifest

Info
iconfalse

https://dev-k8sref-io.web.app/docs/services/service-v1/

Info
iconfalse



ClusterIP (default)

Info
iconfalse


Info


Code Block
titlenginx-deploy.yaml
linenumberstrue
collapsetrue
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deploy
  labels:
    app: myapp-deploy
    type: front-end
spec:
  template:
    metadata:
      name: nginx
      labels:
        app: myapp
        type: front-end
    spec:
      containers:
        - name: nginx
          image: nginx:1.14.2
          ports:
            - containerPort: 80
  selector:
    matchLabels:
      type: front-end
  replicas: 3
Code Block
titlenginx-svc.yaml
linenumberstrue
apiVersion: v1
kind: Service
metadata:
  labels:
	app: myapp-svc
    type: front-end
  name: nginx-svc
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 80
  selector:
    type: front-end
Code Block
linenumberstrue
sansae@sansaeAir15m2 k8s-lab-workspace % k apply -f nginx-svc.yaml 
service/nginx-svc created
sansae@sansaeAir15m2 k8s-lab-workspace % k get svc
NAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.0.0.1       <none>        443/TCP   23h
nginx-svc    ClusterIP   10.0.133.111   <none>        80/TCP    5s
sansae@sansaeAir15m2 k8s-lab-workspace % k describe svc nginx-svc 
Name:              nginx-svc
Namespace:         default
Labels:            app=myapp-svc
                   type=front-end
Annotations:       <none>
Selector:          type=front-end
Type:              ClusterIP
IP Family Policy:  SingleStack
IP Families:       IPv4
IP:                10.0.133.111
IPs:               10.0.133.111
Port:              <unset>  80/TCP
TargetPort:        80/TCP
Endpoints:         10.244.0.75:80,10.244.0.76:80,10.244.0.77:80
Session Affinity:  None
Events:            <none>


Code Block
titlesooabia/network-utils
linenumberstrue
sansae@sansaeAir15m2 k8s-lab-workspace % k get svc
NAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.0.0.1       <none>        443/TCP   24h
nginx-svc    ClusterIP   10.0.133.111   <none>        80/TCP    61m

sansae@sansaeAir15m2 k8s-lab-workspace % k run util --image=sooabia/network-utils
pod/util created

sansae@sansaeAir15m2 k8s-lab-workspace % k exec -it util -- bash
root@util:/# curl 10.0.133.111
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>



...