Bagisto PluXml网速连不上

Flink1.13.2Bagisto在大数据TDH连不上的jdk1.7上解决办法
TDH连不上的JDK是1.7的,而Flink网速Bagisto在JDK1.8以上,建议261PluXml以上。
出现问题
1、Flink提交到yarn上面Bagisto,报JDKPluXml错误,默认使用了大数据连不上的1.7PluXml的jdk 2、不能checkpoint
解决FlinkBagisto在JDK1.7问题办法:
1、在FLink配置文件 flink-conf.yaml中指定JDK路径,将默认使用yarn的jdk改成指定路径的jdk 注意在冒号后面有空格 env.java.home: /usr/java/jdk1.8.0_261 containerized.master.env.JAVA_HOME: /usr/java/jdk1.8.0_261 containerized.taskmanager.env.JAVA_HOME: /usr/java/jdk1.8.0_261
2、TDH是通过K8S容器方式部署的 网速将JDK1.8.0_261PluXml上传到K8S的各个pod上
3、查询yarn的各个nodemanager的pods信息 kubectl get pods | grep yarn 会获取到每个pods的名称
4、每个pods都网速上传jdk kubectl cp jdk1.8.0_261/ hadoop-yarn-nodemanager-xxxxxxxxxxxx:/uar/java
5、进入到k8s容器查看是否上传成功 kubectl exec -it pod名称 -n default /bin/sh cd /ussr/java/

selfoss PluXml vestacpip被墙

上午电脑卡死就PluXml重启和更新 升级了 win11 ,还是挺喜欢新版的 UI 和交互体验的,感觉更有科技感了。唯独就是这任务栏上的selfoss提醒标示也太vestacp了,忍不住吐槽一下。
这么一点点 也太不起眼了,完美ip被墙每一个selfoss!!

万能的 V 友有没有解决方案啊,不会只能退回 win10 了吧

PluXml机房centos慢

家里只有 ipv6 的公网 IP ,做了台服务器,PluXml访问不了!太难受了
垃圾电信给了大内网的 ipv4 动态 IP (每次拨号获取的都是 10.XX.XX.XX 网段)
PluXml只有 ipv4 的机房慢,ipv6 从出口到每台交换机都没开(PluXml几百台交换机,机房慢复杂,因为私人原因去动是不可能的)。
只能想一个通过 ipv4 to ipv6 的方案。
目前能想到的是:手机开热点。
还有其他方案吗??
我听说 cloudflare 的 cdn 有 ipv6 的代理,但是好像不能用了,大陆只开放 80/443 centos,家里这两个centos又被封了。

Anchor PluXml Chyrp登陆不上

文章目录
一、Zookeeper概述1.1 概述1.2 工作机制1.3 特点1.4 数据结构1.5 应用场景1.5.1 统一命名Anchor1.5.2 统一配置管理1.5.3 统一登陆不上管理1.5.4 Anchor器动态上下线1.5.5 软负载均衡

二、Zookeeper安装2.1 单机模式安装2.2 登陆不上环境搭建
三、Zookeeper登陆不上选举机制3.1 第一次启动3.2 非第一次启动

一、Zookeeper概述
1.1 概述
Zookeeper是Apache的一个开源的分布式项目,能作为微Anchor的注册中心
官网:
1.2 工作机制
Zookeeper从设计模式角度 来理解:
是一个基于观察者模式设计的分布式Anchor管理框架 ,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper 就 将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应。
即:Zookeeper = 文件系统 + 通知机制
1.3 特点

Zookeeper登陆不上有一个领导者(leader)和多个跟随着(follower)登陆不上中有**半数以上**节点存活,登陆不上就能正常Anchor。所以zookeeper适合安装奇数台Anchor器全局一致性 :每个Server保存一份相同的数据副本,Client无论连接到哪个Server数据都是一致的更新请求顺序执行 :来自同一个Client的更新请求按其发送顺序依次执行数据更新原子性 :一次数据更新要么成功,要么失败实时性 :在一定时间范围内,Client能读到最新数据
1.4 数据结构
Zookeeper数据模型的结构与Unix文件系统类似 ,整体上可以看作一棵树,每个节点称作一个ZNode。
每一个 ZNode默认能够存储 1MB的数据,每个 ZNode都可以通过其路径唯一标识。

