Appearance
Basic Concepts
Yelken aims to become a general purpose cloud provider that is easy to use while providing extensive configuration options for opening doors to varying degree of solutions. To put it simply, Yelken provides compute, storage and networking resources for you by defining easy to use abstractions on top of them.
It allows non tech-savy users to easily create and manage websites powered by favorite web apps with a few simple steps. Besides that, developers can run their containerized workloads ranging from micro services with complex networking requirements to monolithic applications on Yelken infrastructure. Running containers has benefits not only for developers but also for any kind of user who wants to self-host an application without maintaining a server.
Yelken introduces a few concepts and abstractions to represent and manage underlying resources on the platform. A couple of them you will encounter first are Project, Environment and Service. Firstly, Project allows you to separate different project of yours. It is a top level resource which consists of multiple environments and services. Inside of a project, Environments enable you to isolate resources from each other, such as having a Production environment and a Staging environment where each environment is isolated and a resource in one environment cannot communicate with a resource in another environment. On the other hand, Services represents running instances of your applications such as a database, a web application or a cache server. To help understanding relation between resources, here is a graph that shows the hierarchy:
Project -> Environment -> ServiceWith this approach, it is possible to have a service running in an environment and communicate with another service running in the same environment. As an example, you can have two environments named Production and Development and two services, representing a web application and a database, running in both environments. This allows us having two services running in both Production and Development where web application in production can communicate with database running in the same environment.
Sync between environments
A feature that is under development will allow you to sync differences between environments to ensure that all changes are applied to a given environment.
In terms of networking, Yelken also allows you to configure how your services are reached over the network both internally and externally, meaning inside the platform and also from the internet. You can define ports of each service they listen on to let other services, running inside the same environment, connect them or route external connections to your service. You can also add your own domain to Yelken and add route definitions which enable you to direct HTTP requests to corresponding service with respect to path of request.
Lastly, Volume provides persistent storage for your services. By default, services do not have a persistent storage, meaning they are stateless. With Volumes, you can have persistent storage by mounting them into the service, hence container's filesystem.
Next
Up to this point, basic concepts of Yelken is given to make you familiar with the platform. To learn the details of these concepts and features, you can either continue your reading with next page or follow how todos displayed below.