标签:kubectl name -- secrets api io curl k8s
https://www.cnblogs.com/tylerzhou/p/11094872.html
下载jq
chmod +x jq mv jq /usr/bin/
启用非安全端口
kubectl proxy --port=8080
查看默认namespace pod列表
curl localhost:8080/api/v1/namespaces/default/pods/ | jq -r '.items[].metadata.name'
HTTPS访问
创建一个namespace
kubectl create ns test
创建role
kubectl create role pods-reader --verb=get,list,watch --resource=pods --namespace=test
创建rolebinding
kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1beta1 metadata: name: default-role-binding namespace: test subjects: - kind: ServiceAccount name: default roleRef: kind: Role name: pod-reader apiGroup: rbac.authorization.k8s.io
创建一个带有curl的测试pod
apiVersion: apps/v1 kind: Deployment metadata: name: centos namespace: test spec: replicas: 1 selector: matchLabels: name: centos template: metadata: labels: name: centos spec: nodeName: master containers: - image: centos:7 imagePullPolicy: Never name: centos command: - /bin/sh - -c - tail -f /dev/null
结果测试:
curl --cacert /var/run/secrets/kubernetes.io/serviceaccount/ca.crt --header "Authorization: Bearer $(cat /var/run/secrets/kubernetes.io/serviceaccount/token)" https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_SERVICE_PORT/api/v1/namespaces/$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)/pods
或者
TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token) curl --cacert /var/run/secrets/kubernetes.io/serviceaccount/ca.crt -H "Authorization: Bearer $TOKEN" -s https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_SERVICE_PORT/api/v1/namespaces/default/pods/
使用已有的token访问
TOKEN=$(kubectl describe secrets $(kubectl get secrets -n kube-system |grep admin |cut -f1 -d ' ') -n kube-system |grep -E '^token' |cut -f2 -d':'|tr -d '\t'|tr -d ' ') APISERVER=$(kubectl config view |grep server|cut -f 2- -d ":" | tr -d " ")
访问kube-system下pod
curl -H "Authorization: Bearer $TOKEN" $APISERVER/api/v1/namespaces/default/pods/ --insecure | jq -r '.items[].metadata.name'
标签:kubectl,name,--,secrets,api,io,curl,k8s 来源: https://www.cnblogs.com/zphqq/p/12968646.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。