tattle-made / docs

1 stars 1 forks source link

Standardize the docker pipeline #1

Closed dennyabrain closed 3 years ago

dennyabrain commented 4 years ago

Lets finalize a few things

Open to suggestions on what all we can add to this.

whymath commented 4 years ago

Framework evaluation - Kubernetes

Sprint 1 Objectives

whymath commented 4 years ago

Framework evaluation - FarGate

Decision Points

Sprint 1 Objectives

whymath commented 4 years ago

Deployed Tattle services containers using minikube on the k8s-dev instance for the k8s POC, testing of services health is in progress

Important Evaluations for k8s:

  1. Handling of environment variables
  2. Production mgmt tool (currently front-runner is kops)
  3. API for EC2 auto-scaling
  4. Access restriction for service endpoints - "internal" vs external (k8s Ingress?)
  5. Single redis queue to be accessible from multiple instances of archive
  6. Fine-grained resource monitoring for each container when deployed in k8s
whymath commented 4 years ago

Kubernetes Deployment Status: FCS and TGM services deployed and containers running. Currently implementing k8s Services to enable external access to Tattle service endpoints.

CICD Improvement - Redeployment Auto-trigger As discussed with @dennyabrain, looking at increased automation of the current workflow, where new changes in services auto-trigger redeployment. Current workflow given below:

whymath commented 4 years ago

Redeployment Auto-trigger Evaluations:

Miscellaneous Evaluations:

Sprint 2 Objectives:

whymath commented 4 years ago

Miscellaneous Evaluations:

whymath commented 4 years ago

Sprint Objectives:

whymath commented 4 years ago

k8s Deployment Status Update:

Sprint Objectives:

whymath commented 4 years ago

k8s Deployment Status Update:

Sprint Objectives:

dennyabrain commented 4 years ago

I was taking stock of our current progress and deadlines. I want to propose some hard deadlines for this week (Jul 12) and check with you if you think its practical. So the main requirement is the ability to auto deploy khoj api and sharechat scraper onto our infrastructure. I guess the following will be essential requirements for that

how do you think we are doing on this?

whymath commented 4 years ago

@dennyabrain plan for the week looks good (slight modification in the 3rd point, where we maintain the environment variables in deployment-specific YAML files on the deployment server, rather than check-in to Github)

k8s Deployment Status:

Week Objectives:

whymath commented 4 years ago

Current Evaluations:

whymath commented 3 years ago

k8s Deployment Status (20200713):

Next Steps:

whymath commented 3 years ago

Additional Considerations:

* Contd. from the previous comment

whymath commented 3 years ago

Next Steps for k8s Deployment:

Future Considerations:

whymath commented 3 years ago

k8s Deployment Status:

Next Steps:

Future Considerations (contd. from previous comment):

whymath commented 3 years ago

k8s cluster node failed on Friday due to insufficient CPU. Cluster was taken down, however re-creation failed due to kops-kubectl version mismatch and master node incompatibility with AZ. Cluster was later recreated successfully and CICD pipelines were re-linked with the new naming conventions.

k8s Deployment Status:

Next Steps:

Future Considerations:

whymath commented 3 years ago

k8s Deployment Status:

Next Steps:

Future Considerations - if reqd. based on Costing Analysis:

Future Considerations - if reqd. based on Resource Utilization:

Future Considerations - Medium Priority:

whymath commented 3 years ago

k8s Deployment Status:

Archive Server Error Log:

BRPOPLPUSH { ReplyError: READONLY You can't write against a read only replica.  
    at parseError (/home/node/app/node_modules/redis-parser/lib/parser.js:179:12)
    at parseType (/home/node/app/node_modules/redis-parser/lib/parser.js:302:14)
  command:
   { name: 'brpoplpush',
     args:
      [ 'bull:Whatsapp Post Index Queue:wait',
        'bull:Whatsapp Post Index Queue:active',
        '5' ] } }
whymath commented 3 years ago

Cluster Creation Overview:

General Best Practices Analysis (Before Cluster Re-creation):

Timelines:

whymath commented 3 years ago

k8s Deployment Status (20200812):

Next Steps (in order of priority):

whymath commented 3 years ago

k8s Deployment Status (20200817):

Next Steps:

whymath commented 3 years ago

Evaluation Status:

k8s Deployment Status (PROD Cluster):

Next Steps:

whymath commented 3 years ago

k8s Deployment Status:

Next Steps:

whymath commented 3 years ago

k8s Deployment Status:

All the main objectives viz. creation of CICD pipeline and building confidence in the infra have been achieved, hence closing this issue.