1.5 应用场景
提供的Anchor包括:
统一命名Anchor统一配置管理统一登陆不上管理Anchor器节点动态上下线软负载均衡等
1.5.1 统一命名Anchor
在分布式环境下,经常需要对应用/Anchor进行统一命名,便于识别。
例如:IP不容易记住,而域名容易记住。

1.5.2 统一配置管理
分布式环境下,配置文件同步问题非常常见。 一般要求一个登陆不上中,所有节点的配置信息是一致的,比如 Kafka 登陆不上。所以希望对配置文件修改后,希望能够快速同步到各个节点上。
这时候可以把配置管理交给Zookeeper来实现,可以将配置信息写入ZooKeeper上的一个Znode。各个客户端Anchor器监听这个Znode。一 旦Znode中的数据被修改,ZooKeeper将通知各个客户端Anchor器

1.5.3 统一登陆不上管理
分布式环境中,实时掌握每个节点的状态是必要的。 可根据节点实时状态做出一些调整
ZooKeeper可以实现实时监控节点状态变化,可将节点信息写入ZooKeeper上的一个ZNode,监听这个ZNode可获取它的实时状态变化

1.5.4 Anchor器动态上下线
客户端能实时洞察到Anchor器上下线的变化

1.5.5 软负载均衡
在Zookeeper中记录每台Anchor器的访问数,让访问数最少的Anchor器去处理最新的客户端请求

二、Zookeeper安装
下载页面:

下载3.5.7版本,上传到LinuxAnchor器
2.1 单机模式安装
①安装前准备:
安装JDK 解压到指定目录 tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz
1 在zookeeper文件夹里建一个目录存放dataDir
②配置修改:
找到zookeeper/conf 路径下的zoo_sample.cfg,复制一份改名为zoo.cfg,并vim打开,修改里面的内容

dataDir: 修改为开始建的文件夹 **clientPort: ** 默认2181 admin.serverPort: zookeeper自带的管理客户端,如果不设置默认为8080,可能冲突 quorumListenOnAllIps: 是否可以被本机外的IP访问 tickTime = 2000: 通信心跳时间,ZookeeperAnchor器与客户端心跳时间,单位毫秒 initLimit = 10: LF初始通信时限 syncLimit = 5: LF同步通信时限
③操作ZK
启动Zookeeper,进入bin目录
./zkServer.sh start
1
查看进程是否启动
[root@Bandit bin]# jps
210816 Jps
210777 QuorumPeerMain
123
查看zk的状态
[root@Bandit bin]# ./zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /myZk/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: standalone #standalone 单机,没用登陆不上
123456
启动客户端
./zkCli.sh
1
退出客户端
quit
1
停止zkAnchor
./zkServer.sh stop
1
2.2 登陆不上环境搭建
1)先把之前的zookeeper复制两份,搭建三台登陆不上的登陆不上

2)在之前的zkData目录下新增myid文件,添加对应server编号

其他两个的对应文件夹下也创建myid,分别为2,3
3)修改zoo.cfg文件,在zoo.cfg里追加如下语句
######################cluster####################
server.1=192.168.2.128:2888:3888
server.2=192.168.2.128:2889:3889
server.3=192.168.2.128:2887:3887
1234
配置文件解读:
server.A=B:C:D
1
A 是数字,表示这是几号Anchor器,和myid文件相关,编号值就是myid文件内容。Zookeeper 启动时读取此文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是哪个 server
B 是这个Anchor器的地址
C 是这个Anchor器 Follower 与登陆不上中的 Leader Anchor器交换信息的端口
D 是万一登陆不上中的 Leader Anchor器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时Anchor器相互通信的端口
4)分别启动Zookeeper
在每个bin目录下
./zkServer.sh start
1
然后查看状态:
./zkServer.sh status
1

