• tony徐老师的防脱固发秘籍都被你找到了,快来这里关注我吧。 QQ群
  • tony徐老师的github宝典演示地址
  • github求starhttps://github.com/xuzhijvn
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏tony徐老师吧

Kubernetes: 部署应用(前端静态)

云原生 admin 4个月前 (07-01) 78次浏览 已收录 0个评论 扫描二维码
文章目录[隐藏]

0. 准备条件

1. 部署好了k8s集群,部署可以参考Kubernetes: 从零搭建K8S

名称 数量 IP 备注
master 1 172.17.0.14 操作系统: Linux(centos7, 其它操作系统也可, 安装过程类似, 可参考官方文档)
机器配置: 4C8G
node1 1 172.18.0.7 同上
node2 1 172.19.0.5 同上

2. 应用已经容器化,并上传到了远程仓库,笔者是腾讯云容器仓库:
Kubernetes: 部署应用(前端静态)

3. 理解k8s基础概念,可以参考Kubernetes: 基础概念介绍

1. 控制器管理Pod

1.1 生成deployment配置文件

kubectl create deployment yshop-h5 --image=ccr.ccs.tencentyun.com/yshop/h5 --dry-run -o yaml > yshop-h5.yaml

这个时候k8s还不能拉取镜像,需要生成拉取镜像的密钥。

1.2 生成拉取镜像的密钥

kubectl create secret docker-registry registry-secret-tencent --docker-server=ccr.ccs.tencentyun.com --docker-username=腾讯云账户ID --docker-password=腾讯云容器仓库密码

–docker-server: 仓库地址
–docker-username: 仓库登陆账号
–docker-password: 仓库登陆密码
–docker-email: 邮件地址(选填)
-n 命名空间(选填)

可以运行:kubectl get secret registry-secret-tencent –output=yaml 查看生成的密钥

1.3 配置密钥

vi yshop-h5.yaml

Kubernetes: 部署应用(前端静态)

1.4 运行deployment

kubectl apply -f yshop-h5.yaml

查看启动的pods:kubectl get pods

Kubernetes: 部署应用(前端静态)

查看启动日志:kubectl logs yshop-h5-cd4dc8c5b-562g5

 

2. 暴露应用

2.1 生成service配置文件

kubectl expose deployment yshop-h5 --port=80 --target-port=80 --type=NodePort -o yaml --dry-run > yshop-h5-svc.yaml

yshop-h5 指定名称

–port 指定集群内部访问的端口

–target-port 指定容器内跑服务的端口

–type=NodePort 指定类型 集群外部访问

2.2 运行service

kubectl apply -f yshop-h5-svc.yaml

查看pods和svc:kubectl get pods,svc

Kubernetes: 部署应用(前端静态)

查看pods分布的节点: kubectl get pods -o wide

Kubernetes: 部署应用(前端静态)

3. 访问应用

3.1 外部访问

http://{master的公网ip/node1的公网ip/node2的公网ip}:32585

3.2 内部访问

通过service ip:

curl http://10.108.253.217

Kubernetes: 部署应用(前端静态)

通过节点ip:

 curl http://{master的内网ip/node1的内网ip/node2的内网ip}:32585

Kubernetes: 部署应用(前端静态)

 


万水千山总是情,请小编喝杯咖啡行不行?

写作不易,望支持!!!

XZJ(须知君) , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Kubernetes: 部署应用(前端静态)
喜欢 (1)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址