云容器实例提供了定制的kubectl工具,支持使用Kubectl命令行创建负载等资源。
请使用kubectl(推荐)中提供的原生kubectl,定制版kubectl近期将下线。
使用kubectl工具时,必须确保当前用户具有cci_admin角色权限,否则执行kubectl get ns命令时,会提示error: the server doesn't have a resource type "ns"(出现上述提示可通过kubectl get ns -v=8查看详情日志)。
相比Kubernetes社区的kubectl,云容器实例提供的kubectl进行了适配,您可以在云容器实例 kubectl 命令参考查看云容器实例支持的 kubectl 命令。kubectl的命令是通过调用API操作云容器实例资源(Pod、Deployment、Job等等),其能操作的资源和能力与云容器实例API一致。
云容器实例提供定制化kubectl,最新版本为v2.10.11。
Linux版本下载地址:https://cci-kubectl.obs.cn-north-1.myhuaweicloud.com/kubectl-linux.zip。
Mac版本下载地址:https://cci-kubectl-for-mac.obs.cn-north-1.myhuaweicloud.com/kubectl-darwin.zip。
仅提供最新版本下载地址。
版本 |
修订记录 |
---|---|
2.10.11(最新) |
第五次发布。
|
2.4.20 |
第四次发布。 修复非root用户使用kubectl概率性失败的问题。 |
v2.4.2 |
第三次发布。 禁用kubectl cp命令,规避kubernetes安全漏洞。 |
v2.2.23 |
第二次发布。 修改问题:
|
v1.1.13 |
第一次发布。 |
下载后解压到任意目录,无需安装,解压后目录结构如下:
kubectl README.md
执行如下命令将kubectl所在目录添加到环境变量,并赋予kubectl可执行权限。其中/DIR/TO/KUBECTL为kubectl所在目录,请替换为实际的路径。
export PATH=/DIR/TO/KUBECTL:$PATH
chmod +x /DIR/TO/KUBECTL/kubectl
执行kubectl --help,查看支持命令与资源的范围,如果回显如下,则说明kubectl可以正常使用。
# kubectl --help kubectl controls the Kubernetes cluster manager. Find more information at: https://kubernetes.io/docs/reference/kubectl/overview/ Basic Commands (Beginner): create Create a resource from a file or from stdin. expose Take a replication controller, service, deployment or pod and expose it as a new Kubernetes Service run Run a particular image on the cluster set Set specific features on objects ......
您还可以通过kubectl version命令查看kubectl的版本,如下所示。
# kubectl version Client Version: v2.2.23, Build Date: 2019-02-23T10:28:53Z
kubeconfig文件默认为“${HOME}/.kube”目录下的config文件,用于保存集群访问信息,包含Endpoint地址、身份认证信息等。
使用 kubectl 每次执行时需要带上认证信息,当前支持 Token 和 AK/SK 两种认证方式,您可以选择其中一种进行认证鉴权。
kubectl config init --server=https://CCI_ENDPOINT --token=$token
其中,CCI_ENDPOINT 为云容器实例的Endpoint;$token 为Token。
IAM的Endpoint请参见地区和终端节点,请注意需要使用与云容器实例地区相同的Endpoint。
例如,Endpoint为https://cci.cn-north-1.myhuaweicloud.com,token值为MIIEYwYJKoZIhvcNAQc...,则命令如下所示:
kubectl config init --server=https://cci.cn-north-1.myhuaweicloud.com --token=MIIEYwYJKoZIhvcNAQc...
kubectl config init --server=https://CCI_ENDPOINT --auth-provider=hws --auth-provider-arg=ak=$ak --auth-provider-arg=sk=$sk
其中,CCI_ENDPOINT 为云容器实例的Endpoint;$ak为文件中 Access Key 部分, $sk 为文件中 Secret Key 部分。
例如,Endpoint为https://cci.cn-north-1.myhuaweicloud.com,ak 的值为 ABCDEFAK.. ,sk的值为 ABCDEFSK.. ,则命令如下所示:
kubectl config init --server=https://cci.cn-north-1.myhuaweicloud.com --auth-provider=hws --auth-provider-arg=ak=ABCDEFAK.. --auth-provider-arg=sk=ABCDEFAK..
kubectl config init --server=https://CCI_ENDPOINT --auth-provider=hws --auth-provider-arg=akskDir=$akskDir
其中,CCI_ENDPOINT 为云容器实例的Endpoint;指定目录的方式需要提前将Access Key 和 Secret Key 分别保存到文件(Access Key 对应的文件名为 ak,Secret Key 对应的文件名为sk),保存后存放在 $akskDir对应的目录下。
例如,在 “/home/aksk”文件夹下存放了名为 ak 和 sk 的文件,则命令如下所示:
kubectl config init --server=https://cci.cn-north-1.myhuaweicloud.com --auth-provider=hws --auth-provider-arg=akskDir=/home/aksk
使用kubectl config init命令实际上是一步完成了kubectl config set-cluster、kubectl config set-credentials、kubectl config set-context、kubectl config set current-context四条命令的工作,如需自定义配置可参考云容器实例 kubectl config命令参考。
例如,执行kubectl get namespace,查看资源。
# kubectl get namespace No resources found.
您可以从回显中看到这里没有任何命名空间,在云容器实例中创建资源首先需要创建一个命名空间,具体方法请参见Namespace和Network。
执行kubectl命令时,若提示证书认证失败,请在使用kubectl命令时,添加--insecure-skip-tls-verify=true字段,即可正常使用kubectl命令。但这将不会检查服务器证书的有效性,会使您的HTTPS连接不安全。
发送“POST https://IAM的Endpoint/v3/auth/tokens”,详情请参考《统一身份认证服务API参考》。
IAM的Endpoint请参见地区和终端节点,请注意需要使用与云容器实例地区相同的Endpoint。
{ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "******", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "cn-north-1" } } } }
请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。
直觉上,两个相同的日期之间比较应该是相等的,然而结果并不是这样: constd1=ne...
本文介绍ECS快照的计费方式和计费规则,以及欠费后如何处理快照,并给出了费用计...
不一样的实惠,用最少的钱,得到最好的服务稳定,站长生存之本,TOP云(zuntop.com...
腾讯云 FPGA 云服务器处于内测中。 若还未取得购买权限,请单击 立即申请 申请内...
如何在裸金属服务器操作系统内部修改登录密码?...
来源:阿里云基础设施 阿里云基础设施公众号 阿里云基础设施快讯 4月15日,ODCC...
【51CTO.com快译】早在Kubernetes集群及其他云原生解决方案流行起来之前,我们Ku...
不懂计算机的她,为何成为了计算机科研界顶流? 大家好,我是鱼皮,今天带大家认...
RRT 效果图 承接上一节,在接下来的几篇文章中,作者将详细解剖机器人的避障路径...
【51CTO.com快译】随着新技术的出现、经济不确定性以及不断增加的法规对消费电子...