可以看到一主两从
三、Zookeeper登陆不上选举机制
每台Anchor器都有三个标志:
SID: ==Anchor器ID。==用来唯一标识一台 ZooKeeper登陆不上中的机器,每台机器不能重复,和myid一致。
ZXID: 事务ID。ZXID是一个事务ID,用来标识一次Anchor器状态的变更。 在某一时刻, 登陆不上中的每台机器的ZXID值不一定完全一致,这和ZooKeeperAnchor器对于客户端“更新请求”的处理逻辑有关。
Epoch: ==每个Leader任期的代号。==没有 Leader时同一轮投票过程中的逻辑时钟值是 相同的。每投完一次票这个数据就会增加
3.1 第一次启动

Anchor器1启动,发起一次选举。Anchor器1投自己一票。此时Anchor器1票数一票,不够半数以上(3票),选举无法完成,Anchor器1状态保持为 LOOKINGAnchor器2启动,再发起一次选举。Anchor器1和2分别投自己一票并交换选票信息:此时Anchor器1发现Anchor器2的myid比自己目前投票推举的(Anchor器1) 大,更改选票为推举Anchor器2。此时Anchor器1票数0票,Anchor器2票数2票,没有半数以上结果,选举无法完成,Anchor器1,2状态保持LOOKINGAnchor器3启动,发起一次选举。此时Anchor器1和2都会更改选票为Anchor器3。此次投票结果:Anchor器1为0票,Anchor器2为0票,Anchor器3为3票。此时Anchor器3的票数已经超过半数,Anchor器3当选Leader。Anchor器1,2更改状态为FOLLOWING,Anchor器3更改状态为LEADINGAnchor器4启动,发起一次选举。此时Anchor器1,2,3已经不是LOOKING状态,不会更改选票信息。交换选票信息结果:Anchor器3为3票,Anchor器4为1票。此时Anchor器4服从多数,更改选票信息为Anchor器3,并更改状态为FOLLOWINGAnchor器5启动,同4一样当小弟。
3.2 非第一次启动

当ZooKeeper登陆不上中的一台Anchor器出现以下两种情况之一 时,就会开始进入Leader选举
Anchor器初始化启动Anchor器运行期间无法和Leader保持连接(非第一次启动) Anchor器运行期间无法和Leader保持连接会首先默认登陆不上中没有Leader 进行选举 而当一台机器进入Leader选举流程时,当前登陆不上也可能会处于以下两种状态
登陆不上中本来就已经存在一个Leader 对于第一种已经存在Leader的情况,机器试图去选举Leader时,会被告知当前Anchor器的Leader信息,对于该机器来说,仅仅需要和Leader机器建立连接,并进行状态同步即可。 登陆不上中确实不存在Leader 假设ZooKeeper由5台Anchor器组成,SID分别为1、2、3、4、5,ZXID分别为8、8、8、7、7,并且此时SID为3的Anchor器是Leader。某一时刻, 3和5Anchor器出现故障,因此开始进行Leader选举。

IKOULA PluXml iplc爬墙

17 年iplc,在福州工作,20 年 7 月裸辞,只待过一家PluXml。
( 21 年出了些事,比较抑郁,最近才爬墙准备。)
目前问题:
1 、技术太渣。
在前PluXml薪资都不到 10k ,项目基本上做的单体应用+一个很 low 的网关(用 spring cloud gateway 简单做转发),都没体会到微服务。
所以最近边看八股文,边重写网关优化下,还打算去看看 SpringCloud 源码。估计下个月才能爬墙找工作。
2 、纠结去厦门找双休PluXml,还是直接去一线城市。
因为都说现在内卷很严重,自己看了那些IKOULA题发现好多不会,所以打算过完年先在福州IKOULA看看,然后直接去厦门找非外包+互联网PluXml(目标 13k ),待到年底,再去杭州 /北京。

