Frequently Asked Questions
How do i configure Kubernetes RBAC using Ansible?
Use Ansible to create a Kubernetes role and role binding:- name: Create Kubernetes Role
hosts: localhost
tasks:
- name: Create Role
community.kubernetes.k8s:
api_version: rbac.authorization.k8s.io/v1
kind: Role
name: pod-reader
namespace: default
definition:
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "watch", "list"]
- name: Create RoleBinding
community.kubernetes.k8s:
api_version: rbac.authorization.k8s.io/v1
kind: RoleBinding
name: pod-reader-binding
namespace: default
definition:
subjects:
- kind: User
name: ansible-user
apiGroup: rbac.authorization.k8s.io
roleRef:
kind: Role
name: pod-reader
apiGroup: rbac.authorization.k8s.io
How do i create and mount volume in Docker using Ansible?
- name: Create and mount Docker volume
hosts: all
tasks:
- name: Create a Docker volume
community.docker.docker_volume:
name: my_volume
- name: Run container with volume
community.docker.docker_container:
name: app_container
image: my_app
volumes:
- my_volume:/app/data
How do i create and run Docker container using Ansible?
Example playbook to run an Nginx container:- name: Run Nginx container
hosts: all
tasks:
- name: Start a Docker container
community.docker.docker_container:
name: nginx_server
image: nginx:latest
state: started
ports:
- "80:80"
Run it with:ansible-playbook -i inventory.ini deploy_nginx.yml
How do i create Docker network using Ansible?
- name: Create Docker network
hosts: all
tasks:
- name: Create custom network
community.docker.docker_network:
name: my_network
state: present
How do i deploy Docker Compose stack using Ansible?
- name: Deploy Docker Compose Stack
hosts: all
tasks:
- name: Copy docker-compose file
copy:
src: ./docker-compose.yml
dest: /home/user/docker-compose.yml
- name: Run Docker Compose
community.docker.docker_compose:
project_src: /home/user/
How do i deploy Kubernetes pod using Ansible?
Use thek8s
module to deploy a pod:- name: Deploy a Kubernetes pod
hosts: localhost
tasks:
- name: Create a pod
community.kubernetes.k8s:
api_version: v1
kind: Pod
namespace: default
name: nginx-pod
definition:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
How do I deploy Kubernetes service using Ansible?
- name: Deploy a Kubernetes Service
hosts: localhost
tasks:
- name: Create a Service
community.kubernetes.k8s:
api_version: v1
kind: Service
name: nginx-service
namespace: default
definition:
metadata:
labels:
app: nginx
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 80
targetPort: 80
How do i handle conflicts between Ansible and Puppet?
- Avoid overlapping responsibilities (e.g., don’t let both manage the same config files).
- Define clear roles (Ansible for provisioning, Puppet for enforcement).
How do i install Ansible?
On Linux (Ubuntu/Debian):sudo apt update && sudo apt install ansible -y
On RHEL/CentOS:sudo yum install ansible -y
On MacOS:brew install ansible
How do i install Ansible on Jenkins?
On the Jenkins server, install Ansible:sudo apt install ansible # Ubuntu/Debian
sudo yum install ansible # RHEL/CentOS
brew install ansible # macOS