oam | implementing Open Application Model control plane
kandi X-RAY | oam Summary
kandi X-RAY | oam Summary
oam is a Go library. oam has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.
The plug-in for implementing Open Application Model (OAM) control plane with Kubernetes.
The plug-in for implementing Open Application Model (OAM) control plane with Kubernetes.
Support
Quality
Security
License
Reuse
Support
oam has a low active ecosystem.
It has 1 star(s) with 0 fork(s). There are 1 watchers for this library.
It had no major release in the last 12 months.
oam has no issues reported. There are no pull requests.
It has a neutral sentiment in the developer community.
The latest version of oam is v0.3.3
Quality
oam has no bugs reported.
Security
oam has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
License
oam is licensed under the Apache-2.0 License. This license is Permissive.
Permissive licenses have the least restrictions, and you can use them in most projects.
Reuse
oam releases are available to install and integrate.
Installation instructions, examples and code snippets are available.
Top functions reviewed by kandi - BETA
kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of oam
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of oam
oam Key Features
No Key Features are available at this moment for oam.
oam Examples and Code Snippets
No Code Snippets are available at this moment for oam.
Community Discussions
No Community Discussions are available at this moment for oam.Refer to stack overflow page for discussions.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install oam
Install with webhook enabled by following steps:.
Create namespace for OAM runtime controller
Add helm repo
Install OAM Kubernetes Runtime
Step 1: Admission Webhook need you to prepare certificates and ca for production use. For none-production use, you could generate them by running the shell script provided in repo. curl -sfL https://raw.githubusercontent.com/crossplane/oam-kubernetes-runtime/master/hack/ssl/ssl.sh | bash -s oam-kubernetes-runtime-webhook oam-system The shell will generate files like below: $ tree . ├── csr.conf ├── oam-kubernetes-runtime-webhook.csr ├── oam-kubernetes-runtime-webhook.key └── oam-kubernetes-runtime-webhook.pem 0 directories, 4 files
Step 2: Create secret for ssl certificates: Notice the server key and certificate must be named tls.key and tls.crt, respectively. Secret name can be user defined, we'd better align with chart values. kubectl -n oam-system create secret generic webhook-server-cert --from-file=tls.key=./oam-kubernetes-runtime-webhook.key --from-file=tls.crt=./oam-kubernetes-runtime-webhook.pem
Step 3: Get CA Bundle info and install with its value caValue=`kubectl config view --raw --minify --flatten -o jsonpath='{.clusters[].cluster.certificate-authority-data}'` helm install core-runtime -n oam-system ./charts/oam-kubernetes-runtime --set useWebhook=true --set certificate.caBundle=$caValue
We have some examples in the repo for you to verify the OAM control plane is working:. Apply a sample application configuration. Verify that the application is running.
We have some examples in the repo for you to verify the OAM control plane is working: git clone git@github.com:crossplane/oam-kubernetes-runtime.git cd ./oam-kubernetes-runtime
Apply a sample application configuration kubectl apply -f examples/containerized-workload
Verify that the application is running Check its components: kubectl get components NAME WORKLOAD-KIND AGE example-component ContainerizedWorkload 63s Check its application configuration: kubectl get appconfig NAME AGE example-appconfig 3m48s Check the status and events from the application kubectl describe appconfig example-appconfig Status: Conditions: Last Transition Time: 2020-06-12T21:18:40Z Reason: Successfully reconciled resource Status: True Type: Synced Workloads: Component Name: example-component Traits: Trait Ref: API Version: core.oam.dev/v1alpha2 Kind: ManualScalerTrait Name: example-appconfig-trait Workload Ref: API Version: core.oam.dev/v1alpha2 Kind: ContainerizedWorkload Name: example-appconfig-workload Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal RenderedComponents 6s (x2 over 7s) oam/applicationconfiguration.core.oam.dev Successfully rendered components Normal AppliedComponents 6s (x2 over 6s) oam/applicationconfiguration.core.oam.dev Successfully applied components Normal Deployment created 6s (x3 over 6s) ContainerizedWorkload Workload `example-appconfig-workload` successfully server side patched a deployment `example-appconfig-workload` Normal Service created 6s (x3 over 6s) ContainerizedWorkload Workload `example-appconfig-workload` successfully server side patched a service `example-appconfig-workload` Normal Manual scalar applied 6s (x2 over 6s) ManualScalarTrait Trait `example-appconfig-trait` successfully scaled a resouce to 3 instances You should also check underlying deployment and service looking like below kubectl get deployments NAME READY UP-TO-DATE AVAILABLE AGE example-appconfig-workload-deployment 3/3 3 3 28s kubectl get services AME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE example-appconfig-workload-deployment-service NodePort 10.96.78.215 <none> 8080/TCP 28s
Create namespace for OAM runtime controller
Add helm repo
Install OAM Kubernetes Runtime
Step 1: Admission Webhook need you to prepare certificates and ca for production use. For none-production use, you could generate them by running the shell script provided in repo. curl -sfL https://raw.githubusercontent.com/crossplane/oam-kubernetes-runtime/master/hack/ssl/ssl.sh | bash -s oam-kubernetes-runtime-webhook oam-system The shell will generate files like below: $ tree . ├── csr.conf ├── oam-kubernetes-runtime-webhook.csr ├── oam-kubernetes-runtime-webhook.key └── oam-kubernetes-runtime-webhook.pem 0 directories, 4 files
Step 2: Create secret for ssl certificates: Notice the server key and certificate must be named tls.key and tls.crt, respectively. Secret name can be user defined, we'd better align with chart values. kubectl -n oam-system create secret generic webhook-server-cert --from-file=tls.key=./oam-kubernetes-runtime-webhook.key --from-file=tls.crt=./oam-kubernetes-runtime-webhook.pem
Step 3: Get CA Bundle info and install with its value caValue=`kubectl config view --raw --minify --flatten -o jsonpath='{.clusters[].cluster.certificate-authority-data}'` helm install core-runtime -n oam-system ./charts/oam-kubernetes-runtime --set useWebhook=true --set certificate.caBundle=$caValue
We have some examples in the repo for you to verify the OAM control plane is working:. Apply a sample application configuration. Verify that the application is running.
We have some examples in the repo for you to verify the OAM control plane is working: git clone git@github.com:crossplane/oam-kubernetes-runtime.git cd ./oam-kubernetes-runtime
Apply a sample application configuration kubectl apply -f examples/containerized-workload
Verify that the application is running Check its components: kubectl get components NAME WORKLOAD-KIND AGE example-component ContainerizedWorkload 63s Check its application configuration: kubectl get appconfig NAME AGE example-appconfig 3m48s Check the status and events from the application kubectl describe appconfig example-appconfig Status: Conditions: Last Transition Time: 2020-06-12T21:18:40Z Reason: Successfully reconciled resource Status: True Type: Synced Workloads: Component Name: example-component Traits: Trait Ref: API Version: core.oam.dev/v1alpha2 Kind: ManualScalerTrait Name: example-appconfig-trait Workload Ref: API Version: core.oam.dev/v1alpha2 Kind: ContainerizedWorkload Name: example-appconfig-workload Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal RenderedComponents 6s (x2 over 7s) oam/applicationconfiguration.core.oam.dev Successfully rendered components Normal AppliedComponents 6s (x2 over 6s) oam/applicationconfiguration.core.oam.dev Successfully applied components Normal Deployment created 6s (x3 over 6s) ContainerizedWorkload Workload `example-appconfig-workload` successfully server side patched a deployment `example-appconfig-workload` Normal Service created 6s (x3 over 6s) ContainerizedWorkload Workload `example-appconfig-workload` successfully server side patched a service `example-appconfig-workload` Normal Manual scalar applied 6s (x2 over 6s) ManualScalarTrait Trait `example-appconfig-trait` successfully scaled a resouce to 3 instances You should also check underlying deployment and service looking like below kubectl get deployments NAME READY UP-TO-DATE AVAILABLE AGE example-appconfig-workload-deployment 3/3 3 3 28s kubectl get services AME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE example-appconfig-workload-deployment-service NodePort 10.96.78.215 <none> 8080/TCP 28s
Support
For any new features, suggestions and bugs create an issue on GitHub.
If you have any questions check and ask questions on community page Stack Overflow .
Find more information at:
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page