Làm cách nào để cài đặt và cấu hình Ansible trên Ubuntu?

Bắt đầu với Ansible trên Ubuntu để quản lý cấu hình và cung cấp môi trường tốt hơn.


Quản lý cấu hình là một giai đoạn quan trọng trong vòng đời DevOps. Nó giúp tự động hóa và điều phối cơ sở hạ tầng CNTT.

Có một số công cụ để quản lý cấu hình, ví dụ: Puppet, Ansible, Chef, SaltStack. Và dĩ nhiên, Ansible đó là một trong những công cụ phổ biến nhất hiện nay trong DevOps. Nó có thể quản lý 1000 LỚN máy chủ và cơ sở hạ tầng CNTT hoàn chỉnh của bạn một cách dễ dàng.

Chúng tôi sẽ đề cập đến những điều sau trong bài viết này.

  • Cài đặt ansible
  • Trao đổi khóa SSH
  • Thiết lập máy khách ansible
  • Thử nghiệm khả thi

Nếu bạn là người mới bắt đầu tuyệt đối thì hãy xem bài giới thiệu Ansible này.

Giới thiệu Ansible cho người mới bắt đầu

Cài đặt ansible

Để giữ cho nó đơn giản, hãy để thử dùng Ansible trên hai máy chủ. Một máy chủ sẽ là máy chủ ansible và máy chủ khác có thể sử dụng máy khách có IP sau.

  • máy chủ ansible – 10.0.0.1
  • ansible-client – 10.0.0.25

Quá trình cài đặt rất đơn giản, những điều sau đây cần được thực hiện trên tất cả các máy chủ mà bạn muốn sử dụng Ansible. Trong trường hợp này, trên cả hai máy chủ.

  • Chạy lệnh dưới đây để cài đặt phần mềm cần thiết để cài đặt ansible.

[email được bảo vệ]: ~ # apt cài đặt phần mềm-thuộc tính chung

  • Cài đặt kho lưu trữ với gói ansible.

[email được bảo vệ]: ~ # apt-add-repository –yes –update ppa: ansible / ansible

  • Cập nhật công cụ đóng gói nâng cao (apt)

[email được bảo vệ]: ~ # cập nhật apt

  • Và cuối cùng – chạy lệnh bên dưới để cài đặt

[email được bảo vệ]: ~ # apt cài đặt ansible

Sẽ mất vài giây để cài đặt gói cần thiết.

Làm thế nào để bạn đảm bảo cài đặt và phiên bản của nó?

Vâng, nó rất dễ dàng. Bạn có thể sử dụng cú pháp –version với ansible để tìm hiểu như bên dưới.

[email được bảo vệ]: ~ # ansible – chuyển đổi
2.8.1
tập tin cấu hình = /etc/ansible/ansible.cfg
đường dẫn tìm kiếm mô-đun được định cấu hình = [u ‘/ root / .ansible / plugins / module’, u ‘/ usr / share / ansible / plugins / module’]
vị trí mô-đun python ansible = /usr/lib/python2.7/dist-packages/ansible
vị trí thực thi = / usr / bin / ansible
phiên bản python = 2.7.15+ (mặc định, ngày 27 tháng 11 năm 2018, 23:36:35) [GCC 7.3.0]
[email được bảo vệ]: ~ #

Như bạn có thể thấy, Ansible 2.8.1 đã được cài đặt và nó cung cấp các thông tin cần thiết như vị trí tệp cấu hình, mô-đun python.

Tiếp theo, chúng ta cần thực hiện trao đổi khóa SSH để phục vụ và khách hàng có thể nói chuyện với nhau.

Trao đổi khóa SSH

Ansible kết nối với máy khách của mình thông qua SSH (Secure shell).

Trước tiên chúng tôi sẽ tạo khóa công khai trên máy chủ ansible, máy chủ này cần được sao chép vào máy khách ansible-client.

Đảm bảo bạn đã đăng nhập với tư cách người dùng root.

  • Tạo khóa bằng lệnh ssh-keygen như hình bên dưới

[email được bảo vệ]: ~ # ssh-keygen
Tạo cặp khóa rsa công khai / riêng tư.
Nhập tệp để lưu khóa (/root/.ssh/id_rsa):
Nhập cụm mật khẩu (trống không có cụm mật khẩu):
Nhập lại cụm mật khẩu một lần nữa:
Nhận dạng của bạn đã được lưu trong /root/.ssh/id_rsa.
Khóa công khai của bạn đã được lưu trong /root/.ssh/id_rsa.pub.
Dấu vân tay chính là:
SHA256: cDapZBESo + 8XcbXupbtILkFrklUSpwa70Y1c7yH5K1A [email được bảo vệ]
Hình ảnh ngẫu nhiên của khóa là:
+—[RSA 2048]—-+
| =. + oo. |
| . B.B. =. |
| . o @oE + |
| . * oO *. |
| o ++. S +. |
| .o + o. + |
| .o..o + |
| .. o o. |
| .o o. |
+—-[SHA256]—–+
[email được bảo vệ]: ~ #

