25 bliain ó shin, chuaigh Java isteach i bpríomhshruth an chláir agus sa deireadh bhí sé ar cheann de na príomhghnéithe a dtógtar stoic feidhmchlár timpeall air. Sa lá atá inniu ann, áfach, tá go leor daoine agus eagraíochtaí a bhí dílis do Java le blianta fada ag dul ar imirce nó ag smaoineamh ar imirce chuig an ardán.
Ar an drochuair, tá cuar foghlama géar ag Kubernetes agus cuireann sé ciseal oibriúcháin eile isteach sa phróiseas forbartha a bhfuil taithí ag ríomhchláraitheoirí Java air. Sa lá atá inniu inseoimid duit conas é a úsáid
Próiseas Traidisiúnta Forbartha Java
Próiseas forbartha traidisiúnta
Rís. 1. Próiseas forbartha traidisiúnta Java.
Próiseas Forbartha Java don Scamall
Nuair a bhogtar chuig feidhmchláir scamall, Kubernetes agus
Léirítear meiteamorfóis an phróisis forbartha traidisiúnta Java san aistriú go dtí an scamall i bhFíor. 2.
Rís. 2. Próiseas forbartha Java don scamall.
Eclipse JKube
Cuireann imirce go Kubernetes ciseal oibriúcháin eile leis an bpróiseas forbartha, agus tá go leor forbróirí neirbhíseach faoi mar go bhfuil siad ag iarraidh díriú ar a gcuid oibre lárnacha—loighic an fheidhmchláir—seachas conas iad a imscaradh. Agus is é seo nuair a thagann sé i spraoi.
Sa chuid eile den alt seo, taispeánfaimid duit conas an próiseas forbartha Java a shimpliú i dtimpeallacht Kubernetes trí Eclipse JKube a úsáid le Breiseán Kubernetes Maven.
Próiseas Forbartha Néal ag Úsáid Eclipse JKube
Déanaimis machnamh ar scéim forbartha beagán modhnaithe Java don scamall ó Fíor 2, ag tabhairt isteach Eclipse JKube agus Kubernetes Maven Plugin isteach ann, mar a thaispeántar i bhFíor. 3 .
Rís. 3. Próiseas forbartha Java don scamall ag baint úsáide as Eclipse JKube.
Mar is féidir linn a fheiceáil, anseo cuirtear tascanna sprioc réamhshocraithe Eclipse JKube in ionad na n-oibríochtaí go léir chun idirghníomhú le Kubernetes agus coimeádáin (aibhsithe i dearg sa léaráid), atá liostaithe i dTábla. 1.
Tábla 1. Eclipse tascanna réamhshocraithe JKube.
Tasc
Céim
Cur síos
PRE_INTEGRATION_TEST
Tógáil íomhánna docker
Suiteáil
Íomhánna docker a uaslódáil chuig an gclárlann
PROCESS_RESOURCES
manifests K8s a ghiniúint
Tiomsú
Manifests ginte a chur i bhfeidhm ar K8s
NEAMHDHEONACH
Acmhainní K8s a úsáideadh a bhaint ag baint úsáide as k8s:apply agus k8s: imscaradh
Tabhair faoi deara: Mura dteastaíonn uait go n-úsáidfeadh tascanna na réamhshocruithe tuairimí seo, is féidir leat Eclipse JKube a chumrú duit féin, ós rud é go dtacaíonn sé le cumraíocht trí
Anois, déanaimis féachaint ar shamplaí de Eclipse JKube agus Kubernetes Maven Plugin a úsáid agus iad ag obair le hiarratais.
Feidhmchlár Java a Imscaradh ar Kubernetes Ag Úsáid Eclipse JKube
Sa sampla seo déanfaimid feidhmchlár simplí Java a imscaradh ar bhraisle
Mar shampla iarratas a úsáidimid
~/work/repos/eclipse-jkube-demo-project : $ curl localhost:8080/random | jq .
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 45 0 45 0 0 818 0 --:--:-- --:--:-- --:--:-- 818
{
"id": "e80a4d10-c79b-4b9a-aaac-7c286cb37f3c"
}
Céim 1. Íoslódáil Breiseán Kubernetes Maven
Tá Kubernetes Maven Plugin sa stór
<plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>kubernetes-maven-plugin</artifactId>
<version>${jkube.version}</version>
</plugin>
Má úsáidtear OpenShift in ionad Kubernetes íon, ansin modhnaítear pom.xml mar seo a leanas:
<plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>openshift-maven-plugin</artifactId>
<version>${jkube.version}</version>
</plugin>
Céim 2. Tóg an íomhá docker
Is féidir comhad JAR an fheidhmchláir a thógáil leis an ordú pacáiste mvn, agus ansin is féidir an tasc sprioc mvn k8s: build a úsáid chun íomhá docker den fheidhmchlár a thógáil. Tabhair faoi deara go bhfuil an t-ainm réamhshocraithe íomhá sáraithe againn leis an airí seo:
<jkube.generator.name>docker.io/rohankanojia/random-generator:${project.version}</jkube.generator.name>
Sula ndéantar an íomhá a thógáil, ní mór duit a chinntiú go bhfuil an deamhan docker nochta i gceart. Is féidir é seo a dhéanamh leis an ordú seo a leanas:
$ eval $(minikube docker-env)
Ansin cuirimid isteach an mvn k8s: ordú a thógáil, agus is é seo a fheicfimid ar an scáileán agus an íomhá docker á thógáil ag baint úsáide as tasc tógála Eclipse JKube:
~/work/repos/eclipse-jkube-demo-project : $ mvn k8s:build
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------------< meetup:random-generator >-----------------------
[INFO] Building random-generator 0.0.1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- kubernetes-maven-plugin:1.0.0-rc-1:build (default-cli) @ random-generator ---
[INFO] k8s: Running in Kubernetes mode
[INFO] k8s: Building Docker image in Kubernetes mode
[INFO] k8s: Running generator spring-boot
[INFO] k8s: spring-boot: Using Docker image quay.io/jkube/jkube-java-binary-s2i:0.0.7 as base / builder
[INFO] k8s: [docker.io/rohankanojia/random-generator:0.0.1] "spring-boot": Created docker-build.tar in 251 milliseconds
[INFO] k8s: [docker.io/rohankanojia/random-generator:0.0.1] "spring-boot": Built image sha256:a20e5
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.053 s
[INFO] Finished at: 2020-08-10T11:28:23+05:30
[INFO] ------------------------------------------------------------------------
~/work/repos/eclipse-jkube-demo-project : $
Céim 3. Uaslódáil an íomhá chuig an gclár docker
Tar éis dúinn an íomhá docker a thógáil leis an gclár brú cumraithe (is é docker.io inár gcás), is féidir linn an íomhá seo a sheoladh chuig an gclárlann. Seo é a thaispeánfar tar éis dúinn iarraidh ar Eclipse JKube an mvn k8s: tasc brú a bhrú:
~/work/repos/eclipse-jkube-demo-project : $ mvn k8s:push
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------------< meetup:random-generator >-----------------------
[INFO] Building random-generator 0.0.1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- kubernetes-maven-plugin:1.0.0-rc-1:push (default-cli) @ random-generator ---
[INFO] k8s: Running in Kubernetes mode
[INFO] k8s: Building Docker image in Kubernetes mode
[INFO] k8s: Running generator spring-boot
[INFO] k8s: spring-boot: Using Docker image quay.io/jkube/jkube-java-binary-s2i:0.0.7 as base / builder
[INFO] k8s: The push refers to repository [docker.io/rohankanojia/random-generator]
5dcd9556710f: Layer already exists
b7139ad07aa8: Layer already exists
b6f081e4b2b6: Layer already exists
d8e1f35641ac: Layer already exists
[INFO] k8s: 0.0.1: digest: sha256:9f9eda2a13b8cab1d2c9e474248500145fc09e2922fe3735692f9bda4c76002d size: 1162
[INFO] k8s: Pushed docker.io/rohankanojia/random-generator:0.0.1 in 7 seconds
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 11.222 s
[INFO] Finished at: 2020-08-10T11:35:37+05:30
[INFO] ------------------------------------------------------------------------
~/work/repos/eclipse-jkube-demo-project : $
Tar éis duit an íomhá a sheoladh, ní mór duit a sheiceáil go bhfuil sé san áireamh sa chlár. Is é ár gcás, ní fheicimid go simplí é i Docker Hub, mar a thaispeántar i bhFíor. 4.
Rís. 4. Bhí an íomhá a seoladh chuig an gclárlann le feiceáil i Docker Hub.
Céim 4. Gin manifests acmhainn Kubernetes don fheidhmchlár
Mar sin, tá íomhá an iarratais bailithe againn, anois ní mór dúinn manifests Kubernetes a scríobh. Chun é seo a dhéanamh, tá tasc ag Eclipse JKube a ghineann léiriú acmhainní dochta bunaithe ar chreat bunúsach Java (
Inár sampla, fágaimid gach rud mar atá, agus dá bhrí sin gineann Eclipse JKube léiriú don imscaradh réamhshocraithe agus don tseirbhís le cineál ClusterIP. Agus gan ach ansin athraíonn muid an léiriú seirbhíse chun an cineál seirbhíse a athrú go NodePort. Is féidir leat an t-iompar réamhshocraithe a shárú leis an airí seo a leanas:
<jkube.enricher.jkube-service.type>NodePort</jkube.enricher.jkube-service.type>
Seo é an chuma a bheidh ar aschur an scáileáin tar éis dúinn iarraidh ar Eclipse JKube an mvn k8s:tasc acmhainne acmhainne a dhéanamh.
~/work/repos/eclipse-jkube-demo-project : $ mvn k8s:resource
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------------< meetup:random-generator >-----------------------
[INFO] Building random-generator 0.0.1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- kubernetes-maven-plugin:1.0.0-rc-1:resource (default-cli) @ random-generator ---
[INFO] k8s: Running generator spring-boot
[INFO] k8s: spring-boot: Using Docker image quay.io/jkube/jkube-java-binary-s2i:0.0.7 as base / builder
[INFO] k8s: jkube-controller: Adding a default Deployment
[INFO] k8s: jkube-service: Adding a default service 'random-generator' with ports [8080]
[INFO] k8s: jkube-healthcheck-spring-boot: Adding readiness probe on port 8080, path='/actuator/health', scheme='HTTP', with initial delay 10 seconds
[INFO] k8s: jkube-healthcheck-spring-boot: Adding liveness probe on port 8080, path='/actuator/health', scheme='HTTP', with initial delay 180 seconds
[INFO] k8s: jkube-revision-history: Adding revision history limit to 2
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.344 s
[INFO] Finished at: 2020-08-10T11:38:11+05:30
[INFO] ------------------------------------------------------------------------
~/work/repos/eclipse-jkube-demo-project : $ ls target/classes/META-INF/jkube/kubernetes
random-generator-deployment.yml random-generator-service.yml
~/work/repos/eclipse-jkube-demo-project : $ cat target/classes/META-INF/jkube/kubernetes/random-generator-deployment.yml | head -n10
---
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
jkube.io/git-url: [email protected]:rohanKanojia/eclipse-jkube-demo-project.git
jkube.io/git-commit: 1ef9ef2ef7a6fcbf8eb64c293f26f9c42d026512
jkube.io/git-branch: master
jkube.io/scm-url: https://github.com/spring-projects/spring-boot/spring-boot-starter-parent/random-generator
jkube.io/scm-tag: HEAD
~/work/repos/eclipse-jkube-demo-project : $
Céim 5. Imscaradh an feidhmchlár chuig braisle Kubernetes
Anois táimid réidh leis an bhfeidhmchlár a imscaradh: tá a íomhá ginte againn agus ansin gineadh sainfhoilsiú acmhainní go huathoibríoch. Níl fágtha anois ach é seo ar fad a chur i bhfeidhm ar bhraisle Kubernetes. Chun an feidhmchlár a imscaradh, is féidir leat, ar ndóigh, an t-ordú kubectl apply -f a úsáid, ach is féidir leis an mbreiseán seo a dhéanamh dúinn. Seo é a thaispeánfar ar an scáileán tar éis dúinn iarraidh ar Eclipse JKube na mvn k8s a rith: cuir i bhfeidhm tasc:
~/work/repos/eclipse-jkube-demo-project : $ mvn k8s:apply
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------------< meetup:random-generator >-----------------------
[INFO] Building random-generator 0.0.1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- kubernetes-maven-plugin:1.0.0-rc-1:apply (default-cli) @ random-generator ---
[INFO] k8s: Using Kubernetes at https://192.168.39.145:8443/ in namespace default with manifest /home/rohaan/work/repos/eclipse-jkube-demo-project/target/classes/META-INF/jkube/kubernetes.yml
[INFO] k8s: Using namespace: default
[INFO] k8s: Creating a Service from kubernetes.yml namespace default name random-generator
[INFO] k8s: Created Service: target/jkube/applyJson/default/service-random-generator.json
[INFO] k8s: Creating a Deployment from kubernetes.yml namespace default name random-generator
[INFO] k8s: Created Deployment: target/jkube/applyJson/default/deployment-random-generator.json
[INFO] k8s: HINT: Use the command `kubectl get pods -w` to watch your pods start up
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7.306 s
[INFO] Finished at: 2020-08-10T11:40:57+05:30
[INFO] ------------------------------------------------------------------------
~/work/repos/eclipse-jkube-demo-project : $ kubectl get pods -w
NAME READY STATUS RESTARTS AGE
random-generator-58b7847d7f-9m9df 0/1 Running 0 7s
random-generator-58b7847d7f-9m9df 1/1 Running 0 17s
^C~/work/repos/eclipse-jkube-demo-project : $ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
io-openliberty-sample-getting-started NodePort 10.110.4.104 <none> 9080:30570/TCP 44h
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 18d
random-generator NodePort 10.97.172.147 <none> 8080:32186/TCP 22s
~/work/repos/eclipse-jkube-demo-project : $ curl `minikube ip`:32186/random | jq .
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 45 0 45 0 0 1800 0 --:--:-- --:--:-- --:--:-- 1875
{
"id": "42e5571f-a20f-44b3-8184-370356581d10"
}
Céim 6. Dí-imscaradh iarratais ó bhraisle Kubernetes
Chun seo a dhéanamh, úsáidtear an tasc dí-imlonnaithe, rud a fhágann go simplí na hacmhainní go léir a cuireadh i bhfeidhm sa chéim roimhe sin a bhaint, is é sin, nuair a chuirtear an tasc iarratais i gcrích. Seo é a fheicfimid ar an scáileán tar éis dúinn iarraidh ar Eclipse JKube an tasc mvn k8s: dí-imscaradh a dhéanamh:
~/work/repos/eclipse-jkube-demo-project : $ kubectl get all
NAME READY STATUS RESTARTS AGE
pod/random-generator-58b7847d7f-9m9df 1/1 Running 0 5m21s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 18d
service/random-generator NodePort 10.97.172.147 <none> 8080:32186/TCP 5m21s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/random-generator 1/1 1 1 5m21s
NAME DESIRED CURRENT READY AGE
replicaset.apps/random-generator-58b7847d7f 1 1 1 5m21s
~/work/repos/eclipse-jkube-demo-project : $ mvn k8s:undeploy
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------------< meetup:random-generator >-----------------------
[INFO] Building random-generator 0.0.1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- kubernetes-maven-plugin:1.0.0-rc-1:undeploy (default-cli) @ random-generator ---
[INFO] k8s: Using Kubernetes at https://192.168.39.145:8443/ in namespace default with manifest /home/rohaan/work/repos/eclipse-jkube-demo-project/target/classes/META-INF/jkube/kubernetes.yml
[INFO] k8s: Using namespace: default
[INFO] k8s: Deleting resource Deployment default/random-generator
[INFO] k8s: Deleting resource Service default/random-generator
[INFO] k8s: HINT: Use the command `kubectl get pods -w` to watch your pods start up
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.412 s
[INFO] Finished at: 2020-08-10T11:46:22+05:30
[INFO] ------------------------------------------------------------------------
~/work/repos/eclipse-jkube-demo-project : $ kubectl get pods -w
^C~/work/repos/eclipse-jkube-demo-project : $ kubectl get all
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 18d
~/work/repos/eclipse-jkube-demo-project : $
Cad eile is féidir leat a dhéanamh le Eclipse JKube
Mar sin, d'fhéachamar ar na príomhthascanna sprice de chuid Eclipse JKube agus Kubernetes Maven Plugin, a éascaíonn forbairt iarratais Java don ardán Kubernetes. Mura dteastaíonn uait na tascanna seo a chur isteach ón méarchlár i gcónaí, is féidir leat iad a scríobh i gcumraíocht an bhreiseáin, mar shampla, mar seo:
<plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>kubernetes-maven-plugin</artifactId>
<version>${project.version}</version>
<executions>
<execution>
<goals>
<goal>build</goal>
<goal>resource</goal>
<goal>apply</goal>
</goals>
</execution>
</executions>
</plugin>
Ní mór a rá nach ndearnamar san Airteagal seo na tascanna sprioc go léir atá in Eclipse JKube agus Kubernetes Maven Plugin a mheas, agus mar sin cuirimid i dTábla 2 liosta de thascanna breise a d'fhéadfadh a bheith úsáideach duit freisin.
Tábla 2. Tascanna breise sprioc JKube Eclipse.
Tasc
Céim
Cur síos
bhailíochtú
Ag fáil logaí ó fheidhmchlár a ritheann ar Kubernetes.
PACÁISTE
Oscail calafort dífhabhtaithe ionas gur féidir leat d’fheidhmchlár a dhífhabhtú ag rith ar Kubernetes go díreach ón IDE.
Suiteáil
Forc a chruthú don tasc Suiteáil agus na manifests ginte a chur i bhfeidhm ar bhraisle Kubernetes ar an mbealach céanna agus a dhéantar i gcás an taisc iarratais.
PACÁISTE
Feidhmchlár a imscaradh go te go huathoibríoch trína ainmspás a rianú.
Feidhmchláir Java a Imscaradh ar Red Hat OpenShift Ag Úsáid Breiseán OpenShift Maven
Chun an feidhmchlár ónár sampla a imscaradh ar ardán Red Hat OpenShift, úsáidimid an breiseán
~/work/repos/eclipse-jkube-demo-project : $ mvn oc:build oc:resource oc:apply
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------------< meetup:random-generator >-----------------------
[INFO] Building random-generator 0.0.1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- openshift-maven-plugin:1.0.0-rc-1:build (default-cli) @ random-generator ---
[INFO] oc: Using OpenShift build with strategy S2I
[INFO] oc: Running in OpenShift mode
[INFO] oc: Running generator spring-boot
[INFO] oc: spring-boot: Using Docker image quay.io/jkube/jkube-java-binary-s2i:0.0.7 as base / builder
[INFO] oc: [random-generator:0.0.1] "spring-boot": Created docker source tar /home/rohaan/work/repos/eclipse-jkube-demo-project/target/docker/random-generator/0.0.1/tmp/docker-build.tar
[INFO] oc: Adding to Secret pullsecret-jkube
[INFO] oc: Using Secret pullsecret-jkube
[INFO] oc: Creating BuildServiceConfig random-generator-s2i for Source build
[INFO] oc: Creating ImageStream random-generator
[INFO] oc: Starting Build random-generator-s2i
[INFO] oc: Waiting for build random-generator-s2i-1 to complete...
[INFO] oc: Caching blobs under "/var/cache/blobs".
[INFO] oc: Getting image source signatures
[INFO] oc: Copying blob sha256:cf0f3ebe9f536c782ab3835049cfbd9a663761ded9370791ef6ea3965c823aad
[INFO] oc: Copying blob sha256:57de4da701b511cba33bbdc424757f7f3b408bea741ca714ace265da9b59191a
[INFO] oc: Copying blob sha256:f320f94d91a064281f5127d5f49954b481062c7d56cce3b09910e471cf849050
[INFO] oc: Copying config sha256:52d6788fcfdd39595264d34a3959464a5dabc1d4ef0ae188802b20fc2d6a857b
[INFO] oc: Writing manifest to image destination
[INFO] oc: Storing signatures
[INFO] oc: Generating dockerfile with builder image quay.io/jkube/jkube-java-binary-s2i:0.0.7
[INFO] oc: STEP 1: FROM quay.io/jkube/jkube-java-binary-s2i:0.0.7
[INFO] oc: STEP 2: LABEL "io.openshift.build.source-location"="/tmp/build/inputs" "io.openshift.build.image"="quay.io/jkube/jkube-java-binary-s2i:0.0.7"
[INFO] oc: STEP 3: ENV JAVA_APP_DIR="/deployments" OPENSHIFT_BUILD_NAME="random-generator-s2i-1" OPENSHIFT_BUILD_NAMESPACE="default"
[INFO] oc: STEP 4: USER root
[INFO] oc: STEP 5: COPY upload/src /tmp/src
[INFO] oc: STEP 6: RUN chown -R 1000:0 /tmp/src
[INFO] oc: STEP 7: USER 1000
[INFO] oc: STEP 8: RUN /usr/local/s2i/assemble
[INFO] oc: INFO S2I source build with plain binaries detected
[INFO] oc: INFO S2I binary build from fabric8-maven-plugin detected
[INFO] oc: INFO Copying binaries from /tmp/src/deployments to /deployments ...
[INFO] oc: random-generator-0.0.1.jar
[INFO] oc: INFO Copying deployments from deployments to /deployments...
[INFO] oc: '/tmp/src/deployments/random-generator-0.0.1.jar' -> '/deployments/random-generator-0.0.1.jar'
[INFO] oc: STEP 9: CMD /usr/local/s2i/run
[INFO] oc: STEP 10: COMMIT temp.builder.openshift.io/default/random-generator-s2i-1:48795e41
[INFO] oc: time="2020-08-10T06:37:49Z" level=info msg="Image operating system mismatch: image uses "", expecting "linux""
[INFO] oc: time="2020-08-10T06:37:49Z" level=info msg="Image architecture mismatch: image uses "", expecting "amd64""
[INFO] oc: Getting image source signatures
[INFO] oc: Copying blob sha256:d8e1f35641acb80b562f70cf49911341dfbe8c86f4d522b18efbf3732aa74223
[INFO] oc: Copying blob sha256:b6f081e4b2b6de8be4b1dec132043d14c121e968384dd624fb69c2c07b482edb
[INFO] oc: Copying blob sha256:b7139ad07aa8ce4ed5a132f7c5cc9f1de0f5099b5e155027a23d57f7fbe78b16
[INFO] oc: Copying blob sha256:98972fc90a1108315cc5b05b2c691a0849a149727a7b81e76bc847ac2c6d9714
[INFO] oc: Copying config sha256:27aaadaf28e24856a66db962b88118b8222b61d79163dceeeed869f7289bc230
[INFO] oc: Writing manifest to image destination
[INFO] oc: Storing signatures
[INFO] oc: --> 27aaadaf28e
[INFO] oc: 27aaadaf28e24856a66db962b88118b8222b61d79163dceeeed869f7289bc230
[INFO] oc: Getting image source signatures
[INFO] oc:
[INFO] oc: Pushing image image-registry.openshift-image-registry.svc:5000/default/random-generator:0.0.1 ...
[INFO] oc: Copying blob sha256:f320f94d91a064281f5127d5f49954b481062c7d56cce3b09910e471cf849050
[INFO] oc: Copying blob sha256:cf0f3ebe9f536c782ab3835049cfbd9a663761ded9370791ef6ea3965c823aad
[INFO] oc: Copying blob sha256:57de4da701b511cba33bbdc424757f7f3b408bea741ca714ace265da9b59191a
[INFO] oc: Copying blob sha256:98972fc90a1108315cc5b05b2c691a0849a149727a7b81e76bc847ac2c6d9714
[INFO] oc: Copying config sha256:27aaadaf28e24856a66db962b88118b8222b61d79163dceeeed869f7289bc230
[INFO] oc: Writing manifest to image destination
[INFO] oc: Storing signatures
[INFO] oc: Successfully pushed image-registry.openshift-image-registry.svc:5000/default/random-generator@sha256:aa9e1a380c04ef9174ba56459c13d44420ebe653ebf32884d60fe4306b17306d
[INFO] oc: Push successful
[INFO] oc: Build random-generator-s2i-1 in status Complete
[INFO] oc: Found tag on ImageStream random-generator tag: sha256:aa9e1a380c04ef9174ba56459c13d44420ebe653ebf32884d60fe4306b17306d
[INFO] oc: ImageStream random-generator written to /home/rohaan/work/repos/eclipse-jkube-demo-project/target/random-generator-is.yml
[INFO]
[INFO] --- openshift-maven-plugin:1.0.0-rc-1:resource (default-cli) @ random-generator ---
[INFO] oc: Using docker image name of namespace: default
[INFO] oc: Running generator spring-boot
[INFO] oc: spring-boot: Using Docker image quay.io/jkube/jkube-java-binary-s2i:0.0.7 as base / builder
[INFO] oc: jkube-controller: Adding a default DeploymentConfig
[INFO] oc: jkube-service: Adding a default service 'random-generator' with ports [8080]
[INFO] oc: jkube-healthcheck-spring-boot: Adding readiness probe on port 8080, path='/actuator/health', scheme='HTTP', with initial delay 10 seconds
[INFO] oc: jkube-healthcheck-spring-boot: Adding liveness probe on port 8080, path='/actuator/health', scheme='HTTP', with initial delay 180 seconds
[INFO] oc: jkube-revision-history: Adding revision history limit to 2
[INFO]
[INFO] --- openshift-maven-plugin:1.0.0-rc-1:apply (default-cli) @ random-generator ---
[INFO] oc: Using OpenShift at https://api.crc.testing:6443/ in namespace default with manifest /home/rohaan/work/repos/eclipse-jkube-demo-project/target/classes/META-INF/jkube/openshift.yml
[INFO] oc: OpenShift platform detected
[INFO] oc: Using project: default
[INFO] oc: Creating a Service from openshift.yml namespace default name random-generator
[INFO] oc: Created Service: target/jkube/applyJson/default/service-random-generator.json
[INFO] oc: Creating a DeploymentConfig from openshift.yml namespace default name random-generator
[INFO] oc: Created DeploymentConfig: target/jkube/applyJson/default/deploymentconfig-random-generator.json
[INFO] oc: Creating Route default:random-generator host: null
[INFO] oc: HINT: Use the command `oc get pods -w` to watch your pods start up
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:07 min
[INFO] Finished at: 2020-08-10T12:08:00+05:30
[INFO] ------------------------------------------------------------------------
~/work/repos/eclipse-jkube-demo-project : $ oc get pods -w
NAME READY STATUS RESTARTS AGE
random-generator-1-deploy 1/1 Running 0 14s
random-generator-1-vnrm9 0/1 Running 0 11s
random-generator-s2i-1-build 0/1 Completed 0 1m
random-generator-1-vnrm9 1/1 Running 0 24s
random-generator-1-deploy 0/1 Completed 0 28s
~/work/repos/eclipse-jkube-demo-project : $ oc get routes
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD
random-generator random-generator-default.apps-crc.testing random-generator 8080 None
~/work/repos/eclipse-jkube-demo-project : $ curl random-generator-default.apps-crc.testing/random
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 45 0 45 0 0 1666 0 --:--:-- --:--:-- --:--:-- 1730
{
"id": "d80052d9-2f92-43cb-b9eb-d7cffb879798"
}
~/work/repos/eclipse-jkube-demo-project : $
Ceacht físeán
Chun tuilleadh a fhoghlaim faoi conas forbairt Kubernetes a dhéanamh níos éasca le Eclipse JKube, féach ar an físeán teagaisc seo ar conas feidhmchlár simplí Tosaithe Earraigh a imscaradh go tapa ar Minikube:
Conclúid
San Airteagal seo, léirigh muid conas a dhéanann Eclipse JKube saol níos éasca d’fhorbróir Java agus iad ag obair le Kubernetes. Tá tuilleadh eolais ar Eclipse JKube le fáil ag
Foinse: will.com