如何更改microk8s的默认端口?

时间:2019-04-17 22:38:30

标签: kubernetes microk8s

Microk8s安装在默认端口16443上。我想将其更改为6443。我正在使用Ubuntu 16.04。我已经使用对齐和变型安装了microk8。

我尝试使用的以下选项均无效。

  1. 试图编辑/snap/microk8s/current/kubeproxy.config中的端口。由于该卷是只读的,因此我无法对其进行编辑。
  2. 编辑/home/user_name/.kube/config并重新启动集群。
  3. 尝试使用命令并重新启动集群 sudo kubectl config set clusters.microk8s-cluster.server https://my_ip_address:6443
  4. 试图使用kubectl proxy --port=6443 --address=0.0.0.0 --accept-hosts=my_ip_address &。它侦听6443,但仅侦听HTTP,而不侦听HTTPS流量。

1 个答案:

答案 0 :(得分:2)

最初在microk8s issue 43中得到解决,但在microk8s issue 300中进行了详细说明:

  

这是用于最新的microk8的正确选择:

#!/bin/bash
# define our new port number
API_PORT=8888

# update kube-apiserver args with the new port
# tell other services about the new port
sudo find /var/snap/microk8s/current/args -type f -exec sed -i "s/8080/$API_PORT/g" {} ';'

# create new, updated copies of our kubeconfig for kubelet and kubectl to use
mkdir -p ~/.kube && microk8s.config -l  | sed "s/:8080/:$API_PORT/" | sudo tee /var/snap/microk8s/current/kubelet.config > ~/.kube/microk8s.config

# tell kubelet about the new kubeconfig
sudo sed -i 's#${SNAP}/configs/kubelet.config#${SNAP_DATA}/kubelet.config#' /var/snap/microk8s/current/args/kubelet

# disable and enable the microk8s snap to restart all services
sudo snap disable microk8s && sudo snap enable microk8s