zoukankan      html  css  js  c++  java
  • 通过curl调用 k8s service api 无法修改 spec.port

    由于使用模板替换生成的 yaml 文件,端口号deployment service 是一致的,但是在发布时不能确定jar应用的端口号(真不配合,没办法)

    造成要修改端口号,deployment 替换模板后直接调用 curl PUT 可以更新,但是service 出现问题,

    前期是删除sevice,造成 nignx 或 其他服务调用,出现服务无法识别, 解决办法:

    1. 强制规范 service port全部为80端口, targetport 是服务端口,targetport 可以通过curl 修改。

    2. curl 调用 service api  patch方法,修改ports.name 名字,在修改端口号

     

    使用更新的yaml文件
    [root@harbor ~]# cat nginx-service.yaml 
    spec:
      ports:
      - port: 81
        protocol: TCP
        targetPort: 80
      selector:
        app: nginx
      type: NodePort
    

     

    
    
    curl --cacert /data/deployment_git/ca.pem --cert /data/deployment_git/admin.pem --key /data/deployment_git/admin-key.pem --insecure -H 'Content-Type: application/strategic-merge-patch+json'  -X PATCH --data ' {"spec":{"ports":[{"name":"nginx","port":80,"protocol":"UDP","targetPort":8080}]}}' 'https://172.16.230.51:6443/api/v1/namespaces/default/services/nginx'
    
    注意 name: ”nginx1” 不能相同,否则包冲突错误
    
    curl --cacert /data/deployment_git/ca.pem --cert /data/deployment_git/admin.pem --key /data/deployment_git/admin-key.pem --insecure -H 'Content-Type: application/stategic-merge-patch+json'  -X PATCH --data ' {"spec":{"ports":[{"name":"nginx1","port":81,"protocol":"UDP","targetPort":80}]}}' 'https://172.16.230.51:6443/api/v1/namespaces/default/services/nginx'


    未进行测试。。。。。。 

  • 相关阅读:
    02-05 flutter provider的使用
    02-04 flutter 构造函数总结
    02-03 flutter异步
    02-02dart语法
    02-01dart语法
    01-01 iOS内存对齐、内存对齐算法
    01-02 iOS kvo、kvc
    01-03 category 原理概述
    多线程编程 (2) -NSOperation
    IOS基本控件属性
  • 原文地址:https://www.cnblogs.com/fengjian2016/p/13190994.html
Copyright © 2011-2022 走看看