install Ansible AWX 19 minikube on Ubuntu (AWS)
AWS Ubuntu(c 5.xlarge)にAWX 19をインストールする方法を共有する
Ubuntu 20.04缶詰Ec 2を作成
セキュリティグループの作成
ターゲットグループの作成+Ec 2の追加
NLB+ターゲットグループの追加の作成
Route 53ドメイン+NLB接続の作成
必要に応じてドメインの準備:sre-awx.mysite.io
Ec 2タイプが小さい場合、CPU、メモリ条件が一致しないため、Ready状態が遅延する場合がありますので、ご確認ください
利用可能なすべてのサービスをリストし、awx-service Nodepartを確認します.
Login Username: admin
password:
Kubernetesノードリソースを確認し、AWXを実行するのに十分であることを確認します.
インフラストラクチャの準備
Ubuntu 20.04缶詰Ec 2を作成
セキュリティグループの作成
ターゲットグループの作成+Ec 2の追加
NLB+ターゲットグループの追加の作成
Route 53ドメイン+NLB接続の作成
必要に応じてドメインの準備:sre-awx.mysite.io
1.Ubuntu更新
sudo apt update && sudo apt -y upgrade
2.k 3 s Kubernetesのインストール
curl -sfL https://get.k3s.io | sh -
sudo systemctl status k3s
sudo chmod 644 /etc/rancher/k3s/k3s.yaml
3.KubernetesにAWX Operatorを配備する
3.1 gitインストール
sudo apt update
sudo apt install git build-essential
3.2 Clone operator deployment code
git clone https://github.com/ansible/awx-operator.git
3.3 Create namespace where operator will be deployed : awx
export NAMESPACE=awx
kubectl create ns ${NAMESPACE}
3.4 Set current context to value set in NAMESPACE variable
kubectl config set-context --current --namespace=$NAMESPACE
3.5 awx-オペレータディレクトリへ
cd awx-operator
3.6 AWX Operatorリリースの最新バージョンをRELEASE TAG変数として保存し、gitを使用してブランチにチェックアウトする
sudo apt install curl jq
RELEASE_TAG=`curl -s https://api.github.com/repos/ansible/awx-operator/releases/latest | grep tag_name | cut -d '"' -f 4`
echo $RELEASE_TAG
git checkout $RELEASE_TAG
3.7 AWX Operatorをクラスタに配備する
export NAMESPACE=awx
make deploy
3.7.1検査pod
kubectl get pods
4.Operatorを使用してUbuntu 20.04にAnable AWXを取り付ける
4.1 PVCの作成
cat <<EOF | kubectl create -f -
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: static-data-pvc
namespace: awx
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-path
resources:
requests:
storage: 5Gi
EOF
使用するフォードが生成されるまで、PVCはバインドされません.4.2 AWX配備ファイルの生成
vi awx-deploy.yml
---
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
name: awx
spec:
service_type: nodeport
projects_persistence: true
projects_storage_access_mode: ReadWriteOnce
web_extra_volume_mounts: |
- name: static-data
mountPath: /var/lib/projects
extra_volumes: |
- name: static-data
persistentVolumeClaim:
claimName: static-data-pvc
4.2.1応用配置
$ kubectl apply -f awx-deploy.yml
4.2.2オペレータpodログでインストールプロセスを追跡することができる。
kubectl logs -f deployments/awx-operator-controller-manager -c awx-manager
Ec 2タイプが小さい場合、CPU、メモリ条件が一致しないため、Ready状態が遅延する場合がありますので、ご確認ください
kubectl describe pod [pod이름]
4.2.3 Data Persistence
kubectl get pvc
sudo ls /var/lib/rancher/k3s/storage/
4.2.4 Checking AWX Container’s logs
kubectl -n awx logs deploy/awx
error: a container name must be specified for pod awx-75698588d6-r7bxl, choose one of: [redis awx-web awx-task awx-ee]
kubectl -n awx logs deploy/awx -c redis
kubectl -n awx logs deploy/awx -c awx-web
kubectl -n awx logs deploy/awx -c awx-task
kubectl -n awx logs deploy/awx -c awx-ee
4.2.5 AWX内容器へのアクセス
kubectl exec -it deploy/awx -c awx-task -- /bin/bash
kubectl exec -it deploy/awx -c awx-web -- /bin/bash
kubectl exec -it deploy/awx -c awx-ee -- /bin/bash
kubectl exec -it deploy/awx -c redis -- /bin/bash
5.挿抜不可AWX Dashboard接続
利用可能なすべてのサービスをリストし、awx-service Nodepartを確認します.
kubectl get svc -l "app.kubernetes.io/managed-by=awx-operator"
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
awx-postgres ClusterIP None <none> 5432/TCP 59m
awx-service NodePort 10.4.0.9 <none> 80:30080/TCP 58m
ログイン情報
Login Username: admin
password:
kubectl get secret awx-admin-password -o jsonpath="{.data.password}" | base64 --decode
# or
kubectl get secret awx-admin-password -o go-template='{{range $k,$v := .data}}{{printf "%s: " $k}}{{if not $v}}{{$v}}{{else}}{{$v | base64decode}}{{end}}{{"\n"}}{{end}}'
Kubernetesノードリソースを確認し、AWXを実行するのに十分であることを確認します.
kubectl top nodes --use-protocol-buffers
Reference
この問題について(install Ansible AWX 19 minikube on Ubuntu (AWS)), 我々は、より多くの情報をここで見つけました https://velog.io/@codingdaddy/install-AWX-19-minikube-on-Ubuntu-AWSテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol