サービスの紹介やプレゼンテーションのK8S

私たちはポッドを使用すると、マシン自体は別のポッドとポッドマシンにpingを実行する前に、ポッドは、相互にpingを実行することができ、それがserivceであれば、我々はポート番号を渡し、あなたがサービスにアクセスすることができます。出典:https://github.com/limingios/docker/tree/master/No.10

、なぜを使用して管理ポッドを向けないのですか?

  • 私たちは、スケールの使用さらにreplicaSetまたはReplicationController水平展開を行うと、ポッドを終了することができます。
  • 我々はドッカーイメージのバージョンを更新するために、私たちの展開を使用する場合は、古いポッドが終わって、その後、新しいポッドを作成し、IPアドレスが変更されました。

サービス

  • kubectl expoeseコマンドは、外部からのアクセスのために、私たちのサービスを作成するためのポッドを与えるだろう。
  • サービスの主に3つのタイプがあります。
  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

PS:あなたのファイルの内容を変更するためによると、それは自動的に更新されますが、IP変更しなかった、これは強力なのサービスです。しかし、現在の形の直接変更deloymentファイル、彼はロールオーバーではないのでお勧めしません、次回の次のロールオーバーという。

 

公開された382元の記事 ウォンの賞賛306 ・は 40000 +を見て

おすすめ

転載: blog.csdn.net/lixinkuan328/article/details/103993651