技术标签: kubernetes 运维 k8s
建议master数量为奇数个(本章以测试为主,双节点测试,可以加相应IP)搭建环境请参照之前文章
架构:
master1 10.194.28.104
master2 10.194.28.110
虚拟ip 10.194.28.222
<1> 节点安装 keepalived
yum install -y socat keepalived ipvsadm conntrack
<2> 配置
[[email protected] ~]# cat /etc/keepalived/keepalived.conf
global_defs {
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state BACKUP
nopreempt
interface ens192
virtual_router_id 80
priority 100 #优先级
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass just0kk
}
virtual_ipaddress {
10.194.28.222
}
}
virtual_server 10.194.28.222 6443 {
delay_loop 6
lb_algo loadbalance
lb_kind DR
net_mask 255.255.252.0
persistence_timeout 0
protocol TCP
real_server 10.194.28.104 6443 {
weight 1
SSL_GET {
url {
path /healthz
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 10.194.28.110 6443 {
weight 1
SSL_GET {
url {
path /healthz
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
[[email protected] ~]# cat /etc/keepalived/keepalived.conf
global_defs {
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state BACKUP
nopreempt
interface ens192
virtual_router_id 80
priority 50 #优先级
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass just0kk
}
virtual_ipaddress {
10.194.28.222
}
}
virtual_server 10.194.28.222 6443 {
delay_loop 6
lb_algo loadbalance
lb_kind DR net_mask 255.255.252.0
persistence_timeout 0
protocol TCP
real_server 10.194.28.104 6443 {
weight 1
SSL_GET {
url {
path /healthz
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 10.194.28.110 6443 {
weight 1
SSL_GET {
url {
path /healthz
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
<3> 开启 keepalived master1 master2依次启动
systemctl enable keepalived && systemctl start keepalived && systemctl status keepalived
<1>初始化
#kubeadm init --config kubeadm-config.yaml
[[email protected] ~]# cat kubeadm-config.yaml
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
kubernetesVersion: v1.14.0
apiServer:
certSANs:
- 10.194.28.104
- 10.194.28.110
controlPlaneEndpoint: "10.194.28.222:6443"
networking:
podSubnet: "10.244.0.0/16"
---
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
mode: ipvs
#mkdir -p $HOME/.kube
#cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
#chown $(id -u):$(id -g) $HOME/.kube/config
#kubectl apply -f kube-flannel.yml
<2>复制相关文件
master2 #cd /root && mkdir -p /etc/kubernetes/pki/etcd &&mkdir -p ~/.kube/
master1 设置免密 #ssh-keygen -t rsa 一直回车 #ssh-copy-id -i .ssh/id_rsa.pub [email protected]
sh ca.sh
[[email protected] ~]# cat ca.sh
scp /etc/kubernetes/pki/ca.crt master2:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/ca.key master2:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/sa.key master2:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/sa.pub master2:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/front-proxy-ca.crt master2:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/front-proxy-ca.key master2:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/etcd/ca.crt master2:/etc/kubernetes/pki/etcd/
scp /etc/kubernetes/pki/etcd/ca.key master2:/etc/kubernetes/pki/etcd/
master1 至此完毕
<3>次master节点加入集群(初始化集群成功时的信息)
kubeadm join 10.194.28.222:6443 --token za0pu8.itrd*********2n --discovery-token-ca-cert-hash sha256:1f3482c3******************e7acb3bd223d8c --experimental-control-plane
#mkdir -p $HOME/.kube
#cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
#chown $(id -u):$(id -g) $HOME/.kube/config
以上完毕!!!
——HttpClient android5.0之前常用 android5.0之后,被HttpURLConnecetion替代 android6.0完全被舍弃 HttpClient是Apache提供的Http网络访问接口。完成的功能和HttpURLConnection几乎一模一样的效果,但两者的用法有很大的差别。 在一般情
WKWebView是iOS8.0之后用以替代UIWebView的网页浏览器,包含在WebKit中,可以通过 @import WebKit 导入。如果工程需要适配iOS7,那么请在iOS7中使用UIWebView。如果是iOS8.0以上,请果断的选择WKWebView吧,无论是从功能,加载速度还是性能上,它都是不二的选择。毕业回公司有段时间了,与其说比较忙,不如说最近接触的东西有点小
VC 获得当前应用程序所在路径(exe文件的路径) TCHAR szFilePath[MAX_PATH + 1] = { 0 }; GetModuleFileName(NULL, szFilePath, MAX_PATH); (_tcsrchr(szFilePath, _T('\\')))[1] = 0; //删除文件名,只获得路径
TensorFlow实现股票预测(RNN,网络优化)
网上找到的jspSmartUpload API 和 原装包,需要的可以下载
几天没有更新博客了,最近有点忙,没时间写博客,今天偷下懒,写写博客。废话也不多说,说正题,这个折叠面板组件的实现使用了transition过渡动画和css3的变量,使用原生的JS实现逻辑,用到部分ES6的语法,现在本人也还没搞得太透彻,理解明白了,会写一些关于ES7及其更新的语法的博客。这是效果图:这个控件比较简单,我就直接上代码了,不明白的朋友可以在评论里留言,我会改进的;或者是有大神指点我一二...
详细问题描述(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)[内容] app安卓端跳转到微信小程序失败重现步骤 一直失败[步骤] 微信小程序关联了微信开发平台,也绑定了,应用签名也正确,打包时包名一致,调用 launchMiniProgram方法是一切正常,使用的也是小程序的原始id,...
每个提取的特征图的空间分辨率分别为输入样本的1/4、1/8、1/16,优化器采用adamw和amsgrad,学习率为0.003,权重衰减0.0005,batch-size为4,epochs为30,CFA的超参数α为0.00001,β为0.1,作为每个补丁特征的最近邻居数,K和J均为3。异常定位的性能取决于内存库的大小;提出的新方法,通过将迁移学习应用到预训练的CNN来产生具有减少偏差的面向目标的特征;当在适应之前使用偏向于大数据集的特征时,正常特征的正态性被低估并且具有与异常特征相似的分数(第二列)。
nginx配置https协议需要用到openssl库,这个库一般系统会自带,但是自带的库都是版本比较老旧,会出现一些安全漏洞,比如Heartbleed(心血漏洞CVE-2014-0160),CCS(ChangeCipherSpecCVE-2014-0224)注入漏洞,CBC padding oracle漏洞(CVE-2016-2107)。如果出现安全漏洞,https协议也会受到威胁,可以通过第三方...
演示效果:结构progress/index.jsconst controller = { init: require('./controllers/html'), speed: require('./controllers/speed')}exports.init = controller.initexports.speed = controller.speedpro...
日志处理引擎SPLUNKSplunk分为免费Free版和企业Enterprise版。SplunkFree专供个人使用。SplunkEnterprise添加了支持多用户和分布式部署的功能,并包括警报、基于角色的安全、单一登录、预设的PDF交付以及对无限数据量的支持。你可以使用浏览器访问http://zh-hans.splunk.com/download下载最新版的Splunk。如果你是第一次访问Sp...
问题:jquery data 方法在未缓存过时会从html5的data-*属性获取值,但属性值会转换类型再输出举例:<div id="test" data-id="20220321">test</div>console.log($('#test').data('id')); // 20220321 输出Number型console.log($('#test').attr('data-id')); // '20220321' 输出String型源码解析原因