25 bliadhna air ais, chaidh Java a-steach don phrìomh shruth de phrògramadh agus mu dheireadh thàinig e gu bhith mar aon de na prìomh eileamaidean timcheall air a bheil cruachan tagraidh air an togail. An-diugh, ge-tà, tha mòran dhaoine agus bhuidhnean a tha air a bhith dìleas do Java airson grunn bhliadhnaichean trang ag imrich no a’ beachdachadh air imrich chun àrd-ùrlar.
Gu mì-fhortanach, tha lùb ionnsachaidh cas aig Kubernetes agus a 'toirt a-steach ìre obrachaidh eile a-steach don phròiseas leasachaidh a tha luchd-prògramaidh Java cleachdte ris. An-diugh innsidh sinn dhut mar a chleachdas tu e
Pròiseas Leasachaidh Java traidiseanta
Pròiseas leasachaidh traidiseanta
Reis. 1. Pròiseas leasachaidh Java traidiseanta.
Pròiseas Leasachaidh Java airson an Cloud
Nuair a ghluaiseas tu gu tagraidhean sgòthan, bidh Kubernetes agus
Tha metamorphosis pròiseas leasachaidh traidiseanta Java anns a’ ghluasad chun sgòth ri fhaicinn ann am Fig. 2.
Reis. 2. Pròiseas leasachaidh Java airson an sgòth.
Eclipse JKube
Bidh imrich gu Kubernetes a’ cur ìre obrachaidh eile ris a’ phròiseas leasachaidh, agus tha mòran de luchd-leasachaidh iomagaineach mu dheidhinn leis gu bheil iad airson fòcas a chuir air a’ phrìomh obair aca - loidsig an tagraidh - seach mar a chleachdas iad iad. Agus seo far a bheil e a 'tighinn a-steach.
Anns a’ chòrr den artaigil seo, seallaidh sinn dhut mar as urrainn dhut pròiseas leasachaidh Java a dhèanamh nas sìmplidhe ann an àrainneachd Kubernetes le bhith a’ cleachdadh Eclipse JKube leis an Kubernetes Maven Plugin.
Pròiseas Leasachaidh Cloud A’ cleachdadh Eclipse JKube
Beachdaichidh sinn air sgeama leasachaidh Java beagan atharraichte airson an sgòth bho Fig. 2, a’ toirt a-steach Eclipse JKube agus Kubernetes Maven Plugin a-steach dha, mar a chithear ann am Fig. 3.
Reis. 3. Pròiseas leasachaidh Java airson an sgòth a 'cleachdadh Eclipse JKube.
Mar a chì sinn, an seo tha a h-uile gnìomh airson eadar-obrachadh le Kubernetes agus soithichean (air a chomharrachadh ann an dearg san dealbh) air an cur an àite gnìomhan amasan bunaiteach Eclipse JKube, a tha air an liostadh sa chlàr. 1.
Clàr 1. Eclipse JKube default gnìomhan.
Amas
Ìre
Tuairisgeul
PRE_INTEGRATION_TEST
Togail dealbhan docker
stàlaich
Gus dealbhan a luchdachadh a-nuas gu docker
PROCESS_RESOURCES
A 'cruthachadh taisbeanaidhean K8s
COMHRADH
A’ cur taisbeanairean gineadh gu K8s
AN AONGHADH
A’ toirt air falbh goireasan K8s a chaidh a chleachdadh a’ cleachdadh k8s: tagradh agus k8s: cleachdadh
Note: Mura h-eil thu airson gum bi gnìomhan a’ cleachdadh na bun-bheachdan beachdail sin, faodaidh tu Eclipse JKube a rèiteachadh le làimh dhut fhèin, leis gu bheil e a’ toirt taic do rèiteachadh tro
A-nis leig dhuinn sùil a thoirt air eisimpleirean de bhith a’ cleachdadh Eclipse JKube agus Kubernetes Maven Plugin nuair a bhios tu ag obair le tagraidhean.
A’ cleachdadh tagradh Java air Kubernetes a’ cleachdadh Eclipse JKube
San eisimpleir seo cuiridh sinn a-steach tagradh Java sìmplidh air brabhsair
Mar eisimpleir tagradh a bhios sinn a’ cleachdadh
~/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"
}
Ceum 1. Luchdaich a-nuas Kubernetes Maven Plugin
Tha Kubernetes Maven Plugin san stòr
<plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>kubernetes-maven-plugin</artifactId>
<version>${jkube.version}</version>
</plugin>
Ma thèid OpenShift a chleachdadh an àite Kubernetes fìor-ghlan, thèid pom.xml atharrachadh mar a leanas:
<plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>openshift-maven-plugin</artifactId>
<version>${jkube.version}</version>
</plugin>
Ceum 2. Tog an ìomhaigh docker
Faodar faidhle JAR an tagraidh a thogail leis an àithne pacaid mvn, agus an uairsin faodar an obair amas mvn k8s: build a chleachdadh gus ìomhaigh docker den tagradh a thogail. Thoir an aire gu bheil sinn air a dhol thairis air an ainm ìomhaigh bunaiteach leis an t-seilbh seo:
<jkube.generator.name>docker.io/rohankanojia/random-generator:${project.version}</jkube.generator.name>
Mus tèid an ìomhaigh a thogail, feumaidh tu dèanamh cinnteach gu bheil an daemon docker fosgailte gu ceart. Faodar seo a dhèanamh leis an òrdugh a leanas:
$ eval $(minikube docker-env)
An uairsin bidh sinn a’ dol a-steach don mvn k8s: build command, agus is e seo a chì sinn air an sgrion nuair a bhios sinn a’ togail ìomhaigh docker a’ cleachdadh gnìomh togail 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 : $
Ceum 3. Luchdaich suas an ìomhaigh gu clàr docker
Às deidh dhuinn an ìomhaigh docker a thogail leis a’ chlàr putaidh air a rèiteachadh (anns a ’chùis againn is e docker.io a th’ ann), is urrainn dhuinn an ìomhaigh seo a chuir chun chlàr. Is e seo a thèid a thaisbeanadh às deidh dhuinn iarraidh air Eclipse JKube na gnìomhan mvn k8s: push push:
~/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 : $
Às deidh dhut an ìomhaigh a chuir, feumaidh tu dèanamh cinnteach gu bheil e air a ghabhail a-steach sa chlàr. Anns a ’chùis againn, tha sinn dìreach ga fhaicinn ann an Docker Hub, mar a chithear ann am Fig. 4.
Reis. 4. Nochd an ìomhaigh a chaidh a chuir chun a 'chlàraidh ann an Docker Hub.
Ceum 4. Generate goireas Kubernetes manifests airson an iarrtais
Mar sin, tha sinn air ìomhaigh an tagraidh a chruinneachadh, a-nis feumaidh sinn manifestos Kubernetes a sgrìobhadh. Gus seo a dhèanamh, tha gnìomh aig Eclipse JKube a bhios a’ gineadh nochdaidhean ghoireasan teann stèidhichte air frèam Java bunaiteach (
Anns an eisimpleir againn, bidh sinn a ’fàgail a h-uile càil mar a tha, agus mar sin bidh Eclipse JKube a’ gineadh foillseachadh airson an cleachdadh bunaiteach agus airson an t-seirbheis le seòrsa ClusterIP. Agus dìreach an uairsin bidh sinn ag atharrachadh an t-seirbheis follaiseach gus an seòrsa seirbheis atharrachadh gu NodePort. Faodaidh tu a dhol thairis air a’ ghiùlan àbhaisteach a’ cleachdadh an t-seilbh a leanas:
<jkube.enricher.jkube-service.type>NodePort</jkube.enricher.jkube-service.type>
Seo cò ris a bhios toradh an sgrion coltach às deidh dhuinn iarraidh air Eclipse JKube an mvn k8s: goireas goireas goireas a choileanadh.
~/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 : $
Ceum 5. Cleachd an tagradh gu brabhsair Kubernetes
A-nis tha sinn uile deiseil airson an aplacaid a chleachdadh: tha sinn air an ìomhaigh aige a chruthachadh agus an uairsin air goireasan a chruthachadh gu fèin-ghluasadach. A-nis chan eil air fhàgail ach seo uile a chuir an sàs ann am buidheann Kubernetes. Gus an tagradh a chleachdadh, faodaidh tu, gu dearbh, an àithne kubectl apply -f a chleachdadh, ach faodaidh am plugan seo a dhèanamh dhuinn. Is e seo a nochdas air an sgrion às deidh dhuinn iarraidh air Eclipse JKube na mvn k8s a chuir an gnìomh: cuir an gnìomh gnìomh:
~/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"
}
Ceum 6. Undeploy iarrtasan bho bhuidheann Kubernetes
Gus seo a dhèanamh, thathas a ’cleachdadh a’ ghnìomh neo-chleachdadh, a tha dìreach a ’toirt air falbh a h-uile goireas a chaidh a chuir an sàs sa cheum roimhe, is e sin, nuair a thèid an gnìomh tagraidh a chuir gu bàs. Is e seo a chì sinn air an sgrion às deidh dhuinn iarraidh air Eclipse JKube an obair mvn k8s a choileanadh: cuir às do dhreuchd:
~/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 : $
Dè eile as urrainn dhut a dhèanamh le Eclipse JKube
Mar sin, thug sinn sùil air na prìomh ghnìomhan amasan aig Eclipse JKube agus Kubernetes Maven Plugin, a bhios a’ comasachadh leasachadh thagraidhean Java airson àrd-ùrlar Kubernetes. Mura h-eil thu airson na gnìomhan sin a chuir a-steach gu cunbhalach bhon mheur-chlàr, faodaidh tu an sgrìobhadh ann an rèiteachadh nam plugan, mar eisimpleir, 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>
Feumar a ràdh nach do bheachdaich sinn san artaigil seo air a h-uile gnìomh tadhail a tha ann an Eclipse JKube agus Kubernetes Maven Plugin, agus mar sin bheir sinn seachad ann an Clàr 2 liosta de ghnìomhan a bharrachd a dh’ fhaodadh a bhith feumail dhut cuideachd.
Clàr 2. Gnìomhan tadhail Eclipse JKube a bharrachd.
Amas
Ìre
Tuairisgeul
DAILEANACH
A’ faighinn logaichean bho thagradh a tha a’ ruith air Kubernetes.
pasgan
Fosgail port deasbaid gus an urrainn dhut an tagradh agad a dhì-cheadachadh a ’ruith air Kubernetes gu dìreach bhon IDE.
stàlaich
A’ cruthachadh forc airson a’ ghnìomh Stàladh agus a’ cur na taisbeanaidhean a chaidh a chruthachadh an sàs ann an cruinneachadh Kubernetes san aon dòigh ri cùis na h-obrach tagraidh.
pasgan
Cleachdadh teth fèin-ghluasadach de thagradh le bhith a’ cumail sùil air an àite-ainm aige.
A’ cleachdadh thagraidhean Java air Red Hat OpenShift a’ cleachdadh am plugan OpenShift Maven
Gus an tagradh bhon eisimpleir againn a chuir a-steach air àrd-ùrlar Red Hat OpenShift, bidh sinn a’ cleachdadh am plugan
~/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 : $
Leasanan bhidio
Gus barrachd ionnsachadh mu mar as urrainn dhut leasachadh Kubernetes a dhèanamh nas fhasa le Eclipse JKube, thoir sùil air an oideachadh bhidio seo air mar as urrainn dhut tagradh sìmplidh Spring Boot a chuir an sàs gu sgiobalta air Minikube:
co-dhùnadh
San artaigil seo, sheall sinn mar a nì Eclipse JKube beatha nas fhasa do leasaiche Java nuair a bhios e ag obair le Kubernetes. Gheibhear tuilleadh fiosrachaidh mu Eclipse JKube aig
Source: www.habr.com