Сначала создаем развертывание модуля
if pod, err = clientset.CoreV1().Pods(namespace).Create(&v1.Pod{
TypeMeta: metav1.TypeMeta{
Kind: "Deployment",
APIVersion: "apps/v1",
},
ObjectMeta: metav1.ObjectMeta{
Name: "mithu",
Namespace: namespace,
},
Spec: v1.PodSpec{
Containers: []v1.Container{
v1.Container{
Name: "mithu",
Image: "test-app",
ImagePullPolicy: "IfNotPresent",
Ports: []v1.ContainerPort{
v1.ContainerPort{
Name: "local",
HostPort: 8081,
ContainerPort: 8081,
Protocol: v1.ProtocolTCP,
},
},
Env: []v1.EnvVar{
v1.EnvVar{
Name: "ASD",
Value: "",
},
},
},
},
RestartPolicy: v1.RestartPolicyOnFailure,
},
}); err == nil {
fmt.Println("Pod created succesfuly with status", pod.Name)
} else {
fmt.Println("Error1: ", err)
}
time.Sleep(5000)
Теперь модуль развернут, сейчас я читаю журналы
req := clientset.RESTClient().Get().
Namespace(namespace).
Name(pod.Name).
Resource("pods").
SubResource("log").
Param("follow", "").
Param("container", "").
Param("previous", "").
Param("timestamps", "")
readCloser, err := req.Stream()
if err != nil {
fmt.Println("Error2: ", err)
} else {
buf := new(bytes.Buffer)
_, err = io.Copy(buf, readCloser)
fmt.Println("log : ", buf.String())
}
Далее следует чтение журналов с здесь Pod создается успешно, но клиент, похоже, не может найти ресурсы, получающие ошибку, как Error2: the server could not find the requested resource (get pods.meta.k8s.io mithu)
Если я пытаюсь получить журналы из командной строки, проблем нет.Я думаю, что основная проблема заключается в pods.meta.k8s.io и командной строке args pods