Hướng dẫn này mô tả cách chia tỷ lệ theo chiều dọc [tăng và giảm tỷ lệ] triển khai cụm cơ sở dữ liệu MySQL có tính sẵn sàng cao [cơ sở dữ liệu chính và bản sao]. Quá trình này bao gồm tăng và giảm quy mô phiên bản Compute Engine cũng như mở rộng ổ đĩa của chúng
Lý do thông thường để mở rộng dung lượng đĩa là để đáp ứng sự gia tăng dữ liệu được quản lý
Có một số lý do khiến các phiên bản Compute Engine thay đổi quy mô theo chiều dọc thực thi MySQL. Sau đây là một số lý do để mở rộng quy mô [và những lý do ngược lại để giảm quy mô]
- Hệ thống đang đạt đến giới hạn hiệu suất thông lượng ghi/đọc. Việc tăng số lượng CPU và bộ nhớ cung cấp thêm dung lượng phần cứng
- Số lượng truy vấn đang tăng lên theo thời gian hoặc số lượng truy vấn dự kiến sẽ tăng đột biến [ví dụ: trong Thứ Sáu Đen hoặc Thứ Hai Điện Tử]. Sự gia tăng số lượng CPU và bộ nhớ giới thiệu dự trữ
- Số lượng truy vấn đồng thời đang tăng lên—ví dụ: nhiều khách hàng được thêm vào hệ thống. Việc tăng số lượng CPU và bộ nhớ hỗ trợ mức đồng thời cao hơn
- Google Cloud có thể hiển thị đề xuất "tăng hiệu suất" trong danh sách các phiên bản Compute Engine. Đề xuất đó rất quan trọng nếu bạn đang cân nhắc xem có nên mở rộng quy mô phiên bản Compute Engine hay không
Hướng dẫn hữu ích cho các vai trò sau
- Kiến trúc sư đám mây đang lập kế hoạch triển khai cụm MySQL để có khả năng mở rộng
- Các kỹ sư đám mây đang triển khai các ứng dụng bằng cách sử dụng các cụm MySQL
- Các nhóm vận hành đám mây đang quản lý các cụm MySQL
- Quản trị viên cơ sở dữ liệu và CNTT đang quản lý cơ sở dữ liệu trong các cụm MySQL và những người phải thực hiện quy trình mở rộng theo chiều dọc [hoặc thực hiện một số quy trình theo thời gian]
Sơ đồ sau đây cho thấy kiến trúc tổng thể của cụm MySQL có tính sẵn sàng cao. Hướng dẫn sử dụng kiến trúc này làm cơ sở để mô tả quy trình chia tỷ lệ theo chiều dọc
Hướng dẫn này giả định rằng bạn đã quen thuộc với những điều sau đây
- Thiết lập và chạy một cụm MySQL bằng cách sử dụng Trình quản lý triển khai và các công cụ dòng lệnh khác nhau như Cloud Shell và
0cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
- Hoạt động quản lý phiên bản Compute Engine
- Hoạt động quản lý đĩa Compute Engine
mục tiêu
- Thiết lập cụm MySQL với cơ sở dữ liệu chính và bản sao
- Mở rộng quy mô theo chiều dọc tất cả các phiên bản Máy tính của cụm MySQL [bộ nhớ và CPU] bằng cách thay đổi loại máy của chúng
- Thu nhỏ theo chiều dọc tất cả các phiên bản Máy tính của cụm MySQL [bộ nhớ và CPU] bằng cách thay đổi loại máy của chúng
- Tăng kích thước đĩa của phiên bản Compute Engine
chi phí
Hướng dẫn này sử dụng các thành phần có thể thanh toán sau của Google Cloud
- Máy tính
- Lưu trữ đám mây
Để tạo ước tính chi phí dựa trên mức sử dụng dự kiến của bạn, hãy sử dụng công cụ tính giá. Người dùng Google Cloud mới có thể đủ điều kiện dùng thử miễn phí
Khi bạn hoàn thành hướng dẫn này, bạn có thể tránh tiếp tục thanh toán bằng cách xóa các tài nguyên bạn đã tạo. Để biết thêm thông tin, xem
Trước khi bắt đầu
- Đăng nhập vào tài khoản Google Cloud của bạn. Nếu bạn mới sử dụng Google Cloud, hãy tạo một tài khoản để đánh giá hiệu quả hoạt động của các sản phẩm của chúng tôi trong các tình huống thực tế. Khách hàng mới cũng nhận được 300 đô la tín dụng miễn phí để chạy, thử nghiệm và triển khai khối lượng công việc
Trong bảng điều khiển Google Cloud, trên trang bộ chọn dự án, hãy chọn hoặc tạo một dự án Google Cloud
Ghi chú. Nếu bạn không định giữ các tài nguyên mà bạn tạo trong quy trình này, hãy tạo một dự án thay vì chọn một dự án hiện có. Sau khi hoàn thành các bước này, bạn có thể xóa dự án, xóa tất cả các tài nguyên được liên kết với dự ánChuyển đến bộ chọn dự án
Đảm bảo rằng thanh toán được bật cho dự án Đám mây của bạn. Tìm hiểu cách kiểm tra xem thanh toán có được bật trên một dự án hay không
Kích hoạt API máy tính và lưu trữ đám mây
Kích hoạt các API
- Cài đặt và khởi tạo Google Cloud CLI
Trong bảng điều khiển Google Cloud, trên trang bộ chọn dự án, hãy chọn hoặc tạo một dự án Google Cloud
Ghi chú. Nếu bạn không định giữ các tài nguyên mà bạn tạo trong quy trình này, hãy tạo một dự án thay vì chọn một dự án hiện có. Sau khi hoàn thành các bước này, bạn có thể xóa dự án, xóa tất cả các tài nguyên được liên kết với dự ánChuyển đến bộ chọn dự án
Đảm bảo rằng thanh toán được bật cho dự án Đám mây của bạn. Tìm hiểu cách kiểm tra xem thanh toán có được bật trên một dự án hay không
Kích hoạt API máy tính và lưu trữ đám mây
Kích hoạt các API
- Cài đặt và khởi tạo Google Cloud CLI
Bước đầu tiên của bạn là tạo một cụm MySQL đang chạy. Bạn điền vào cụm này một số dữ liệu được sử dụng để minh họa và xác minh. Để xác minh dữ liệu, hướng dẫn cung cấp các hướng dẫn truy vấn cơ sở dữ liệu chính và bản sao MySQL Các hướng dẫn sau để thiết lập cụm MySQL được lấy từ hướng dẫn liên quan, Di chuyển cụm MySQL sang Công cụ tính toán bằng HAProxy và được sửa đổi một chút tại đây để thuận tiện Trong bảng điều khiển Google Cloud, hãy mở Cloud Shell MỞ Cloud Shell Đặt biến môi trường cho tên bộ chứa Cloud Storage Tạo nhóm Lưu trữ đám mây [đa khu vực theo mặc định] Bộ chứa sẽ chứa các tập lệnh tạo và tập lệnh khởi động được sử dụng cho cả MySQL chính và tạo bản sao Sao chép kho lưu trữ GitHub và truy xuất tập lệnh mà bạn sử dụng để thiết lập môi trường Từ thư mục Thiết lập cụm MySQL của bạn
GCS_BUCKET_NAME=${USER}-mysql-$[date +%s]
echo $GCS_BUCKET_NAME
gsutil mb gs://${GCS_BUCKET_NAME}/
git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
1, hãy chạy tập lệnh khởi tạo để tạo một cụm MySQL gồm các phiên bản Máy tính chính và bản saocd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Tập lệnh này cũng tạo một phiên bản Máy khách MySQL Compute Engine
Cho phép truy cập root từ xa vào phiên bản chính từ phiên bản máy khách
Trong bảng điều khiển Google Cloud, hãy truy cập trang ** Phiên bản VM
CHUYỂN ĐẾN CÁC TRƯỜNG HỢP VM
Trong hàng dành cho phiên bản
2, hãy nhấp vào SSH để kết nối với trình bao bảo mậtcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Khi shell an toàn khả dụng, hãy chạy lệnh sau
mysql -u root -psolution-admin
Khi bạn đăng nhập vào
0, hãy đưa ra câu lệnh saucd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'solution-admin';
Xác minh rằng cơ sở dữ liệu có thể truy cập được từ máy khách. Trong bảng điều khiển Google Cloud, hãy sử dụng ssh để kết nối với phiên bản
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
4 Compute Engine. Khi có vỏ bảo mật, hãy làm như sauChọn Compute Engine > VM Instances, tìm hàng có phiên bản tên là
2 và ghi lại địa chỉ IP nội bộcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
2GCS_BUCKET_NAME=${USER}-mysql-$[date +%s] echo $GCS_BUCKET_NAME
Khi shell
0 khả dụng, hãy thực hiện các lệnh saucd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
4GCS_BUCKET_NAME=${USER}-mysql-$[date +%s] echo $GCS_BUCKET_NAME
Bạn có thể sử dụng cùng một bộ lệnh để kiểm tra xem bản sao có chứa cùng một bộ dữ liệu không. thay vào đó hãy sử dụng địa chỉ IP nội bộ của
7cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Tại thời điểm này, ba phiên bản Compute Engine đang chạy
- Khách hàng [
4]cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
- MySQL chính [
2]cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
- Bản sao MySQL [
7]. MySQL chính đang sao chép thành bản sao MySQLcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Loại máy cho mỗi phiên bản Compute Engine là
mysql -u root -psolution-admin
1 [1 vCPU, 0. 6 GB] và khả năng mở rộng quy mô là loại máy mysql -u root -psolution-admin
2 [1 vCPU, 3. bộ nhớ 75 GB]. Kích thước của ổ đĩa là 10 GB và được nhân đôi lên 20 GB. Các lựa chọn này chỉ là ví dụ và có thể được thay đổi theo nhu cầu triển khai cụ thểMở rộng quy mô theo chiều dọc các phiên bản Compute Engine [không chuyển đổi dự phòng]
Phần này mô tả cách mở rộng các phiên bản Compute Engine đang chạy MySQL chính và bản sao. Bạn tăng quy mô CPU và bộ nhớ cùng lúc bằng cách thay đổi loại máy của phiên bản Compute Engine. Để thay đổi loại máy, bạn phải dừng phiên bản Compute Engine và sau khi thay đổi, hãy khởi động lại nó
Để đảm bảo khả năng xử lý như nhau, chúng tôi khuyên bạn nên định cấu hình cả hai phiên bản Compute Engine để sử dụng cùng một loại máy
Bản sao MySQL được mở rộng trước và mọi sự cố được phát hiện sẽ không làm gián đoạn quá trình thực thi bản chính của MySQL. Nếu xảy ra sự cố, bạn có thể giải quyết nó mà không cần thời gian ngừng hoạt động chính. Hơn nữa, bạn có thể đánh giá xem sự cố này là tạm thời hay giả mạo hay là sự cố chung mà bạn cần giải quyết trước khi cơ sở dữ liệu chính sẽ được mở rộng
Một cách tiếp cận khác [vẫn yêu cầu khởi động lại các phiên bản Compute Engine] liên quan đến việc chuyển đổi dự phòng từ phiên bản chính sang phụ để giảm thiểu thời gian ngừng hoạt động. Bạn xem qua phương pháp này trong các phần sau
Mở rộng quy mô bản sao MySQL
Đầu tiên, dừng phiên bản Compute Engine đang chạy bản sao MySQL
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
7, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Dừngcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Sau khi dừng phiên bản Compute Engine, bấm vào
7, sau đó bấm chỉnh sửa Chỉnh sửacd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Trong Loại máy, hãy chọn loại máy
2 [1 vCPU, 3. bộ nhớ 75 GB] để mở rộng quy mô lên tớimysql -u root -psolution-admin
Nhấp vào để lưu
Sau khi lưu xong, bấm play_arrow Bắt đầu
Bạn có thể sử dụng các lệnh
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
0 xác minh đã đề cập trước đó để kiểm tra xem bản sao MySQL có được thiết lập và chạy lại sau khi thao tác mở rộng quy mô hay khôngMở rộng quy mô chính của MySQL
Đầu tiên, dừng phiên bản Compute Engine đang chạy MySQL chính
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
2, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Dừngcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Sau khi phiên bản Compute Engine đã dừng, bấm vào
2, rồi bấm vào chỉnh sửa Chỉnh sửacd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Trong Loại máy, hãy chọn loại máy
2 [1 vCPU, 3. bộ nhớ 75 GB] để mở rộng quy mô lên tới. Đảm bảo rằng loại máy này giống với loại đã chọn cho bản sao MySQLmysql -u root -psolution-admin
Nhấp vào để lưu
Sau khi lưu xong, bấm play_arrow Bắt đầu
Bạn có thể sử dụng các lệnh
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
0 xác minh đã đề cập trước đó để kiểm tra xem MySQL chính có hoạt động và chạy lại sau khi thao tác mở rộng quy mô hay khôngThu nhỏ theo chiều dọc các phiên bản Compute Engine [không chuyển đổi dự phòng]
Phần này mô tả cách thu nhỏ các phiên bản Compute Engine đang chạy MySQL chính và bản sao. Bạn thu nhỏ CPU và bộ nhớ cùng lúc bằng cách thay đổi loại máy của phiên bản Compute Engine. Để thay đổi loại máy, bạn phải dừng phiên bản Compute Engine và sau khi thay đổi, hãy khởi động lại nó
Để đảm bảo khả năng xử lý như nhau, chúng tôi khuyên bạn nên định cấu hình cả hai phiên bản Compute Engine để sử dụng cùng một loại máy. Các bước tương tự như mở rộng quy mô. Tuy nhiên, để cho đầy đủ, phần tiếp theo sẽ nêu rõ chúng
Thu nhỏ bản sao MySQL
Đầu tiên, dừng phiên bản Compute Engine đang chạy bản sao MySQL
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
7, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Dừngcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Sau khi phiên bản Compute Engine đã dừng, bấm vào
7, rồi bấm vào chỉnh sửa Chỉnh sửacd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Trong Loại máy, hãy chọn loại máy
1 [1 vCPU, 0. bộ nhớ 6 GB] để thu nhỏ thànhmysql -u root -psolution-admin
Nhấp vào để lưu
Sau khi lưu xong, bấm play_arrow Bắt đầu
Bạn có thể sử dụng các lệnh
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
0 xác minh đã đề cập trước đó để kiểm tra xem bản sao MySQL có được thiết lập và chạy lại sau khi thao tác mở rộng quy mô hay khôngThu nhỏ quy mô chính của MySQL
Đầu tiên, dừng phiên bản Compute Engine đang chạy MySQL chính
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
2, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Dừngcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Sau khi phiên bản Compute Engine đã dừng, bấm vào
2, rồi bấm vào chỉnh sửa Chỉnh sửacd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Trong Loại máy, hãy chọn loại máy
1 [1 vCPU, 0. bộ nhớ 6 GB] để thu nhỏ thành. Đảm bảo rằng loại máy này giống với loại bạn đã chọn trước đó cho bản sao MySQLmysql -u root -psolution-admin
Nhấp vào để lưu
Sau khi lưu xong, bấm play_arrow Bắt đầu
Bạn có thể sử dụng các lệnh
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
0 xác minh đã đề cập trước đó để kiểm tra xem MySQL chính có hoạt động và chạy lại sau khi thao tác mở rộng quy mô hay khôngMở rộng quy mô theo chiều dọc các phiên bản Compute Engine [có chuyển đổi dự phòng]
Tắt, mở rộng quy mô và khởi động lại cơ sở dữ liệu MySQL có thể mất quá nhiều thời gian trong môi trường sản xuất. Quá trình nhanh hơn dựa trên chuyển đổi dự phòng. Trước tiên, bạn mở rộng quy mô bản sao và ngay sau khi bản sao được thiết lập và chạy lại, bạn dừng bản chính hiện có và bản sao trở thành bản chính [mới]. Tổng thời gian ngừng hoạt động là thời gian cần thiết để chuyển đổi dự phòng cơ sở dữ liệu MySQL sang bản sao được mở rộng quy mô
Ở cấp độ cao, quy trình như sau
- Mở rộng quy mô bản sao bằng cách dừng bản sao, thay đổi loại máy và khởi động lại bản sao
- Đợi bản sao bắt kịp những thay đổi diễn ra trong bản chính trong quá trình mở rộng quy mô của bản sao
- Dừng chính
- Đợi bản sao rút nhật ký sao chép
- Biến bản sao thành bản chính mới
- Dừng bản chính [bản sao mới]
- Mở rộng quy mô bản sao mới
- Biến nó thành bản sao mới của chính mới
Sau khi quá trình này hoàn tất, cả hai hệ thống MySQL đều được mở rộng quy mô và nằm trong mối quan hệ chính/bản sao. bản chính cũ là bản sao mới và bản sao cũ là bản chính mới. Các lệnh được phác thảo chi tiết trong các phần sau
Dự phòng không nhất thiết phải có trong trường hợp chung vì cả máy chính và bản sao đều là cùng loại máy với cùng loại và dung lượng ổ đĩa. Dự phòng sẽ gây ra sự cố ngừng hoạt động trong thời gian dự phòng. Tuy nhiên, nếu dự phòng là bắt buộc, bạn phải thực hiện các bước chuyển đổi dự phòng lần thứ hai
Mở rộng quy mô bản sao MySQL hiện có
Mở rộng quy mô bản sao như được nêu trong. Trong thời gian này, chính vẫn có sẵn không bị gián đoạn
Chuyển đổi dự phòng chính sang bản sao mở rộng
Ghi chú. Tài liệu hoặc phần này bao gồm các tham chiếu đến một hoặc nhiều thuật ngữ mà Google cho là thiếu tôn trọng hoặc xúc phạm. Các thuật ngữ được sử dụng vì chúng là các từ khóa trong phần mềm được mô tả trong tài liệuCác lệnh sau thực hiện chuyển đổi dự phòng từ bản chính sang bản sao
Trong Cloud Shell, dừng bản chính để không nhận thêm bản cập nhật nào
7git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Không cần thiết phải đợi chính dừng lại trước khi bạn tiếp tục với các bước tiếp theo
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM
CHUYỂN ĐẾN CÁC TRƯỜNG HỢP VM
Trong hàng của phiên bản
7, hãy nhấp vào SSH để kết nối với phiên bảncd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Khi shell an toàn có sẵn, hãy bắt đầu shell
0cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
mysql -u root -psolution-admin
Kiểm tra xem ghi nhật ký nhị phân có được bật trên bản sao hay không [phải là
21]GCS_BUCKET_NAME=${USER}-mysql-$[date +%s] echo $GCS_BUCKET_NAME
0gsutil mb gs://${GCS_BUCKET_NAME}/
Kiểm tra xem bản cập nhật bản sao nhật ký có bị tắt không [phải là
22]GCS_BUCKET_NAME=${USER}-mysql-$[date +%s] echo $GCS_BUCKET_NAME
1gsutil mb gs://${GCS_BUCKET_NAME}/
Xả nhật ký rơle
2gsutil mb gs://${GCS_BUCKET_NAME}/
Đảm bảo rằng tất cả quá trình xử lý đã diễn ra
3gsutil mb gs://${GCS_BUCKET_NAME}/
Đầu ra của lệnh này phải hiển thị
23. Tiếp tục thực hiện lệnh cho đến khi bạn thấy kết quả đóGCS_BUCKET_NAME=${USER}-mysql-$[date +%s] echo $GCS_BUCKET_NAME
Dừng bản sao
4gsutil mb gs://${GCS_BUCKET_NAME}/
Thay đổi vai trò của bản sao thành chính
5gsutil mb gs://${GCS_BUCKET_NAME}/
Lớp học chính mới đã sẵn sàng
Mở rộng quy mô bản sao MySQL mới
Bản sao cũ hiện là bản chính và khách hàng có thể truy cập nó để thực hiện các thao tác đọc và ghi
Mở rộng quy mô bản sao [bản chính cũ] bằng cách làm theo hướng dẫn như được hiển thị trước đó, sau đó khởi động bản sao
Kết nối bản sao với bản chính để sao chép
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM
CHUYỂN ĐẾN CÁC TRƯỜNG HỢP VM
Trong hàng của phiên bản
2, hãy nhấp vào SSH để kết nối với trình bao bảo mậtcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Khi shell an toàn có sẵn, hãy bắt đầu shell
0cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
mysql -u root -psolution-admin
Bắt đầu sao chép
7gsutil mb gs://${GCS_BUCKET_NAME}/
Phiên bản MySQL chính hiện đang sao chép thành bản sao của nó
Kiểm tra sao chép từ bản chính sang bản sao
Thử nghiệm sau đây thêm một hàng vào bảng
GCS_BUCKET_NAME=${USER}-mysql-$[date +%s]
echo $GCS_BUCKET_NAME
26 trên phiên bản MySQL chính cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
7. Bạn có thể quan sát phần bổ sung trong phiên bản MySQL bản sao cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
2Trong trường hợp
7, hãy thêm một hàng vào chính mới. Nếu không có hàng nào được thêm vào trước đó, số lượng phải hiển thịcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
40GCS_BUCKET_NAME=${USER}-mysql-$[date +%s] echo $GCS_BUCKET_NAME
8gsutil mb gs://${GCS_BUCKET_NAME}/
Quan sát sao chép trên bản sao. Số lượng phải hiển thị
40GCS_BUCKET_NAME=${USER}-mysql-$[date +%s] echo $GCS_BUCKET_NAME
9gsutil mb gs://${GCS_BUCKET_NAME}/
Điều này kết thúc thủ tục cần thiết cho quá trình chuyển đổi dự phòng. Bạn sử dụng quy trình tương tự để thu nhỏ quy mô kết hợp với chuyển đổi dự phòng
Tăng kích thước đĩa của phiên bản Compute Engine
Phần này mô tả cách tăng kích thước của đĩa phiên bản Compute Engine, cho cả phiên bản Compute Engine đang lưu trữ MySQL chính và phiên bản Compute Engine đang lưu trữ bản sao MySQL. Đĩa chỉ có thể được tăng kích thước, không giảm
Để mở rộng đĩa, có hai cách tiếp cận và cả hai đều được phác thảo trong các phần tiếp theo. Khả năng thay đổi kích thước ổ đĩa một cách linh hoạt là một tính năng không yêu cầu bạn phải tạo lại các phiên bản Compute Engine. Để biết thêm chi tiết, hãy xem bài đăng trên blog này. Một cách tiếp cận là dừng các phiên bản Compute Engine trước khi tăng kích thước đĩa rồi khởi động lại chúng. Khởi động lại các phiên bản sẽ tự động thay đổi kích thước phân vùng gốc lưu trữ các tệp dữ liệu MySQL
Phương pháp thay thế không yêu cầu dừng và khởi động lại các phiên bản Compute Engine. Thay vào đó, nó yêu cầu bạn thực thi các câu lệnh dòng lệnh trong Cloud Shell và trong các vỏ bảo mật của các phiên bản
Để xác nhận, bạn có thể sử dụng lệnh
GCS_BUCKET_NAME=${USER}-mysql-$[date +%s]
echo $GCS_BUCKET_NAME
42 trước và sau khi tăng kích thước ổ đĩa để kiểm tra kích thước trước và sauChúng tôi khuyên bạn nên thực hiện tốt nhất việc chụp ảnh nhanh từng ổ đĩa trước khi thay đổi kích thước chúng. Biện pháp phòng ngừa này đảm bảo rằng bạn có thể phục hồi trạng thái của từng đĩa từ trước khi thay đổi kích thước
Tăng kích thước đĩa của bản sao MySQL [có tắt máy]
Trước tiên, hãy tăng kích thước ổ đĩa của phiên bản Compute Engine đang lưu trữ bản sao MySQL
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
7, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Dừngcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Liệt kê các đĩa của phiên bản Compute Engine
DANH SÁCH CÁC ĐĨA THỂ HIỆN
Chọn
7cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Nhấp vào chỉnh sửa Chỉnh sửa
Đối với Kích thước, hãy tăng kích thước lên 20 GB
Nhấp vào Lưu và đợi thao tác lưu hoàn tất
Liệt kê các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
7, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Bắt đầucd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Bạn có thể sử dụng các lệnh
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
0 xác minh đã đề cập trước đó để xác minh xem MySQL chính có chạy như mong đợi sau khi tăng kích thước ổ đĩa hay khôngTăng kích thước đĩa của MySQL chính [khi tắt máy]
Tăng kích thước đĩa của Công cụ tính toán đang lưu trữ MySQL chính
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
2, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Dừngcd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Liệt kê các đĩa của phiên bản Compute Engine
DANH SÁCH CÁC ĐĨA THỂ HIỆN
Chọn
2cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Nhấp vào chỉnh sửa Chỉnh sửa
Đối với Kích thước, hãy tăng kích thước lên 20 GB
Nhấp vào Lưu và đợi thao tác lưu hoàn tất
Liệt kê các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Trong hàng dành cho phiên bản
2, bấm more_vert [Cài đặt và tiện ích], sau đó bấm Bắt đầucd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Bạn có thể sử dụng các lệnh
cd mysql-migration
./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
0 xác minh đã đề cập trước đó để xác minh xem MySQL chính có chạy như mong đợi sau khi tăng kích thước ổ đĩa hay khôngTăng kích thước đĩa của bản sao MySQL [tự động mà không cần tắt máy]
Các bước sau đây cho thấy mức tăng kích thước đĩa động cho hệ thống tệp
git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
71 và ổ đĩa có một phân vùng duy nhất. Các loại hệ thống tệp hoặc cấu hình phân vùng khác yêu cầu các bước khác nhau để thực hiện việc tăngNhư trước đây, trước tiên, bạn tăng kích thước ổ đĩa của phiên bản Compute Engine đang lưu trữ bản sao, sau đó bạn tăng kích thước ổ đĩa của phiên bản Compute Engine đang lưu trữ bản sao.
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Nhấp vào SSH để kết nối với phiên bản
7cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Trong vỏ bảo mật, hãy kiểm tra đĩa và phân vùng của nó, đồng thời quan sát rằng đĩa
73 có một phân vùnggit clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
74git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
0git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Trong Cloud Shell, hãy chạy lệnh sau để tăng kích thước đĩa. Khi được nhắc, hãy trả lời bằng
75git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
1git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Trong vỏ bảo mật, hãy xác nhận rằng kích thước ổ đĩa đã tăng lên
0git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Cũng xin lưu ý rằng phân vùng vẫn có kích thước 10 GB
Trong trình bao bảo mật, hãy chạy lệnh sau để xem các hệ thống tệp, loại và kích thước của chúng
3git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Trong vỏ an toàn, phát triển phân vùng
4git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Hai lệnh cuối cùng cho phép bạn xem mức tăng
Tăng kích thước đĩa của MySQL chính [tự động mà không cần tắt máy]
Quá trình tự động tăng kích thước đĩa cho bản chính cũng giống như đối với bản sao
Trong bảng điều khiển Google Cloud, hãy truy cập trang phiên bản VM để xem danh sách các phiên bản Compute Engine
DANH SÁCH CÁC TRƯỜNG HỢP TÍNH TOÁN
Nhấp vào SSH để kết nối với phiên bản
2cd mysql-migration ./run.sh ${DEVSHELL_PROJECT_ID} ${GCS_BUCKET_NAME}
Trong vỏ bảo mật, hãy kiểm tra đĩa và phân vùng của nó, đồng thời quan sát rằng đĩa
73 có một phân vùnggit clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
74git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
0git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Trong Cloud Shell, hãy chạy lệnh sau để tăng kích thước đĩa. Khi được nhắc, hãy trả lời bằng
75git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
6git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Trong vỏ bảo mật, hãy xác nhận rằng kích thước ổ đĩa đã tăng lên
0git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Cũng xin lưu ý rằng phân vùng vẫn có kích thước 10 GB
Trong trình bao bảo mật, hãy chạy lệnh sau để xem các hệ thống tệp, loại và kích thước của chúng
3git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Trong vỏ an toàn, phát triển phân vùng
4git clone //github.com/GoogleCloudPlatform/solutions-compute-mysql-migration-haproxy.git mysql-migration
Hai lệnh cuối cùng cho phép bạn xem mức tăng
Dọn dẹp
Sau khi hoàn thành hướng dẫn, bạn có thể dọn sạch các tài nguyên mà bạn đã tạo để chúng ngừng sử dụng hạn ngạch và phí phát sinh. Các phần sau mô tả cách xóa hoặc tắt các tài nguyên này
Xóa dự án
- thận trọng. Xóa một dự án có các hiệu ứng sau
- Mọi thứ trong dự án đều bị xóa. Nếu bạn đã sử dụng một dự án hiện có cho hướng dẫn này, khi bạn xóa nó, bạn cũng xóa mọi công việc khác mà bạn đã thực hiện trong dự án
- ID dự án tùy chỉnh bị mất. Khi bạn tạo dự án này, bạn có thể đã tạo ID dự án tùy chỉnh mà bạn muốn sử dụng trong tương lai. Để giữ nguyên các URL sử dụng ID dự án, chẳng hạn như URL
0, hãy xóa các tài nguyên đã chọn bên trong dự án thay vì xóa toàn bộ dự ánmysql -u root -psolution-admin
- Trong bảng điều khiển Google Cloud, hãy chuyển đến trang Quản lý tài nguyên
Chuyển đến Quản lý tài nguyên
- Trong danh sách dự án, chọn dự án mà bạn muốn xóa, sau đó nhấp vào Xóa
- Trong hộp thoại, nhập ID dự án, sau đó bấm Tắt để xóa dự án
Cái gì tiếp theo
Bạn có thể áp dụng những gì bạn đã học được trong hướng dẫn này cho các cụm MySQL trong môi trường sản xuất để thiết lập một quy trình và thói quen khi cần mở rộng quy mô. Để thực hành nội dung trước, hãy sao chép môi trường cụm MySQL sản xuất và chạy thử. Ghi lại bất kỳ bước quan trọng nào có thể ảnh hưởng đến những thay đổi về tỷ lệ theo chiều dọc tiếp theo trong môi trường sản xuất của bạn
Xem xét việc phát triển các tập lệnh thực thi các bước được hiển thị trong hướng dẫn này. Bằng cách này, trong môi trường sản xuất của bạn, bạn có thể tự động thay đổi quy mô thay vì thay đổi quy mô theo cách thủ công
Để đọc thêm, xem những
Khám phá kiến trúc tham khảo, sơ đồ, hướng dẫn và các phương pháp hay nhất về Google Cloud. Hãy xem Trung tâm kiến trúc đám mây của chúng tôi