Nhảy tới nội dung

Một bài viết được gắn thẻ "DevOps"

Xem tất cả Thẻ

· Một phút để đọc
ManhPT

Vấn đề là...

Bài viết này hướng dẫn nhanh cách thay đổi hostname trên Ubuntu 18.04.

Hostname thường được thiết lập khi bạn cài đặt hệ điều hành hoặc khởi tạo một máy chủ ảo (VM) thì nó sẽ được gán tự động. Cách thay đổi hostname dưới đây có thể áp dụng mà không cần phải khởi động lại hệ điều hành.

Mặc dù hướng dẫn dành cho Ubuntu 18.04 nhưng bạn có thể áp dụng nó cho Ubuntu 16.04 hoặc bất kỳ hệ điều hành nào base trên Ubuntu, VD: Linux Mint, Elementary OS và thậm chí cả ViettelOS.

Yêu cầu

Trước khi bắt đầu, hãy đảm bảo bạn đã đăng nhập với user có quyền sudo.

Hostname là một nhãn giúp định danh máy tính/thiết bị trong một không gian mạng (network). Hãy cẩn thận và tránh sử dụng trùng hostname trên 2 máy khác nhau trong cùng mạng.

Hiển thị hostname hiện tại

hostnamectl

Kết quả của lệnh trên sẽ như sau: Như trong ảnh trên thì hostname hiện tại là giá trị của Static hostname, tức là: ubuntu1804.localdomain.

Thay đổi hostname

1. Thay đổi hostname sử dụng hostnamectl

Trong Ubuntu 18.04, bạn có thể thay đổi hostname hệ thống và các thiết lập liên quan bằng lệnh hostnamectl. Ví dụ, để thay đổi system hostname thành "manhpt.local", bạn sẽ sử dụng lệnh như sau:

sudo hostnamectl set-hostname manhpt.local

Lệnh hostnamectl set-hostname không tạo hay hiển thị ra output gì. Nếu thành không thì sẽ không có gì cả.

2. Sửa file /etc/hosts

Mở file /etc/hosts và thay đổi hostname cũ thành "manhpt.local":

/etc/hosts
127.0.0.1 localhost
127.0.0.1 manhpt.local

# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

3. Sửa file /etc/cloud/cloud.cfg

Nếu cloud-init package được cài đặt thì bạn cần phải sửa file cloud.cfg để đảm bảo hostname mới được lưu sau khi khởi động lại hệ điều hành. cloud-init thường được cài đặt mặc định trong hệ thống của AWS, VMWare... và nó được sử dụng để xử lý công đoạn khởi tạo máy ảo (cloud instances).

Để kiểm tra xem cloud-init có được cài đặt hay không thì có thể sử dụng lệnh ls:

ls -l /etc/cloud/cloud.cfg

Nếu bạn thấy câu lệnh trả ra kết quả như sau thì không cần làm thêm gì nữa vì cloud-init không được cài đặt, tức là có thể không cần tiếp tục đọc bài viết này nữa 🤣:

ls: cannot access '/etc/cloud/cloud.cfg': No such file or directory

Nếu cloud-init được cài đặt thì output sẽ như sau:

-rw-r--r-- 1 root root 3169 Apr 27 09:30 /etc/cloud/cloud.cfg

Sửa file /etc/cloud/cloud.cfg với vim hoặc nano hoặc bất cứ editor nào bạn muốn:

sudo vim /etc/cloud/cloud.cfg

Tìm preserve_hostname và đổi giá trị từ false thành true:

/etc/cloud/cloud.cfg
...
# This will cause the set+update hostname module to not operate (if true)
preserve_hostname: true
...

Lưu lại thay đổi và tắt editor.

Kiểm tra thay đổi

Để kiểm tra xem các thay đổi của bạn đã thành công hay chưa thì chỉ cần sử dụng lại lệnh hostnamectl.

hostnamectl

Kết quả:

Static hostname: manhpt.local
Icon name: computer-vm
Chassis: vm
Machine ID: 6f17445f53074505a008c9abd8ed64a5
Boot ID: 1c769ab73b924a188c5caeaf8c72e0f4
Virtualization: kvm
Operating System: Ubuntu 18.04 LTS
Kernel: Linux 4.15.0-22-generic
Architecture: x86-64

Bạn sẽ thấy giá trị của Static hostname được đổi thành manhpt.local. Bạn cũng có thể khởi động lại máy và kiểm tra lại một lần nữa để chắc chắn rằng cloud-init được cấu hình chính xác. Bài viết có tham khảo và dịch lịch từ: How to Change Hostname on Ubuntu 18.04

· Một phút để đọc
ManhPT

