Jul 012021
 

经常测试网络的时候,需要内核版本支持,所以需要升级内核。

查看当前内核版本

uname -smr

improt内核的repo

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
yum list available --disablerepo='*' --enablerepo=elrepo-kernel
  • kernel-lt indicates a stable LTS ( long term support)
  • kernel-ml signifies a mainline release that offers short support term but provides more frequent updates. 

习惯就选择LTS的版本

yum --enablerepo=elrepo-kernel install kernel-lt

如果你希望装维护版本

yum --enablerepo=elrepo-kernel install kernel-ml

设置默认内核

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot

加快速度,使用国内的repo

sed -i 's#elrepo.org/linux#mirrors.tuna.tsinghua.edu.cn/elrepo#g' /etc/yum.repos.d/elrepo.repo
sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/elrepo.repo
Jul 012021
 

折腾完各种安装方式,就需要一种可以让自己快速搭建学习的环境。

我的实验环境是CentOS 7.6

需要提前把docker先安装好。后续考虑镜像默认docker装好,内核版本升级到5.4,这样用起来就更加方便。

yum install yum-utils device-mapper-persistent-data lvm2 openssl socat conntrack ebtables ipset
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
yum install docker-ce-20.10.6
sudo sh -c 'echo {\"registry-mirrors\": [\"https://fz1p31b1.mirror.aliyuncs.com\"]} > /etc/docker/daemon.json'
systemctl enable --now docker

Kubernetes+Kubesphere

export KKZONE=cn
curl -sfL https://get-kk.kubesphere.io | VERSION=v1.1.0 sh -
chmod +x kk
./kk create cluster --with-kubernetes v1.20.4 --with-kubesphere v3.1.0

这样就基本装完了。

Jun 152021
 

这篇文章是参考青云的文章,我在CentOS 上重新测试一遍。

我目前测试基本都是在阿里云香港上启动spot 虚拟机,这样的成本很低,也可以满足网络的需求。

kebekey

wget https://github.com/kubesphere/kubekey/releases/download/v1.1.0/kubekey-v1.1.0-linux-64bit.rpm
rpm -ivh kubekey-v1.1.0-linux-64bit.rpm

kubernetes 配置文件

kk create config --with-kubernetes v1.19.8

编辑配置文件

apiVersion: kubekey.kubesphere.io/v1alpha1
 kind: Cluster
 metadata:
   name: sample
 spec:
   hosts:
 {name: cilium, address: 192.168.10.4, internalAddress: 192.168.10.4, user: root, password: Chenshake1208} roleGroups: etcd: cilium
 master:
 cilium
 worker:
 cilium
 controlPlaneEndpoint:
 domain: lb.kubesphere.local
 address: ""
 port: 6443
 kubernetes:
 version: v1.19.8
 imageRepo: kubesphere
 clusterName: cluster.local
 network:
 plugin: cilium
 kubePodsCIDR: 10.233.64.0/18
 kubeServiceCIDR: 10.233.0.0/18
 registry:
 registryMirrors: []
 insecureRegistries: [] 

初始化

kk init os -f config-sample.yaml

部署kubesphere

kk create cluster -f config-sample.yaml --with-kubesphere v3.1.0

Hubble

kubectl apply -f https://raw.githubusercontent.com/cilium/cilium/1.9.7/install/kubernetes/quick-hubble-install.yaml
May 282021
 

本周参加了一个培训,直接就是上机练习。整个流程,基本是我见过,体验过最好的,记录一下。以前IT培训有一个规律,很难超过50人,所以也就导致当年新东方尝试做IT培训,复制英语培训的上失败。主要是上机实验环节,如何能确保100人,10000人都能完成实验,在指定的时间内。这是非常有挑战的事情。

阿里云香港虚拟机

老师提前用terraform去阿里云香港创建了20多个虚拟机,还采用密钥登陆,每个虚拟机,分配一个公网ip。整个过程,其实还是非常方便的。

老师其实还是提前上虚拟机里,把实验需要要做的事情,用ansible处理了一下,这样学员登陆上去,就可以直接使用。

老师甚至把环境变量都帮忙配置好。整个实验,包括k8s安装,服务网格的安装,都是非常流畅。

微信群和腾讯文档

培训,一般都会建议一个微信群,不过这个群,还是很有创新,公告包括wifi,你登陆使用的密钥的下载地址。这样你进群后,就基本知道如何做了。

这次上课的整个过程,做笔记上最爽,基于腾讯文档,大家协同。由于有不少代码,如果出错,可以直接复制文档里,正确的代码。

所以20多人,基本大家都可以把实验做完,慢慢体会就可以。

这次没有使用腾讯会议,如果我们用腾讯会议,远程,完全也是可以。

改进

酒店里的wifi,插线板,都是需要提前考虑。对于mac电脑,好处是压根不需要考虑电源的问题。投影的清晰度,分享演讲的ppt。

May 222021
 

给儿子报了python的编程课,作业变成我的作业,每周是必须完成的,这可以算是经典的自己给自己挖坑。

这段代码,实现一个方块,可以用键盘操作,到处走,还能用鼠标进行操作,更改颜色。

真的是吃饭的时候,才想到办法,让改变颜色的操作wait 一下,才能实现那种更改颜色的效果。鼠标点方块里,改变颜色,鼠标在外面,就跟着走,按空格键,方块会变大。

import pygame,time
from random import randint as rd

pygame.init()

screen = pygame.display.set_mode([640,480])
pygame.key.set_repeat(20)
r = pygame.Rect(0,0,50,50)

def draw():
    screen.fill([255,255,255])
    pygame.draw.rect(screen,(0,128,0),r)
    pygame.display.flip()

def keydown(i):
    if i.key == pygame.K_UP:
        r.y-=10
    if i.key == pygame.K_DOWN:
        r.y+=10
    if i.key == pygame.K_RIGHT:
        r.x+=10
    if i.key == pygame.K_LEFT:
        r.x-=10
    if i.key == pygame.K_SPACE:
        r.h+=10
        r.w+=10

def mousedown():
    b=pygame.mouse.get_pos()    
    if r.x<b[0]<r.x+r.w and r.y<b[1]<r.y+r.h :       
        pygame.draw.rect(screen,(rd(0,255),rd(0,255),rd(0,255)),r)
        pygame.display.flip()
        pygame.time.wait(1000)

    else:
        r.x=b[0]
        r.y=b[1]   
   
a=1
while a ==1:
    draw()

    e = pygame.event.get()
    for i in e:
        if i.type == pygame.QUIT:
            a = 0     
        if i.type == pygame.KEYDOWN:
            keydown(i)
        if i.type == pygame.MOUSEBUTTONDOWN:
            mousedown()


pygame.quit()
     
May 182021
 

要上传一个文件到阿里云的对象存储,7个G,所以就只能用客户端。专门研究了一下。

OSS控制台客户端Mac版,做阿里云上就可以找到,免费。所以就是在mac安装就可以。

需要输入账号的创建 AccessKey。填入 AccessKey ID,AccessKey Secret,就可以开始使用。