fix path and header d59-62
This commit is contained in:
parent
6c2905717e
commit
f7968d9bf1
@ -1,3 +1,13 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Create a VM with Terraform & Variables - Day 59'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Create a VM with Terraform & Variables
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049051
|
||||
---
|
||||
|
||||
## Tạo máy ảo với Terraform và biến
|
||||
|
||||
Trong bài này, chúng ta sẽ tạo một hoặc hai máy ảo bằng cách sử dụng terraform trong VirtualBox. Điều này không phải là một trường hợp thông thường, VirtualBox là một lựa chọn ảo hóa máy trạm và điều này không phải là một trường hợp sử dụng cho Terraform, nhưng hiện tại tôi đang ở độ cao 36.000ft và dù tôi đã triển khai các tài nguyên trên public cloud, nhưng việc làm điều này trên máy tính xách tay của tôi nhanh hơn nhiều.
|
||||
@ -47,29 +57,29 @@ output "IPAddr_2" {
|
||||
|
||||
Bây giờ sau khi chúng ta đã định nghĩa mã của mình, chúng ta có thể thực hiện lệnh `terraform init` trên thư mục của chúng ta để tải xuống nhà cung cấp cho Virtualbox.
|
||||
|
||||

|
||||

|
||||
|
||||
Bạn cũng cần phải cài đặt VirtualBox trên hệ thống của bạn. Sau đó, chúng ta có thể chạy lệnh `terraform plan` để xem mã của chúng ta sẽ tạo ra gì cho chúng ta. Tiếp theo là `terraform apply`. Hình ảnh dưới đây hiển thị quá trình hoàn thành của bạn.
|
||||
|
||||

|
||||

|
||||
|
||||
Trong Virtualbox, bạn sẽ nhìn thấy 2 máy ảo mới được khởi tạo.
|
||||
|
||||

|
||||

|
||||
|
||||
### Thay đổi cấu hình
|
||||
|
||||
Hãy thay đổi cấu hình triển khai để thử nghiệm. Chúng ta chỉ cần thay đổi dòng `count` để hiển thị số lượng nút mới mong muốn của chúng ta. Khi chúng ta chạy `terraform apply`, nó sẽ trông giống như dưới đây.
|
||||
|
||||

|
||||

|
||||
|
||||
Một khi đã hoàn thành, trong VirtualBox bạn sẽ nhìn thấy 3 máy ảo được khởi tạo và chạy.
|
||||
|
||||

|
||||

|
||||
|
||||
Khi mọi thứ đã hoàn thành, chúng ta có thể dọn dẹp bằng cách sử dụng `terraform destroy`, tất cả máy ảo sẽ được xóa bỏ sau đó.
|
||||
|
||||

|
||||

|
||||
|
||||
### Biến và đầu ra
|
||||
|
||||
|
@ -1,3 +1,12 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Docker Containers, Provisioners & Modules - Day 60'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Docker Containers, Provisioners & Modules'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049052
|
||||
---
|
||||
## Docker Containers, Provisioners & Modules
|
||||
|
||||
Trong [ngày 59](day59.md), chúng ta đã cung cấp một máy ảo bằng cách sử dụng Terraform đến môi trường VirtualBox FREE tại máy tính cá nhân. Trong phần này, chúng ta sẽ triển khai một Docker container với một số cấu hình đến môi trường Docker tại máy tính cá nhân của chúng ta.
|
||||
@ -35,15 +44,15 @@ resource "docker_container" "nginx" {
|
||||
|
||||
Nhiệm vụ đầu tiên là sử dụng lệnh terraform init để tải xuống nhà cung cấp vào máy tính cục bộ của chúng ta.
|
||||
|
||||

|
||||

|
||||
|
||||
Tiếp theo, chúng ta chạy lệnh `terraform apply`, sau đó là `docker ps`, và bạn sẽ thấy chúng ta có một container đang chạy.
|
||||
|
||||

|
||||

|
||||
|
||||
Nếu chúng ta mở trình duyệt và điều hướng đến http://localhost:8000/, bạn sẽ thấy chúng ta có quyền truy cập vào container NGINX của chúng ta.
|
||||
|
||||

|
||||

|
||||
|
||||
Các bạn có thể tìm hiểu thêm về Docker Provider tại đây [Docker Provider](https://registry.terraform.io/providers/kreuzwerker/docker/latest/docs/resources/container)
|
||||
|
||||
@ -113,15 +122,15 @@ resource "docker_container" "wordpress" {
|
||||
|
||||
Chúng ta lại tệp vào một thư mục mới và sau đó chạy lệnh `terraform init` để tải về các công cụ cần thiết.
|
||||
|
||||

|
||||

|
||||
|
||||
Sau đó, chúng ta chạy lệnh `terraform apply` và kiểm tra đầu ra của lệnh `docker ps`, chúng ta sẽ thấy các container mới được tạo ra.
|
||||
|
||||

|
||||

|
||||
|
||||
Sau đó, chúng ta có thể truy cập vào giao diện WordPress. Tương tự như khi chúng ta đã thực hiện quá trình này với docker-compose trong phần container, bây giờ chúng ta có thể tiếp tục thiết lập và các bài viết WordPress của chúng ta sẽ được lưu trong cơ sở dữ liệu MySQL.
|
||||
|
||||

|
||||

|
||||
|
||||
Bây giờ chúng ta đã thảo luận khá chi tiết về containers và Kubernetes, chúng ta có thể hiểu rằng việc sử dụng containers một mình chỉ phù hợp cho việc kiểm thử, và nếu bạn đang chạy ứng dụng, bạn sẽ không chỉ sử dụng containers mà còn xem xét sử dụng Kubernetes để đạt được điều này. Tiếp theo, chúng ta sẽ tìm hiểu cách sử dụng Terraform với Kubernetes.
|
||||
|
||||
|
@ -1,3 +1,12 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Kubernetes & Multiple Environments - Day 61'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Kubernetes & Multiple Environments
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048743
|
||||
---
|
||||
## Kubernetes & Multiple Environments
|
||||
|
||||
Cho đến nay, trong phần về Cơ sở hạ tầng mã nguồn, chúng ta đã xem xét triển khai máy ảo, mặc dù chúng ta đã sử dụng VirtualBox, nhưng nguyên tắc là giống nhau, chúng ta xác định bằng mã nguồn những gì chúng ta muốn máy ảo của mình trông như thế nào và sau đó triển khai. Tương tự cho các container Docker và trong buổi học này, chúng ta sẽ xem cách Terraform có thể được sử dụng để tương tác với các tài nguyên được hỗ trợ bởi Kubernetes.
|
||||
@ -86,23 +95,23 @@ resource "kubernetes_service" "test" {
|
||||
|
||||
Điều đầu tiên chúng ta phải làm trong thư mục dự án mới của chúng ta là chạy lệnh terraform init.
|
||||
|
||||

|
||||

|
||||
|
||||
Và trước khi chúng ta chạy lệnh terraform apply, để tôi cho bạn thấy rằng chúng ta không có bất kỳ `namespace` nào.
|
||||
|
||||

|
||||

|
||||
|
||||
Khi chúng ta chạy lệnh terraform apply, điều này sẽ tạo ra 3 tài nguyên mới đó là namespace, deployment và service trong cụm Kubernetes của chúng ta.
|
||||
|
||||

|
||||

|
||||
|
||||
Bây giờ chúng ta có thể xem các tài nguyên đã triển khai trong cụm của chúng ta.
|
||||
|
||||

|
||||

|
||||
|
||||
Bây giờ, vì chúng ta đang sử dụng minikube như bạn đã thấy trong phần trước, điều này có một số hạn chế khi chúng ta thử nghiệm với mạng docker cho ingress. Nhưng nếu chúng ta chỉ đơn giản sử dụng lệnh `kubectl port-forward -n nginx svc/nginx 30201:80` và mở trình duyệt đến `http://localhost:30201/`, chúng ta sẽ thấy trang NGINX của chúng ta.
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
Nếu bạn muốn thử các bài thực hành chi tiết hơn với Terraform và Kubernetes, thì trang web [HashiCorp Learn site](https://learn.hashicorp.com/tutorials/terraform/kubernetes-provider) là một nguồn tuyệt vời để thực hiện.
|
||||
|
@ -1,3 +1,12 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Testing, Tools & Alternatives - Day 62'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Testing, Tools & Alternatives'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049053
|
||||
---
|
||||
## Kiểm thử, Công cụ và Các phương pháp thay thế
|
||||
|
||||
Khi kết thúc phần này về Cơ sở hạ tầng dưới dạng Mã, chúng ta phải đề cập đến việc kiểm thử mã nguồn, các công cụ khác nhau có sẵn và sau đó là một số phương pháp thay thế Terraform để đạt được điều này. Như tôi đã nói ở đầu phần này, tập trung của tôi là Terraform vì nó trước tiên là miễn phí và mã nguồn mở, thứ hai, nó là đa nền tảng và không phụ thuộc vào môi trường. Nhưng cũng có các phương pháp thay thế khác mà cần được xem xét, nhưng mục tiêu chung là làm cho mọi người nhận thức rằng đây là cách triển khai cơ sở hạ tầng của bạn.
|
||||
|
Loading…
Reference in New Issue
Block a user