假设您想节省编写所有kubectl命令的时间:kubectl describe pods以更短的方式:k d p。
所以解决方案是添加功能~/.bashrc:
k() {
cmd_kubectl="command kubectl"
case ${1} in
g)
shift
kubectl_get="${cmd_kubectl} get"
case ${1} in
p)
shift
${kubectl_get} pods "$@"
;;
d)
shift
${kubectl_get} deploy "$@"
;;
n)
shift
${kubectl_get} ns "$@"
;;
i)
shift
${kubectl_get} ing "$@"
;;
j)
shift
${kubectl_get} job "$@"
;;
*)
${kubectl_get} "$@"
;;
esac
;;
d)
shift
kubectl_desc="${cmd_kubectl} describe"
case ${1} in
p)
shift
${kubectl_desc} pods "$@"
;;
d)
shift
${kubectl_desc} …Run Code Online (Sandbox Code Playgroud) 我正在按照网站 上的说明使用流浪汉/可使用的语言启动多节点kubernetes集群。不幸的是,我得到以下错误:
TASK [Configure node ip] *******************************************************
fatal: [k8s-master]: FAILED! => {"changed": false, "msg": "Destination /etc/default/kubelet does not exist !", "rc": 257}
Run Code Online (Sandbox Code Playgroud)
Vagrantfile中的相关段落是:
- name: Install Kubernetes binaries
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- kubelet
- kubeadm
- kubectl
- name: Configure node ip
lineinfile:
path: /etc/default/kubelet
line: KUBELET_EXTRA_ARGS=--node-ip={{ node_ip }}
Run Code Online (Sandbox Code Playgroud)
这只是错误的路径吗?那会是哪一个呢?
PS:我也会事先收到警告,指出:
[WARNING]: Could not find aptitude. Using apt-get instead
Run Code Online (Sandbox Code Playgroud)
是否没有安装kubelet软件包,这可能是它找不到文件的原因吗?在这种情况下如何解决?
我按照指南在我的 ubuntu-18.04 虚拟机上安装了一个测试 minikube。它是我的 Windows 计算机上的 virtualbox。所以我使用 sudo minikube start --vm-driver=none 来启动 minikube。然后执行 minikube dashboard ....我可以使用生成的令牌访问http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ 。现在一切都很好。
但我需要在周末关闭计算机电源。所以我停止 minikube 并关闭 ubuntu 虚拟机。
sudo minikube stop
sudo shutdown
Run Code Online (Sandbox Code Playgroud)
当我周一回到工作岗位时,我无法访问仪表板 UI WEB,
sudo minikube dashboard一直挂起,直到我按 Ctrl+C。
minikube 仪表板挂起,直到我按 Ctrl+C
如何恢复wei ui?或者在关闭虚拟机之前我需要做什么?
Mac 上的 docker 桌面出现错误:
Unable to connect to the server: x509: certificate signed by unknown authority
Run Code Online (Sandbox Code Playgroud)
以下答案没有多大帮助:
我的系统详细信息:
操作系统:macOS Big Sur 版本 11.6
Docker 桌面版本:v20.10.12
Kubernetes版本:v1.22.5
当我做:
kubectl get pods
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Unable to connect to the server: x509: certificate signed by unknown authority
Run Code Online (Sandbox Code Playgroud) 例如,我从 Kubernetes 官方 javascript 客户端运行以下函数:
.listNamespacedPod("default", null, "false", "smth=test", null, null, null, null, null, null)
Run Code Online (Sandbox Code Playgroud)
或任何其他功能。
有一个参数称为标签选择器。
现在我想使用以下标签选择器查找 Pod(如 HTTP 请求中):
smth=test
Run Code Online (Sandbox Code Playgroud)
但我无法smth=test作为字符串发送。
如何通过标签选择器进行过滤?
这是我来自 YAML 的元数据:
metadata:
name: label-demo
labels:
smth: test
app: nginx
Run Code Online (Sandbox Code Playgroud)
我可以通过以下方式运行kubectl:
kubectl -n="namespace" get deployments -l=smth=test
Run Code Online (Sandbox Code Playgroud)
所以它只会返回匹配的标签。
kubernetes ×4
ansible ×1
autocomplete ×1
bash ×1
javascript ×1
kubectl ×1
macos ×1
minikube ×1
vagrant ×1