K8s-training: Difference between revisions

From Essential
Jump to navigation Jump to search
(Created page with "<syntaxhighlight lang="bash"> #==TRAINING K8S/HELM== #URL https://nameSpace.domainCluster nameSpace=infra-$USER domainCluster=c2.mi.infocepo.com mkdir -p ~/old localPassword=...")
 
No edit summary
 
(45 intermediate revisions by the same user not shown)
Line 1: Line 1:
* URL https://appName-nameSpace.wildcardDomain
== YOURS VARS ==
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
#==TRAINING K8S/HELM==
export wildcardDomain=
#URL https://nameSpace.domainCluster
</syntaxhighlight>
nameSpace=infra-$USER
domainCluster=c2.mi.infocepo.com


== DEPLOY ==
<syntaxhighlight lang="bash">
echo "== INIT ENV =="
export appName=wiki-demo
hostName=${appName}.${wildcardDomain}
appInternalPassword=$(echo -n ${hostName} |base64 -w0 )
helm repo add bitnami https://charts.bitnami.com/bitnami
mkdir -p ~/old
mkdir -p ~/old
localPassword=localPassword
 
hostName=${nameSpace}.${domainCluster}
echo "== INFRA =="
helm repo add bitnami https://charts.bitnami.com/bitnami
clear
clear
echo "== GITOPS =="
helm template ${appName} bitnami/mediawiki \
helm template --namespace ${nameSpace} ${nameSpace} bitnami/mediawiki \
     --set ingress.enabled=true,ingress.hostname=${hostName} \
     --set ingress.enabled=true,ingress.hostname=${hostName} \
     --set mediawikiHost=${hostName},mediawikiPassword=${localPassword} \
     --set mariadb.auth.rootPassword=${appInternalPassword},mariadb.auth.password=${appInternalPassword} \
     --set mariadb.auth.rootPassword=${localPassword},mariadb.auth.password=${localPassword} |tee ~/old/infra-$USER
     --set mediawikiHost=${hostName},mediawikiPassword=${appInternalPassword} |grep -vw namespace |tee ~/old/${hostName}.yaml
 
echo "== DEPLOY =="
echo "== DEPLOY =="
kubectl apply -f ~/old/infra-$USER
[ ! -z "$(which oc)" ] &&oc get ns |grep default >/dev/null &&oc new-project $wildcardDomain
kubectl apply -f ~/old/${hostName}.yaml
 
echo "== FIX OPENSHIFT SOLUTION =="
if [ ! -z "$(which oc)" ] ;then
  for sa in $(oc get sa -o jsonpath="{.items[*].metadata.name}")
  do
    oc adm policy add-scc-to-user privileged -z ${sa}
  done
  oc create route edge --service=${appName}-mediawiki --hostname=${hostName} 2>/dev/null
fi
 
echo "== YOURS URL =="
echo https://${hostName}
</syntaxhighlight>


echo "== DELETE =="
== DELETE ==
kubectl delete -f ~/old/infra-$USER
<syntaxhighlight lang="bash">
oc delete route ${appName}-mediawiki 2>/dev/null #FIX OPENSHIFT SOLUTION
kubectl delete -f ~/old/${hostName}.yaml


echo "== DELETE DB REMAINING =="
echo "== DELETE REMAINING DB =="
kubectl delete pvc/data-infra-$USER-mariadb-0 -n infra-$USER
kubectl delete pvc/data-${appName}-mariadb-0
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 21:35, 25 December 2023

YOURS VARS

export wildcardDomain=

DEPLOY

echo "== INIT ENV =="
export appName=wiki-demo
hostName=${appName}.${wildcardDomain}
appInternalPassword=$(echo -n ${hostName} |base64 -w0 )
helm repo add bitnami https://charts.bitnami.com/bitnami
mkdir -p ~/old

echo "== INFRA =="
clear
helm template ${appName} bitnami/mediawiki \
    --set ingress.enabled=true,ingress.hostname=${hostName} \
    --set mariadb.auth.rootPassword=${appInternalPassword},mariadb.auth.password=${appInternalPassword} \
    --set mediawikiHost=${hostName},mediawikiPassword=${appInternalPassword} |grep -vw namespace |tee ~/old/${hostName}.yaml

echo "== DEPLOY =="
[ ! -z "$(which oc)" ] &&oc get ns |grep default >/dev/null &&oc new-project $wildcardDomain
kubectl apply -f ~/old/${hostName}.yaml

echo "== FIX OPENSHIFT SOLUTION =="
if [ ! -z "$(which oc)" ] ;then
  for sa in $(oc get sa -o jsonpath="{.items[*].metadata.name}")
  do
    oc adm policy add-scc-to-user privileged -z ${sa}
  done
  oc create route edge --service=${appName}-mediawiki --hostname=${hostName} 2>/dev/null
fi

echo "== YOURS URL =="
echo https://${hostName}

DELETE

oc delete route ${appName}-mediawiki 2>/dev/null #FIX OPENSHIFT SOLUTION
kubectl delete -f ~/old/${hostName}.yaml

echo "== DELETE REMAINING DB =="
kubectl delete pvc/data-${appName}-mariadb-0