Giới thiệu
Deis là một mở nguồn riêng nền tảng như một dịch vụ (PaaS) mà đơn giản hóa việc triển khai và quản lý các ứng dụng của bạn trên máy chủ của riêng bạn. Bằng cách tận dụng các công nghệ như Docker và CoreOS, Deis cung cấp một quy trình làm việc và nhân rộng các tính năng giống với Heroku, tại một trong những nhà cung cấp hosting của bạn lựa chọn. Deis hỗ trợ ứng dụng mà có thể chạy trong một thùng chứa Docker, và có thể chạy trên bất kỳ nền tảng nào hỗ trợ CoreOS.
Trong hướng dẫn này, chúng tôi sẽ hiển thị bạn làm thế nào để thiết lập của riêng bạn 3-máy Deis nền tảng cụm trên DigitalOcean.
Lưu ý: Deis là trong phát triển hoạt động. Nó không nên được được sử dụng trong sản xuất. Điều này dựa trên 0.13.0 phát hành của Deis.
Điều kiện tiên quyết
Để hoàn thành hướng dẫn này, bạn phải có các mục sau:
Khả năng tạo ít nhất 3 giọt có 2GB hoặc cao hơn. Đây sẽ là CoreOS máy mà các Deis nền tảng sẽ được cài đặt trên
SSH phím để thêm vào các giọt
Một miền để trỏ tới các cụm máy với–hướng dẫn này sẽ sử dụng example.com là tên miền của mình. Một thay thế là sử dụng xip
Hướng dẫn này dựa rất nhiều vào làm thế nào để thiết lập một CoreOS cụm trên DigitalOcean. Xem lại nó nếu bạn gặp khó khăn theo các bước trong hướng dẫn này liên quan đến việc tạo ra một cụm CoreOS.
Chúng tôi cũng sẽ cài đặt các Deis điều khiển Tiện ích, deisctl, và Deis khách hàng, deis, trên một máy tính cục bộ của hệ điều hành Mac OS X, nhưng bạn có thể cài đặt chúng ở nơi khác, chẳng hạn như một giọt 14,04 cho Ubuntu, nếu bạn muốn. SSH khóa riêng tương ứng với các khóa công khai SSH sử dụng để tạo ra những giọt CoreOS phải tồn tại trên máy tính nơi deisctl được cài đặt.
Tạo ra một URL phát hiện mới
Để tạo ra cụm CoreOS chúng tôi sẽ cài đặt các Deis nền tảng trên, chúng tôi lần đầu tiên cần phải tạo ra một URL phát hiện mới, một địa chỉ duy nhất mà các cửa hàng ngang CoreOS địa chỉ và siêu dữ liệu. Cách dễ nhất để làm điều này là sử dụng https://discovery.etcd.io, một dịch vụ miễn phí khám phá. Một khám phá URL mới bằng cách truy cập https://discovery.etcd.io/new trong trình duyệt web hoặc bằng cách chạy lệnh curl sau:
Curl -w “\n” https://discovery.etcd.io/new
Một trong hai phương pháp sẽ trở lại một URL phát hiện độc đáo và tươi trông giống như sau (phần được đánh dấu sẽ là một mã thông báo duy nhất):
https://Discovery.etcd.io/f8d48be35b794da45e249bb149729a27
Bạn sẽ sử dụng phát hiện kết quả của bạn URL để tạo ra của bạn mới Deis nền tảng cụm. Việc phát hiện ra cùng một URL phải được xác định trong phần etcd của đám mây cấu hình của mỗi máy chủ CoreOS bạn muốn thêm vào một cụ thể Deis nền tảng cụm.
Bây giờ mà chúng tôi có một URL phát hiện, hãy xem xét thêm nó vào các đám mây-cấu hình mà chúng tôi sẽ sử dụng để tạo mỗi máy của chúng tôi Deis cụm.
Deis dữ liệu người dùng
Để tạo ra một cụm máy CoreOS sẽ được sử dụng trong của chúng tôi Deis cụm, chúng tôi sẽ sử dụng một tập tin cấu hình đám mây đặc biệt được cung cấp bởi maintainers của Deis. Tập tin này là có sẵn tại Deis GitHub kho, nhưng cũng có sẵn tại liên kết này:
Deis dữ liệu người dùng.
Mở dữ liệu người dùng trong một trình soạn thảo văn bản và tìm dòng nơi URL phát hiện được định nghĩa. Nó sẽ giống như thế này:
khám phá: https://discovery.etcd.io/ <DISCOVERY_TOKEN>
Thay thế <DISCOVERY_TOKEN> với mã thông báo phát hiện ra bạn tạo ra trong bước trước. Bạn có thể lưu tệp dữ liệu người dùng này một nơi nào đó nếu bạn muốn.
Tạo CoreOS giọt
Bây giờ mà chúng tôi có các dữ liệu người dùng mà chúng tôi sẽ sử dụng, hãy tạo máy CoreOS bây giờ. Nếu bạn không quen thuộc với làm thế nào để cung cấp một tập tin cấu hình đám mây qua dữ liệu người dùng trong khi giọt tạo, xem làm thế nào để cấu hình đám mây cung cấp phần của chúng tôi CoreOS cụm hướng dẫn.
Tạo ra ít nhất ba giọt với các đặc điểm sau đây:
Ít nhất 2 GB bộ nhớ – nhiều hơn nữa được đề nghị
Cùng một vùng
Tư nhân mạng được kích hoạt, nếu có. Nếu tư nhân mạng là không có sẵn trong khu vực được lựa chọn của bạn, chỉnh sửa dữ liệu người dùng và thay thế mỗi sự xuất hiện của $private_ipv4 với $public_ipv4
Cho phép dữ liệu người dùng và nhập dữ liệu người dùng từ bước trước
Chọn CoreOS Alpha kênh như phân phối Linux
Chọn ít nhất một SSH phím để thêm
Một khi bạn đã tạo ra ít nhất ba trong số các máy này, bạn cần phải có một cụm CoreOS đã sẵn sàng cho các Deis cài đặt nền tảng. Hãy di chuyển vào thiết lập DNS.
Cấu hình DNS
Deis yêu cầu một bản ghi DNS ký tự đại diện để hoạt động đúng. Nếu tên miền cấp cao nhất (TLD) mà bạn đang sử dụng là example.com, ứng dụng của bạn sẽ tồn tại ở các *. example.com cấp. Ví dụ, một ứng dụng được gọi là “ứng dụng” sẽ có thể truy cập thông qua app.example.com.
Một cách để cấu hình này trên DigitalOcean là để thiết lập các vòng tròn DNS thông qua bảng điều khiển DNS. Để làm điều này, thêm các hồ sơ vào tên miền của bạn:
Một ký tự đại diện bản ghi CNAME ghi lại tại tên miền quốc gia của bạn, tức là một bản ghi CNAME với * với tên, và @ như tên máy kinh điển
Vì mỗi CoreOS máy tạo, một A-hồ sơ trỏ đến tên miền, tức là một A-ghi tên @, với địa chỉ IP công cộng của giọt
Tập tin khu vực bây giờ sẽ có các mục sau đây trong nó: (bạn
Bằng cách sử dụng xip.io
Nếu bạn không muốn để thiết lập tên miền riêng của bạn, bạn có thể sử dụng xip.io để cung cấp của bạn ký DNS. Về cơ bản, điều này sẽ cho phép bạn sử dụng địa chỉ IP của bạn giọt nối bởi “. xip.io” như một tên miền ký tự đại diện giải quyết địa chỉ IP.
Sau khi bạn cài đặt các Deis nền tảng trên cụm của bạn, xác định máy CoreOS đang chạy các đơn vị deis-router@1.service với deisctl danh sách. Sau đó xác định địa chỉ IP công cộng của máy đó. Nếu nó là 104.131.47.125, bạn có thể sử dụng tên miền sau để đạt được các Deis bộ định tuyến:
Deis.104.131.47.125.XIP.io
Cài đặt Deis công cụ
Bây giờ mà chúng tôi có CoreOS cụm thiết lập, chúng tôi sẽ cài đặt các Deis điều khiển Tiện ích và khách hàng. Bạn nên cài đặt những công cụ này trên máy tính mà bạn muốn kiểm soát của bạn Deis cụm từ. Chúng tôi sẽ chứng minh cài đặt chúng trên một giọt Ubuntu 14,04 riêng biệt, nhưng bạn có thể cài đặt chúng ở bất cứ đâu bạn muốn.
Cài đặt Deis điều khiển Tiện ích
Các Deis điều khiển Tiện ích cho phép bạn tương tác với các Deis máy, và cài đặt các Deis nền tảng trên cụm.
Thay đổi vào thư mục mà bạn muốn cài đặt deisctl nhị phân. Sau đó, cài đặt các Deis điều khiển Tiện ích bằng cách tải về và chạy tập lệnh cài đặt với lệnh sau đây:
Curl – sSL http://deis.io/deisctl/install.sh | SH
Điều này cài đặt deisctl vào thư mục hiện tại, và làm mới các Deis tập tin đơn vị.
Hãy liên kết nó với /usr/local/bin, do đó, nó sẽ trong con đường của chúng tôi:
sudo ln -fs $(pwd) / deisctl /usr/local/bin/deisctl
Bây giờ bạn có thể sử dụng lệnh deisctl.
Cài đặt Deis khách hàng
Các Deis khách hàng, cũng được gọi là các Deis giao diện dòng lệnh, cho phép bạn tương tác với các Deis điều khiển đơn vị.
Thay đổi vào thư mục mà bạn muốn cài đặt các deis nhị phân. Cài đặt các Deis khách hàng bằng cách tải về và chạy tập lệnh cài đặt với lệnh sau đây:
Curl – sSL http://deis.io/deis-cli/install.sh | SH
Cài đặt này deis, đó là khách hàng vào thư mục hiện tại. Hãy liên kết nó với /usr/local/bin, do đó, nó sẽ trong con đường của chúng tôi:
sudo ln -fs $(pwd) / deis /usr/local/bin/deis
Các Deis khách hàng được cài đặt. Bây giờ bạn có thể sử dụng các deis lệnh.
Cung cấp Deis nền tảng
Từ máy tính bạn cài đặt các Deis công cụ trên, chúng tôi sẽ cung cấp các Deis nền tảng.
Đảm bảo đại lý SSH của bạn đang chạy (và chọn chìa khóa riêng tương ứng với các phím SSH vào của bạn giọt CoreOS):
eval ‘ssh-đại lý – s’
SSH thêm từ
Tìm địa chỉ IP công cộng của một trong những giọt CoreOS của bạn, và xuất khẩu nó để biến môi trường DEISCTL_TUNNEL (thay thế địa chỉ IP của bạn):
xuất khẩu DEISCTL_TUNNEL = 104.131.93.162
Đây là địa chỉ IP nơi deisctl sẽ cố gắng liên lạc với cụm sao. Bạn có thể kiểm tra rằng nó đang làm việc đúng bằng cách chạy deisctl danh sách. Nếu bạn thấy một dòng sản lượng, Tiện ích kiểm soát là giao tiếp với các máy CoreOS.
Chạy lệnh này để cung cấp các Deis nền tảng:
deisctl cài đặt nền tảng
Bạn sẽ thấy đầu ra giống như sau đây chỉ ra rằng các đơn vị cần thiết để chạy Deis đã được tải trên CoreOS cụm:
● ▴ ■
■ ● ▴ cài đặt Deis…
▴ ■ ●
Lập kế hoạch dữ liệu container…
…
Deis đã được cài đặt.
Xin vui lòng chạy ‘deisctl nền tảng bắt đầu’ để khởi động lên Deis.
Chạy lệnh này để bắt đầu các Deis nền tảng:
deisctl bắt đầu nền tảng
Một khi bạn thấy “Deis bắt đầu.”, của bạn Deis nền tảng chạy trên một cụm!
Bạn có thể xác minh rằng tất cả các Deis đơn vị được nạp và hoạt động bằng cách chạy lệnh sau:
danh sách deisctl
Tất cả các đơn vị nên hoạt động.
Đăng ký một Deis người sử dụng
Bây giờ mà các Deis nền tảng đang chạy, chúng tôi phải đăng ký một người dùng với các deis lệnh. Các deis lệnh giao tiếp với các Deis điều khiển thông qua các đơn vị bộ định tuyến, có thể truy cập tại deis.example.com trong ví dụ của chúng tôi:
Deis đăng ký http://deis.example.com
Bạn sẽ được nhắc nhở cho tên người dùng, mật khẩu và địa chỉ email. Sau khi cung cấp các mặt hàng này, bạn sẽ được đăng nhập vào các Deis nền tảng tự động.
Tiếp theo, thêm phím SSH thích hợp để deis. Nhập lệnh sau:
Deis phím: thêm
Bạn sẽ được nhắc chọn một khoá SSH từ các phím có sẵn. Chọn phím bạn muốn thêm.
Đăng nhập vào Deis
Nếu bạn cần phải đăng nhập sau đó, sử dụng lệnh sau:
Deis đăng nhập http://deis.example.com
Bạn sẽ được nhắc để đăng nhập mà bạn tạo ra trước đó.
Khởi tạo Deis cụm
Sau khi bạn đăng nhập để Deis, bạn sẽ cần phải khởi tạo một Deis cụm. Chúng ta hãy làm điều đó bây giờ.
Chúng tôi sẽ tạo ra một nhóm gọi là dev, bao gồm tất cả các máy trong cụm sao với lệnh sau đây (thay thế địa chỉ IP của riêng của bạn):
Deis cụm: tạo dev dev.example.com–máy chủ = 104.131.93.162, 104.131.47.125, 104.131.113.138–auth=~/.ssh/id_rsa
Dưới đây là một lời giải thích của lệnh trước đó làm gì:
dev: tên của cụm
dev.example.com: tên miền máy chủ cụm
-máy chủ: một phân cách bằng dấu phẩy danh sách các máy chủ để bao gồm trong cụm sao
-auth: đường dẫn đến khóa riêng tương ứng với chìa khoá SSH bạn thêm vào của bạn giọt
Triển khai ứng dụng mẫu (tùy chọn)