Salt hoặc Saltstack là một khuôn khổ tự động hóa CNTT nguồn mở cho phép quản trị viên thực hiện lệnh từ xa trực tiếp tới nhiều máy. Salt chủ yếu được viết bằng Python và được thiết kế bằng kiến trúc Master và Minion. SaltStack master là bộ điều khiển trung tâm của quản lý cấu hình Salt và Minions là các máy chủ do SaltStack Master quản lý hoặc bạn đặt tên cho minions là máy chủ mục tiêu.
SaltStack master chạy trên HĐH Linux theo mặc định, nhưng minions có thể được sử dụng trên bất kỳ hệ điều hành nào. Saltstack là quản lý cấu hình mang tính cách mạng cho việc triển khai tự động hóa, thực thi tác vụ từ xa và cơ sở hạ tầng dưới dạng mã. SaltStack cũng có thể được sử dụng để cung cấp nhiều máy chủ cơ sở hạ tầng, bao gồm máy chủ vật lý và ảo, cũng như đám mây.
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Salt trên máy chủ AlmaLinux 9. Bạn cũng sẽ tìm hiểu cách sử dụng cơ bản các mô-đun Salt và tạo dự án trạng thái Salt đầu tiên. Trong trường hợp này, bạn sẽ tạo một dự án trạng thái Salt để cài đặt LEMP Stack.
Thực hiện lệnh sau để mở các cổng 4505 và 4506 cho máy chủ Salt Master.
Bây giờ hãy tải lại firewalld để áp dụng các thay đổi, sau đó xác minh danh sách các cổng mở trên firewalld bằng lệnh bên dưới.
Sau khi chạy lệnh, các cổng 4505 và 4506 được thêm vào firewalld.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22260%22%3E%3C/svg%3E
Thực hiện lệnh bên dưới để nhập khóa Salt GPG.
Bây giờ hãy tải kho lưu trữ Salt xuống hệ thống của bạn bằng lệnh bên dưới.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22180%22%3E%3C/svg%3E
Sau khi khóa GPG và kho lưu trữ Saltk được thêm vào, hãy chạy lệnh dnf bên dưới để xác minh danh sách kho lưu trữ khả dụng trên hệ thống của bạn và tải xuống siêu dữ liệu cho tất cả các kho lưu trữ khả dụng.
Giả sử lệnh thành công, đầu ra bạn nhận được sẽ tương tự như sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22231%22%3E%3C/svg%3E
Cài đặt gói salt-master bằng lệnh dnf bên dưới. Nhập y khi được nhắc để tiếp tục cài đặt.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22280%22%3E%3C/svg%3E
Sau khi cài đặt hoàn tất, hãy mở cấu hình Salt mặc định /etc/salt/master bằng trình chỉnh sửa nano sau lệnh.
Thay đổi tùy chọn giao diện mặc định bằng địa chỉ IP cục bộ của bạn và tùy chọn ID bằng tên máy chủ của bạn. Trong trường hợp này, máy chủ Salt Master được cấu hình với địa chỉ IP cục bộ 192.168.5.50 và tên máy chủ master.
Khi hoàn tất, hãy lưu và đóng tệp.
Tiếp theo, chạy lệnh systemctl sau để khởi động và kích hoạt dịch vụ salt-master.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22532%22%20height=%22145%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh dịch vụ salt-master để đảm bảo rằng dịch vụ đang chạy bằng cách thực hiện lệnh bên dưới.
Sau khi hoạt động thành công, đầu ra được hiển thị sẽ là hoạt động (đang chạy), điều này cho biết dịch vụ salt-master đang đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22214%22%3E%3C/svg%3E
Chạy lệnh dnf bên dưới để cài đặt gói salt-minion trên máy chủ Minion của bạn. Nhập y để xác nhận cài đặt.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22205%22%3E%3C/svg%3E
Sau khi cài đặt, hãy mở cấu hình Salt mặc định /etc/salt/minion bằng trình chỉnh sửa nano bên dưới lệnh.
Trong tùy chọn master, nhập địa chỉ IP của Salt Master.
Nhập địa chỉ IP cục bộ của minion vào tùy chọn giao diện và nhập tên máy chủ trên id tùy chọn.
Lưu tệp và thoát khỏi trình chỉnh sửa khi bạn hoàn tất.
Tiếp theo, chạy lệnh systemctl bên dưới để khởi động và kích hoạt dịch vụ salt-minion.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22598%22%20height=%22142%22%3E%3C/svg%3E
Sau khi dịch vụ salt-minion được khởi động, hãy xác minh dịch vụ này bằng lệnh bên dưới.
Nếu mọi thứ diễn ra tốt đẹp, đầu ra sẽ là hoạt động (đang chạy), điều này xác nhận rằng dịch vụ salt-minion đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22196%22%3E%3C/svg%3E
Di chuyển đến Salt Master và chạy lệnh salt-key bên dưới để lấy danh sách khóa vân tay.
Dấu vân tay của máy chủ Salt Minion minion1 và minion2 vẫn ở trạng thái 'Khóa chưa được chấp nhận'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22165%22%3E%3C/svg%3E
Chạy lệnh bên dưới để chấp nhận khóa Salt Minion cho cả máy chủ minion1 và minion2.
Nhập Y khi được nhắc chấp nhận khóa và bạn sẽ nhận được kết quả như 'Khóa cho minion minion1/2 đã chấp nhận'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22436%22%20height=%22313%22%3E%3C/svg%3E
Bây giờ hãy xác minh lại danh sách các khóa dấu vân tay trên Salt Master bằng lệnh bên dưới.
Dấu vân tay của Salt Minion dành cho máy chủ minion1 và minion2 có sẵn trong Phần Khóa được chấp nhận.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22145%22%3E%3C/svg%3E
Bây giờ bạn có thể điều khiển máy chủ Salt Minion từ Salt Master thông qua dòng lệnh Salt.
Thực hiện lệnh salt bên dưới để xác minh kết nối giữa Salt Master và Minions và xác minh phiên bản Salt trên Minion máy chủ.
Nếu kết nối thành công giữa Salt Master và Minion, đầu ra True sẽ được hiển thị. Ngoài ra, bạn có thể thấy Salt 3006.4 đã được cài đặt, kết quả từ tham số test.version.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22395%22%20height=%22258%22%3E%3C/svg%3E
Ngoài ra, bạn có thể chỉ định minion mục tiêu bằng lệnh salt như thế này.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22115%22%3E%3C/svg%3E
Kiểm tra danh sách kho lưu trữ thông qua pkg.list_repos, sau đó cập nhật kho lưu trữ thông qua pkg.refresh_db.
Bạn cũng có thể xác minh danh sách các bản cập nhật gói khả dụng bằng cách sử dụng đối số pkg.list_upgrades bên dưới.
Để cài đặt một gói cụ thể, hãy sử dụng theo pkg.install bên dưới.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22431%22%20height=%22750%22%3E%3C/svg%3E
Sử dụng đối số service.available để đảm bảo rằng dịch vụ có sẵn trên máy chủ đích. Hoặc sử dụng đối số service.enabled để đảm bảo rằng dịch vụ mục tiêu được bật hoặc bạn cũng có thể sử dụng service.get_running để đảm bảo rằng dịch vụ đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22484%22%20height=%22643%22%3E%3C/svg%3E
Cuối cùng, bạn cũng có thể kiểm tra lệnh bắt đầu được thực thi bởi một dịch vụ cụ thể bằng cách sử dụng đối số service.execs.
Trước khi thực hiện tiếp, hãy thực hiện lệnh sau để kích hoạt mô-đun kho lưu trữ sẽ được sử dụng để cài đặt phiên bản cụ thể gói.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22515%22%3E%3C/svg%3E
Bây giờ, hãy tạo một thư mục cấu hình mới /srv/salt/ sẽ được sử dụng để lưu trữ Salt của bạn trạng thái.
Thực hiện lệnh bên dưới để tạo thư mục dự án mới /srv/salt/lemp và tệp init.sls.
Chèn cấu hình sau vào tệp. Trong trường hợp này, bạn sẽ cài đặt các gói LEMP Stack vào máy chủ Minion thông qua mô-đun trạng thái pkg và đảm bảo mỗi dịch vụ đang chạy và được bật bằng mô-đun trạng thái dịch vụ.
Lưu và đóng tệp khi bạn hoàn tất.
Tiếp theo, chạy lệnh bên dưới để hiển thị cấu hình trạng thái chi tiết cho dự án lemp.
Sau khi lệnh được thực hiện được thực hiện, bạn sẽ nhận được cấu hình chi tiết như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22502%22%20height=%22750%22%3E%3C/svg%3E
Bây giờ hãy chạy lệnh sau để áp dụng trạng thái lemp cho máy chủ Minion.
Bạn sẽ thấy báo cáo được tạo về quá trình cài đặt tự động. Việc cài đặt các gói LEMP Stack trên cả hai máy chủ Minion đều thành công trong trường hợp này.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22437%22%20height=%22750%22%3E%3C/svg%3E
Dưới đây là thông tin chi tiết khi các dịch vụ đang chạy và được bật.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22637%22%20height=%22750%22%3E%3C/svg%3E
SaltStack master chạy trên HĐH Linux theo mặc định, nhưng minions có thể được sử dụng trên bất kỳ hệ điều hành nào. Saltstack là quản lý cấu hình mang tính cách mạng cho việc triển khai tự động hóa, thực thi tác vụ từ xa và cơ sở hạ tầng dưới dạng mã. SaltStack cũng có thể được sử dụng để cung cấp nhiều máy chủ cơ sở hạ tầng, bao gồm máy chủ vật lý và ảo, cũng như đám mây.
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Salt trên máy chủ AlmaLinux 9. Bạn cũng sẽ tìm hiểu cách sử dụng cơ bản các mô-đun Salt và tạo dự án trạng thái Salt đầu tiên. Trong trường hợp này, bạn sẽ tạo một dự án trạng thái Salt để cài đặt LEMP Stack.
Điều kiện tiên quyết
Để bắt đầu với hướng dẫn này, hãy đảm bảo bạn có những điều sau:- 3 máy chủ AlmaLinux 9.
- Người dùng không phải root có quyền quản trị viên sudo.
- SELinux có trạng thái Permissive hoặc Disabled.
Thiết lập Firewalld trên Salt Master
Trước khi cài đặt Salt, bạn phải mở các cổng 4505 và 4506 trên máy chủ Salt Master, các cổng này sẽ được Salt Minions sử dụng để kết nối với Salt Master. Để thực hiện điều này, bạn sẽ sử dụng Firewalld.Thực hiện lệnh sau để mở các cổng 4505 và 4506 cho máy chủ Salt Master.
Mã:
sudo firewall-cmd --zone=public --permanent --add-port={4505,4506}/tcp
Mã:
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22260%22%3E%3C/svg%3E
Thêm kho lưu trữ Salt
Các gói Salt có sẵn trên trang web chính thức Kho lưu trữ Salt. Bây giờ, bạn sẽ thêm kho lưu trữ Salt vào tất cả các máy chủ AlmaLinux của mình, cả Salt Master và Minions.Thực hiện lệnh bên dưới để nhập khóa Salt GPG.
Mã:
sudo rpm --import https://repo.saltproject.io/salt/py3/redhat/9/x86_64/SALT-PROJECT-GPG-PUBKEY-2023.pub
Mã:
curl -fsSL https://repo.saltproject.io/salt/py3/redhat/9/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22180%22%3E%3C/svg%3E
Sau khi khóa GPG và kho lưu trữ Saltk được thêm vào, hãy chạy lệnh dnf bên dưới để xác minh danh sách kho lưu trữ khả dụng trên hệ thống của bạn và tải xuống siêu dữ liệu cho tất cả các kho lưu trữ khả dụng.
Mã:
sudo dnf repolist
sudo dnf makecache
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22231%22%3E%3C/svg%3E
Cài đặt và cấu hình Salt Master
Sau khi thêm kho lưu trữ Salt, bạn sẽ cài đặt và cấu hình gói salt-master vào máy chủ Salt Master chính.Cài đặt gói salt-master bằng lệnh dnf bên dưới. Nhập y khi được nhắc để tiếp tục cài đặt.
Mã:
sudo dnf install salt-master
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22280%22%3E%3C/svg%3E
Sau khi cài đặt hoàn tất, hãy mở cấu hình Salt mặc định /etc/salt/master bằng trình chỉnh sửa nano sau lệnh.
Mã:
sudo nano /etc/salt/master
Mã:
interface: 192.168.5.50
id: master
Tiếp theo, chạy lệnh systemctl sau để khởi động và kích hoạt dịch vụ salt-master.
Mã:
sudo systemctl start salt-master
sudo systemctl enable salt-master
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22532%22%20height=%22145%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh dịch vụ salt-master để đảm bảo rằng dịch vụ đang chạy bằng cách thực hiện lệnh bên dưới.
Mã:
sudo systemctl status salt-master
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22214%22%3E%3C/svg%3E
Cài đặt và cấu hình Salt Minion
Sau khi cấu hình Salt Master, bước tiếp theo là cài đặt salt-minion và cấu hình máy chủ Minion để kết nối với Salt Master.Chạy lệnh dnf bên dưới để cài đặt gói salt-minion trên máy chủ Minion của bạn. Nhập y để xác nhận cài đặt.
Mã:
sudo dnf install salt-minion
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22205%22%3E%3C/svg%3E
Sau khi cài đặt, hãy mở cấu hình Salt mặc định /etc/salt/minion bằng trình chỉnh sửa nano bên dưới lệnh.
Mã:
sudo nano /etc/salt/minion
Mã:
master: 192.168.5.50
Mã:
interface: 192.168.5.20
id: minion1
Tiếp theo, chạy lệnh systemctl bên dưới để khởi động và kích hoạt dịch vụ salt-minion.
Mã:
sudo systemctl start salt-minion
sudo systemctl enable salt-minion
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22598%22%20height=%22142%22%3E%3C/svg%3E
Sau khi dịch vụ salt-minion được khởi động, hãy xác minh dịch vụ này bằng lệnh bên dưới.
Mã:
sudo systemctl status salt-minion
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22196%22%3E%3C/svg%3E
Đăng ký Salt Minion vào Salt Master
Lúc này, dịch vụ salt-minion đang chạy. Sau đó, Salt Minion sẽ gửi yêu cầu để đăng ký với Salt Master. Để đăng ký Salt Minion, bạn phải chấp nhận khóa vân tay trên Salt Master.Di chuyển đến Salt Master và chạy lệnh salt-key bên dưới để lấy danh sách khóa vân tay.
Mã:
salt-key --finger-all
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22165%22%3E%3C/svg%3E
Chạy lệnh bên dưới để chấp nhận khóa Salt Minion cho cả máy chủ minion1 và minion2.
Mã:
salt-key -a minion1
salt-key -a minion2
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22436%22%20height=%22313%22%3E%3C/svg%3E
Bây giờ hãy xác minh lại danh sách các khóa dấu vân tay trên Salt Master bằng lệnh bên dưới.
Mã:
salt-key --finger-all
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22145%22%3E%3C/svg%3E
Bây giờ bạn có thể điều khiển máy chủ Salt Minion từ Salt Master thông qua dòng lệnh Salt.
Thực hiện lệnh salt bên dưới để xác minh kết nối giữa Salt Master và Minions và xác minh phiên bản Salt trên Minion máy chủ.
Mã:
salt '*' test.ping
salt '*' test.version
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22395%22%20height=%22258%22%3E%3C/svg%3E
Ngoài ra, bạn có thể chỉ định minion mục tiêu bằng lệnh salt như thế này.
Mã:
salt minion1 test.ping
Cách sử dụng cơ bản của Salt State Module
Trong phần sau, bạn sẽ tìm hiểu cách sử dụng mô-đun Salt state để quản lý máy chủ Minion. Bạn sẽ khám phá một số mô-đun Salt state như cmd để chạy các lệnh Linux tùy ý, pkg để quản lý các gói và kho lưu trữ, và mô-đun dịch vụ để quản lý các dịch vụ.Chạy lệnh tùy ý qua mô-đun cmd
Thực hiện lệnh bên dưới để chạy các lệnh Linux cụ thể qua mô-đun cmd state. Trong ví dụ này, bạn sẽ kiểm tra thông tin chi tiết của hạt nhân Linux thông qua lệnh uname -a.
Mã:
salt '*' cmd.run 'uname -a'
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22115%22%3E%3C/svg%3E
Quản lý các gói và kho lưu trữ thông qua mô-đun pkg
Bây giờ, hãy sử dụng mô-đun trạng thái pkg sau để quản lý các gói và kho lưu trữ trên máy chủ Minion của bạn.Kiểm tra danh sách kho lưu trữ thông qua pkg.list_repos, sau đó cập nhật kho lưu trữ thông qua pkg.refresh_db.
Mã:
salt '*' pkg.list_repos
salt '*' pkg.refresh_db
Mã:
salt '*' pkg.list_upgrades
Mã:
salt '*' pkg.install vim
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22431%22%20height=%22750%22%3E%3C/svg%3E
Quản lý Dịch vụ thông qua Mô-đun dịch vụ
Tiếp theo, bạn có thể sử dụng mô-đun trạng thái dịch vụ để quản lý các dịch vụ trên máy chủ Minion của mình.Sử dụng đối số service.available để đảm bảo rằng dịch vụ có sẵn trên máy chủ đích. Hoặc sử dụng đối số service.enabled để đảm bảo rằng dịch vụ mục tiêu được bật hoặc bạn cũng có thể sử dụng service.get_running để đảm bảo rằng dịch vụ đang chạy.
Mã:
salt '*' service.available chronyd
salt '*' service.enabled chronyd
salt '*' service.get_running
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22484%22%20height=%22643%22%3E%3C/svg%3E
Cuối cùng, bạn cũng có thể kiểm tra lệnh bắt đầu được thực thi bởi một dịch vụ cụ thể bằng cách sử dụng đối số service.execs.
Mã:
salt '*' service.execs
Tạo trạng thái Salt đầu tiên
Trong phần này, bạn sẽ tạo dự án trạng thái Salt đầu tiên để cài đặt LEMP Stack (Nginx, MariaDB và PHP-FPM) vào các máy chủ Minion mục tiêu.Trước khi thực hiện tiếp, hãy thực hiện lệnh sau để kích hoạt mô-đun kho lưu trữ sẽ được sử dụng để cài đặt phiên bản cụ thể gói.
Mã:
salt '*' cmd.run 'sudo dnf module enable nginx:1.22 -y'
salt '*' cmd.run 'sudo dnf module enable php:8.1 -y'
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22515%22%3E%3C/svg%3E
Bây giờ, hãy tạo một thư mục cấu hình mới /srv/salt/ sẽ được sử dụng để lưu trữ Salt của bạn trạng thái.
Mã:
mkdir -p /srv/salt/
Mã:
mkdir -p /srv/salt/lemp
nano /srv/salt/lemp/init.sls
Mã:
lemp_stack:
pkg.installed:
- pkgs:
- nginx
- mariadb-server
- php
- php-fpm
nginx:
service.running:
- enable: True
- reload: True
mariadb:
service.running:
- enable: True
- reload: True
php-fpm:
service.running:
- enable: True
- reload: True
Tiếp theo, chạy lệnh bên dưới để hiển thị cấu hình trạng thái chi tiết cho dự án lemp.
Mã:
sudo salt * state.show_sls lemp
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22502%22%20height=%22750%22%3E%3C/svg%3E
Bây giờ hãy chạy lệnh sau để áp dụng trạng thái lemp cho máy chủ Minion.
Mã:
sudo salt '*' state.apply lemp
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22437%22%20height=%22750%22%3E%3C/svg%3E
Dưới đây là thông tin chi tiết khi các dịch vụ đang chạy và được bật.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22637%22%20height=%22750%22%3E%3C/svg%3E