mirror of
https://git.oceanpay.cc/danial/kami_walmart_slide.git
synced 2025-12-18 22:51:40 +00:00
Walmart Card Service Kubernetes 部署指南
概述
本目录包含了将Walmart Card Service部署到Kubernetes集群所需的所有配置文件。
文件说明
deployment.yaml: 定义应用的部署配置,包括副本数、容器镜像、资源限制等service.yaml: 定义如何暴露应用服务configmap.yaml: 存储应用的环境变量配置ingress.yaml: 配置外部访问应用的路由规则secret.yaml: 存储Docker镜像仓库的凭证kustomization.yaml: 管理和组织所有Kubernetes资源
部署前准备
- 确保已安装并配置kubectl工具,并且可以连接到Kubernetes集群
- 修改配置文件中的占位符:
- 在
deployment.yaml中,将${DOCKER_REGISTRY}替换为实际的Docker镜像仓库地址 - 在
ingress.yaml中,将walmart-card.example.com替换为实际的域名 - 在
secret.yaml中,生成并替换Docker仓库凭证
- 在
生成Docker仓库凭证
使用以下命令生成Docker仓库凭证:
kubectl create secret docker-registry registry-credentials \
--docker-server=git.kkknametrans.buzz \
--docker-username=<username> \
--docker-password=<password> \
--dry-run=client -o yaml > secret.yaml
部署应用
使用kubectl直接部署
# 创建命名空间(如果需要)
kubectl create namespace walmart-card
# 应用所有配置文件
kubectl apply -f k8s/ -n walmart-card
使用kustomize部署
# 预览将要应用的配置
kubectl kustomize k8s/
# 应用配置
kubectl apply -k k8s/ -n walmart-card
验证部署
# 检查Pod状态
kubectl get pods -n walmart-card
# 检查Service状态
kubectl get svc -n walmart-card
# 检查Ingress状态
kubectl get ingress -n walmart-card
# 查看应用日志
kubectl logs -f deployment/walmart-card-service-prod -n walmart-card
环境变量配置
应用的环境变量配置存储在ConfigMap中,可以通过以下命令查看:
kubectl get configmap walmart-card-service-config-prod -n walmart-card -o yaml
要修改环境变量,可以编辑configmap.yaml文件,然后重新应用:
kubectl apply -f k8s/configmap.yaml -n walmart-card
或者直接使用kubectl编辑:
kubectl edit configmap walmart-card-service-config-prod -n walmart-card
修改环境变量后,需要重启Pod以使更改生效:
kubectl rollout restart deployment walmart-card-service-prod -n walmart-card
故障排除
如果应用无法正常启动或运行,可以尝试以下步骤:
- 检查Pod状态和日志
- 确认ConfigMap中的环境变量配置正确
- 验证Secret中的Docker仓库凭证是否有效
- 检查Ingress配置和DNS设置