zoukankan      html  css  js  c++  java
  • k8s 部署项目

    部署项目流程

    • 容器交互流程
    • k8s部署java项目流程

    容器交付流程

    • 开发到码阶段 容器化测试 编写Dockerfile文件
    • 持续集成 代码编译、打包 制作镜像 上传镜像仓库
    • 应用部署 创建pod、service、ingress
    • 运维     监控、故障排查、升级优化

    k8s 部署项目流程 细节过程

    • 制作镜像
    • Dockerfile
    • 推送到镜像仓库 阿里云、网易云
    • 控制器部署镜像  deployment
    • 对外暴露端口 service、ingress
    • 运维 监控、升级

    k8s集群部署项目

    • 准备java项目、 打包
    • 制作镜像
    • 查看镜像 docker images
    • 本地启动制作好的镜像 测试
    • 镜像上传到镜像服务器 (阿里云)
    • 阿里云镜像服务创建命名空间
    • 登录镜像仓库
    • 为镜像添加版本号
    • 实现推送
    • 拉取镜像
    • 控制器部署镜像 导出yml文件 执行yml文件 见注解一
    • 对外暴露端口

    Dockerfile

    FROM 
    
    VOLUME /tmp
    ADD 源文件路径  demo.jar(jar包自定义名称)
    
    ENTRYPOINT ["java", "jar", "/demo.jar", "&"]
    
    

    阿里云镜像

    $ docker login --username=阿里云账户名 registry.cn-hangzhou.aliyuncs.com
    $ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/java-demo1/k8s-demo:[镜像版本号]
    $ docker push registry.cn-hangzhou.aliyuncs.com/java-demo1/k8s-demo:[镜像版本号]
    

    注解一

    kubectl创建pod 导出yml
    
    kubectl create deployment javademo1 --image=阿里云镜像地址   --dry-run -o yaml > javademo1.yaml
    执行yml文件
    kubectl apply -f javademo1.yaml
    
    查看运行结果
    
    kubectl get pod
    

    对外暴露端口

    
    kubectl expose deployment javademo1 --port=3000 --target-port=3000 --type=NodePort
    
    查看暴露端口
    
    kubectl get pod,svc 
    或者
    keubectl get svc
    
    例:
    NAME                 TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
    service/javademo1    NodePort    10.106.60.209   <none>        3000:32248/TCP   11s
    service/kubernetes   ClusterIP   10.96.0.1       <none>        443/TCP          7d13h
    service/nginx        NodePort    10.109.233.39   <none>        80:30809/TCP     2d14h
    
    

    成功后使用 节点ip:暴露端口对应的端口号/请求路径 访问

    其他命令操作

    pod操作

    查询pod
    kubectl get pod
    
    删除pod
    kubectl delete pod javademo1-7854d5cbc5-8bb55(pod名称)
    
    

    deployment操作

    查询
    kubectl get deployment
    
    
     kubectl delete deployment  javademo1(deploymenty名称)
    
    

    扩容

    kubectl scale deployment javademo1 --replicas=3
    
  • 相关阅读:
    npm install node-echarts npm ERR! code ELIFECYCLE
    MySql-Proxy之多路结果集归并
    Error: Cannot find module 'is-accessor-descriptor'
    如何在Node.js实现兼容ES6
    perl 自动识别编码,转换编码
    Mixin result declared without body
    Python爬虫入门教程 48-100 使用mitmdump抓取手机惠农APP-手机APP爬虫部分
    unexpected token "indent"
    Radware:上周五美国大规模DDoS攻击是如何发生的
    Radware:上周五美国大规模DDoS攻击是如何发生的
  • 原文地址:https://www.cnblogs.com/ccubee/p/15550187.html
Copyright © 2011-2022 走看看