Leia o wiki do OpsCode. Na minha opinião, tem muita informação para alguém perder facilmente a faixa.
Sua abordagem deve ser assim:
Use Knife to launch the fresh Ubuntu/CentOS AMI with the required run list. Your run list is basically roles which contain the cookbooks. Cookbooks contain recipes of what you actually want to automate.
Idealmente, você nunca deve criar uma AMI personalizada a partir dessa imagem gerenciada pelo chef. Isso é o ponto inteiro de usar essas ferramentas de gerenciamento de configuração.