Ahm*_*mFM 3 bash kubernetes jenkins-pipeline kubectl kubernetes-helm
我想将下面的行转换为作为 bash 脚本运行,以便我可以使用 jenkins 作业调用它。
kubectl create -f tiller-sa-crb.yaml
Run Code Online (Sandbox Code Playgroud)
分蘖-sa-crb.yaml 在下面。如何在 bash 脚本中转换我的上述命令。这样我的 jenkins 工作就调用 ./tiller-sa-crb.sh 并且它在下面执行所有操作。基本上,我的最终目标是拥有一个纯 shell 脚本并在 jenkins 工作中调用它。
apiVersion: v1
kind: ServiceAccount
metadata:
name: tiller
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: tiller
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: tiller
namespace: kube-system
Run Code Online (Sandbox Code Playgroud)
Nep*_*cen 10
您还可以使用 stdin 到 kubectl create 命令,如下所示:
#!/usr/bin/env bash
cat <<EOF | kubectl create -f -
apiVersion: v1
kind: ServiceAccount
metadata:
name: tiller
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: tiller
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: tiller
namespace: kube-system
EOF
Run Code Online (Sandbox Code Playgroud)
了解如何在命令行上使用带有参数的 kubectl 来创建服务帐户以及使用服务帐户创建角色绑定。
#!/bin/bash
#create SA account in one line in namespace kube-system
kubectl create serviceaccount tiller -n kube-system
#create cluster role binding in one line using above serviceaccount and in kube-system namespace
kubectl create clusterrolebinding crb-cluster-admin-test2 --
clusterrole=cluster-admin --serviceaccount=kube-system:tiller
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3487 次 |
| 最近记录: |