系统要求: Ubuntu 20.04 LTS, 18.04 LTS or 16.04 LTS或其他支持snapd的操作系统

内存:4G+

硬盘:20G+

官方文档

安装microk8s

sudo snap install microk8s --classic

添加当前用户到用户组

sudo usermod -a -G microk8s $USER
sudo chown -f -R $USER ~/.kube

修改别名 将kubectl定向为microk8s kubectl

vim ~/.bash_aliases

结尾加入一行   alias kubectl='microk8s kubectl'

然后断开连接重新登录

设置镜像加速

打开文件/var/snap/microk8s/current/args/containerd-template.toml

找到plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io" 段, 将https://registry-1.docker.io改为https://xlx9erfu.mirror.aliyuncs.com,并添加k8s.gcr.io的镜像加速

[plugins."io.containerd.grpc.v1.cri".registry]

    # 'plugins."io.containerd.grpc.v1.cri".registry.mirrors' are namespace to mirror mapping for all namespaces.
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
endpoint = ["https://xlx9erfu.mirror.aliyuncs.com"]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."k8s.gcr.io"]
endpoint = ["https://registry.cn-hangzhou.aliyuncs.com/google-containers"]

退出保存

重启microk8s

microk8s stop
microk8s start

加入节点

每个节点都执行以上安装操作

然后主节点执行获取加入节点命令

microk8s add-node

会得到一堆命令,选择主节点局域网IP的那条复制到节点去执行

得到kubeconfig

执行

microk8s config

可以复制到lens使用

也可生成到当前用户目录下使用kubectl

cd $HOME
mkdir .kube
cd .kube
microk8s config > config

启用插件

执行命令 microk8s enable xxx

xxx即插件名,比较常用的有dns helm istio等,默认已经开启了很多插件如非必要是不需要再执行此步骤的

dns 容器网络, ha-cluster是高可用集群插件, helm类似应用商店, istio 服务网格

启用ha-cluster后需要节点执行重新加入

官方插件列表

为主节点添加IP并重新生成证书

注意: 当前microk8s版本1.21 有个bug, 需要修改/var/snap/microk8s/current/var/lock/no-cert-reissue文件,避免其无法触发apiserver更新csr

sudo mv /var/snap/microk8s/current/var/lock/no-cert-reissue /var/snap/microk8s/current/var/lock/no-cert-reissue.back

编辑/var/snap/microk8s/current/certs/csr.conf.template文件, 找到alt_names节点, 刚安装完毕一般只到IP.3, 我们就可以再往后加IP.4 IP.5   一般就加其他的局域网IP,或者映射后的公网IP之类的

[ alt_names ]
DNS.1 = kubernetes
DNS.2 = kubernetes.default
DNS.3 = kubernetes.default.svc
DNS.4 = kubernetes.default.svc.cluster
DNS.5 = kubernetes.default.svc.cluster.local
IP.1 = 127.0.0.1
IP.2 = 10.152.183.1
IP.3 = 192.168.31.121
IP.4 = 192.168.192.121

更改完毕执行下

ll /var/snap/microk8s/current/certs/csr.conf*

查看下

csr.conf和csr.conf.rendered更新时间是不是大于等于csr.conf.template, 是的话就说明重新生成了csr,然后再执行

microk8s config

获取最新的kubeconfig就行,改下图中标红的ip, 粘贴到lens就能连接上了

最后再把前边改了的文件名改回去,当然,如果后续版本修复了这个问题也就不用再改名称了

sudo mv /var/snap/microk8s/current/var/lock/no-cert-reissue.back /var/snap/microk8s/current/var/lock/no-cert-reissue

升级

单机部署的升级

sudo snap refresh microk8s --channel=1.21/stable

1.21换成对应版本号即可

集群升级

<node>替换为节点名, kubectl drain驱除节点,迁移所有daemonset以外的所有工作负载

microk8s kubectl drain <node> --ignore-daemonsets

可以通过以下命令查看所有负载情况,对应节点应该只剩下daemonset的pod

microk8s kubectl get po -A -o wide

升级节点

sudo snap refresh --stable microk8s

查看节点情况,可以看到当前节点版本已升级到对应版本

microk8s.kubectl get no

恢复节点调度,<node>替换为节点名

microk8s kubectl uncordon <node>

每个节点重复一遍以上步骤,完成升级

升级失败 恢复节点

恢复到上一个稳定版本

sudo snap revert microk8s

不van了,卸载

在节点执行

microk8s leave

在主节点执行,将<node>替换为节点名

