Ich habe Pods mit erstellt, type:deployment
aber ich sehe, dass einige Dokumentationen verwendet werden type:pod
, insbesondere die Dokumentation für Pods mit mehreren Containern :
apiVersion: v1
kind: Pod
metadata:
name: ""
labels:
name: ""
namespace: ""
annotations: []
generateName: ""
spec:
? "// See 'The spec schema' for details."
: ~
Zum Erstellen von Pods kann ich jedoch nur einen Bereitstellungstyp verwenden :
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: ""
spec:
replicas: 3
template:
metadata:
labels:
app: ""
spec:
containers:
etc
Mir ist aufgefallen, dass in der Pod-Dokumentation Folgendes steht:
Der Befehl create kann verwendet werden, um einen Pod direkt zu erstellen, oder er kann einen oder mehrere Pods über eine Bereitstellung erstellen. Es wird dringend empfohlen, dass Sie eine Bereitstellung verwenden, um Ihre Pods zu erstellen. Es sucht nach ausgefallenen Pods und startet nach Bedarf neue Pods, um die angegebene Anzahl beizubehalten. Wenn Sie nicht möchten, dass eine Bereitstellung Ihren Pod überwacht (z. B. schreibt Ihr Pod nicht persistente Daten, die einen Neustart nicht überleben, oder Ihr Pod soll nur von kurzer Dauer sein), können Sie einen Pod direkt mit erstellen den Befehl create.
Hinweis: Wir empfehlen die Verwendung einer Bereitstellung zum Erstellen von Pods. Sie sollten die folgenden Anweisungen nur verwenden, wenn Sie keine Bereitstellung erstellen möchten.
Dies wirft jedoch die Frage auf, wofür kind:pod
gut ist. Können Sie Pods in einer Bereitstellung irgendwie referenzieren? Ich habe keinen Weg gesehen. Es sieht so aus, als würden Sie mit Pods einige zusätzliche Metadaten erhalten, aber keine der Bereitstellungsoptionen wie replica
oder eine Neustartrichtlinie. Was nützt ein Pod, der keine Daten speichert und einen Neustart überlebt? Ich denke, ich könnte auch einen Multi-Container-Pod mit einer Bereitstellung erstellen.