2.5 访问 Kubernetes

Dashboard

访问Dashboard

最新版本的 minikube 默认没有安装 Dashboard,执行如下命令 minikube 自动帮我们部署 Dashboard 并启动代理。

  1. minikube dashboard

访问地址: http://localhost:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/#!/overview?namespace=default

基本概念

集群
  • namespace 逻辑隔离空间,可以在不同的 namespace 里运行不同的微服务,默认使用 default 命名空间
  • node 部署集群使用的物理节点,包括控制节点和计算节点
工作负载
  • deployment 我们实际部署的服务,所谓部署就是用来描述我们待编排的服务的期望状态的,比如我们这个服务启动的副本数,使用的镜像等等,后面会做详细讲解
服务发现
  • service 应用想被其他应用访问,需要先定义一个service,kubernetes自动帮我们解析这个service name,然后其他服务就可以通过service name访问这个服务了
配置
  • configmap 定义应用的配置文件,在应用容器启动时挂载到容器中
  • secret 同 configmap,定义某些敏感的、需要加密的配置文件,在应用容器启动时挂载到容器中

kubectl

下载安装 kubectl

MacOS 安装:

  1. brew install kubernetes-cli

Windows 安装:

  1. choco install kubernetes-cli
  2. cd C:\users\yourusername
  3. mkdir .kube
  4. cd .kube
  5. New-Item config -type file

配置 kubectl 客户端连接到 kubernetes 集群

kubectl配置文件 ~/.kube/config

  • clusters
  • users
  • contexts

获取集群信息

  1. kubectl get nodes
  2. kubectl get pods
  3. kubectl get pods -n xxx

使用命令行部署nginx服务

  1. kubectl run nginx --image=nginx:1.15

为nginx创建服务

  1. kubectl expose deployment nginx --port 80

获取部署列表

  1. kubectl get svc

启动工具容器进行访问测试

  1. kubectl run -ti busybox --image=busybox --restart=Never -- sh

测试能否访问服务

  1. wget http://nginx