Created
April 26, 2024 14:34
-
-
Save youcefguichi/c4c280a3b2d571cd9c5912390be16d76 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# sh vcluster.sh bublebee-vcluster youcef 600Mi 2000m 300Mi 1000m | |
VCLUSTER=$1 | |
NAMESPACE=$2 | |
MEMORY_LIMIT=$3 | |
CPU_LIMIT=$4 | |
MEMORY_REQUEST=$5 | |
CPU_REQUEST=$6 | |
echo "Creating v-cluster ..." | |
vcluster create vcluster-$VCLUSTER --namespace $NAMESPACE& | |
sleep 60 | |
cat <<EOF > vcluster-$NAMESPACE.yaml | |
apiVersion: networking.k8s.io/v1 | |
kind: NetworkPolicy | |
metadata: | |
name: deny-all-traffic | |
namespace: $NAMESPACE | |
spec: | |
podSelector: {} | |
policyTypes: | |
- Ingress | |
- Egress | |
ingress: [] | |
egress: [] | |
--- | |
apiVersion: v1 | |
kind: ResourceQuota | |
metadata: | |
name: qouta | |
namespace: $NAMESPACE | |
spec: | |
hard: | |
requests.cpu: $CPU_REQUEST | |
requests.memory: $MEMORY_REQUEST | |
limits.cpu: $CPU_LIMIT | |
limits.memory: $MEMORY_LIMIT | |
EOF | |
echo "Vcluster config has been written to vcluster-$NAMESPACE.yaml" | |
echo "Welcome to your vcluster $VCLUSTER" | |
echo "getting all namespaces ..." | |
kubectl get ns | |
kubectx k3d-vcluster | |
kubectl get secret -n $NAMESPACE vc-vcluster-$VCLUSTER --template={{.data.config}} | base64 -d > vc-$VCLUSTER.yaml | |
echo "Kubecofig context has been written to vc-$VCLUSTER.yaml" | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment