ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

​LAB-06:创建SVC

2022-06-14 11:34:15  阅读:162  来源: 互联网

标签:kubectl end SVC LAB nginx front 06 80 k8s


LAB-06:创建SVC

LAB 需求

重新配置一个已经存在的 deployment front-end,在名字为 nginx 的容器里面添加一个端口配置,名字为 http,暴露端口号为 80。
然后创建一个 service,名字为 front-end-svc,暴露该 deployment 的 http 端口,并且 service 的类型为 NodePort。

LAB 预配

# 预配置创建一个 deployment 名称为 front-end
user1@k8s-master:~/cka/6$ cat front-end.yaml 
apiVersion: apps/v1
kind: Deployment 
metadata:
  name: front-end 
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx-front-end 
  template:
    metadata:
      labels:
        app: nginx-front-end 
    spec:
      containers:
      - name: nginx 
        image: nginx:1.18.0
        imagePullPolicy: IfNotPresent

# 部署 front-end
user1@k8s-master:~/cka/6$ kubectl apply -f front-end.yaml 
deployment.apps/front-end created

LAB 答案

# 切换 content
$ kubectl config use-context k8s

# edit front-end ,在 containers 中添加如下内容 
$ kubectl edit deployment front-end
......
ports:
- name: http
  protocol: TCP
  containerPort: 80

# 创建 svc,暴露 80 端口
$ kubectl expose deployment front-end --port=80 --target-port=80 --protocol=TCP --type=NodePort --name=front-end-svc 

LAB 验证

# 修改后的 yaml 文件如下
user1@k8s-master:~$ kubectl get deployments.apps front-end -o yaml
apiVersion: apps/v1
kind: Deployment
......
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: nginx-front-end
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: nginx-front-end
    spec:
      containers:
      - image: nginx:1.18.0
        imagePullPolicy: IfNotPresent
        name: nginx
        ports:
        - containerPort: 80
          name: http
          protocol: TCP

# 查看 svc
user1@k8s-master:~$ kubectl get svc front-end-svc 
NAME            TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
front-end-svc   NodePort   10.99.251.169   <none>        80:32417/TCP   3h55m

# 测试访问,使用 CLUSTER-IP
user1@k8s-master:~$ curl 10.99.251.169
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>

# 测试访问,使用 node 的地址
user1@k8s-master:~$ curl 192.168.1.210:32417
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>

参考资料

  • https://kubernetes.io/docs/concepts/services-networking/service/

  • https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#expose

标签:kubectl,end,SVC,LAB,nginx,front,06,80,k8s
来源: https://www.cnblogs.com/quqibinggan/p/16373967.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有