-
Notifications
You must be signed in to change notification settings - Fork 107
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #114 from epiphany-platform/develop
0.2.0 Release
- Loading branch information
Showing
233 changed files
with
5,137 additions
and
1,056 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,5 +11,5 @@ certs/ | |
tests/ | ||
Dockerfile | ||
|
||
data/ | ||
build/ | ||
core/data/ | ||
core/build/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,7 @@ | ||
{ | ||
"MD013": false, | ||
"MD029": false, | ||
"MD031": false, | ||
"MD032": false, | ||
"MD034": false | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
# Changelog 0.1.1 | ||
# Changelog 0.1.2 | ||
|
||
## [0.1.2] - 2018-12-05 | ||
|
||
### Changed | ||
|
||
- Kubernetes v1.11.5 installation | ||
- Kubernetes v1.11.5 installation |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Changelog 0.2.0 | ||
|
||
## [0.2.0] - 2019-02-19 | ||
|
||
### Changed | ||
|
||
- Kubernetes v1.13.0 installation | ||
- Filebeat 6.5.4 installation | ||
- RabbitMQ installation inside Kubernetes (clustered RabbitMQ) #17 | ||
- RabbitMQ installation outside of Kubernetes (VM) #17 | ||
- PostgreSQL installation with replication #16 | ||
- Authentication service installation (Keycloak) inside Kubernetes | ||
- Automatic untainting Kubernetes Master when single Master deployed without Nodes #22 | ||
- Example applications added to /examples | ||
- Keycloak authentication (dotnet, java, python, javascript) #19 | ||
- RabbitMQ/Kafka (dotnet) #50, #39 | ||
- Documentation updates | ||
|
||
### Fixed | ||
|
||
- Filebeat memory consumption when Elasticsearch does not accept data #61 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,5 @@ | ||
# Epiphany | ||
# Core | ||
|
||
## Overview | ||
This folder contains the Epiphany core. | ||
|
||
Epiphany at it's core is full automation of Kubernetes and Docker plus additional builtin services such as Kafka for high speed messaging/events, Prometheus for monitoring and Graphana for dashboards, Elasticsearch and Kibana for centralized logging. Other optional services are being evaluated now. | ||
|
||
Epiphany can run on as few as one node (laptop, desktop, server) but the real value comes from running 3 or more nodes for scale and HA. Nodes can be added or removed at will depending on data in the manifest. Everything is data driven so simply changing the manifest data and running the automation will modify the environment. | ||
|
||
We currently use Terraform and Ansible for our automation orchestration. All automation is idempotent so you can run it as many times as you wish and it will maintain the same state unless you change the data. If someone makes a "snow flake" change to the environment (you should never do this) then simply running the automation again will put the environment back to the desired state. | ||
|
||
For the full story, go to [Epiphany documentation](https://github.com/epiphany-platform/docs/README.md). | ||
For the full story, go to [Epiphany documentation](../README.md). |
This file was deleted.
Oops, something went wrong.
3 changes: 0 additions & 3 deletions
3
core/assets/images/diagrams/playground/epiphany-playground.png
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Empty file.
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
--- | ||
# Ansible playbook that deploys applications on Kubernetes after cluster creation | ||
|
||
- hosts: all | ||
tasks: [ ] | ||
|
||
- hosts: deployments | ||
become: true | ||
become_method: sudo | ||
roles: | ||
- deployments |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
postgresql_database_port: "5432" | ||
configuration_temp_directory: "/home/{{ admin_user.name }}/epiphany-auth" | ||
default_namespace: "default" |
4 changes: 4 additions & 0 deletions
4
core/core/src/ansible/roles/deployments/tasks/applications/auth-service/cleanup.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
- name: Clean configs path | ||
file: | ||
state: absent | ||
path: "{{ configuration_temp_directory }}/" |
15 changes: 15 additions & 0 deletions
15
...core/src/ansible/roles/deployments/tasks/applications/auth-service/configure-database.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
- name: Create database for Epiphany Auth Service | ||
delegate_to: "{{ groups['postgresql'] | first }}" | ||
become_user: postgres | ||
postgresql_db: | ||
name: "{{ data.database.name }}" | ||
|
||
- name: Add postresql user | ||
delegate_to: "{{ groups['postgresql'] | first }}" | ||
become_user: postgres | ||
postgresql_user: | ||
db: "{{ data.database.name }}" | ||
name: "{{ data.database.user }}" | ||
password: "{{ data.database.password }}" | ||
role_attr_flags: CREATEDB,NOSUPERUSER | ||
expires: infinity |
18 changes: 18 additions & 0 deletions
18
core/core/src/ansible/roles/deployments/tasks/applications/auth-service/create-service.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
- name: Create directory for files | ||
file: | ||
path: "{{ configuration_temp_directory }}" | ||
state: directory | ||
become_user: "{{ admin_user.name }}" | ||
|
||
- name: Upload auth-service yaml | ||
become: yes | ||
template: | ||
dest: "{{ configuration_temp_directory }}/{{ auth_service_name }}-{{ namespace_name }}.yml" | ||
src: auth-service/auth-service.yml.j2 | ||
owner: "{{ admin_user.name }}" | ||
group: "{{ admin_user.name }}" | ||
mode: 0644 | ||
|
||
- name: Apply Epiphany Auth Service deployment | ||
shell: kubectl apply --kubeconfig=/home/{{ admin_user.name }}/.kube/config -f {{ configuration_temp_directory }}/{{ auth_service_name }}-{{ namespace_name }}.yml | ||
become_user: "{{ admin_user.name }}" |
15 changes: 15 additions & 0 deletions
15
core/core/src/ansible/roles/deployments/tasks/applications/auth-service/main.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
- name: Include validation | ||
include_tasks: "validation.yml" | ||
|
||
- name: Include database configuration when Epiphany storage used | ||
include_tasks: "configure-database.yml" | ||
when: data.database.address is undefined | ||
|
||
- name: Include variables setup | ||
include_tasks: "set-variables.yml" | ||
|
||
- name: Include service creation | ||
include_tasks: "create-service.yml" | ||
|
||
- name: Include cleanup tasks | ||
include_tasks: "cleanup.yml" |
21 changes: 21 additions & 0 deletions
21
core/core/src/ansible/roles/deployments/tasks/applications/auth-service/set-variables.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
- name: Set storage address if not set | ||
set_fact: | ||
auth_service_db_address: "{{ data.database.address | default(hostvars[groups['postgresql'][0]]['ansible_default_ipv4']['address']) }}" | ||
|
||
- name: Set storage port if not set | ||
set_fact: | ||
auth_service_db_port: "{{ data.database.port | default(postgresql_database_port) }}" | ||
|
||
- name: Set namespace variable | ||
set_fact: | ||
namespace_name: "{{ data.service.namespace | default(default_namespace) | lower }}" # Kubernetes (as of v1.11) accepts only lowercase namespace names. | ||
|
||
- name: Set service name variable if set | ||
set_fact: | ||
auth_service_name: "{{ data.service.name | lower }}" # Kubernetes (as of v1.11) accepts only lowercase service names. | ||
when: data.service.name is defined | ||
|
||
- name: Set service name variable for default | ||
set_fact: | ||
auth_service_name: "as-{{ namespace_name }}" # Kubernetes (as of v1.11) accepts only lowercase service names. | ||
when: data.service.name is undefined |
4 changes: 4 additions & 0 deletions
4
core/core/src/ansible/roles/deployments/tasks/applications/auth-service/validation.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
- name: Verify storage configuration | ||
assert: | ||
that: "not ({{ groups['postgresql'] | length }} == 0 and data.database.address is not defined)" | ||
msg: "At least one postgresql component or database address has to be defined." |
5 changes: 5 additions & 0 deletions
5
core/core/src/ansible/roles/deployments/tasks/applications/rabbitmq/cleanup.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
- name: Clean configs path | ||
file: | ||
state: absent | ||
path: "{{ configuration_temp_directory }}/" |
13 changes: 13 additions & 0 deletions
13
core/core/src/ansible/roles/deployments/tasks/applications/rabbitmq/create-namespace.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
- name: Upload namespace yaml definition | ||
become: yes | ||
template: | ||
dest: "{{ configuration_temp_directory }}/{{ rabbitmq_service_name }}-ns-{{ namespace_name }}.yml" | ||
src: rabbitmq/rabbitmq-namespace.yml.j2 | ||
owner: "{{ admin_user.name }}" | ||
group: "{{ admin_user.name }}" | ||
mode: 0644 | ||
|
||
- name: Apply namespace | ||
shell: kubectl apply --kubeconfig=/home/{{ admin_user.name }}/.kube/config -f {{ configuration_temp_directory }}/{{ rabbitmq_service_name }}-ns-{{ namespace_name }}.yml | ||
become_user: "{{ admin_user.name }}" |
13 changes: 13 additions & 0 deletions
13
core/core/src/ansible/roles/deployments/tasks/applications/rabbitmq/create-rbac.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
- name: Upload rbac yaml definition | ||
become: yes | ||
template: | ||
dest: "{{ configuration_temp_directory }}/{{ rabbitmq_service_name }}-rbac-{{ namespace_name }}.yml" | ||
src: rabbitmq/rabbitmq-rbac.yml.j2 | ||
owner: "{{ admin_user.name }}" | ||
group: "{{ admin_user.name }}" | ||
mode: 0644 | ||
|
||
- name: Apply rbac | ||
shell: kubectl apply --kubeconfig=/home/{{ admin_user.name }}/.kube/config -f {{ configuration_temp_directory }}/{{ rabbitmq_service_name }}-rbac-{{ namespace_name }}.yml | ||
become_user: "{{ admin_user.name }}" |
13 changes: 13 additions & 0 deletions
13
core/core/src/ansible/roles/deployments/tasks/applications/rabbitmq/create-service.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
- name: Upload RabbitMQ service yaml | ||
become: yes | ||
template: | ||
dest: "{{ configuration_temp_directory }}/{{ rabbitmq_service_name }}-{{ namespace_name }}.yml" | ||
src: rabbitmq/rabbitmq.yml.j2 | ||
owner: "{{ admin_user.name }}" | ||
group: "{{ admin_user.name }}" | ||
mode: 0644 | ||
|
||
- name: Apply RabbitMQ deployment | ||
shell: kubectl apply --kubeconfig=/home/{{ admin_user.name }}/.kube/config -f {{ configuration_temp_directory }}/{{ rabbitmq_service_name }}-{{ namespace_name }}.yml | ||
become_user: "{{ admin_user.name }}" |
24 changes: 24 additions & 0 deletions
24
core/core/src/ansible/roles/deployments/tasks/applications/rabbitmq/main.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--- | ||
- name: Include variables setup | ||
include_tasks: "set-variables.yml" | ||
|
||
- name: Create temp directory for files | ||
file: | ||
path: "{{ configuration_temp_directory }}" | ||
state: directory | ||
become_user: "{{ admin_user.name }}" | ||
|
||
- name: Include namespace creation | ||
include_tasks: "create-namespace.yml" | ||
|
||
- name: Include rbac creation | ||
include_tasks: "create-rbac.yml" | ||
|
||
- name: Include erlang cookie handling | ||
include_tasks: "set-erlang-cookie.yml" | ||
|
||
- name: Include service creation | ||
include_tasks: "create-service.yml" | ||
|
||
- name: Include cleanup tasks | ||
include_tasks: "cleanup.yml" |
Oops, something went wrong.