https://github.com/youngermaster/reto-4-st0263
https://github.com/youngermaster/reto-4-st0263
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/youngermaster/reto-4-st0263
- Owner: Youngermaster
- License: apache-2.0
- Created: 2024-05-12T03:41:35.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-12T04:57:09.000Z (about 2 years ago)
- Last Synced: 2025-01-27T09:28:02.449Z (over 1 year ago)
- Language: Shell
- Size: 710 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Reto 4 ST0263
## Overview
**Reto 4: Kubernetes-based Monolithic Application with Distributed Data and File Systems** is a project that sets up WordPress with MariaDB, utilizing Kubernetes for orchestration to achieve high availability and scalability.
## Video Demo
### YouTube Video
> Note: The video is in Spanish.
[https://www.youtube.com/watch?v=1Q6J9Q1Z9ZI](https://www.youtube.com/watch?v=1Q6J9Q1Z9ZI)
### Video File
> Note: The video file is hosted on Microsoft OneDrive. The file may be deleted after the project deadline, or the link may expire.
[Download Video](https://eafit-my.sharepoint.com/:f:/g/personal/jmyoungh_eafit_edu_co/EqG2SpIDLkZEn6wx4W2fkokBUc4WQeDwOSnlkEPZKmmdew?e=dor0tZ)
## Project URL
> Note: The project URL may not be available after the project deadline. Because the project is hosted on AWS, the instances may be terminated after the project evaluation.
[https://reto4.grisu.co/](http://reto4.grisu.co/)
## Project Structure
This repository is organized into several directories, each containing components necessary for the deployment of the application on Kubernetes:
- `k8s/`: Contains Kubernetes YAML files for deploying WordPress and MariaDB.
- `ansible/`: Includes Ansible playbooks for initial setup and configurations on EC2s instances.
- `db/`: Holds Kubernetes configurations for MariaDB deployment.
- `wordpress/`: Contains Kubernetes configurations for WordPress deployment.
## Getting Started
To deploy the application stack on Kubernetes, follow these steps:
1. **Cluster Setup**:
- Ensure your Kubernetes cluster is up and running. If using AWS EKS, follow the manual setup due to IAM limitations.
2. **Deploy the Applications**:
- Navigate to the `k8s/` directory.
- Apply the Kubernetes configurations:
```bash
kubectl apply -f configmaps-k8s.yml
kubectl apply -f db-k8s.yml
kubectl apply -f wordpress-k8s.yml
```
3. **Accessing the Application**:
- Once deployed, find the external IP or DNS name provided by the LoadBalancer service for WordPress:
```bash
kubectl get service wordpress
```
- Access your WordPress site via the provided URL.
## Additional Resources
- Kubernetes official documentation: [https://kubernetes.io/docs/](https://kubernetes.io/docs/)
## Support
For any issues or questions, please refer to the `README.md` in each directory or raise an issue in the repository.
## Contributions
Contributions to improve the project are welcome.