我正在使用 minikube(docker 驱动程序)和 kubectl 来测试 agones 队列部署。运行 kubectl apply -f lobby-fleet.yml
(以及当我尝试应用任何其他 agones yaml 文件时)我收到以下错误:
error: resource mapping not found for name: "lobby" namespace: "" from "lobby-fleet.yml": no matches for kind "Fleet" in version "agones.dev/v1"
ensure CRDs are installed first
大厅-fleet.yml:
apiVersion: "agones.dev/v1"
kind: Fleet
metadata:
name: lobby
spec:
replicas: 2
scheduling: Packed
template:
metadata:
labels:
mode: lobby
spec:
ports:
- name: default
portPolicy: Dynamic
containerPort: 7600
container: lobby
template:
spec:
containers:
- name: lobby
image: gcr.io/agones-images/simple-game-server:0.12 # Modify to correct image
我在 WSL2 上运行它,但是在使用 kubectl 的 Windows 安装(通过 choco)时收到相同的错误。我使用 docker 在 WSL2 中为 ubuntu 安装并运行了 minikube。
我对使用 k8s 还是很陌生,所以如果这个问题的答案很清楚,我很抱歉,我只是在别处找不到它。
提前致谢!
回答1
为了创建类型 Fleet
的资源,您必须首先应用定义什么是 Fleet
的自定义资源定义 (CRD)。
我查看了 agones 的 YAML 安装说明,https://raw.githubusercontent.com/googleforgames/agones/release-1.23.0/install/yaml/install.yaml 包含 CRD。您可以通过搜索 kind: CustomResourceDefinition
找到它。
我建议您首先尝试根据https://agones.dev/site/docs/installation/install-agones/yaml/#installing-agones进行安装。