$ 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"}
我是 kubernetes 的新手。
我正在尝试遵循 2-3 年前写的“Kubernetes in Action”一书中的例子,所以我知道其中的信息现在已经过时了。
当我运行这个命令时,我得到以下输出。
$ 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
Pod 运行,但应该创建了一个复制控制器,但没有。
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
kubia 1/1 Running 0 3m27s
$ kubectl get rc
No resources found in default namespace.
所有后续命令都取决于正在创建的复制控制器,如下所示
$ kubectl scale rc kubia --replicas=3
那么我如何创建一个复制控制器并让它控制 pod?或者,除了创建复制控制器以便扩展 pod 之外,还有什么替代方法?
我知道我可以编写配置文件而不是使用 CLI,但我现在正在关注这本书。
答案 0 :(得分:1)
根据 Turing85 的评论,这就是我必须做的。我将 kubectl 别名为 k。
$ 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