我在windows 10中创建了两个在我的minikube环境中运行的POD。一个POD带有Spring boot应用程序容器,另一个POD带有mysql容器。对于Spring boot应用程序,服务类型为nodePort,对于MYSQL pod,服务类型为club sterIP。这意味着Mysql pod只需要在集群内部进行通信。但是对于Spring boot应用程序,需要从浏览器访问,所以我配置了NodePort。
我为节点端口配置了 30096。但我检查了我的浏览器(迷你库贝ip:节点端口)。它不起作用。所以我尝试执行命令“minikube服务服务名称”,输出显示一个不同的端口(59870)
MYSQL_DEPLOYMENT_YML:
apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
kind: Deployment
metadata:
name: bcp-mysql
labels:
app: bcp-mysql
spec:
selector:
matchLabels:
app: bcp-mysql
strategy:
type: Recreate
template:
metadata:
labels:
app: bcp-mysql
spec:
containers:
- image: <myrepo>/mysql:5.7
name: mysql
env:
- name: MYSQL_ROOT_PASSWORD
value: password
- name: MYSQL_DATABASE
value: database
- name: MYSQL_USER
value: root
- name: MYSQL_PASSWORD
value: password
ports:
- containerPort: 3306
name: mysql
imagePullPolicy: Always
volumeMounts:
- name: mysql-persistent-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: mysql-pv-claim
imagePullSecrets:
- name: regcred
---
apiVersion: v1
kind: Service
metadata:
name: bcp-mysql
spec:
selector:
app: bcp-mysql
ports:
- port: 3306
targetPort: 3306
type: ClusterIP
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mysql-pv-claim
labels:
app: bcp-mysql
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
Spring_boot_deployment.yml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: bcpdashboard
labels:
app: bcpdashboard
spec:
replicas: 1
selector:
matchLabels:
app: bcpdashboard
template:
metadata:
labels:
app: bcpdashboard
spec:
containers:
- name: app
image: <myrepo>/bcpdashboard:latest
ports:
- containerPort: 9097
imagePullPolicy: Always
env:
- name: SPRING_DATASOURCE_URL
value: jdbc:mysql://bcp-mysql:3306/bcp?autoReconnect=true&useSSL=false
imagePullSecrets:
- name: regcred
---
apiVersion: v1
kind: Service
metadata:
name: bcpdashboard
spec:
selector:
app: bcpdashboard
ports:
- port: 9097
targetPort: 9097
nodePort: 30096
type: NodePort
---
我的minikube ip仅为本地主机ip。所以我试着跑(http://127.0.0.1:30096). 它不起作用。所以我尝试执行“minikube服务bcpdashboard”
任何人都面临同样的问题
似乎该行为是特定于您的minikube设置的,在我的设置中使用您的部署yaml,所有功能都如其所述,即只有< code > curl http://127 . 0 . 0 . 1:30096/响应w/ 200。
我用helloworld-http作为镜像,k8s 16 w/ docker-desktop 2.3。部署yaml看起来是这样的:
apiVersion: apps/v1
kind: Deployment
metadata:
name: bcpdashboard
labels:
app: bcpdashboard
spec:
replicas: 1
selector:
matchLabels:
app: bcpdashboard
template:
metadata:
labels:
app: bcpdashboard
spec:
containers:
- name: app
image: strm/helloworld-http
ports:
- containerPort: 80
imagePullPolicy: Always
env:
- name: SPRING_DATASOURCE_URL
value: jdbc:mysql://bcp-mysql:3306/bcp?autoReconnect=true&useSSL=false
imagePullSecrets:
- name: regcred
---
apiVersion: v1
kind: Service
metadata:
name: bcpdashboard
spec:
selector:
app: bcpdashboard
ports:
- port: 80
targetPort: 80
nodePort: 30096
type: NodePort
---
您是否尝试过使用docker-windows-desket-kubernetes?您可以尝试一下,它至少会为您隔离问题。
我是Kubernetes平台的新手,尝试启用部署在Kubernetes平台上的tomcat web app的HTTPS安全连接。我对舱单感到困惑。与部署、服务和入口控制器相关的yml。 那么,我是否也必须在部署(在端口:-containerPort:8080)服务(如端口:-端口:80 targetPort:8080协议:TCP名称:http)和入口(在后端:serviceName:tomcat
我只是在本地mac上使用mini kube设置kubernetes。 创建了一个类型为NodePort的服务,并且能够使用url
据我所知,作业对象应该在一定时间后收获豆荚。但是在我的GKE集群(库伯内特斯1.1.8)上,“kubectl get pods-a”似乎可以列出几天前的豆荚。 所有这些都是使用乔布斯API创建的。 我确实注意到在使用 kubectl 删除作业后,pod 也被删除了。 我在这里主要担心的是,我将在批量作业中在集群上运行成千上万个pod,并且不想让内部待办系统过载。
我正在使用库伯内特斯HPA来扩展我的集群。我已经设置了目标CPU利用率为50%。它正在正确扩展。但是,当负载减少并且它扩展得如此之快时。我想设置一个冷却期。例如,即使CPU util低于50%,它也应该在终止节点之前等待60秒。 我查看了这篇文章,但它并不是说我可以更改HPA中的默认值,https://kubernetes.io/docs/concepts/workloads/pods/pod/i
我正在尝试在Kubernetes集群(Azure AKS)中部署Flink作业。作业群集在启动后立即中止,但任务管理器运行正常。 docker镜像创建成功,没有任何异常。我可以运行docker镜像,也可以SSHdocker镜像。 我已经按照以下链接中提到的步骤: https://github.com/apache/flink/tree/release-1.9/flink-container/kub
我在两个节点上运行 Kubernetes,并在两个节点上部署一个应用程序(两个 pod,每个节点一个)。 这是一个Spring Boot应用程序。它使用OpenFygnd来实现服务可发现性。在应用程序中,我定义了一个一来控制程序,它有几个API和一个从API内部调用的@Autow的@Service。 每当我对其中一个API进行请求时,Kubernetes都会使用某种负载平衡来将流量路由到其中一个p