2016-03-30 24 views

Trả lời

16

Tìm cách truy cập cụm kubernetes từ xa mà không cần ssh'ing đến một trong các nút trong cụm. Bạn cần phải chỉnh sửa ~/.kube/config tập tin như sau:

apiVersion: v1 
clusters:  
- cluster: 
    server: http://<master-ip>:<port> 
    name: test 
contexts: 
- context: 
    cluster: test 
    user: test 
    name: test 

Sau đó thiết lập bối cảnh bằng cách thực hiện:

kubectl config use-context test 

Sau này, bạn sẽ có thể tương tác với các cluster.

Lưu ý: Để thêm chứng nhận và sử dụng chính sau đây liên kết: http://kubernetes.io/docs/user-guide/kubeconfig-file/

Cách khác, bạn cũng có thể thử lệnh

kubectl config set-cluster test-cluster --server=http://<master-ip>:<port> --api-version=v1 
kubectl config use-context test-cluster 
0

Bạn đã thiết lập cụm của mình như thế nào? Để truy cập cụm từ xa, bạn cần tệp kubeconfig (có vẻ như bạn không có) và tập lệnh thiết lập tạo tệp kubeconfig cục bộ như một phần của quá trình triển khai cụm (vì nếu không cụm bạn vừa triển khai không thể sử dụng được) . Nếu ai đó triển khai cụm, bạn nên làm theo hướng dẫn trên trang bạn đã liên kết để nhận bản sao thông tin đăng nhập ứng dụng khách cần thiết để kết nối với cụm.

+0

Tôi đang sử dụng đường dẫn sau để đưa ra một cụm http://kubernetes.io/docs/get-started-guide/coreos/azure/nhưng không thể tìm thấy con trỏ tới tệp kubeconfig. –

+1

Đọc qua ví dụ, có vẻ như hướng dẫn bạn đã chạy lệnh 'kubectl' từ nút chính. Bạn có thể đăng nhập vào tổng thể và thử chạy các lệnh ở đó không? –

+0

Có, tôi có thể truy cập cụm từ nút chính. Nhưng tôi cần giúp đỡ trong việc truy cập nó từ xa (không ssh'ing để làm chủ nút). –

0

Quá trình cài đặt Azure chỉ làm lộ ra các cổng ssh bên ngoài sau. Điều này có thể được tìm thấy dưới ./output/kube_xxxxxxxxxx_ssh_conf Những gì tôi đã làm là đường hầm ssh có sẵn trên máy tính của tôi bằng cách thêm một đường hầm cổng ssh. Đi vào các tập tin trên và dưới "host *" phần thêm một dòng khác như dưới đây:

LocalForward 8080 127.0.0.1:8080

mà bản đồ máy tính của tôi cảng địa phương 8080 (nơi tìm kiếm kubectl cho mặc định ngữ cảnh) đến cổng 8080 của máy từ xa, nơi máy chủ lắng nghe các cuộc gọi api. khi bạn mở ssh vào kube-00 như tài liệu thông thường hiển thị để có thể thực hiện cuộc gọi từ kubectl cục bộ của bạn mà không cần thêm bất kỳ cấu hình nào.

2

Bạn cũng có thể xác định filepath của kubeconfig bằng cách truyền tham số --kubeconfig.

Ví dụ: sao chép ~/.kube/config của máy chủ từ xa Kubernetes vào dự án địa phương của bạn là ~/myproject/.kube/config. Trong ~/myproject, bạn có thể liệt kê các nhóm của máy chủ Kubernetes từ xa bằng cách chạy kubectl get pods --kubeconfig ./.kube/config.

Lưu ý rằng khi sao chép các giá trị từ máy chủ Kubernetes từ xa, đơn giản kubectl config view sẽ không đủ, vì nó sẽ không hiển thị bí mật của tệp cấu hình. Thay vào đó, bạn phải làm một cái gì đó như cat ~/.kube/config hoặc sử dụng scp để có được nội dung tệp đầy đủ.

Xem: https://kubernetes.io/docs/tasks/administer-cluster/share-configuration/

0

Tôi đã cố gắng để thiết lập kubectl trên một khách hàng khác nhau từ người tôi tạo ra các cụm Kops có nguồn gốc từ.Bạn không chắc chắn nếu điều này sẽ làm việc trên Azure, nhưng nó đã làm việc trên một AWS hậu thuẫn (Kops) cụm:

kops/kubectl - how do i import state created on a another server?

Các vấn đề liên quan