Kubernetes – 2. 创建服务

服务配置YAML

创建yaml文件,该文件将用于创建服务。

vim nginx_service.yaml

nginx_service.yaml

apiVersion: v1
kind: Service
metadata:
  name: nginx1
  labels:
    app: nginx1
spec:
  type: NodePort
  ports:
    - port: 81 # 集群内部通信的端口
      targetPort: 80 # 指向pods端口
      nodePort: 30081 # 对外暴露的工作节点端口
  selector:
    app: nginx1

注意:现在不理解文件内容没关系,后续将有详细介绍。

创建服务

使用kubectl创建服务:

kubectl create -f ./nginx_service.yaml

执行详情:

[root@qikegu-centos5 nginx_kube_example]# kubectl create -f ./nginx_service.yaml
service/nginx1 created

查看服务

使用kubectl查看服务


[root@qikegu-centos5 ~]# kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 7d1h nginx1 NodePort 10.109.158.32 <none> 81:30081/TCP 18m [root@qikegu-centos5 ~]# kubectl get endpoints NAME ENDPOINTS AGE kubernetes 192.168.31.174:6443 7d1h nginx1 10.33.0.0:80,10.33.0.1:80 19m

可以看到,服务nginx1已经创建成功。

访问服务

使用curl尝试访问nginx1

内部Pods IP访问:

[root@qikegu-centos5 ~]# curl 10.33.0.0:80
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>

可以看到,访问成功。

工作节点访问

使用nodePort映射端口,可以经过工作节点访问该端口。


[root@qikegu-centos5 ~]# curl qikegu-knode1:30081 <!DOCTYPE html> <html> <head> <title>Welcome to nginx!</title> <style> body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans-serif; } </style> </head> <body>

可以看到,访问成功。



浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载