kubernetes简单安装笔记
{{moment(1556079228000).format('MMM DD, YYYY, h:mm')}}
Linux
Kubernetes
k8s
安装Kubernetes
线上的云环境
我们可以使用云平台的Kubernetes Service来管理部署我们的服务。
本地开发测试环境:
Linux系统(单个节点Kubernetes)
可以通过 microk8s可以非常快速的搭建起一个 Kubernetes 单机环境,安装极其非常方便。
ubuntu 自带 snap 命令,可以直接执行,centos 需要先安装 snap。
centos安装 snap
1 2 3 4 5 6 7 8 9
| yum copr enable ngompa/snapcore-el7 yum -y install snapd yum copr enable ngompa/snapcore-el7 yum install epel-release yum install yum-plugin-copr yum copr enable ngompa/snapcore-el7 yum -y install snapd systemctl enable --now snapd.socket ln -s /var/lib/snapd/snap /snap
|
snap安装Kubernetes
1 2 3 4
| snap install microk8s --classic #开启 DNS 服务 microk8s.enable dns dashboard
|
microk8s 常用操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| # 1. 启动 microk8s.start # 2. 关闭 microk8s.stop # 3. 状态 microk8s.status # 4. kubectl 操作 # 查看 cluster microk8s.kubectl cluster-info # 查看 nodes microk8s.kubectl get nodes # 查看 pods microk8s.kubectl get pods # docker 操作 microk8s.docker ps microk8s.docker images
|
为microk8s.kubectl取别名
可以看到,在 microk8s 环境中执行 kubectl 时,需要在 kubectl 命令前添加前缀 microk8s.。为了跟其他系统环境统一我们可以取个别名kubectl
1
| snap alias microk8s.kubectl kubectl
|
查看节点和集群信息
使用 kubectl get -h
可以看到更多关于kubectl get
的用法,下面列举查看用得比较多的指令:
- 查看node信息:
kubectl get nodes
- 查看services信息:
kubectl get services
- 查看deployment信息:
kubectl get deployments
- 查看pod信息:
kubectl get pods
执行kubectl get nodes
可以看到只会有1个master节点。
1 2 3 4 5 6 7 8 9 10 11 12 13
| $ kubectl get nodes NAME STATUS ROLES AGE VERSION docker-for-desktop Ready master 1d v1.10.11 $ kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 1d $ kubectl get deployments No resources found. $ kubectl get pods No resources found.
|
因为是本地运行minikube,所以只会有一个主节点,这个以后也不会改变,默认会有一个名为kubernetes的服务,注意其类型是 ClusterIP ,只能从集群内部访问,且其访问端口为443,而真正的部署和pod(类似于容器)现在都还是空的.
Linux系统(多个节点Kubernetes)
我们也可以使用kubeadm 来安装k8s集群,可以参照官方文档一步一步安装。
安装完成之后,多个节点,执行kubectl get nodes
可以看到会有多个节点。
1 2 3 4 5 6 7
| $ kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-2-master-01 Ready master 34d v1.13.4 k8s-2-node-02 Ready <none> 34d v1.13.4 k8s-2-node-03 Ready <none> 34d v1.13.4 k8s-2-node-04 Ready <none> 33d v1.13.4
|
Mac / windows系统
可以使用Minikube,最新版的docker for mac已经自带了。
界面可视化安装,就不写步骤了。