Khi Cloud Native tiếp tục đà phát triển mạnh mẽ trong cộng đồng, ngày càng nhiều tổ chức áp dụng những công nghệ và kỹ thuật, ứng dụng đi kèm của nó. Hãy điểm qua những gì được mong đợi sẽ diễn ra trong năm 2020.

Kubernetes đã không còn là một công nghệ mới và tên của nó đang lùi dần vào sau hậu trường. Sự tập trung sẽ được dành cho việc xây dựng các phương thức trừu tượng (abstractions) - để giảm độ phức tạp, công cụ và nền tảng bởi các cộng đồng đang không ngừng phát triển.

Dưới đây là 7 xu hướng đáng quan tâm trong năm 2020:

1. GitOps trở thành tiêu chuẩn cho Cloud Native

Một trong những xu hướng được mong chờ nhất trong năm 2019 là sự ra đời của GitOps. Là một phần mở rộng tự nhiên cho Cơ sở hạ tầng dưới dạng Mã (Infrastructure-as-Code) và Phân phối liên tục (Continuous Delivery). GitOps tập trung vào việc sử dụng Git làm cơ sở duy nhất (single source of truth) cho hệ thống. Thay đổi về cơ sở hạ tầng và ứng dụng được thực hiện bằng cách khai báo thông qua git repository (sau đây gọi tắt là git repo hoặc repo), với quy trình tự động đảm bảo trạng thái hiện tại của hệ thống phản ánh lại trạng thái trong repo. Thuật ngữ GitOps được đưa ra bởi Weave Works, bạn có thể đọc thêm qua blog của họ tại đây.

GitOps Engine là sản phẩm được tạo ra từ sự hợp tác giữa WeaWorks Flux và Intuit’s Argo, cho thấy tiềm năng tuyệt vời của công cụ tiêu chuẩn để thực hiện GitOps. Mong đợi có nhiều công cụ hơn sẽ tham gia hợp tác trong năm nay để có thể tham gia vào các dự án triệt để hơn.

GitOps đang ở giai đoạn đầu tiên được đón nhận bởi cộng đồng, nhưng được dự đoán sẽ trở thành một tiêu chuẩn cho tất cả các công ty có tham vọng hướng đến Cloud Native vào năm 2020.

2. Hybird Cloud là tương lai

Dù bạn có là fan của nó hay không, thì Hybrid hoặc Multi Cloud dường như sẽ là tương lai của các giải pháp Cloud Native. Trong tương lai, rõ ràng là không còn bất kỳ tổ chức lớn nào chạy hoàn toàn trên một cloud, cho dù cloud đó là on-premise, public hay private.

Vì nhiều lý do: bảo mật dữ liệu, phục hồi dữ liệu sau thảm họa (DR), quy mô xử lý, bảo mật dữ liệu cá nhân… giải pháp hybrid hoặc multi cloud sẽ được tin dùng hơn. Kết quả là, trong năm vừa qua, cả ba nhà cung cấp điện toán cloud lớn đã tung ra một sản phẩm để hỗ trợ hybrid cloud lai (AWS Outposts, Google’s Anthose, and Azure Arc).

Một trong những điểm hấp dẫn chính của Kubernetes đối với nhiều tổ chức là cách nó tự giới thiệu bản thân như một công cụ để thiết lập hybrid cloud. Mặc dù điều này đúng ở một mức độ nào đó, nhưng hỗ trợ nhiều cloud sẽ dẫn đến rất nhiều sự phức tạp. Có một số công cụ nhằm giúp đơn giản hóa việc này, Kubefed - còn gọi là Federation v2, Crossplane hoặc thông qua một lưới dịch vụ (service mesh) như Istio.

Trong năm tới, hy vọng cộng đồng và các công cụ sẽ tiếp tục phát triển, đồng thời các công ty đang tìm cách thực hiện các thiết lập hybrid cloud sẽ đánh giá lại kỳ vọng của họ khi họ nhận ra việc này tốn khá nhiều chi phí.

3. Kubernetes phải coi 2020 là năm của Developer

Một trong những lời chỉ trích lớn nhất về Kubernetes là nó không thân thiện với Developer. Đối với các nhóm quản trị (operations) và nền tảng (platforms), Kubernetes là một người hỗ trợ tuyệt vời. Nhưng thường thì các developer lại cảm thấy bị tụt hậu. Nó tạo thêm sự phức tạp trong vòng đời phần mềm của họ, họ phải học các công nghệ mới mà không có thêm nhiều lợi ích (có thể nhìn thấy). Có một môi trường phát triển giống như sản xuất vẫn còn rất khó khăn trong thế giới của các ứng dụng hướng đến Cloud Native, microservice và phân tán.

Ambassador, Draft, và Garden đang nỗ lực rất nhiều để giải quyết vấn đề này. Hy vọng năm 2020 sẽ là năm mà Kubernetes trở nên thân thiện hơn với các developer. Nhiều đội sẽ rời bỏ K8S nếu vấn đề này không được giải quyết.

