- Consider creating
terraform.tfvarsfiles in every Terraform directory not to pass the variables each time apply is run - If you see that an instance has more than one private IP it may indicate that
this error has occured. If that is the case run
terraform destroyand attempterraform applyagain - If an instance is stuck with BUILD or ERROR status do the same
- If an instance fails to complete its user_data script do the same
- Usage of one SSH key
defaultfor all machines is assumed (besides your local machine) - If you get a warning
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!when connecting via SSH do as the suggestion says:ssh-keygen -f "/home/ubuntu/.ssh/known_hosts" -R "<ip>" - Ignore
sudo: unable to resolve host <machine-hostname>: Name or service not knownerrors
- Provide required keys in
configs/keys - Run
generate_pub_keys.shin that directory - Provide required VM images in
vm_images - Run
generate_scripts.shinscripts/gen - Run
terraform init && terraform applyinterraform/00_from_local - Wait until the access machine is up and connect to it via SSH:
ssh -i <path_to_default.pem> -o "StrictHostKeyChecking=no" ubuntu@<access_fip>
- Make sure that in
scripts/gen/constants.shthere isBRANCH="origin/master"(unless you're testing changes from a different branch) - Run
generate_scripts.shin that directory - Run
terraform init && terraform applyinterraform/01_from_access
- Copy
~/.kube/configto your local machine, put in the same path. It will allow remote connection to the Kubernetes cluster
- Change
server's value in the kube config. Currently there's master's private IP but since we want to connect from outside of that network we need to provide its public IP - Confirm that you're able to use kubectl from your local machine:
kubectl get nodes - Confirm that the command returned a list containing
kube-masterand somekube-worker-{id}, their state should be Ready; wait some time if it's not
It can be performed from your local machine or from kube-master
git clone git@github.com:k8loud/microservices-demo.git
cd microservices-demo
kubectl apply -f deploy/kubernetes/manifests
kubectl apply -f deploy/kubernetes/manifests-monitoring
If there are no SockShop dashboards available in Grafana
kubectl delete job/grafana-import-dashboards
kubectl apply -f deploy/kubernetes/manifests-monitoring
git clone git@github.com:k8loud/Metrics-Deployment.git
cd Metrics-Deployment
kubectl apply -f volume-creation/
kubectl apply -f manifests/