Is there a service type which provides an application to you, but doesn't provide infrastructure for it (IaaS, PaaS, SaaS)? - service

As we know there are 4 types as services:
On-site - you manage everything.
IaaS - Infrastructure as a service - there is some machine that you can use.
PaaS - Platform as a service - There is some runtime where you can run your applications.
SaaS - Software as a service - There is everything, you are just using the application.
But is there some type that describes service that provides an application to you, but doesn't give you any underlying stuff for it (Runtime, O/S, Networking, etc.)? Where you go upside-down considering the picture above.
For example, site builders, or any other builders where you can build an application, export it and use on some PaaS or IaaS.

Related

How to deploy code to IBM Cloud using DevOps approach?

Can somebody bring some light in IBM Cloud deployments tools / platforms whatever?
I am new to it, so I am looking at their docs, watching videos and still i am confused.
What I want to achieve is typical scenario fetch code from repo, build it, test it, deploy it to cloud. I found strategies / platforms how to achieve that and i still can't see differences advantages / disadvantages between them.
So we have:
toolchain
cloud foundry
code engine
Continuous Delivery (service)
and maybe something more? :)
I am looking at Cloud Foundry explained video and the guy is saying if you want to do not care about the bottom part like networking, security, containers you can choose deploy using K8S service. Wtf? So from total automatic thing you can now handle something in the cloud foundry by yourself. So for me its total mix of everything together and i don't know now which tool / platform / strategy to use.
Any comment is appreciated.
It all depends on your requirements.
IBM DevOps/Continuous Delivery/Toolchanis is set of services that can build and deploy your application to given runtime. You can find various tutorials here - https://www.ibm.com/cloud/architecture/courses/toolchain-tutorials. These tutorials shows you various things that you can embed in your build pipelines (like code scanning with CRA, image scanning, signing etc)
These runtimes can be different depending on your requirements:
CloudFoundry, where you deploy app using a buildpak, but this is rather fading technology, so I wouldn't recommend that
as docker image in K8s/OpenShift cluster - use this if your organization is planning or already utilizing Docker/Kubernetes/OpenShift. You will need to create K8s/OpenShift cluster first.
as serverless app, using the IBM Code Engine
If you are just starting and just want to deploy simple, single app to the Cloud I'd consider using IBM Code Engine and not investigate Toolchains for now. Check basic demo here - How to deploy source code with IBM Cloud Code Engine

Dapr service discovery

We are evaluating Dapr for our microservice framework. We will be using Kubernetes. One of the advertised selling points for Dapr is service invocation and service discovery. Doesn't K8s already offer service discovery out of the box?
Short answer: Yes (Kubernetes offers Service Discovery)
While there may be several patterns (and tools being the implementation of these patterns) for Service Discovery, Kubernetes offers service discovery at its core through the Service objects avoiding any needs of using a particular technology or tool to achieve a basic Container-Managed runtime environment.
You can read more on Kubernetes Services in the official documentation.
It is worth noting that dapr is a platform agnostic portable runtime that does not depend on Kubernetes and its core Service Discovery feature.
It offers more features than simply discovering your services (it has been usually compared to Service Meshes tools as the tend to look out being the same):
It offers transparent and secured service-to-service calls
It allows Publish-Subscribe communication style
It offers a way to register triggers and resource bindings (allowing for function-as-a-service development style)
It offers observability out-of-the-box
...

How can I configure multiple different destinations?

i want to have multiple destinations is it possible to configure in cloud foundry environment?
xs-app.json
Your question is not really precise. When talking about SAP Cloud Platform Cloud Foundry, destinations can be configured on different levels. Most importantly the question is where you want to configure them with which purpose.
I suppose your linked screenshot about the xs-app.json is related to the approuter you have deployed, and you want to configure different routes. This is the first important thing to understand. You are probably trying to deploy and configure an application that acts as an entry-point for a bigger application, maybe even a SaaS-style offering or a "simple" service. The approuter on the SAP Cloud Platform Cloud Foundry normally acts as the browser-based gate into your application, handling SAML/IDP authentication and session management.
A destination can be seen as configured "target" for certain requests. Destinations can be configured within the Cloud Cockpit for example on subaccount level. Mostly they define the required configuration for backend systems, for example to establish connectivity to an SAP Backend (S/4 HANA or even OnPremise Systems). The approuter knows also destinations defined in its environment variables, mostly through its deployment descriptor.
I would recommend the following tutorials and documentation references for more information about destinations on the platform and the xs-app.json configuration descriptor:
https://developers.sap.com/tutorials/cp-cf-create-destination.html
https://developers.sap.com/tutorials/cp-connectivity-consume-odata-service-approuter.html
https://help.sap.com/viewer/4505d0bdaf4948449b7f7379d24d0f0d/2.0.03/en-US/6ba89596e3a64a5480c3977d4ea7fdba.html
(not necessarily cloud related, but still helpful)

How to deploy Hyperledger Fabric V1.0 network in production level?

I have setup a Hyperledger Fabric V1.0 Network by following the Hyperledger-fabric docs and using fabric-sdk-java client I am able to communicate with the network from my java application. Now everything is working fine in the development setup. But still I am not getting the clear picture about its production level implemenation. Looking for some valuable suggestions for the following points to make it production live.
Will it be possible to use this setup for production? then how can I build my network using this docker-compose setup? Which are the options available for production hosting of the network?
If it is possible to setup in production, should I run this docker-compose set up and all in all the peer system's, then how will I configure the docker-compose.yaml to define each of the peers/organisations which are in different system?
I have found Bluemix Blockchain Service as an alternative, but it is having high monthly charges. So is there any alternative to deploy myown Hyperledger Fabric V1.0 network by defining myown peers and organization?
I think that for a production deployment, you'd likely want to implement Swarm or Kubernetes. See Hyperledger Cello for instance. You will also want to have a process and automation for managing the code going forward. Updating images, chaincode, etc. Further, you might want to further automate some of the on-boarding process which at present is rather bare bones.
As noted above, the Docker Compose is designed for a single system. You'd likely want to use Swarm or Kubernetes to manage nodes on different systems and you want decentralized operations when you are engaging multiple entities into a consortia where the members want to choose where they run their nodes.
There is a developer sandbox offering that you can deploy to IBM's Container service (Kubernetes) but you won't be getting the benefits of the crypto acceleration, HSM, and added security of the LinuxOne platform on which IBM deploys the IBM Blockchain Platform. The good things in life may be free, but I would want to have the added value of a vendor provided cloud offering like IBM Blockchain Platform for my production system. YMMV.

What exactly is BlueMix in layman's terms?

How exactly would someone define BlueMix to an engineering major with little to no knowledge in Comp. Sci?
Bluemix is a fully managed cloud service so all of the operations activities such as maintenance, availability, upgrades are part of the Bluemix service, so users don't have to worry about setting up their own infrastructure or installing software.
Bluemix makes it easy for application developers to write applications as it is a polygot environment that supports many different languages and runtimes.
Applications in Bluemix can easily be scaled as needed leveraging the elasticity of the cloud. There are over 100 services available in Bluemix (both IBM and 3rd party services) which can be tied together to make robust applications and also to implement a microservices architecture.
Bluemix cloud services are available as part of the public multi-tenant cloud offering which runs on softlayer. There are also dedicated and local Bluemix cloud offerings available for users who don't want to use the public cloud or want to combine the different offerings to create a hybrid cloud.
it is a platform that lets you build, run, deploy applications via cloud. moreover, it handles multiple languages
Check Bluemix Overview topic in the docs: https://www.ng.bluemix.net/docs/overview/index.html