서비스 소개 및 프리젠 테이션의 K8S

우리가 창을 사용하는 경우, 포드는 기계 자체는 그것이 serivce 경우, 우리는 포트 번호를 통과, 다른 포드와 포드 기계를 ping 할 수, 전에 서로를 Ping 할 수 있습니다, 당신은 서비스에 액세스 할 수 있습니다. 출처 : https://github.com/limingios/docker/tree/master/No.10

, 왜 사용 및 관리 포드를 직접하지 않습니까?

  • 우리가 사용 ReplicaSet 또는 규모의 ReplicationController 수평 확장을 할 때, 포드는 종료 될 수 있습니다.
  • 우리가 도커 이미지 버전을 업데이트하는 우리의 배포를 사용하는 경우, 오래된 포드가 끝날 다음 새 포드를 만들 것이다, IP 주소가 변경되었습니다.

서비스

  • kubectl의 expoese 명령은 외부 액세스를 위해, 우리에게 서비스를 만들 수있는 창을 제공 할 것입니다.
  • 서비스 세 가지 주요 유형이 있습니다 :
  1. ClsterIP
  2. NodePort
  3. 로드 밸런서
  • 또는, DNS를 사용하지만 DNS에게 추가 기능을 필요로 할 수 있습니다

서비스 데모

  • 서비스를 만듭니다.

 

get pod
kubectl get pod -o wide
kubectl expose pods nginx
#查看到已经创建的service
kubectl get  svc

  • 액세스 서비스

 

ping 10.254.233.245

  • 작성 배포

 

 cd deployk8s-master/
 cd labs/
 cd deployment/
more deployment_nginx.yml

 

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.12.2
        ports:
        - containerPort: 80

 

kubectl create -f deployment_nginx.yml
kubectl get pods -o wide 

우리는이 배포에 액세스 할 노드 노드를 입력

  • 해당 서비스를 배포 만들기

 

kubectl get deployment
expose deployment nginx-deployment
kubectl get svc

내부 서비스의 배포를 수정

 

kubectl edit deployment nginx-deployment

추신 : 파일의 내용이 자동으로 업데이트됩니다,하지만 IP를 변경하지 않은 수정에 따르면,이 강력한의 서비스입니다. 그러나 현재의 형태로 직접 변경 deloyment 파일에, 그는 롤오버, 다음 시간이 아니기 때문에 권장 다음 롤오버가.하지

 

게시 된 382 개 원래 기사 · 원 찬양 (306) ·은 40000 +를 볼

추천

출처blog.csdn.net/lixinkuan328/article/details/103993651