From 0550101909ee1400072cccf8eeac1c1b159e64dd Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:22:35 +0100 Subject: [PATCH 01/36] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4f16070..1f47845 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # dockercoins +![CI](https://github.com/Macarena-SRE/dockercoins/workflows/CI/badge.svg?branch=docker) This is the demo application originally used in Jérôme Petazzoni's [orchestration workshop](https://github.com/jpetazzo/container.training). From d27af34b381188bfb9bd689bd8b5175a6b8ffb08 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:24:47 +0100 Subject: [PATCH 02/36] Update hasher.rb --- hasher/hasher.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hasher/hasher.rb b/hasher/hasher.rb index 28a929f..2e5c3f4 100644 --- a/hasher/hasher.rb +++ b/hasher/hasher.rb @@ -3,7 +3,7 @@ require 'socket' set :bind, '0.0.0.0' -set :port, 80 +set :port, 8080 post '/' do # Simulate a bit of delay From 5dfd3f8dcac7278c7c25293faa728a25e98ebe24 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:25:53 +0100 Subject: [PATCH 03/36] Update rng.py --- rng/rng.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rng/rng.py b/rng/rng.py index d9376c5..3c0a424 100644 --- a/rng/rng.py +++ b/rng/rng.py @@ -28,5 +28,5 @@ def rng(how_many_bytes): if __name__ == "__main__": - app.run(host="0.0.0.0", port=80) + app.run(host="0.0.0.0", port=8080) From 2ed4e411150fef74e307bc7f5b1118ab150d571c Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:27:10 +0100 Subject: [PATCH 04/36] Update webui.js --- webui/webui.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/webui/webui.js b/webui/webui.js index 5b2bdc5..ecc346b 100644 --- a/webui/webui.js +++ b/webui/webui.js @@ -26,7 +26,7 @@ app.get('/json', function (req, res) { app.use(express.static('files')); -var server = app.listen(80, function () { - console.log('WEBUI running on port 80'); +var server = app.listen(8080, function () { + console.log('WEBUI running on port 8080'); }); From 41c6d5ff18b57e764c8798b1a779ea60477acf4d Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:30:54 +0100 Subject: [PATCH 05/36] Update worker.py --- worker/worker.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/worker/worker.py b/worker/worker.py index 01bfade..e5a712b 100644 --- a/worker/worker.py +++ b/worker/worker.py @@ -18,12 +18,12 @@ def get_random_bytes(): - r = requests.get("http://rng/32") + r = requests.get("http://rng:8080/32") return r.content def hash_bytes(data): - r = requests.post("http://hasher/", + r = requests.post("http://hasher:8080/", data=data, headers={"Content-Type": "application/octet-stream"}) hex_hash = r.text From ad275712c010091cd1b126f6d4b33dde92313da0 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:47:03 +0100 Subject: [PATCH 06/36] Update Dockerfile --- hasher/Dockerfile | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/hasher/Dockerfile b/hasher/Dockerfile index 2535124..1b1d22a 100644 --- a/hasher/Dockerfile +++ b/hasher/Dockerfile @@ -1,10 +1,8 @@ -FROM ruby:3-alpine -RUN apk add --update build-base curl -RUN gem install sinatra -RUN gem install thin -ADD hasher.rb / -CMD ["ruby", "hasher.rb"] -EXPOSE 80 -HEALTHCHECK \ - --interval=1s --timeout=2s --retries=3 --start-period=1s \ - CMD curl http://localhost/ || exit 1 +FROM ruby:3.0.0-alpine3.12@sha256:df559e1eb3c1b4884a28caa43ce163425a7f81cf9b7372d33883cf0fea67303f +#ejecutamos todos en la misma linea para optimizar +RUN apk add --update build-base && gem install sinatra && gem install thin +#ADD copia y descomprime - COPY solamente copia +COPY hasher.rb / +ENTRYPOINT ["ruby"] +CMD ["hasher.rb"] +EXPOSE 8080 From 6f1ca46837275244943569999733d9e7f49a3753 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:50:07 +0100 Subject: [PATCH 07/36] Update Dockerfile --- rng/Dockerfile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/rng/Dockerfile b/rng/Dockerfile index c63b0e9..bc8a59e 100644 --- a/rng/Dockerfile +++ b/rng/Dockerfile @@ -1,5 +1,7 @@ -FROM python:3-alpine +#ponemos el tag para que quede mas calaro y se pueda buscar el fichero '3.9.1-alpine3.13' +FROM python:3.9.1-alpine3.13@sha256:5beb4823c653c428379bc8b811ef233b7171806e8b10bb6879e7af1ed5bb4093 RUN pip install Flask COPY rng.py / -CMD ["python", "rng.py"] -EXPOSE 80 +ENTRYPOINT ["python"] +CMD ["rng.py"] +EXPOSE 8080 From 2b6f7d136925f2c5ecc52bfed1155b4396c06fda Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 12:59:10 +0100 Subject: [PATCH 08/36] Update Dockerfile --- webui/Dockerfile | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/webui/Dockerfile b/webui/Dockerfile index 5e8c9be..6dfb366 100644 --- a/webui/Dockerfile +++ b/webui/Dockerfile @@ -1,7 +1,9 @@ -FROM node:4-slim -RUN npm install express -RUN npm install redis +FROM node:4-slim@sha256:b5ae41b735cad519ae32cd6eeafbc1191c2d8e9056baf421a17f1c666c2a3753 +RUN npm install express && npm install redis +#AUNQUE SE PUSIERA JUNTO ESTARIAN EN DIFERENTES CAPAS (diferentes rutas no empeoran el rendimiento, la misma ya penaliza mas) +#si en la misma linea creas y borras archivos tambien es optimo (la capa se guarda al final) COPY files/ /files/ COPY webui.js / -CMD ["node", "webui.js"] -EXPOSE 80 +ENTRYPOINT ["node"] +CMD ["webui.js"] +EXPOSE 8080 From fea0f8e3cecb90a9d9021938a07a7fe0d7595080 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 13:02:08 +0100 Subject: [PATCH 09/36] Update Dockerfile --- worker/Dockerfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/worker/Dockerfile b/worker/Dockerfile index 5e2264c..e49ade4 100644 --- a/worker/Dockerfile +++ b/worker/Dockerfile @@ -1,5 +1,5 @@ -FROM python:3-alpine -RUN pip install redis -RUN pip install requests +FROM python:3.9.1-alpine3.13@sha256:5beb4823c653c428379bc8b811ef233b7171806e8b10bb6879e7af1ed5bb4093 +RUN pip install redis && pip install requests COPY worker.py / -CMD ["python", "worker.py"] +ENTRYPOINT ["python"] +CMD ["worker.py"] From 5ac3bbf1aa16893fe48f97f1c7b2b1391784bc4b Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 13:51:38 +0100 Subject: [PATCH 10/36] Create dockercoins.yaml --- etc/swarm/manifests/dockercoins.yaml | 172 +++++++++++++++++++++++++++ 1 file changed, 172 insertions(+) create mode 100644 etc/swarm/manifests/dockercoins.yaml diff --git a/etc/swarm/manifests/dockercoins.yaml b/etc/swarm/manifests/dockercoins.yaml new file mode 100644 index 0000000..e5f0a1b --- /dev/null +++ b/etc/swarm/manifests/dockercoins.yaml @@ -0,0 +1,172 @@ +#creamos las redes +networks: + hasher: + internal: true + redis: + internal: true + rng: + internal: true + webui: + internal: false + worker: + internal: true +#balanceadores (servicios) +services: + #se puede poner un FQDN + hasher: + deploy: + mode: replicated + placement: + constraints: + - node.role == worker + replicas: 1 + resources: + limits: + cpus: "0.1" + memory: 100M + #ojo que a veces el reservar a full puede ser caro + reservations: + cpus: "0.1" + memory: 100M + expose: + - 8080 + healthcheck: + interval: 10s + retries: 3 + start_period: 30s + test: wget -q --spider localhost:8080 + timeout: 1s + #para diferentes microservicios + image: macarenasre/dockercoins:latest-hasher + # 1 proyecto x MS --> image: macarenasre/dockercoins-hasher:latest + networks: + #la que hemos declarado en networks + - hasher + redis: + deploy: + mode: replicated + placement: + constraints: + - node.role == worker + replicas: 1 + resources: + limits: + cpus: "0.1" + memory: 100M + #ojo que a veces el reservar a full puede ser caro + reservations: + cpus: "0.1" + memory: 100M + expose: + - 6379 + healthcheck: + interval: 10s + retries: 3 + start_period: 30s + test: redis-cli + timeout: 1s + image: redis:6.0.9-alpine3.12@sha256:aa31e6d2afc72d2222ed3953587197c324f615861771637a64053f9d99ba4b74 + networks: + #la que hemos declarado en networks + - redis + volumes: + #para openshift (en swarm cuela) - verificar en cada producto que ruta necesita + - redis:/data + rng: + deploy: + #DaemonSet (se despliega una vez por worker) + mode: global + placement: + constraints: + - node.role == worker + #replicas: 1 -- al ser demonio no lo podemos replicar + resources: + limits: + cpus: "0.1" + memory: 100M + #ojo que a veces el reservar a full puede ser caro + reservations: + cpus: "0.1" + memory: 100M + expose: + - 8080 + healthcheck: + interval: 10s + retries: 3 + start_period: 30s + test: wget -q --spider localhost:8080 + timeout: 1s + image: macarenasre/dockercoins:latest-rng + networks: + #la que hemos declarado en networks + - rng + webui: + deploy: + mode: replicated + placement: + constraints: + - node.role == worker + replicas: 1 + resources: + limits: + cpus: "0.1" + memory: 100M + #ojo que a veces el reservar a full puede ser caro + reservations: + cpus: "0.1" + memory: 100M + expose: + - 8080 + healthcheck: + interval: 10s + retries: 3 + start_period: 30s + #aqui podemos usar curl porque lo tenemos en la imagen + #podemos comprobarlo con docker run --rm which curl + test: curl -f localhost:8080 + timeout: 1s + image: macarenasre/dockercoins:latest-webui + networks: + #nos conectamos a redis asi que incluimos una interfaz directa (se podria usar un proxy en DMZ) + - redis + #la que hemos declarado en networks + - webui + worker: + deploy: + mode: replicated + placement: + constraints: + - node.role == worker + replicas: 1 + resources: + limits: + cpus: "0.1" + memory: 100M + #ojo que a veces el reservar a full puede ser caro + reservations: + cpus: "0.1" + memory: 100M + #no exponemos nada + #expose: + # - 8080 + healthcheck: + interval: 10s + retries: 3 + start_period: 30s + test: netstat -nt | grep ESTABLISHED | grep -q 6379 + timeout: 1s + image: macarenasre/dockercoins:latest-worker + networks: + #listar las que necesita usar + - hasher + - redis + - rng + #la que hemos declarado en networks + - worker +version: '3.8' +volumes: + redis: + + + + From 0a33408c25f5a98dfd623f7b2e7a9ade45ced930 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Fri, 12 Mar 2021 13:55:44 +0100 Subject: [PATCH 11/36] Create ci.yaml --- .github/workflows/ci.yaml | 129 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 .github/workflows/ci.yaml diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..e9fe797 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,129 @@ +name: CI +on: + push: + branches: + - docker +jobs: + docker: + runs-on: ubuntu-18.04 + steps: + - name: checkout + uses: actions/checkout@v2 + - name: test + run: | + set -x + docker build -t test . + docker run -d --name testcontainer test + while true + do \ + sleep 10 + docker exec testcontainer ps | grep 'php -f index.php' && break + done + while true + do \ + sleep 10 + docker logs testcontainer 2>& 1 | grep 'PHP .* Development Server .* started' && break + done + swarm: + runs-on: ubuntu-18.04 + steps: + - name: checkout + uses: actions/checkout@v2 + - name: test + run: | + set -x + #creo imagen image + docker build -t terferre/phpinfo-2:testing . + docker swarm init + project=phpinfo-2 + compose=etc/swarm/manifests/${project}.yaml + #sustituyo latest x testing y despliego con compose + sed -i /image:/s/latest/testing/ ${compose} + sed -i /node.role/s/worker/manager/ ${compose} + #Despliegue en Openshift + #oc apply -f ${compose} + #despliegue en Kubernetes + #kubectl apply -f ${compose} + #desplioegue en swarm + docker stack deploy -c ${compose} ${project} + while true + do \ + sleep 10 + docker service ls | grep "${project}.*\([0-9]\)/\1" && break + done + while true + do \ + sleep 10 + docker service logs ${project}_${project} 2>& 1 | grep 'PHP .* Development Server .* started' && break + done + kubernetes: + runs-on: ubuntu-18.04 + steps: + - name: checkout + uses: actions/checkout@v2 + - name: test + run: | + set -x + #creo imagen image + docker build -t terferre/phpinfo-2:testing . + #install kubernetes en ubunto + sudo apt-get update -y + #sudo apt-get install -y docker.io + #sudo systemctl enable --now docker + curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - + echo deb http://apt.kubernetes.io/ kubernetes-xenial main | sudo tee -a /etc/apt/sources.list.d/kubernetes.list + sudo apt-get update -y + sudo apt-get install -y --allow-downgrades kubelet=1.18.14-00 kubeadm=1.18.14-00 kubectl=1.18.14-00 + sudo systemctl enable --now kubelet + #inicializar kubernetes + ip_leader=$( ip r | grep default | awk '{ print $9 }' ) + echo ${ip_leader} kube-apiserver | sudo tee -a /etc/hosts + sudo swapoff --all + sudo kubeadm init --upload-certs --control-plane-endpoint kube-apiserver --pod-network-cidr 192.168.0.0/16 --ignore-preflight-errors all + #copiamos las credenciales a nuestro dir + mkdir -p ${HOME}/.kube + sudo cp /etc/kubernetes/admin.conf ${HOME}/.kube/config + sudo chown -R $( id -u ):$( id -g ) ${HOME}/.kube + #una vez inicializado Kubernetes creamos la red + kubectl apply -f https://docs.projectcalico.org/v3.17/manifests/calico.yaml + #comprobar q el cluster esta listo + while true + do \ + kubectl get node | grep Ready | grep -v NotReady && break + sleep 10 + done + #limpiar configuracion + sudo sed -i /kube-apiserver/d /etc/hosts + sudo sed -i /127.0.0.1.*localhost/s/$/' 'kube-apiserver/ /etc/hosts + #habilitar el master + master=$( kubectl get node | grep master | awk '{ print $1 }' ) + kubectl taint node ${master} node-role.kubernetes.io/master:NoSchedule- + + project=phpinfo-2 + compose=etc/kubernetes/manifests/${project}.yaml + #sustituyo latest x testing y despliego con compose + sed -i /image:/s/latest/testing/ ${compose} + sed -i /imagePullPolicy/s/Always/Never/ ${compose} + #Despliegue en Openshift + #oc apply -f ${compose} + #despliegue en Kubernetes + kubectl apply -f ${compose} + #desplioegue en swarm + #docker stack deploy -c ${compose} ${project} + while true + do \ + sleep 10 + kubectl describe deploy + kubectl describe rs + kubectl describe po + kubectl get deploy | grep "${project}.*\([0-9]\)/\1" && break + done + while true + do \ + sleep 10 + kubectl logs deploy/${project} 2>& 1 | grep 'PHP .* Development Server .* started' && break + done + + + + From faf3b639508ebd8987adf0ef322cf7719ab839b0 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 11:02:10 +0100 Subject: [PATCH 12/36] Update ci.yaml --- .github/workflows/ci.yaml | 37 ++++++++++++++++++++++++++++++------- 1 file changed, 30 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index e9fe797..87693af 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -12,18 +12,41 @@ jobs: - name: test run: | set -x - docker build -t test . - docker run -d --name testcontainer test - while true + for app in hasher rng webui worker do \ - sleep 10 - docker exec testcontainer ps | grep 'php -f index.php' && break + docker build - macarenasre/dockercoins:testing-${app} ${app} + done + #creamos las redes + for app in hasher redis rng webui worker + do \ + docker network create ${app} + done + #ejecutamos container y volumen + docker run -d --name redis --network redis -v redis:/data redis + #creamos todos los demas contenedores + for app in hasher rng webui worker + do \ + docker run -d --name ${app} --network ${app} macarenasre/dockercoins:testing-${app} + done + #conectar los contenedores a las redes + for app in webui worker + do \ + docker network connect redis ${app} + done + for network in hasher rng + do \ + docker network connect ${network} worker done + #testear la aplicacion while true do \ sleep 10 - docker logs testcontainer 2>& 1 | grep 'PHP .* Development Server .* started' && break - done + docker logs webui 2>& 1 | grep 'WEBUI running on port' && break + done + for app in hasher redis rng worker + do \ + docker logs ${logs} + done swarm: runs-on: ubuntu-18.04 steps: From b0fc21ce38ccbe542fef553a77c4f54b00a3f683 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 11:03:43 +0100 Subject: [PATCH 13/36] Update ci.yaml --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 87693af..91fa871 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -14,7 +14,7 @@ jobs: set -x for app in hasher rng webui worker do \ - docker build - macarenasre/dockercoins:testing-${app} ${app} + docker build macarenasre/dockercoins:testing-${app} ${app} done #creamos las redes for app in hasher redis rng webui worker From a5ffb9bde14d7159419118d56239ca144c18c2da Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 11:36:16 +0100 Subject: [PATCH 14/36] Update ci.yaml --- .github/workflows/ci.yaml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 91fa871..a8b8336 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -14,17 +14,17 @@ jobs: set -x for app in hasher rng webui worker do \ - docker build macarenasre/dockercoins:testing-${app} ${app} + docker build -t macarenasre/dockercoins:testing-${app} ${app} done - #creamos las redes + #creamos redes p cada uno for app in hasher redis rng webui worker do \ docker network create ${app} - done - #ejecutamos container y volumen + done + #ejecyutamos container y creamos volumen docker run -d --name redis --network redis -v redis:/data redis - #creamos todos los demas contenedores - for app in hasher rng webui worker + # + for app in hasher rng webui worker do \ docker run -d --name ${app} --network ${app} macarenasre/dockercoins:testing-${app} done @@ -33,20 +33,20 @@ jobs: do \ docker network connect redis ${app} done - for network in hasher rng + for network in hasher rng do \ docker network connect ${network} worker done - #testear la aplicacion + #testear app while true do \ sleep 10 docker logs webui 2>& 1 | grep 'WEBUI running on port' && break done - for app in hasher redis rng worker + for app in hasher redis rng worker do \ - docker logs ${logs} - done + docker logs ${app} + done swarm: runs-on: ubuntu-18.04 steps: From d9bf9c48501cec043947224d9cefc00864e80d5d Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 11:47:21 +0100 Subject: [PATCH 15/36] Update ci.yaml --- .github/workflows/ci.yaml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index a8b8336..3eedb51 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -42,11 +42,7 @@ jobs: do \ sleep 10 docker logs webui 2>& 1 | grep 'WEBUI running on port' && break - done - for app in hasher redis rng worker - do \ - docker logs ${app} - done + done swarm: runs-on: ubuntu-18.04 steps: From e915d4cb6b2f89adee7a656b6e036198c1ca37ba Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 11:52:52 +0100 Subject: [PATCH 16/36] Update ci.yaml --- .github/workflows/ci.yaml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 3eedb51..a287b31 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -38,11 +38,26 @@ jobs: docker network connect ${network} worker done #testear app + while true + do \ + sleep 10 + docker logs hasher 2>& 1 | grep '== Sinatra .* has taken the stage on .* for development with backup from Thin' && break + done + while true + do \ + sleep 10 + docker logs redis 2>& 1 | grep 'Ready to accept connections' && break + done while true do \ sleep 10 docker logs webui 2>& 1 | grep 'WEBUI running on port' && break - done + done + while true + do \ + sleep 10 + docker logs worker 2>& 1 | grep 'Coin found' && break + done swarm: runs-on: ubuntu-18.04 steps: @@ -74,7 +89,7 @@ jobs: do \ sleep 10 docker service logs ${project}_${project} 2>& 1 | grep 'PHP .* Development Server .* started' && break - done + done kubernetes: runs-on: ubuntu-18.04 steps: From 640ee13092bad808e2094874675ebc9f154b7091 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 12:10:21 +0100 Subject: [PATCH 17/36] Update ci.yaml --- .github/workflows/ci.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index a287b31..3c104d1 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -48,6 +48,11 @@ jobs: sleep 10 docker logs redis 2>& 1 | grep 'Ready to accept connections' && break done + while true + do \ + sleep 10 + docker logs rng 2>& 1 | grep 'Running on' && break + done while true do \ sleep 10 From b6d2ce3d9cf2670ae8abb4fa3fd83ba5fc1b0991 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 12:23:31 +0100 Subject: [PATCH 18/36] Update ci.yaml --- .github/workflows/ci.yaml | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 3c104d1..09fc590 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -73,28 +73,43 @@ jobs: set -x #creo imagen image docker build -t terferre/phpinfo-2:testing . + for app in hasher rng webui worker + do \ + docker build -t macarenasre/dockercoins:testing-${app} ${app} + done docker swarm init - project=phpinfo-2 + project=dockercoins compose=etc/swarm/manifests/${project}.yaml #sustituyo latest x testing y despliego con compose sed -i /image:/s/latest/testing/ ${compose} sed -i /node.role/s/worker/manager/ ${compose} - #Despliegue en Openshift - #oc apply -f ${compose} - #despliegue en Kubernetes - #kubectl apply -f ${compose} #desplioegue en swarm docker stack deploy -c ${compose} ${project} - while true + while true + do \ + sleep 10 + docker service logs ${project}_hasher 2>& 1 | grep '== Sinatra .* has taken the stage on .* for development with backup from Thin' && break + done + while true do \ sleep 10 - docker service ls | grep "${project}.*\([0-9]\)/\1" && break + docker service logs ${project}_redis 2>& 1 | grep 'Ready to accept connections' && break done while true do \ sleep 10 - docker service logs ${project}_${project} 2>& 1 | grep 'PHP .* Development Server .* started' && break - done + docker service logs ${project}_rng 2>& 1 | docker service logs ${project}_nning on' && break + done + while true + do \ + sleep 10 + docker service logs ${project}_webui 2>& 1 | grep 'WEBUI running on port' && break + done + while true + do \ + sleep 10 + docker service logs ${project}_worker 2>& 1 | grep 'Coin found' && break + done kubernetes: runs-on: ubuntu-18.04 steps: From 3b063b44b8246a24954f7df2b63c1b0ddb60d7fc Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 12:24:55 +0100 Subject: [PATCH 19/36] Update ci.yaml --- .github/workflows/ci.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 09fc590..33c3c0d 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -72,7 +72,6 @@ jobs: run: | set -x #creo imagen image - docker build -t terferre/phpinfo-2:testing . for app in hasher rng webui worker do \ docker build -t macarenasre/dockercoins:testing-${app} ${app} From 76c1419aaf2eef37d0e6d164afc3f3ee135a0728 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Mon, 15 Mar 2021 13:15:22 +0100 Subject: [PATCH 20/36] Create dockercoins.yaml --- etc/kubernetes/manifests/dockercoins.yaml | 166 ++++++++++++++++++++++ 1 file changed, 166 insertions(+) create mode 100644 etc/kubernetes/manifests/dockercoins.yaml diff --git a/etc/kubernetes/manifests/dockercoins.yaml b/etc/kubernetes/manifests/dockercoins.yaml new file mode 100644 index 0000000..2e72b65 --- /dev/null +++ b/etc/kubernetes/manifests/dockercoins.yaml @@ -0,0 +1,166 @@ +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: rng +spec: + selector: + matchLabels: + app: rng + template: + metadata: + labels: + app: rng + spec: + containers: + - + image: macarenasre/dockercoins:latest-rng + imagePullPolicy: Always + ports: + - + containerPort: 8080 + protocol: TCP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: hasher +spec: + replicas: 1 + selector: + matchLabels: + app: hasher + template: + metadata: + labels: + app: hasher + spec: + containers: + - + image: macarenasre/dockercoins:latest-hasher + imagePullPolicy: Always + ports: + - + containerPort: 8080 + protocol: TCP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis +spec: + replicas: 1 + selector: + matchLabels: + app: redis + template: + metadata: + labels: + app: redis + spec: + containers: + - + image: redis + imagePullPolicy: Allways + ports: + - + containerPort: 6379 + protocol: TCP + volumeMounts: + - + mountPath: /data + name: redis + volumes: + - + name: redis + emptyDir: {} +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: webui +spec: + replicas: 1 + selector: + matchLabels: + app: webui + template: + metadata: + labels: + app: webui + spec: + containers: + - + image: macarenasre/dockercoins:latest-webui + imagePullPolicy: Always + ports: + - + containerPort: 8080 + protocol: TCP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: worker +spec: + replicas: 1 + selector: + matchLabels: + app: worker + template: + metadata: + labels: + app: worker + spec: + containers: + - + image: macarenasre/dockercoins:latest-worker + imagePullPolicy: Always +--- +apiVersion: v1 +kind: Service +metadata: + name: hasher +spec: + ports: + - + port: 8080 + targetPort: 8080 + selector: + app: hasher +--- +apiVersion: v1 +kind: Service +metadata: + name: redis +spec: + ports: + - + port: 6379 + targetPort: 6379 + selector: + app: redis +--- +apiVersion: v1 +kind: Service +metadata: + name: rng +spec: + ports: + - + port: 8080 + targetPort: 8080 + selector: + app: rng +--- +apiVersion: v1 +kind: Service +metadata: + name: webui +spec: + ports: + - + port: 8080 + targetPort: 8080 + selector: + app: webui +--- From a9a01119a387018f23e8355d9a41bd6a6bc364ee Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 10:18:10 +0100 Subject: [PATCH 21/36] Update dockercoins.yaml --- etc/swarm/manifests/dockercoins.yaml | 34 ++++++++++++++-------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/etc/swarm/manifests/dockercoins.yaml b/etc/swarm/manifests/dockercoins.yaml index e5f0a1b..f96008d 100644 --- a/etc/swarm/manifests/dockercoins.yaml +++ b/etc/swarm/manifests/dockercoins.yaml @@ -146,23 +146,23 @@ services: reservations: cpus: "0.1" memory: 100M - #no exponemos nada - #expose: - # - 8080 - healthcheck: - interval: 10s - retries: 3 - start_period: 30s - test: netstat -nt | grep ESTABLISHED | grep -q 6379 - timeout: 1s - image: macarenasre/dockercoins:latest-worker - networks: - #listar las que necesita usar - - hasher - - redis - - rng - #la que hemos declarado en networks - - worker + #no exponemos nada + #expose: + # - 8080 + healthcheck: + interval: 10s + retries: 3 + start_period: 30s + test: netstat -nt | grep ESTABLISHED | grep -q 6379 + timeout: 1s + image: macarenasre/dockercoins:latest-worker + networks: + #listar las que necesita usar + - hasher + - redis + - rng + #la que hemos declarado en networks + - worker version: '3.8' volumes: redis: From 88de5d0081ab43c4dd0ec89e3e7aeb164e24cd64 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 10:21:10 +0100 Subject: [PATCH 22/36] Update dockercoins.yaml --- etc/swarm/manifests/dockercoins.yaml | 34 ++++++++++++++-------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/etc/swarm/manifests/dockercoins.yaml b/etc/swarm/manifests/dockercoins.yaml index f96008d..e5f0a1b 100644 --- a/etc/swarm/manifests/dockercoins.yaml +++ b/etc/swarm/manifests/dockercoins.yaml @@ -146,23 +146,23 @@ services: reservations: cpus: "0.1" memory: 100M - #no exponemos nada - #expose: - # - 8080 - healthcheck: - interval: 10s - retries: 3 - start_period: 30s - test: netstat -nt | grep ESTABLISHED | grep -q 6379 - timeout: 1s - image: macarenasre/dockercoins:latest-worker - networks: - #listar las que necesita usar - - hasher - - redis - - rng - #la que hemos declarado en networks - - worker + #no exponemos nada + #expose: + # - 8080 + healthcheck: + interval: 10s + retries: 3 + start_period: 30s + test: netstat -nt | grep ESTABLISHED | grep -q 6379 + timeout: 1s + image: macarenasre/dockercoins:latest-worker + networks: + #listar las que necesita usar + - hasher + - redis + - rng + #la que hemos declarado en networks + - worker version: '3.8' volumes: redis: From 61dbadd29fc2f456aed70bfeddf4442ea3d52819 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 10:30:50 +0100 Subject: [PATCH 23/36] Update dockercoins.yaml --- etc/swarm/manifests/dockercoins.yaml | 86 ++++++++++------------------ 1 file changed, 31 insertions(+), 55 deletions(-) diff --git a/etc/swarm/manifests/dockercoins.yaml b/etc/swarm/manifests/dockercoins.yaml index e5f0a1b..09a7e91 100644 --- a/etc/swarm/manifests/dockercoins.yaml +++ b/etc/swarm/manifests/dockercoins.yaml @@ -1,30 +1,26 @@ -#creamos las redes networks: - hasher: + hasher: internal: true - redis: + redis: internal: true rng: internal: true webui: - internal: false + internal: false worker: internal: true -#balanceadores (servicios) services: - #se puede poner un FQDN hasher: - deploy: + deploy: mode: replicated - placement: - constraints: + placement: + constraints: - node.role == worker replicas: 1 - resources: + resources: limits: cpus: "0.1" memory: 100M - #ojo que a veces el reservar a full puede ser caro reservations: cpus: "0.1" memory: 100M @@ -36,24 +32,21 @@ services: start_period: 30s test: wget -q --spider localhost:8080 timeout: 1s - #para diferentes microservicios image: macarenasre/dockercoins:latest-hasher - # 1 proyecto x MS --> image: macarenasre/dockercoins-hasher:latest + # image: terferre/dockercoins-hasher:latest esto genera q proyecto x microservicio networks: - #la que hemos declarado en networks - hasher redis: - deploy: + deploy: mode: replicated - placement: - constraints: + placement: + constraints: - node.role == worker replicas: 1 - resources: + resources: limits: cpus: "0.1" memory: 100M - #ojo que a veces el reservar a full puede ser caro reservations: cpus: "0.1" memory: 100M @@ -67,24 +60,21 @@ services: timeout: 1s image: redis:6.0.9-alpine3.12@sha256:aa31e6d2afc72d2222ed3953587197c324f615861771637a64053f9d99ba4b74 networks: - #la que hemos declarado en networks - redis - volumes: - #para openshift (en swarm cuela) - verificar en cada producto que ruta necesita + # volums escribe en disco, p openshift + volumes: - redis:/data rng: - deploy: - #DaemonSet (se despliega una vez por worker) + deploy: + #DaemonSet, es una app q se despliega 1vez por worker mode: global - placement: - constraints: + placement: + constraints: - node.role == worker - #replicas: 1 -- al ser demonio no lo podemos replicar - resources: + resources: limits: cpus: "0.1" memory: 100M - #ojo que a veces el reservar a full puede ser caro reservations: cpus: "0.1" memory: 100M @@ -98,20 +88,19 @@ services: timeout: 1s image: macarenasre/dockercoins:latest-rng networks: - #la que hemos declarado en networks - rng + # volums escribe en disco, p openshift webui: - deploy: + deploy: + #DaemonSet, es una app q se despliega 1vez por worker mode: replicated - placement: - constraints: + placement: + constraints: - node.role == worker - replicas: 1 - resources: + resources: limits: cpus: "0.1" memory: 100M - #ojo que a veces el reservar a full puede ser caro reservations: cpus: "0.1" memory: 100M @@ -121,34 +110,26 @@ services: interval: 10s retries: 3 start_period: 30s - #aqui podemos usar curl porque lo tenemos en la imagen - #podemos comprobarlo con docker run --rm which curl test: curl -f localhost:8080 timeout: 1s image: macarenasre/dockercoins:latest-webui networks: - #nos conectamos a redis asi que incluimos una interfaz directa (se podria usar un proxy en DMZ) - redis - #la que hemos declarado en networks - webui worker: - deploy: + deploy: mode: replicated - placement: - constraints: + placement: + constraints: - node.role == worker replicas: 1 - resources: + resources: limits: cpus: "0.1" memory: 100M - #ojo que a veces el reservar a full puede ser caro reservations: cpus: "0.1" memory: 100M - #no exponemos nada - #expose: - # - 8080 healthcheck: interval: 10s retries: 3 @@ -157,16 +138,11 @@ services: timeout: 1s image: macarenasre/dockercoins:latest-worker networks: - #listar las que necesita usar - hasher - redis - rng - #la que hemos declarado en networks - worker -version: '3.8' -volumes: +version: '3.8' +volumes: redis: - - - From 2a0e887cab1033e91eb2e49bcac7e53e79d890e7 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 10:48:37 +0100 Subject: [PATCH 24/36] Update ci.yaml --- .github/workflows/ci.yaml | 63 ++++++++++++++++++++++++++++++--------- 1 file changed, 49 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 33c3c0d..d42edc8 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -117,8 +117,12 @@ jobs: - name: test run: | set -x + project=dockercoins #creo imagen image - docker build -t terferre/phpinfo-2:testing . + for app in hasher rng webui worker + do \ + docker build -t macarenasre/dockercoins:testing-${app} ${app} + done #install kubernetes en ubunto sudo apt-get update -y #sudo apt-get install -y docker.io @@ -152,31 +156,62 @@ jobs: master=$( kubectl get node | grep master | awk '{ print $1 }' ) kubectl taint node ${master} node-role.kubernetes.io/master:NoSchedule- - project=phpinfo-2 compose=etc/kubernetes/manifests/${project}.yaml #sustituyo latest x testing y despliego con compose sed -i /image:/s/latest/testing/ ${compose} sed -i /imagePullPolicy/s/Always/Never/ ${compose} - #Despliegue en Openshift - #oc apply -f ${compose} #despliegue en Kubernetes kubectl apply -f ${compose} #desplioegue en swarm #docker stack deploy -c ${compose} ${project} - while true - do \ + app=hasher + pattern='== Sinatra .* has taken the stage on .* for development with backup from Thin' + while true + do sleep 10 kubectl describe deploy kubectl describe rs kubectl describe po - kubectl get deploy | grep "${project}.*\([0-9]\)/\1" && break + kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done + app=redis + pattern='Ready to accept connections' while true - do \ + do + sleep 10 + kubectl describe deploy + kubectl describe rs + kubectl describe po + kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break + done + app=rng + pattern='Running on' + while true + do + sleep 10 + kubectl describe deploy + kubectl describe rs + kubectl describe po + kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break + done + app=webui + pattern='WEBUI running on port' + while true + do sleep 10 - kubectl logs deploy/${project} 2>& 1 | grep 'PHP .* Development Server .* started' && break - done - - - - + kubectl describe deploy + kubectl describe rs + kubectl describe po + kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break + done + app=worker + pattern='Coin found' + while true + do + sleep 10 + kubectl describe deploy + kubectl describe rs + kubectl describe po + kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break + done + From 1c036aca6dfc3455d5683655374e09a07bee8dfa Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 10:51:27 +0100 Subject: [PATCH 25/36] Update dockercoins.yaml --- etc/swarm/manifests/dockercoins.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/etc/swarm/manifests/dockercoins.yaml b/etc/swarm/manifests/dockercoins.yaml index 09a7e91..e3f9930 100644 --- a/etc/swarm/manifests/dockercoins.yaml +++ b/etc/swarm/manifests/dockercoins.yaml @@ -145,4 +145,3 @@ services: version: '3.8' volumes: redis: - From b34745b6e5d06a48954875f174ed5e1754070fe4 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:05:53 +0100 Subject: [PATCH 26/36] Update ci.yaml --- .github/workflows/ci.yaml | 51 ++++++++++++++++----------------------- 1 file changed, 21 insertions(+), 30 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index d42edc8..8647f58 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -2,7 +2,7 @@ name: CI on: push: branches: - - docker + - master jobs: docker: runs-on: ubuntu-18.04 @@ -57,12 +57,12 @@ jobs: do \ sleep 10 docker logs webui 2>& 1 | grep 'WEBUI running on port' && break - done + done while true do \ sleep 10 docker logs worker 2>& 1 | grep 'Coin found' && break - done + done swarm: runs-on: ubuntu-18.04 steps: @@ -82,6 +82,10 @@ jobs: #sustituyo latest x testing y despliego con compose sed -i /image:/s/latest/testing/ ${compose} sed -i /node.role/s/worker/manager/ ${compose} + #Despliegue en Openshift + #oc apply -f ${compose} + #despliegue en Kubernetes + #kubectl apply -f ${compose} #desplioegue en swarm docker stack deploy -c ${compose} ${project} while true @@ -97,18 +101,18 @@ jobs: while true do \ sleep 10 - docker service logs ${project}_rng 2>& 1 | docker service logs ${project}_nning on' && break + docker service logs ${project}_rng 2>& 1 | grep 'Running on' && break done while true do \ sleep 10 docker service logs ${project}_webui 2>& 1 | grep 'WEBUI running on port' && break - done + done while true do \ sleep 10 docker service logs ${project}_worker 2>& 1 | grep 'Coin found' && break - done + done kubernetes: runs-on: ubuntu-18.04 steps: @@ -120,8 +124,8 @@ jobs: project=dockercoins #creo imagen image for app in hasher rng webui worker - do \ - docker build -t macarenasre/dockercoins:testing-${app} ${app} + do + docker build -t macarenasre/${project}:testing-${app} ${app} done #install kubernetes en ubunto sudo apt-get update -y @@ -145,7 +149,7 @@ jobs: kubectl apply -f https://docs.projectcalico.org/v3.17/manifests/calico.yaml #comprobar q el cluster esta listo while true - do \ + do kubectl get node | grep Ready | grep -v NotReady && break sleep 10 done @@ -160,6 +164,8 @@ jobs: #sustituyo latest x testing y despliego con compose sed -i /image:/s/latest/testing/ ${compose} sed -i /imagePullPolicy/s/Always/Never/ ${compose} + #Despliegue en Openshift + #oc apply -f ${compose} #despliegue en Kubernetes kubectl apply -f ${compose} #desplioegue en swarm @@ -167,51 +173,36 @@ jobs: app=hasher pattern='== Sinatra .* has taken the stage on .* for development with backup from Thin' while true - do + do sleep 10 - kubectl describe deploy - kubectl describe rs - kubectl describe po kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done app=redis pattern='Ready to accept connections' while true - do + do sleep 10 - kubectl describe deploy - kubectl describe rs - kubectl describe po kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done app=rng pattern='Running on' while true - do + do sleep 10 - kubectl describe deploy - kubectl describe rs - kubectl describe po kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done app=webui pattern='WEBUI running on port' while true - do + do sleep 10 - kubectl describe deploy - kubectl describe rs - kubectl describe po kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done app=worker pattern='Coin found' while true - do + do sleep 10 - kubectl describe deploy - kubectl describe rs - kubectl describe po kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done - + From 13daaf3cd0d3acb671af6850e9ce8dd8cb724323 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:08:28 +0100 Subject: [PATCH 27/36] Update ci.yaml --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 8647f58..d18cc14 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -205,4 +205,4 @@ jobs: sleep 10 kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done - + From 5a08f2240f8e05e1c9409912ef6578f4c232dcb5 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:13:22 +0100 Subject: [PATCH 28/36] Update ci.yaml --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index d18cc14..2e04984 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -205,4 +205,4 @@ jobs: sleep 10 kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done - + From 58d55585f8d53b8d87c8ea070a7440aefbb2c768 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:16:30 +0100 Subject: [PATCH 29/36] Update dockercoins.yaml --- etc/swarm/manifests/dockercoins.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/etc/swarm/manifests/dockercoins.yaml b/etc/swarm/manifests/dockercoins.yaml index e3f9930..29d9aa5 100644 --- a/etc/swarm/manifests/dockercoins.yaml +++ b/etc/swarm/manifests/dockercoins.yaml @@ -33,7 +33,7 @@ services: test: wget -q --spider localhost:8080 timeout: 1s image: macarenasre/dockercoins:latest-hasher - # image: terferre/dockercoins-hasher:latest esto genera q proyecto x microservicio + # image: macarenasre/dockercoins-hasher:latest esto genera q proyecto x microservicio networks: - hasher redis: @@ -145,3 +145,4 @@ services: version: '3.8' volumes: redis: + From dc003c5755139e514f107354f23e4ed77a97b6e9 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:18:29 +0100 Subject: [PATCH 30/36] Update dockercoins.yaml --- etc/kubernetes/manifests/dockercoins.yaml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/etc/kubernetes/manifests/dockercoins.yaml b/etc/kubernetes/manifests/dockercoins.yaml index 2e72b65..bdcd5ce 100644 --- a/etc/kubernetes/manifests/dockercoins.yaml +++ b/etc/kubernetes/manifests/dockercoins.yaml @@ -15,6 +15,7 @@ spec: - image: macarenasre/dockercoins:latest-rng imagePullPolicy: Always + name: rng ports: - containerPort: 8080 @@ -38,6 +39,7 @@ spec: - image: macarenasre/dockercoins:latest-hasher imagePullPolicy: Always + name: hasher ports: - containerPort: 8080 @@ -60,7 +62,8 @@ spec: containers: - image: redis - imagePullPolicy: Allways + imagePullPolicy: Always + name: redis ports: - containerPort: 6379 @@ -92,6 +95,7 @@ spec: - image: macarenasre/dockercoins:latest-webui imagePullPolicy: Always + name: webui ports: - containerPort: 8080 @@ -115,6 +119,7 @@ spec: - image: macarenasre/dockercoins:latest-worker imagePullPolicy: Always + name: worker --- apiVersion: v1 kind: Service From 3eba510803162c07858846a35e791562d6959209 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:33:11 +0100 Subject: [PATCH 31/36] Update ci.yaml --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 2e04984..0c44ac3 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -2,7 +2,7 @@ name: CI on: push: branches: - - master + - docker jobs: docker: runs-on: ubuntu-18.04 From 00900901fab97da3e0716153817ff2716ac2fe4c Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:37:28 +0100 Subject: [PATCH 32/36] Update ci.yaml --- .github/workflows/ci.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 0c44ac3..9ec0100 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -182,6 +182,10 @@ jobs: while true do sleep 10 + kubecetl deploy/redis + kubectl describe rs + kubectl describe po + sleep 100 kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done app=rng From 2cb44228ca863676fe9376c8402ea8a5b81af580 Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:39:48 +0100 Subject: [PATCH 33/36] Update ci.yaml --- .github/workflows/ci.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 9ec0100..afbaf0e 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -185,6 +185,7 @@ jobs: kubecetl deploy/redis kubectl describe rs kubectl describe po + kubectl logs describe deploy/redis sleep 100 kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done From fca0d1d03553c79c4530bf90c7c8d1fd8e9fbdbb Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:43:21 +0100 Subject: [PATCH 34/36] Update ci.yaml --- .github/workflows/ci.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index afbaf0e..f1c2aca 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -182,11 +182,11 @@ jobs: while true do sleep 10 - kubecetl deploy/redis - kubectl describe rs - kubectl describe po - kubectl logs describe deploy/redis - sleep 100 + #kubecetl deploy/redis + #kubectl describe rs + #kubectl describe po + #kubectl logs describe deploy/redis + #sleep 100 kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break done app=rng From 50c2b1a78cecf1313702186227dbdb07d231a7fd Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 11:44:16 +0100 Subject: [PATCH 35/36] Update dockercoins.yaml --- etc/kubernetes/manifests/dockercoins.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/etc/kubernetes/manifests/dockercoins.yaml b/etc/kubernetes/manifests/dockercoins.yaml index bdcd5ce..153f90d 100644 --- a/etc/kubernetes/manifests/dockercoins.yaml +++ b/etc/kubernetes/manifests/dockercoins.yaml @@ -62,7 +62,6 @@ spec: containers: - image: redis - imagePullPolicy: Always name: redis ports: - From ec20386850be8cfca1e08f4a778e08ab21d0010c Mon Sep 17 00:00:00 2001 From: Macarena-SRE <80257232+Macarena-SRE@users.noreply.github.com> Date: Tue, 16 Mar 2021 12:00:32 +0100 Subject: [PATCH 36/36] Update ci.yaml --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index f1c2aca..887c954 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -194,7 +194,7 @@ jobs: while true do sleep 10 - kubectl logs deploy/${app} 2>& 1 | grep "${pattern}" && break + kubectl logs ds/${app} 2>& 1 | grep "${pattern}" && break done app=webui pattern='WEBUI running on port'