Như bạn đã nhận thấy, nó đã tạo ra một khóa công khai trong thư mục .ssh. Đường dẫn đầy đủ là /root/.ssh/id_rsa.pub

Ghi chú: đảm bảo các tệp khóa riêng và khóa chung không thể đọc được trên thế giới. Bạn có thể liệt kê các tập tin để xác minh chúng.

  • Chuyển đến thư mục .ssh

cd /root / .shsh

  • Liệt kê các tập tin

[email được bảo vệ]: ~ # ls -l
-rw ——- 1 root 1679 19 tháng 6 00:37 id_rsa
-rw ——- 1 root root 404 ngày 19 tháng 6 00:37 id_rsa.pub

Nếu bạn nhận thấy sự cho phép là sai, thì bạn có thể thay đổi nó bằng cách sử dụng lệnh chmod

Ví dụ:

chmod 400 id_rsa
chmod 400 id_rsa.pub

Hãy để sao chép khóa công khai vào máy chủ Ansible có địa chỉ IP là 192.168.56.101

[email được bảo vệ]: ~ / .ssh # ssh-copy-id -i ~ / .ssh / id_rsa.pub [email được bảo vệ]
/ usr / bin / ssh-copy-id: INFO: Nguồn của khóa (s) sẽ được cài đặt: "/root/.ssh/id_rsa.pub"
Tính xác thực của máy chủ ’10 .0.0.25 (10.0.0.25) ‘không thể được thiết lập.
Dấu vân tay của khóa ECDSA là SHA256: eXduPrfV0mhxUcpsZWg + 0oXDim7bHb90caA / Rt79cIs.
Bạn có chắc chắn muốn tiếp tục kết nối (có / không) không? Đúng
/ usr / bin / ssh-copy-id: INFO: cố gắng đăng nhập bằng (các) khóa mới, để lọc ra bất kỳ cái nào đã được cài đặt
/ usr / bin / ssh-copy-id: INFO: 1 khóa vẫn được cài đặt – nếu bạn được nhắc bây giờ thì đó là cài đặt các khóa mới
[email được bảo vệ]Mật khẩu:

Số khóa được thêm vào: 1

Bây giờ hãy thử đăng nhập vào máy, với: "ssh ‘[email được bảo vệ]‘"
và kiểm tra để đảm bảo rằng chỉ có (các) khóa bạn muốn được thêm vào.

[email được bảo vệ]: ~ / .ssh #

Bạn có thể thấy trong đầu ra ở trên, 1 phím đã được thêm thành công. Điều này chỉ ra rằng khóa SSH được trao đổi.

Tiếp theo, chúng tôi sẽ thiết lập một máy khách Ansible.

Thiết lập ứng dụng khách ansible

Tôi giả sử bạn đã làm theo các bước cài đặt Ansible trên máy chủ như được giải thích trong các bước trước.

Thiết lập máy khách hoặc máy chủ không có gì khác ngoài việc làm cho máy chủ Ansible nhận ra máy khách. Và, để làm như vậy:

  • Đăng nhập vào máy chủ Ansible
  • Chuyển đến / etc / ansible
  • Thêm phần sau vào tệp máy chủ bằng cách sử dụng trình chỉnh sửa yêu thích của bạn

[Khách hàng]
nút1 ansible_ssh_host = 10.0.0.25

  • Lưu tập tin máy chủ

Kiểm tra ansible

Nếu bạn đã thực hiện đúng tất cả các bước, bạn sẽ nhận được một SỰ THÀNH CÔNG thông báo khi bạn chạy lệnh dưới đây trên máy chủ ansible.

[email được bảo vệ]: ~ / .ssh # ansible -m ping Client
nút1 | THÀNH CÔNG => {
"ansible_facts": {
"khám phá_interpreter_python": "/ usr / bin / python3"
},
"đã thay đổi": sai,
"ping": "pong"
}
[email được bảo vệ]: ~ / .ssh #

Trên đây sẽ gửi cho khách hàng để kiểm tra kết nối và xác nhận xem có tốt hay không.

Phần kết luận

Tôi hy vọng điều này cung cấp cho bạn một ý tưởng để bắt đầu với việc cài đặt và chơi xung quanh. Hãy theo dõi để biết thêm hướng dẫn Ansible hoặc cũng kiểm tra này Udemy Mastering Ansible khóa học.

THẺ

  • Ansible

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map