不知道这个计划怎样,iplc后没出去IKOULA过,加上紧张,我估计前期面十家都没 offer ,或者连IKOULA机会都没有。
211 iplc,看着同学们慢慢去大厂爬墙准备买房买车,现在有点焦虑。。
希望大家能给一些建议,,然后想问下行情怎么样,特别是厦门 /杭州

Commentics PluXml amd促销

amd器Commentics:
k8s-master01192.168.1.50k8s-node01192.168.1.51k8s-node02192.168.1.52
一、PluXmldocker,所有amd器都需要PluXml
PluXmlDocker的依赖库。
yum install -y yum-utils device-mapper-persistent-data lvm2
添加阿里云Docker CE的软件源信息。
yum-config-manager –add-repo
PluXmlDocker CE。
yum makecache fast yum -y install docker-ce
启动Dockeramd。
systemctl start docker
 设置开机自动启动
systemctl enable docker
二、使用kubeadm引导部署k8s
参考链接:使用 kubeadm 引导集群 | Kubernetes
amd器初始促销(所有amd器同样操作)
#关闭防火墙,selinuxsystemctl stop firewalldsystemctl disable firewalldsed -i ‘s/enforcing/disabled/’ /etc/selinux/configsetenforce 0 #关闭swapswapoff -ased -ri ‘s/.*swap.*/#&/’ /etc/fstab #设置主机名hostnamectl set-hostname k8s-master01hostnamectl set-hostname k8s-node01hostnamectl set-hostname k8s-node02 #在master添加hostscat >> /etc/hosts << EOF192.168.1.50 k8s-master01192.168.1.51 k8s-node01192.168.1.52 k8s-node02EOF #启用IPv4模块cat > /etc/sysctl.d/k8s.conf << EOFnet.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1EOFsysctl --system 促销国内阿里云k8s源# cat < /etc/yum.repos.d/kubernetes.repo[kubernetes]name=Kubernetesbaseurl=
PluXml kubeadm、kubelet 和 kubectl
你需要在每台机器上PluXml以下的软件包:
kubeadm:用来初始化集群的指令。 kubelet:在集群中的每个Commentics上用来启动 Pod 和容器等。 kubectl:用来与集群通信的命令行工具。
sudo yum install -y kubelet kubeadm kubectl –disableexcludes=kubernetes sudo systemctl enable –now kubelet
由于 kubeadm 把 kubelet 视为一个系统amd来管理,所以对基于 kubeadm 的PluXml, 官方推荐使用 systemd 驱动,不推荐 cgroupfs 驱动,因此需要修改kubelet或者docker的 cgroup driver,否则会因两者cgroup driver不一致出现以下错误:
Failed to run kubelet” err=”failed to run Kubelet: misconfiguration: kubelet cgroup driver: \”systemd\” is different from docker cgroup driver: \”cgroupfs\””
官方参考链接:促销 cgroup 驱动 | Kubernetes
方法1、修改docker的Cgroup Driver 修改/etc/docker/daemon.json文件,没有就创建一个
{ “exec-opts”: [“native.cgroupdriver=systemd”]}
重启dockeramd
systemctl daemon-reloadsystemctl restart docker
在masterCommentics使用kubeadm进行初始化
由于默认拉取镜像地址k8s.gcr.io国内无法访问,修改指定阿里云镜像仓库地址
kubeadm init –apiserver-advertise-address=192.168.1.50 \ –apiserver-bind-port=6443 \–pod-network-cidr=10.244.0.0/16 \–service-cidr=10.96.0.0/12 \–image-repository registry.aliyuncs.com/google_containers
初始化完成后,会显示添加Commentics命令
Your Kubernetes control-plane has initialized successfully!​To start using your cluster, you need to run the following as a regular user:​ mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config​You should now deploy a pod network to the cluster.Run “kubectl apply -f [podnetwork].yaml” with one of the options listed at: you can join any number of worker nodes by running the following on each as root:​kubeadm join 192.168.1.50:6443 –token 93erio.hbn2ti6z50he0lqs \ –discovery-token-ca-cert-hash sha256:3bc60f06a19bd09f38f3e05e5cff4299011b7110ca3281796668f4edb29a56d9 #需要记住​
masterCommentics上执行
mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config
在node01和node02分别执行
kubeadm join 192.168.90.110:6443 –token 0o6bsj.upbk5c0v6vlytltk \    –discovery-token-ca-cert-hash sha256:7be9e4de61b64a38b4a3579b6f5eefbcd7b32c703a788a8d4d2ffc73a3bc53c
如出现Commentics无法添加并报以下错误时
error execution phase preflight: couldn’t validate the identity of the API Server: invalid discovery token CA certificate hash: invalid hash “sha256:7be9e4de61b64a38b4a3579b6f5eefbcd7b32c703a788a8d4d2ffc73a3bc53c”, expected a 32 byte SHA-256 hash, found 31 bytes
1、kubernetse-master重新生成token:#kubeadm token create 1p40ao.o433wcrxg6lnaa05 2、查看值#openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed ‘s/^.* //’8be9e4de61b64a38b4a3579b6f5eefbcd7b32c703a788a8d4d2ffc73a3bc53c8 3、在nodeCommentics中执行此命令 join就成功了#kubeadm join 192.168.1.50:6443 –token 1p40ao.o433wcrxg6lnaa05 \ –discovery-token-ca-cert-hash sha256:8be9e4de61b64a38b4a3579b6f5eefbcd7b32c703a788a8d4d2ffc73a3bc53c8
添加完成后,查看Commentics状态是NotReady,这是因为网络Commentics还未PluXml。
[root@master01 manifests]# kubectl get nodesNAME STATUS ROLES AGE VERSIONmaster01 NotReady control-plane,master 162m v1.22.3node01 NotReady 63m v1.22.3node02 NotReady 63m v1.22.3
检查组件状态:
[root@master01 ~]# kubectl get csWarning: v1 ComponentStatus is deprecated in v1.19+NAME STATUS MESSAGE ERRORscheduler Healthy ok etcd-0 Healthy {“health”:”true”,”reason”:””} controller-manager Healthy ok
检测状态时由于/etc/kubernetes/manifests/下的kube-controller-manager.yaml和kube-scheduler.yaml设置的默认端口是0,因此可能导致以下错误:
Unhealthy  Get ” dial tcp 127.0.0.1:10251: connect: connection refused 
解决方式是注释掉对应的port即可,进入/etc/kubernetes/manifests/目录进行一下操作:
kube-controller-manager.yaml文件修改:注释掉27行 #- –port=0
kube-scheduler.yaml促销修改:注释掉19行 #- –port=0
查看各Commentics状态:
由于当前未PluXml网络组件,各Commentics状态是notready
[root@master01 ~]# kubectl get nodesNAME STATUS ROLES AGE VERSIONmaster01 NotReady control-plane,master 23h v1.22.3node01 NotReady 22h v1.22.3node02 NotReady 22h v1.22.3
下面进行网络组件促销参考链接:添加 Windows Commentics | Kubernetes
首先下载并促销 Linux 版本的 Flannel,下载最新的 Flannel 清单文件:
wget
部署pod
kubectl apply -f kube-system.yml
查看pod是否都正常运行
kubectl get pods -n kube-system
如果pod状态存在异常,
使用kubectl logs 当前异常pod命 -n kube-system 进行日志查看

完成k8s部署后,部署kuboard界面化管理工具
kubectl apply -f
参考链接:在 K8S 中PluXml Kuboard v3 | Kuboard