https://www.kubernetes.org.cn/2737.html
- 软件开发的历史轨迹
- sidecar模式的历史和现在
- Kubernetes 提供了 ServiceAccount 的机制,自动在容器中注入调用 Kubernetes API 需要的 token,应用代码中无需关心认证问题,只需要部署的时候在 yaml 中配置好合适的 ServiceAccount 即可。这个是使用了指定的lib了吧,查一下
- 方便选举
- 对应dubbo的服务注册与发现最好也能支持k8s
- 关于istio
DevOps
https://www.kubernetes.org.cn/2737.html
方式一:
方式二:
1 |
set-alias which where.exe |
场景:
如何实现Windows机器上配置多个IP地址?
思考:
Linux上可以通过ip命令创建各种虚拟设备、子设备、配置IP等; Windows上如何实现呢?
Virtualbox 可以帮助我们实现这个,不仅可以配置虚拟机内部的网络,也可以给宿主机添加虚拟网络设备,不必为了拥有一个单独的IP就去启动一个虚拟机。
操作方法:
图形版本:
vboxmanage hostonlyif create
是的,不需要任何参数了,创建完了不符合口味的话,可以再编辑
vboxmanage list hostonlyifs
vboxmanage hostonlyif ifconfig <name> --ip 1.2.3.4 --netmask 255.255.255.0
–netmask 缺省为 255.255.255.0
vboxmanage hostonlyif remove <name>
在Powershell中设置:
1 |
Set-PSReadlineOption -EditMode Emacs |
使得Powershell中可以:
话说,上面那行在哪里设置?
就是Powershell中直接输入: $PROFILE 回车,就是这个文件
参考:
rancher集群初始状态:
1个 master + etcd +worker
1个worker
kube-apiserver进程为:
etcd进程为:
修改:
添加一个 etcd + master,上面的进程为:
kube-apiserver:
etcd进程:
出现的问题:
1 |
2018-11-27 08:44:26.674238 E | rafthttp: request cluster ID mismatch (got 3ab081c7572f57ca want e264d9f06628a989) |
rancher 2 etcd节点扩展为3 etcd节点:
1 |
rm -fr /var/lib/rancher/etcd/member/ |
思考:
1 |
--initial-cluster=etcd-k8s-node-3=https://192.168.56.34:2380 |
通过/etc/wsl.conf修改mount方式:添加 metadata选项
默认mount:
1 |
D: on /mnt/d type drvfs (rw,noatime,uid=1000,gid=1000) |
修改后:
原理:
本来,Windows的文件系统和Linux的文件系统是不一样的,Linux的文件的权限在Windows上是没有的,通过一个metadata选项就磨平了这个问题。
参考:
启动wsl的多种方式:
[distro]
ie ubuntu
wsl.exe
or bash.exe
wsl [command]
or bash -c [command]
Windows命令和Linux命令的融合:
windows中访问linux命令:
Windows的path会自动添加了wsl的PATH中的,只要可执行文件名带上 .exe 就会直接执行windows的命令的;如果当前的工作目录只存在于wsl中,则windows程序会fallback到c:\temp
不过,也可以通过如下方式,机制wsl中调起Windows程序:
1 |
echo 0 > /proc/sys/fs/binfmt_misc/WSLInterop |
或者通过wsl.conf来配置:
/etc/wsl.conf
1 2 3 |
[interop] enabled=false # enable launch of Windows binaries; default is true appendWindowsPath=false # append Windows path to $PATH variable; default is true |
通过 wslconfig.exe 来配置默认的Linux子系统
修改wsl中的language: https://docs.microsoft.com/zh-cn/windows/wsl/faq#how-do-i-change-the-display-language-of-wsl
修改成中文,需要子系统中安装中文包,如:
1 |
sudo apt-get install language-pack-zh-hans |
然后再:
1 |
sudo update-locale LANG=zh_CN.UTF-8 |
限制:
Ubuntu子系统的安装位置:
1 |
%HOMEPATH%\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc |
Ubuntu子系统根目录:
1 |
%HOMEPATH%\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs |
注意:
1 |
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux |
wsl 子系统中手动mount windows上的目录:
1 |
sudo mount -t drvfs C: /mnt/c -o metadata |
这样挂载的属主用户是root,可以通过-o来指定目录权限,用户id、组id:
1 |
sudo mount -t drvfs C: /mnt/c -o metadata,umask=22,uid=1000,gid=1000 |
自动启动WSL:(设置一个开机或用户登录windows时触发执行的计划任务就行了)
注意: 计划任务可能有电源相关的条件,如果没有插电(只用电池),计划任务是不执行的,如果插电了,计划任务就立即触发了
参考: https://dev.to/ironfroggy/wsl-tips-starting-linux-background-services-on-windows-login-3o98
参考:
https://docs.microsoft.com/en-us/windows/wsl/wsl-config
ceph osd日志中显示,偶尔会收到来自于如下进程的信号:
1 |
killall -q -1 ceph-mon ceph-mgr ceph-mds ceph-osd ceph-fuse radosgw |
如:
而且,通常出现在日志文件的第一条。
原因:
这个是 /etc/logrotate.d/ceph 中配置的用于切换日志文件的,没有其他影响
本人使用的Windows,这里了只说Windows
可以自己安装一个: http://www.dhcpserver.de
禁用DHCP:
查看:
1 2 3 4 5 6 7 |
> VBoxManage.exe list dhcpservers NetworkName: HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter IP: 192.168.56.100 NetworkMask: 255.255.255.0 lowerIPAddress: 192.168.56.101 upperIPAddress: 192.168.56.254 Enabled: Yes |
禁用:
1 |
> VBoxManage.exe dhcpserver modify --netname "HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter" --disable |
如果宿主机上设置了一个该网络的网络适配器(就是虚拟网卡),该网卡作为该网络的网关的话,可以通过dhcpserver来设置一个网关,否则,就得自己在手动设置IP(或dhcp 的ip)的机器上手动设置网关,也或者你正好不想给该网络设置网关,那就也不需要在dhcp server上设置网关了。
1 |
VBoxManage dhcpserver modify --network "HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter #4" --set-opt=3 "192.168.56.1" |
详细语法参考:
1 |
VBoxManage.exe dhcpserver modify --help |
还可以设置更多的DHCP选项,如: dns server
参考: