Like Prometheus, but for logs.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
loki/operator/quickstart.sh

123 lines
3.5 KiB

#!/bin/bash
set -eou pipefail
# shellcheck disable=SC1091
source .bingo/variables.env
setup() {
echo "-------------------------------------------"
echo "- Creating Kind cluster... -"
echo "-------------------------------------------"
# shellcheck disable=SC2154
${KIND} create cluster --config=hack/kind_config.yaml
}
deps() {
echo "-------------------------------------------"
echo "- Deploy Traefik Ingress Controller... -"
echo "-------------------------------------------"
kubectl apply -f hack/addons_traefik.yaml
kubectl -n traefik rollout status deployment traefik
echo "-------------------------------------------"
echo "- Deploy Hydra OIDC provider... -"
echo "-------------------------------------------"
kubectl apply -f hack/addons_hydra.yaml
kubectl -n hydra rollout status deployment hydra
kubectl wait --timeout=180s -n hydra --for=condition=complete job/usercreator
echo "-------------------------------------------"
echo "- Deploy OIDC Token Refresher... -"
echo "-------------------------------------------"
kubectl apply -f hack/addons_token_refresher.yaml
kubectl rollout status deployment token-refresher
}
operator(){
echo "-------------------------------------------"
echo "- Deploy Loki Operator... -"
echo "-------------------------------------------"
make deploy
kubectl rollout status deployment controller-manager
kubectl rollout status deployment minio
}
lokistack(){
echo "-------------------------------------------"
echo "- Deploy Loki Stack... -"
echo "-------------------------------------------"
kubectl apply -f ./hack/lokistack_gateway_dev.yaml
}
logger() {
echo "-------------------------------------------"
echo "- Deploy Log Generator... -"
echo "-------------------------------------------"
kubectl apply -f ./hack/addons_logger.yaml
}
certificates() {
echo "-------------------------------------------"
echo "- Deploy TLS Certificates... -"
echo "-------------------------------------------"
kubectl apply -f ./hack/addons_cert_manager.yaml
kubectl -n cert-manager rollout status deployment cert-manager
kubectl -n cert-manager rollout status deployment cert-manager-cainjector
kubectl -n cert-manager rollout status deployment cert-manager-webhook
kubectl apply -f ./hack/addons_kind_certs.yaml
kubectl wait --timeout=180s --for=condition=ready certificate/lokistack-dev-signing-ca
kubectl create configmap lokistack-dev-ca-bundle --from-literal service-ca.crt="$(kubectl get secret lokistack-dev-signing-ca -o json | jq -r '.data."ca.crt"' | base64 -d -)"
kubectl create configmap lokistack-dev-gateway-ca-bundle --from-literal service-ca.crt="$(kubectl get secret lokistack-dev-signing-ca -o json | jq -r '.data."ca.crt"' | base64 -d -)"
}
check() {
# shellcheck disable=SC2154
${LOGCLI} --addr "http://localhost/token-refresher/api/logs/v1/test-oidc" labels
}
case ${1:-"*"} in
setup)
setup
;;
deps)
deps
;;
operator)
operator
;;
lokistack)
lokistack
;;
logger)
logger
;;
certificates)
certificates
;;
check)
check
;;
help)
echo "usage: $(basename "$0") { setup | deps | operator | lokistack | logger | certificates | check }"
;;
*)
setup
deps
operator
certificates
lokistack
logger
;;
esac
wait