您的位置:首页 > 其它

Kubernetes kubectl

2017-12-13 22:00 363 查看

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[/code]要下载特定版本,请使用特定版本替换$(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 就可以实现远程控制集群。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  kubectl