4. SRE sẽ đi từ buzzword đến phổ biến

Kể từ khi Google phát hành ‘Site Reliability Engineering’ (Kỹ thuật ổn định hệ thống) lần đầu tiên và liệt kê chi tiết về cách thức vận hành các hệ thống sản xuất, thuật ngữ và vai trò đã tiếp tục phát triển nhanh chóng. Đến năm 2019, SRE vẫn đang rất phổ biến dựa trên các khảo sát gần đây.

Hầu hết các công ty đang triển khai SRE trong tổ chức của họ, nhưng một số lượng lớn trong số họ không áp dụng đúng quy trình và thay vào đó chỉ đơn giản là đổi thương hiệu cho các nhóm vận hành. Cuộc khảo sát tương tự từ Catchpoint, được liên kết ở trên, chỉ ra rằng SLO (Service Level Objectives - Mục tiêu cấp độ dịch vụ) thường không được xác định và vẫn còn quá nhiều vấn đề trong tổ chức - hai số liệu chính của SRE.

Với thực tiễn đang tiếp tục trưởng thành và phổ biến hơn, các quy trình sẽ trở nên nghiêm ngặt hơn. Bao gồm đánh giá sản xuất kỹ lưỡng cho tất cả các dịch vụ và SLO/SLI/SLA được xác định rõ, và để SRE thích hợp trở thành một yêu cầu khắt khe đối với bất kỳ công ty nào duy trì hệ thống sản xuất.

5. ’Remote first’ sẽ cung cấp cho các công ty nhiều lợi thế hơn

Làm việc từ xa không chỉ là mong muốn của người lao động, mà nó còn buộc tạo ra các thực tiễn tốt nhất về mặt giao tiếp và chủ động. (Dưới 32% những người tham gia khảo sát developer hàng năm của Stack Overflow vào năm 2019 cho biết cơ hội làm việc từ xa là quan trọng nhất đối với họ khi việc lựa chọn công việc.)

Các công cụ và thực tiễn được yêu cầu để hỗ trợ công việc từ xa có lợi bất kể tổ chức đó có nhân viên làm việc từ xa hay không.

Điều này có liên quan gì với Cloud Native? Cloud Native không chỉ là về công nghệ. Từ góc độ của Luật Conway, nếu chúng ta muốn xây dựng các hệ thống phân tán quy mô lớn với các giao diện khai báo rõ ràng, chúng ta nên xem xét để thực hiện những điều tương tự với cấu trúc tổ chức của mình.

Với việc thúc đẩy công việc từ xa tiếp tục, các công ty cung cấp phương pháp làm việc từ xa có hy vọng sẽ có lợi thế đáng kể so với các đối thủ cạnh tranh.

6. MLOps mở ra những cơ hội mới

Mặc dù không nhất thiết phải triển khai theo hướng Cloud Native, nhưng việc giới thiệu MLOps vào năm 2019 là một sự phát triển thú vị. MLOps là quá trình vận hành và quản lý vòng đời của machine learning trong sản xuất, đặc biệt là áp dụng các công cụ và thực tiễn của DevOps cho lĩnh vực khoa học dữ liệu.

Có thể coi đây là cầu nối giữa machine learning và Cloud Native, vì nó cho phép các nhóm khoa học dữ liệu và ML tận dụng các thực tiễn và công nghệ của Cloud Native. Cơ hội ở đây là rất lớn, và mong đợi lĩnh vực này sẽ thực sự bùng nổ trong năm tới.

7. Tranh luận về đạo đức sẽ ngày càng lớn hơn và cấp bách hơn

Trong vài năm qua, những lo ngại về đạo đức và công nghệ đã trở thành tâm điểm, từ việc các công ty sử dụng dữ liệu cho đến vấn đề tiêu thụ năng lượng của các trung tâm dữ liệu.

Đây đều là những nội dung quan trọng. Từ góc độ Cloud Native, sẽ có nhiều cuộc thảo luận hơn vào năm 2020 về việc làm thế nào để giúp giảm lượng khí thải carbon và nhiều nội dung khác nữa.

Phần kết luận

Trong khi bản thân công nghệ Cloud Native ngày càng trở nên chủ đạo, không gian chỉ phát triển nhanh hơn. Việc áp dụng các công nghệ chính như Kubernetes tiếp tục mở rộng, dẫn đến nhu cầu trừu tượng hóa và công cụ bổ sung.

Đây là một vài trong số các nội dung đáng chú ý trong năm nay, nhưng các lĩnh vực chưa được khám phá chắc chắn sẽ phát sinh vào năm 2020 mới là điều hấp dẫn hơn. Nguồn: https://blog.container-solutions.com/