码迷,mamicode.com
首页 > Web开发 > 详细

Kubernetes kubectl

时间:2017-12-13 23:24:29      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:kubectl

Kubernetes 命令行工具

通过 Kubernetes 部署和管理应用,你需要使用 Kubernetes命令行工具, kubectl. 它可以让您检查集群资源,创建、删除和更新组件以及更多功能。您会用它来查看新集群并生成示例应用程序。

安装kubectl

通过curl安装kubectl二进制文件

下载最新版本的命令:

curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl

要下载特定版本,请使用特定版本替换$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)命令的一部分。

例如,要在Linux上下载v1.7.0版本,请键入:

 curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.7.0/bin/linux/amd64/kubectl

使kubectl二进制可执行。

 chmod +x ./kubectl

将二进制文件移动到PATH中。

 sudo mv ./kubectl /usr/local/bin/kubectl

配置kubectl

为了使kubectl找到并访问Kubernetes集群,需要一个kubeconfig文件,当你使用kube-up.sh创建集群或成功部署Minikube集群时,该文件将自动创建。默认情况下,kubectl配置位于~/.kube/config。

配置kubeconfig文件

创建用户证书

  • 创建一个私钥

    openssl genrsa -out employee.key 2048
  • 创建一个证书签名请求

    openssl req -new -key employee.key -out employee.csr -subj "/CN=test/O=gtest"
  • 使用现有集群CA来签署证书

    openssl x509 -req -in employee.csr -CA /etc/kubernetes/ssl/ca.pem -CAkey /etc/kubernetes/ssl/ca-key.pem -CAcreateserial -out employee.crt -days 500

设置kubeconfig文件

  • 设置集群参数

    kubectl config set-cluster cluster.local \
    --certificate-authority=/etc/kubernetes/ssl/ca.pem \
    --embed-certs=true \
    --server=https://192.168.1.121:6443 \
    --kubeconfig=admin.kubeconfig
  • 设置客户端认证参数

    kubectl config set-credentials test \
    --client-certificate=./employee.crt \
    --client-key=./employee.key \
    --embed-certs=true \
    --kubeconfig=admin.kubeconfig
  • 设置上下文参数 #每个上下文是一个三元组   (集群,用户,命名空间)

    kubectl config set-context admin-cluster \
    --cluster=cluster.local \
    --user=test \
    --namespace=kube-system \
    --kubeconfig=admin.kubeconfig
  • 设置默认上下文

    kubectl config use-context admin-cluster --kubeconfig=admin.kubeconfig


绑定权限
创建合适的权限绑定。这里直接使用系统的超级角色cluster-admin
kubectl create rolebinding test-dashboard-manager --clusterrole=kubernetes-dashboard-minimal --user=test
admin.kubeconfig存放在客户机~/.kube/config  就可以实现远程控制集群。


Kubernetes kubectl

标签:kubectl

原文地址:http://blog.51cto.com/brave666/2050419

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!