microk8s remove-node <node> --force

最后在所有节点都执行

sudo snap remove microk8s

MicroK8S 安装 修改IP 设置镜像加速 升级 卸载等的更多相关文章

  1. Docker设置镜像加速

    一.为什么要设置镜像加速 由于docker的镜像源地址再国外,例如官方地址:https://hub.docker.com/search?q=hyperledger&type=image:因此下 ...

  2. ubuntu 安装 docker 并配置镜像加速(使用 apt-get 进行安装)

    ubuntu 安装docker CentOS docker安装 https://blog.csdn.net/weixin_44953227/article/details/108597310 你需要这 ...

  3. Docker 安装及配置镜像加速

    Docker 版本 随着 Docker 的飞速发展,企业级功能的上线,更好的服务意味着需要支付一定的费用,目前 Docker 被分为两个版本: community-edition 社区版 enterp ...

  4. centos7安装docker并设置开机自启以及常用命令

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...

  5. Docker CE的安装 与镜像加速

    Docker CE 的安装与镜像加速 Docker CE是docker的开源版本 CENTOS 安装Docker CE 系统要求: 操作系统需要使用centos7() centos-extras库 必 ...

  6. python 使用pip安装使用国内镜像加速下载安装包的方法

    清华大学提供开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/ pypi 镜像每 5 分钟同步一次. pip install 包的名字 == 版 ...

  7. VMware虚拟机 安装centos7并设置静态ip 连接外网

    首先下载VMware虚拟机:http://xzc.197746.com/VMware-Workstation-12.5.9.zip 然后下载centos7镜像:http://vault.centos. ...

  8. 安装Oracle后修改IP总结(转载)

    转载自:http://blog.csdn.net/bleibo/article/details/5447198 安装Oracle后修改IP总结(转载) 针对ORACLE 10G 在安装完后,修改IP ...

  9. 修改Linux的基本配置(修改主机名修改ip地址安装JDK/Tomcat/MySQL等等)

    (一)基本操作修改 修改主机名 vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=server1.itcast.cn 修改ip地址 vi /etc/s ...

随机推荐

  1. 2017final英文语句格式简单检查

    英文书写中,句首字母通常为大写,其余为小写,单词"I"除外,单词与单词之间用一个空格隔开,句中用","断句,句末用"."结束,", ...

  2. Spring Cloud Gateway自定义过滤器实战(观测断路器状态变化)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  3. Linux下Zabbix5.0 LTS + Grafana8.2.2图形可视化

    Grafana是一款开源的可视化软件,可以搭配数据源实现一个数据的展示和分析:Grafana功能强大,有着丰富的插件,但Grafana默认没有zabbix作为数据源,需要手动给zabbix安装一个插件 ...

  4. Redis基本数据类型底层数据结构

    Redis数据类型底层数据结构 Redis目前基本的数据类型有String.List.Set.ZSet.Hash五种,首先Redis是C语言开发的,所以底层就是用C语言封装数据结构或者C语言本身提供的 ...

  5. Codeforces 1276D - Tree Elimination(树形 dp)

    Codeforces 题面传送门 & 洛谷题面传送门 繁琐的简单树形 dp(大雾),要是现场肯定弃了去做 F 题 做了我一中午,写篇题解纪念下. 提供一种不太一样的思路. 首先碰到这样的题肯定 ...

  6. CSP-S2021 挂分记

    赛前 数了数,这是我第五次来南航,不知道以后还有机会了(2018 NOIP, 2019CSP, 2020CSP, 2020NOIP). 上午一觉睡到 10 点,学了一下感觉很有用的 BIT 倍增,顺手 ...

  7. 2基因组间鉴定SV

    本文学习费章军老师文章Genome of Solanum pimpinellifolium provides insights into structural variants during toma ...

  8. [linux] 常用命令及参数-2

    sort 1 sort是把结果输出到标准输出,因此需要输出重定向将结果写入文件 2 sort seq.txt > file.txt 3 sort -u seq.txt 输出去重重复后的行 4 s ...

  9. Demo03找素数

    package Deom1;import java.awt.*;import java.util.Scanner;public class lx {//输入任意两个正整数,求出这两个正整数之间素数的个 ...

  10. dubbo 协议的 K8s pod 存活探针配置

    背景 某项目采用微服务架构,dubbo 框架,K8s 方式部署. 其中 HTTP 协议由网关应用统一处理,大部分应用仅提供 dubbo 协议. 目标 应用某个实例(pod)状态异常时,尝试自动重启恢复 ...