Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 在k8s中,如何在复制控制器中部署pod?_Kubernetes - Fatal编程技术网

Kubernetes 在k8s中,如何在复制控制器中部署pod?

Kubernetes 在k8s中,如何在复制控制器中部署pod?,kubernetes,Kubernetes,我是库伯内特斯的新手 我试着按照2-3年前写的《Kubernetes in Action》一书中的例子来做,所以我知道书中的信息现在已经过时了 当我运行这个命令时,我得到以下输出 $ minikube version minikube version: v1.16.0 commit: 9f1e482427589ff8451c4723b6ba53bb9742fbb1 $ kubectl version Client Version: version.Info{Major:"1"

我是库伯内特斯的新手

我试着按照2-3年前写的《Kubernetes in Action》一书中的例子来做,所以我知道书中的信息现在已经过时了

当我运行这个命令时,我得到以下输出

$ minikube version
minikube version: v1.16.0
commit: 9f1e482427589ff8451c4723b6ba53bb9742fbb1

$ kubectl version
Client Version: version.Info{Major:"1", Minor:"18+", GitVersion:"v1.18.9-eks-d1db3c", GitCommit:"d1db3c46e55f95d6a7d3e5578689371318f95ff9", GitTreeState:"clean", BuildDate:"2020-10-20T22:21:03Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.0", GitCommit:"af46c47ce925f4c4ad5cc8d1fca46c7b77d13b38", GitTreeState:"clean", BuildDate:"2020-12-08T17:51:19Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"linux/amd64"}
pod运行,但是应该创建一个复制控制器,但是没有

$ kubectl run kubia --image=myrepo/kubia --port=8080 --generator=run/v1
Flag --generator has been deprecated, has no effect and will be removed in the future.
pod/kubia created
所有后续命令都取决于正在创建的复制控制器,如下所示

$ kubectl get pods
NAME    READY   STATUS    RESTARTS   AGE
kubia   1/1     Running   0          3m27s
$ kubectl get rc
No resources found in default namespace.
那么,我如何创建一个复制控制器并让它控制pod呢?或者,除了创建复制控制器以便扩展pod之外,还有什么替代方案


我知道我可以编写配置文件而不是使用CLI,但我现在正在遵循这本书。

根据Turing85的评论,以下是我必须做的事情。我把kubectl化名为k

$ kubectl scale rc kubia --replicas=3

创建一个。如上所述,您需要为复制创建一个部署
kubectl run
只会创建一个pod
kubectl run-h
返回
在pod中创建并运行特定图像。
多亏了你们两位,请给出答案。
$ k create deploy kubia-deploy --image=myrepo/kubia
deployment.apps/kubia-deploy created

$ k get deploy
NAME           READY   UP-TO-DATE   AVAILABLE   AGE
kubia-deploy   1/1     1            1           8s

$ k scale deploy kubia-deploy --replicas=3
deployment.apps/kubia-deploy scaled

$ k get po
NAME                            READY   STATUS    RESTARTS   AGE
kubia-deploy-68675b44f6-52rbb   1/1     Running   0          3m45s
kubia-deploy-68675b44f6-ddt8g   1/1     Running   0          3m45s
kubia-deploy-68675b44f6-np624   1/1     Running   0          4m42s

$ k expose deploy kubia-deploy --type=LoadBalancer --name kubia-http --port=8080
service/kubia-http exposed