Bài đăng

Đang hiển thị bài đăng từ tháng bảy, 2020

Một số hàm cơ bản khi tạo một hạ tầng ảo trên AWS dùng CDK python.

Hình ảnh
Như các bạn đã biết AWS CDK Python là một framework để code automation hạ tầng mạng cho AWS. Trong bài viết này chúng ta đi sơ qua một vài function cơ bản trong CDK Python dùng cho việc code automate hạ tầng trên AWS.  Các components sẽ tạo như:  1. VPC, subnet, Internet GW và NAT GW.  2. ECS - Elastic Container Service, load balancer, AutoScaling Group, ...  Nếu trước kia bạn có thể sử dụng Ansible hoặc terraform để deploy mà bạn không cần phải biết 1 ngôn ngữ nào, bạn cũng có thể deploy được các components phía trên.  Terraform: Ansible: Ngày nay bạn sử dụng code Python để deploy các component trên bằng framework CDK của AWS.  Trong đó có các hàm thông dụng sau:  vpc = ec2.Vpc(stack , "VPC" , max_azs = 3 , cidr = "10.100.0.0/16" , # configuration will create 3 groups in 2 AZs = 6 subnets. subnet_configuration =[ec2.SubnetConfiguration( subnet_type =ec2.SubnetType.PUBLIC , n

HTTPS cho Jenkins và Sonarqube.

Hình ảnh
Trong quá trình làm project, devops chúng ta thường build bộ CI/CD nhưng để bảo mật tầng web cho 2 ứng dụng này là Jenkins và Sonarqube thì bạn cần phải làm gì ? Jenkins server được cài đặt trên ec2 instance của Amazon và Sonarqube được cài đặt chung với server Jenkins nhưng chạy port khác. Logo Jenkins Kết quả scan của sonarqube: Trong trường hợp này bạn phân quyền developer nào được quyền truy cập vào web jenkins để deploy và developer nào được vào Sonarqube để xem các kết quả sonar-scanner trả về. Mong muốn các dữ liệu truyền được mã hoá, vậy phải bật tính năng https cho truy cập jenkins và sonarqube. Ví dụ ta đang dùng Nginx làm Reverse Proxy Sau khi cài đặt nginx thành công ta viết 1 file configuration : upstream jenkins {   server 127.0.0.1:8443 fail_timeout=0; } server {         listen 443 ssl;          listen [::]:443 ssl;         ssl_certificate /etc/nginx/nginx-selfsigned.crt;         ssl_certificate_key /etc/nginx/nginx-selfsigned.key;        

AWS CDK là gì ? Cách khởi tạo để cấu hình một hạ tầng cho ứng dụng trên nền tảng đám mây AWS

Hình ảnh
AWS CDK là gì? Là b ộ công cụ phát triển đám mây AWS (AWS CDK) là khung(framework) phát triển phần mềm nguồn mở để xác định cơ sở hạ tầng đám mây dưới dạng mã với các ngôn ngữ lập trình hiện đại và triển khai thông qua AWS CloudFormation Deveoper có thể sử dụng một trong các ngôn ngữ lập trình để định nghĩa việc sử dụng lại các thành phần(component) được biết dưới tên Construct.  Trong bài viết này mình giới thiệu cách khởi tạo AWS CDK bằng ngôn ngữ python.  Tạo một project.  Tạo một folder, sau đó khởi động python cdk bằng lệnh : cdk init  mkdir my-project cd my-project cdk init app --language python Bật môi trường ảo cho python:  source .env/bin/activate Sau đó cài các  dependencies:  pip install -r requirements.txt Để cài những thư viện cdk python. ta dùng lệnh:  pip install aws-cdk.aws-s3 aws-cdk.aws-lambda Với aws-s3, aws-lambda là SERVICE-NAME.  Trước khi deploy lên AWS bạn chạy :  cdk synth: Tổng hợp thành một Cloudformation Template từ một hoặc