ONAP Jakarta版本安装
安装环境
本次安装使用五个VM,ubuntu(20.04.1),gcc(Ubuntu 9.4.0-1ubuntu1~20.04.1)
一个4 vCPU, 6G RAM,40G disk
四个8 vCPU, 30G RAM,100G disk
我们安装onap需要docker/k8s/kubectl/helm,根据自己的需要,还可以加入rancher或者nfs系统等等
安装环境的时候一定要注意各版本能不能相互支持,官网的教程没有及时更新所以需要自己去检查各个版本。
安装docker(v20.10.17)
有关docker的安装在我的另一篇文章docker安装中,这里先行跳过
安装microk8s(v1.22)
首先在你的master node上运行
sudo snap install microk8s --classic
安装完成后检查你的microk8s是否正常
microk8s status --wait-ready
microk8s如果正常运行,那么可以使用microk8s enable dashboard dns registry istio
开启dashboard。注意这里curl localhost的时候需要加上-k的指令,否则验证失败
至于其他的服务可以通过microk8s enable
开启,通过microk8s disable
关闭
访问dashboard可以用
microk8s dashboard-proxy
安装完microk8s之后开始搭建我们自己的cluster
首先选择自己的master node,输入microk8s add-node
打开其他woker node,输入
microk8s join 10.70.38.207:25000/bd129836486e49f5c827f6950e9461db/d3b6af5c0e81 --worker
成功加入其他四个node后,输入microk8s kubectl get no
查看cluster
能看到cluster已经创建完成
安装helm(3.7.0)
根据官网文档我们安装helm 可以使用
sudo snap install helm --classic
如果你是ubuntu系统你可以使用
curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
sudo apt-get install apt-transport-https --yes
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
sudo apt-get update
sudo apt-get install helm
如果你安装onap需要对helm的版本进行限制,那么你可以通过helm的Binary Releases下载之前的老版本
下载完毕后可以通过helm version
查看helm的版本
安装helm时还遇到一个网络连接失败的问题,使用microk8s kubectl config view --raw > ~/.kube/config
将自己的用户加入microk8s的group才可以访问k8s cluster
安装onap
接下俩就是我们本次安装的重头戏,ONAP本体
首先我必须要吐槽一下,ONAP官网的教程确实是太久没有更新了,它本身有很多问题,所以大家在安装的时候出现问题真的要多去网上寻找答案,不要只是照着官网的步骤做
这里附上官网链接
首先检查kubectl是否正常运行(这里应该是正常的,因为microk8s的下载是捆绑kubectl一起下载的)kubectl get pods --all-namespaces
所有的pod应该running
如果你不是安装的microk8s,那你可以通过以下指令下载kubectl
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.19.11/bin/linux/amd64/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
mkdir ~/.kube
接下来安装Strimzi Apache Kafka操作器
添加Strimzi的helm repository
helm repo add strimzi https://strimzi.io/charts/
安装操作器
helm install strimzi-kafka-operator strimzi/strimzi-kafka-operator --namespace strimzi-system --version 0.28.0 --set watchAnyNamespace=true --create-namespace
安装Cert-Manager证书管理操作器
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.5.4/cert-manager.yaml
如果你的本地有stable repository,使用helm repo remove stable
指令移除防止和你的repository有冲突
接下来clone安装onap需要的各种文件
git clone -b Jakarta --recurse-submodules -j2 http://gerrit.onap.org/r/oom
cd oom/kubernetes
如果你想下载onap的其他版本,可以将kohn换成其他版本的名字
接下来安装本地helm的服务器
curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/linux/amd64/chartmuseum
chmod +x ./chartmuseum
mv ./chartmuseum /usr/local/bin
创建服务器并启动
mkdir -p ~/helm3-storage
chartmuseum --storage local --storage-local-rootdir ~/helm3-storage -port 8879 &
在repository中添加使用这个端口
helm repo add local http://127.0.0.1:8879
此处可以使用curl http://127.0.0.1:8879
测试是否成功部署
现在build你的local repository
make SKIP_LINT=TRUE all
注意,由于helm本版本将push指令改为了cm-push,导致make all的时候报错,我是使用git grep 'push -f'
查找出了所有push指令的文件一一修改,才能运行make all
make all下载比较缓慢,需要等待大约半个小时
成功之后验证helm search repo local/onap
,出现onap
接下来安装 helm Plugins
cp -R ~/oom/kubernetes/helm/plugins/ ~/.local/share/helm/
helm plugin install https://github.com/chartmuseum/helm-push.git \
--version 0.9.0
此处helm -h
一下,查看是否有helm deploy指令
最后一步部署onap
helm deploy development local/onap --namespace --create-namespace onap --set global.masterPassword=password
每次重新登陆VM都需要输入chartmuseum --storage local --storage-local-rootdir ~/helm3-storage -port 8879 &
不然会出现127.0.0.1:8879拒绝连接的错误
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。