“Serive暴露”的版本间的差异

来自linux中国网wiki
跳转至: 导航搜索
(创建页面,内容为“==负载均衡(Server Load Balancer)== =see also= [https://help.aliyun.com/document_detail/86531.html?spm=5176.2020520165.120.d86531.2d357029XalTRt aliyun 通…”)
 
 
(未显示同一用户的1个中间版本)
第1行: 第1行:
 +
 +
暴露服务的方式有3种,使用slb、ingress和使用nodeport
 +
 +
frontend(前端)和 backend(后端)
 +
 
==负载均衡(Server Load Balancer)==
 
==负载均衡(Server Load Balancer)==
 +
===方法一===
 +
<pre>通过命令行工具创建一个 Nginx 应用。
 +
root@master # kubectl run nginx --image=registry.aliyuncs.com/acs/netdia:latest
 +
root@master # kubectl get po
 +
NAME                                  READY    STATUS    RESTARTS  AGE
 +
nginx-2721357637-dvwq3                1/1      Running  1          6s
 +
为 Nginx 应用创建阿里云负载均衡服务,指定 type=LoadBalancer 来向外网用户暴露 Nginx 服务。
 +
root@master # kubectl expose deployment nginx --port=80 --target-port=80 --type=LoadBalancer
 +
root@master # kubectl get svc
 +
NAME                  CLUSTER-IP      EXTERNAL-IP      PORT(S)                        AGE
 +
nginx                172.19.XX.XX  101.37.XX.XX    80:31891/TCP                  4s
 +
在浏览器中访问 http://101.37.XX.XX,来访问您的 Nginx 服务。</pre>
 +
===二===
 +
<pre>
 +
方法二
 +
 +
将下面的 yml code 保存到 nginx-svc.yml文件中。
 +
apiVersion: v1
 +
kind: Service
 +
metadata:
 +
  labels:
 +
    run: nignx
 +
  name: nginx-01
 +
  namespace: default
 +
spec:
 +
  ports:
 +
  - port: 80
 +
    protocol: TCP
 +
    targetPort: 80
 +
  selector:
 +
    run: nginx
 +
  type: LoadBalancer
 +
执行kubectl apply -f nginx-svc.yml命令。
 +
root@master # kubectl apply -f nginx-svc.yml
 +
root@master # kubectl get service
 +
NAME          TYPE          CLUSTER-IP      EXTERNAL-IP      PORT(S)        AGE9d
 +
ngi-01nx      LoadBalancer  172.19.XX.XX    101.37.XX.XX    80:32325/TCP  3h
 +
在浏览器中访问 http://101.37.XX.XX,来访问您的 Nginx 服务。
 +
</pre>
 +
 +
===通过 Kubernetes Dashboard 操作===
  
 
=see also=
 
=see also=
 
[https://help.aliyun.com/document_detail/86531.html?spm=5176.2020520165.120.d86531.2d357029XalTRt aliyun 通过负载均衡(Server Load Balancer)访问服务]
 
[https://help.aliyun.com/document_detail/86531.html?spm=5176.2020520165.120.d86531.2d357029XalTRt aliyun 通过负载均衡(Server Load Balancer)访问服务]
 +
 +
[https://help.aliyun.com/document_detail/86512.html 创建服务]

2019年7月12日 (五) 11:06的最新版本

暴露服务的方式有3种,使用slb、ingress和使用nodeport

frontend(前端)和 backend(后端)

负载均衡(Server Load Balancer)

方法一

通过命令行工具创建一个 Nginx 应用。
root@master # kubectl run nginx --image=registry.aliyuncs.com/acs/netdia:latest
root@master # kubectl get po 
NAME                                   READY     STATUS    RESTARTS   AGE
nginx-2721357637-dvwq3                 1/1       Running   1          6s
为 Nginx 应用创建阿里云负载均衡服务,指定 type=LoadBalancer 来向外网用户暴露 Nginx 服务。
root@master # kubectl expose deployment nginx --port=80 --target-port=80 --type=LoadBalancer
root@master # kubectl get svc
NAME                  CLUSTER-IP      EXTERNAL-IP      PORT(S)                        AGE
nginx                 172.19.XX.XX   101.37.XX.XX    80:31891/TCP                   4s
在浏览器中访问 http://101.37.XX.XX,来访问您的 Nginx 服务。

方法二

将下面的 yml code 保存到 nginx-svc.yml文件中。
apiVersion: v1
kind: Service
metadata:
  labels:
    run: nignx
  name: nginx-01
  namespace: default
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 80
  selector:
    run: nginx
  type: LoadBalancer
执行kubectl apply -f nginx-svc.yml命令。
root@master # kubectl apply -f nginx-svc.yml
root@master # kubectl get service
NAME           TYPE           CLUSTER-IP      EXTERNAL-IP      PORT(S)        AGE9d
ngi-01nx       LoadBalancer   172.19.XX.XX    101.37.XX.XX     80:32325/TCP   3h
在浏览器中访问 http://101.37.XX.XX,来访问您的 Nginx 服务。

通过 Kubernetes Dashboard 操作

see also

aliyun 通过负载均衡(Server Load Balancer)访问服务

创建服务